【Unity】同じスクリプトを別々のオブジェクトにアタッチしたとき
■ スクリプト
【ClassA.cs】public class ClassA : MonoBehaviour
{
[SerializeField] public int numA;
void Start() {
Debug.Log(gameObject.name + ":numA:" + numA);
}
}
【ClassB.cs】
public class ClassB : MonoBehaviour
{
[SerializeField] ClassA ClassA;
void Start() {
Debug.Log(gameObject.name+ ":ClassB:" + ClassA.numA);
}
}
■ エディター
2つのスクリプト両方を オブジェクトAとオブジェクトBにそれぞれアタッチ。
インスペクターでClassAのnumAをそれぞれ別の数字を入力する。
■ 結果(ログ)
別々の数字が出力される。
スクリプトが同じでもアタッチ先で別々に値が保存される。