1. 程式人生 > >Unity 全域性遊戲指令碼的一種實現方法

Unity 全域性遊戲指令碼的一種實現方法

public class GlobalScript : MonoBehaviour {

	public static GlobalScript instance;

	void Awake() {
		if (instance == null) {
			// 判定 null 是保證場景跳轉時不會出現重複的 GlobalScript 例項 (主要是跳轉回上一個場景)
			// 在沒有 GlobalScript 例項時才建立 GlobalScript 例項
			instance = this;
			DontDestroyOnLoad(gameObject);
		} else if (instance != this) {
			// 保證場景中只有唯一的 GlobalScript 例項,如果有多餘的則銷燬
			Destroy(gameObject);
		}
	}

}