//SCRIPT 1
Class ColorChanger{
Public string currentColor;
}
//SCRIPT 2
Class Player{
private void OnTriggerEnter2D(Collider2D col)
{
If (col.tag != currentColor)
{
Debug.Log("GAME OVER");
}
}
}
如果我在SCRIPT 1中编写SCRIPT 2部分它会起作用,但我想知道如何将“currentColor”变量与其他脚本一起使用?
答案 0 :(得分:1)
这完全取决于第一个脚本是否附加到GameObject。
1 .- 如果是:
objectwith1stscript.GetComponent<ColorChanger>().currentColor
2 .- 如果不是,那么您可能希望currentColor是静态的:
public static string currentColor;
然后通过以下方式访问它:
ColorChanger.currentColor
3 .- 如果您不希望它因x或y原因而静态(并且没有附加到GameObject),则需要创建该类的实例,像这样:
ColorChanger mycolorchanger = new ColorChanger();
然后像这样使用它:
mycolorchanger.currentColor
如果你使用2个或3个选项,第一个脚本不应该从MonoBehaviour继承。