我使用C#在Unity2D中使用这些非常简单的代码行。我只想访问从不同脚本生成的随机数。
//Script A
void Start(){
int rand;
rand = Random.Range(0,4);
myString1 = myArray[rand];
}
//Script B
public ScriptA obj;
public string[] myString2;
public string nj;
void Start(){
myString2 = new string[] {
"A" ,
"B",
"C",
"D"
};
nj = myString2[obj.rand];
guiText.text = nj;
}
一切正常,我的GUIText显示,我的随机数在脚本A中完美生成,但是当我在脚本B中访问它时,它仅返回0即只有A,即使随机生成的数字是2或3 ,它在GUIText中打印A.
相信我,我只是在我的项目中对问题进行了排序,但它仍然没有按照我想要的方式运行。
我的意思是认真,GUIText只显示A,我需要A,B,C& D随机.. Plz有人帮我这些.. !!
答案 0 :(得分:0)
变量rand只能在脚本A的void Start()中本地访问。
在脚本A中尝试此操作
public int rand {get; set;}
void Start(){
rand = Random.Range(0,4);
myString1 = myArray[rand];
}