【发布时间】:2019-02-17 14:50:05
【问题描述】:
我正在Unity2D中制作一个简单的游戏,即使经过多次尝试,仍然出现CS0120错误。
我已经浏览了一些教程/帮助,但它们都没有真正帮助我,我不想再弄乱我的代码。
//This is the one which I want to call the var from
public class Terraform : MonoBehaviour
{
public int TerraformClick;
void Start()
{
}
void Update()
{
if(Input.GetMouseButtonDown(1))
{
TerraformClick = 1;
}
}
}
//And this is the main script
public class Grass_Follow : MonoBehaviour
{
void Awake()
{
GameObject TerraformButt = GameObject.Find("Terraform");
Terraform terraformScript = TerraformButt.GetComponent<Terraform>(); //finding the object
}
void Update()
{
//probably some mistake in calling the variable
if (Terraform.TerraformClick == 1)
{
Vector3 pz =
Camera.main.ScreenToWorldPoint(Input.mousePosition);
pz.z = 0;
transform.position = pz;
}
else
{
}
}
}
我预计变量放置/调用会出现一些小错误
【问题讨论】:
-
Terraform.TerraformClick->TerraformClick。它是一个非static成员变量 -
在任意尝试任何进一步的尝试之前,请努力了解什么错误 CS0120 及其错误消息准确地告诉你什么是错误的 which代码行...
-
它还有助于告诉我们整个编译器错误消息,而不仅仅是 ID。