我为2d游戏统一制作了两个脚本。一个将布尔值设置为另一个布尔值,这是另一个的代码:
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GameManagerScript : MonoBehaviour
{
public float weapons;
public float money;
public bool tutorial = true;
public bool tutorialcoins = false;
public bool tutorialsword = false;
public bool tutorialenemies = false;
// Start is called before the first frame update
void Start()
{
if (tutorial)
{
if (!tutorialcoins)
{
GameObject.Find("Coins").SetActive(false);
}
}
}
// Update is called once per frame
void Update()
{
if (tutorialcoins)
{
GameObject.Find("Coins").SetActive(true);
}
}
因此,我使用了该代码和名为Coins的对象,它有很多子代。当我将tutorialcoins设置为true时,子代或代币都不会激活,什么也不会发生!请您知道我做错的任何事情
答案 0 :(得分:0)
尝试一下
public Transform coin;
void Start()
{
for (int j = 0; j < coin.childCount; j++)
{
coin.GetChild(j).gameObject.SetActive(false);
}
}
void Update()
{
if (tutorialcoins)
{
for (int j = 0; j < coin.childCount; j++)
{
coin.GetChild(j).gameObject.SetActive(false);
}
}
}
添加此代码后。转到将该脚本附加到的对象。在脚本组件上,您将看到Coin
。将您的Coins obj从层次结构拖动到此并运行。