2014-09-29 20 views
0

所以我有一个预制的C#脚本附加(ScriptA),然后我从另一个脚本(ScriptB)实例化这个预制的一些GameObjects。访问属性附加到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的情况下,每个预制对象? 如果是这样,我如何访问它们及其属性?

回答

3

如果ScriptA附接到实例化的预制,就可以得到使用GameObject.GetComponent方法从对它的引用,例如:

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

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

+0

这很简单,我觉得哑巴。我刚开始学习Unity。 非常感谢! :) – AlbertCossi 2014-09-29 21:14:27