やまめも

【 ゲーム開発・日々のことについて 】

Static使用例

using UnityEngine;
using System.Collections;

//ここをstaticにすると全部static
public class AgeDot : MonoBehaviour {

	//AgeDotクラスのstaticのクラスを作る。
	//staticのメソッドを作るとき、中の変数もstaticである必要があるために設定する。
	private static AgeDot _instance = null;
	//他のスクリプトからstaticじゃないChildDotなんかにアクセスするときに使う。
	public static AgeDot instance {
		get{
			return _instance;
		}
	}

	private int AA = 0;

	public GameObject ChildDot;
	public GameObject Blackline;
	GameObject Dot;
	void Awake(){
		_instance = this;
	}
	void Start () {
	}
	void Update () {
	}

	public static void SpawnDot(){
		_instance.Dot = Instantiate (_instance.ChildDot) as GameObject;
		_instance.Dot.transform.position = new Vector2 (InputAge.yourAge * 0.1f, 0);
		_instance.Dot.transform.SetParent (_instance.Blackline.transform);
	}


	public static int GetAA(){
		return _instance.AA;
	}
}


using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class InputAge : MonoBehaviour {

	string str;
	public InputField inputField;
	public Text Text;
	public static int yourAge;
	public GameObject UI_Input;

	void Update(){
	}
	public void Btn_SaveText () {
		str = inputField.text;
		yourAge = int.Parse(str);
		Text.text = str + " years old";
		inputField.text = "";
		UI_Input.SetActive (false);
		AgeDot.SpawnDot ();
//		AgeDot.GetAA ();

	}
}