2
我想在Unity2D
中製作一個場景,其背景名爲Stone,Scissors和Paper。這3個是相對較小的背景。我也有一個像壁紙一樣的屏幕大小背景。c#Unity2D處理多個背景
現在,我在這3個背景之外放置了一個Button
,並且當我按下該按鈕時,我想在它們之間切換。我的意思是有一個按鈕,現在讓我們說石頭背景是可見的,其他2不是,當我按下按鈕時,石頭背景應該消失,紙張背景應該是可見的。當我在這種情況下再次擊中同一個按鈕時,紙張背景應該消失,剪刀背景應該可見。之後,如果我按下該按鈕,循環應該再次返回到石背景。
我希望我解釋正確。我怎樣才能做到這一點?感謝提前:)
編輯:我寫了這個代碼,它給NullReferenceException
在29行
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class NextCountry : MonoBehaviour {
MainGame game;
public GameObject stone;
public GameObject paper;
public GameObject scissors;
// Use this for initialization
void Start() {
game = MainGame.getInstance();
stone = GameObject.Find("StoneView");
paper = GameObject.Find ("PaperView");
scissors = GameObject.Find ("ScissorsView");
}
public void OnBackgroundChange(string next)
{
if (next == "paper")
{
stone.SetActive(false);
paper.SetActive(true);
scissors.SetActive(false);
}
}
}
謝謝。但問題是,我怎樣才能從同一個腳本中獲得這3個背景?如果我能聯繫到他們,我也可以使用「isHidden」。 – kalahari 2014-12-03 17:10:06
哦,是的,你是對的,你可以使用isHidden你不能用GameObject.find(「場景中的名字」)達到他們; – 2014-12-03 18:14:09
我編輯了問題 – kalahari 2014-12-03 18:39:51