从另一个GameObject调用脚本

时间:2017-10-25 07:23:51

标签: c# unity3d

我在C#上编程。我有一个包含两个不同脚本的游戏对象。 1)PlayerController 2)PlayerHealth。

当我尝试使用下面的代码调用PlayerHealth时

if(GameObject.FindGameObjectWithTag("Player").GetComponent<PlayerHealth>().currentHealth <= 25);
{
transform.position = startTarget.transform.position;
}

上面的代码不起作用。但是当我在另一个只包含一个脚本的Gameobject上使用相同的代码时,它就可以工作。

有什么建议吗?

编辑:

我使用此代码检查它是否读取脚本

GameObject playerHealthObject = GameObject.FindGameObjectWithTag("Player"); 
if (playerHealthObject != null) 
{ 
  playerHealth = playerHealthObject.GetComponent<PlayerHealth>(); 
} 
if (playerHealth == null) 
{ 
  Debug.Log("Cannot find 'Script' playerHealth"); 
} 

而且我确定在找到Gameobject标签和脚本名称时找不到脚本。

0 个答案:

没有答案