【问题标题】:Disabling a Script attached to a game object in Unity C#在 Unity C# 中禁用附加到游戏对象的脚本
【发布时间】:2019-05-24 17:36:32
【问题描述】:

我有一个更新函数,它会检查某些东西是否等于 true,如果它等于 true,它将运行一些代码,但我希望禁用整个脚本。请帮忙,谢谢!

【问题讨论】:

标签: c# unity3d scripting


【解决方案1】:

您应该使用enabled 字段。尝试关注

gameObject.GetComponent<EmailSender >().enabled = false;

【讨论】:

  • 什么意思,它不起作用?你期望它做什么,它做什么?
  • 我想让它禁用脚本,这样就不能再使用了。
  • @alexo1001 那么你需要使用yourGameObject.setActive(false);
【解决方案2】:

这将起作用:

public GameObject otherobj;//your other object
public string scr;// your secound script name
void Start () {
    (otherobj. GetComponent(scr) as MonoBehaviour).enabled = false;
}

【讨论】:

    【解决方案3】:

    您可以使用以下语法禁用脚本组件,

    GameObject.Find("Cube").GetComponent<MoveObject>().enabled = false;
    

    这里我禁用了名为 Cube 的对象的 MoveObject 脚本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多