C# 如何转换类型';int';至';unityengine.gameobject';?

C# 如何转换类型';int';至';unityengine.gameobject';?,c#,unity3d,type-conversion,C#,Unity3d,Type Conversion,我正在尝试编写一个脚本来控制重新启动的检查点系统。在PlayerController脚本中,我将“health”声明为public int。然后,我在这个脚本中引用了“health”。所以,如果玩家死亡(生命值=0),它将在检查点重生 然而,当我在这个脚本中引用“health”时,我必须将“int”转换为“unityengine.gameobject”。谁能帮帮我吗。我刚开始学C public class PlayerPros:monobhavior { 私人储蓄点; 私人游戏对象健康; 私有v

我正在尝试编写一个脚本来控制重新启动的检查点系统。在PlayerController脚本中,我将“health”声明为public int。然后,我在这个脚本中引用了“health”。所以,如果玩家死亡(生命值=0),它将在检查点重生

然而,当我在这个脚本中引用“health”时,我必须将“int”转换为“unityengine.gameobject”。谁能帮帮我吗。我刚开始学C

public class PlayerPros:monobhavior
{
私人储蓄点;
私人游戏对象健康;
私有void Start()
{
health=GetComponent();
sp=GameObject.FindGameObjectWithTag(“sp”).GetComponent();
transform.position=sp.lastCheckPointPos;
}
私有void更新()
{
if(health=0)//此处发生错误
{
加载场景(SceneManager.GetActiveScene().buildIndex);
}
}
}

不转换类型,而是从类中获取变量

如果两个脚本在同一个游戏对象上,您可以使用

int-health=GetComponent().health

确保
PlayerController
脚本中的运行状况变量是公共的

如果(health=0),您也不能执行


正确的方法是
if(health==0)

health=0
表示将值分配给变量。您的意思可能是等于:
health==0
GameObject
也不是组件。。你是说
gameObject
这个脚本所附加的
gameObject
属性吗?这个错误应该是不言自明的。。
GameObject
是no
int
。。。您是否试图通过
GetComponent
访问其他组件?
public class PlayerPros : MonoBehaviour
{
    private savePoint sp;
    private GameObject health;


    private void Start()
    {
        health = GetComponent<GameObject>();
        sp = GameObject.FindGameObjectWithTag("SP").GetComponent<savePoint>();
        transform.position = sp.lastCheckPointPos;
    }

   private void Update()
    {

       if ( health = 0) //error occurs here
       {
           SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
       }
    }
}