我需要在一个脚本中设置一个布尔值(放在一个名为“bouclier”的变量中)来启用或禁用GameObject。
变量位于游戏对象Player(右下角):
我需要启用禁用此游戏对象(“Bouclier01”):
为此,我将脚本附加到游戏对象“Bouclier01”。这是:
using UnityEngine;
using System.Collections;
public class ShowBouclier : MonoBehaviour {
public GameObject Bouclier01;
public bool bouclier;
// Use this for initialization
void Start () {
Bouclier01 = Bouclier01.GetComponent<GameObject>();
}
// Update is called once per frame
void Update () {
Bouclier01.enabled = false;
if (bouclier == true) {
Bouclier01.enabled = true;
}
}
}
我必须遗漏一些东西,因为这会出现此错误消息:
知道如何正确完成这项工作吗?
答案 0 :(得分:3)
使用GameObject.SetActive()函数激活或停用GameObject,如下所示:
Bouclier.SetActive(false);
我认为GameObject.enabled属于旧的统一API。此外,如果您想知道GameObject的当前激活状态,请使用GameObject.activeSelf,它是一个只读变量,如下所示:
Debug.Log(Bouclier.activeSelf);
答案 1 :(得分:0)
它将起作用
public GameObject otherobj;//your other object
public string scr;// your secound script name
void Start () {
(otherobj. GetComponent(scr) as MonoBehaviour).enabled = false;
}