访问附加到GameObject的类的属性

本文关键字:属性 GameObject 访问 | 更新日期: 2023-09-27 18:25:03

所以我有一个附加了c#脚本的预制脚本(ScriptA),然后我从另一个脚本(ScriptB)实例化这个预制脚本的许多GameObject。

public class ScriptA : MonoBehaviour {
    public int pos;

public class ScriptB : MonoBehaviour {
    public GameObject prefab;   
    GameObject [] all;

然后在某个时刻创建对象:

    for (int i = 0; i < 10; i++){
       Vector3 v = new Vector3(i, 0, 0);
       v = v * 3;
       GameObject newObject;
       newObject = GameObject.Instantiate(prefab, v , Quaternion.identity);
       all[i] = newObject;
    }

所以我的问题是:

ScriptA的实例是否与每个预制对象一起创建?如果是,我该如何访问它们及其属性?

访问附加到GameObject的类的属性

如果ScriptA附加到实例化的预制件,您可以使用GameObject.GetComponent方法从中获得引用,例如:

ScriptA  aInstance = newObject.GetComponent<ScriptA >();
int p = aInstnace.pos;

可以调用访问ScriptA实例(aInstance)上所需的属性或方法。