Это очень странно, и я не могу понять это!
У меня есть простая логическая переменная.
public bool hitBoxIsOpen;
она установлена в false в Start ().
В целях тестирования я сделал «нажатие кнопки», установив его на True .
void Update ()
{
if (Input.GetKeyDown(KeyCode.Alpha3))
{
hitBoxIsOpen = true;
print("HitBox: " + hitBoxIsOpen);
}
}
Это делает именно то, что естьдолжен и печатает «True» впоследствии.
Тогда у меня есть:
private void OnTriggerStay(Collider other)
{
print(hitBoxIsOpen);
}
Независимо от того, что и когда, этот блок всегда печатает False !
Почему это?