无法禁用我之前位置的方向箭头
Cannot disable directional arrows of my previous location
如果我在位置 1 并击中它,在延迟 10 秒后生成指向位置 3 的箭头。
现在我移动到位置 3,当我点击位置 3 时,位置 2 生成的箭头应该关闭。
我努力让我的停用以前的功能正常工作但失败了。有人可以帮忙吗?
using UnityEngine;
using System.Collections;
public class GameController : MonoBehaviour {
public int _currentCheckPoint = 0;
public ArrowObjects _arrowObjectInstance;
public float _checkPointWaiTime = 10;
public float _elappsedTime;
public bool GenerateArrow = false;
void Start()
{
_arrowObjectInstance = GetComponent<ArrowObjects> ();
foreach (var item in _arrowObjectInstance._listArrowGameObject) {
item.SetActive (false);
}
}
void Update()
{
if (_currentCheckPoint != 0 && GenerateArrow) {
GenerateArrow = false;
Invoke ("DelayedActive", 10f);
}
print (_currentCheckPoint);
}
void DelayedActive()
{
_arrowObjectInstance._listArrowGameObject [_currentCheckPoint - 1].SetActive (true);
}
void DeactivePrevious()
{
_arrowObjectInstance._listArrowGameObject [_currentCheckPoint - 1].SetActive (false);
}
}
将更新部分从上面的脚本更改为这个。
void Update()
{
if (_currentCheckPoint != 0 && GenerateArrow) {
GenerateArrow = false;
if (_currentCheckPoint > 1) {
_arrowObjectInstance._listArrowGameObject [_currentCheckPoint - 2].SetActive (false);
}
Invoke ("DelayedActive", 10f);
}
并在
中添加了一张支票
如果我在位置 1 并击中它,在延迟 10 秒后生成指向位置 3 的箭头。
现在我移动到位置 3,当我点击位置 3 时,位置 2 生成的箭头应该关闭。
我努力让我的停用以前的功能正常工作但失败了。有人可以帮忙吗?
using UnityEngine;
using System.Collections;
public class GameController : MonoBehaviour {
public int _currentCheckPoint = 0;
public ArrowObjects _arrowObjectInstance;
public float _checkPointWaiTime = 10;
public float _elappsedTime;
public bool GenerateArrow = false;
void Start()
{
_arrowObjectInstance = GetComponent<ArrowObjects> ();
foreach (var item in _arrowObjectInstance._listArrowGameObject) {
item.SetActive (false);
}
}
void Update()
{
if (_currentCheckPoint != 0 && GenerateArrow) {
GenerateArrow = false;
Invoke ("DelayedActive", 10f);
}
print (_currentCheckPoint);
}
void DelayedActive()
{
_arrowObjectInstance._listArrowGameObject [_currentCheckPoint - 1].SetActive (true);
}
void DeactivePrevious()
{
_arrowObjectInstance._listArrowGameObject [_currentCheckPoint - 1].SetActive (false);
}
}
将更新部分从上面的脚本更改为这个。
void Update()
{
if (_currentCheckPoint != 0 && GenerateArrow) {
GenerateArrow = false;
if (_currentCheckPoint > 1) {
_arrowObjectInstance._listArrowGameObject [_currentCheckPoint - 2].SetActive (false);
}
Invoke ("DelayedActive", 10f);
}
并在
中添加了一张支票