У меня есть объект со скриптом, который перемещает его по пути. На том же объекте находится скрипт, который, если активирован, отправляет его обратно в начальную точку. Сценарий mover
по умолчанию активен, а home
по умолчанию неактивен. Я хочу, чтобы, если я нажимаю «2», mover
деактивируется и home
активируется, а если я нажимаю «1», сценарии возвращаются к тому, как они были. состояния 1 и 2 должны быть исключительными. Я создал скрипт для того же объекта следующим образом:
public class activator : MonoBehaviour
{
bool mover = new bool();
bool home = new bool();
void Start ()
{
mover = true;
home = false;
}
void Update ()
{
if (Input.GetButtonDown("1"))
{
mover = true;
home = false;
}
if (Input.GetButtonDown("2"))
{
mover = false;
home = true;
}
if(mover == true)
{
GetComponent<router>().enabled = true;
GetComponent<routeRepairs>().enabled = false;
}
else if(home == true)
{
GetComponent<router>().enabled = false;
GetComponent<routeRepairs>().enabled = true;
}
}
}
обратите внимание на фактические сценарии, которые я пытаюсь активировать и деактивировать с объекта: router
и routeRepairs
. Когда я фактически запускаю игру в режиме воспроизведения, после нажатия кнопки ничего не происходит.
Есть вопрос, что stackoverflow говорит мне, что это похоже, но приведенные решения ничего не делают для меня. Таким образом, любая помощь с тем, как получить эту работу будет принята с благодарностью! Заранее спасибо!
еще одна вещь: я надеюсь добавить больше сценариев движения, которые должны быть активированы и деактивированы таким же образом, поэтому решения, которые применяются только к двум состояниям (т. е. перемещаются или возвращаются домой), не идеальны. вероятно, не важно, но мне пришло в голову, что это стоило квалификации ..?