Я хочу переключиться между функциями с помощью щелчка левой кнопкой мыши. Таким образом, в основном, я хочу, чтобы мой экран начинался с отображения func1
(func1
активирован), затем, когда вы нажимаете левую кнопку мыши, func1
деактивируется, и активируется func2
, а затем при нажатии левой кнопки мыши снова func2
деактивируется и func3
получает активируется, и когда вы снова нажимаете левую кнопку мыши, func3
деактивируется и func1
активируется, и это продолжается.Переключение между функциями в Unity
bool tappedOnce = true;
bool tappedTwice = false;
bool tappedThrice = false;
void func1() {print("func1");}
void func2() {print ("func2");}
void func3() {print ("func3");}
void toggle()
{
if (Input.GetKeyDown(KeyCode.Mouse0)&& tappedOnce == false){tappedOnce = true; func1();}
if (Input.GetKeyDown(KeyCode.Mouse0)&& tappedOnce && tappedTwice == false){func2(); tappedTwice = true;}
if (Input.GetKeyDown(KeyCode.Mouse0)&& tappedOnce && tappedTwice && tappedThrice == false){func3(); tappedOnce = false; tappedTwice = false;}
}
Просить его здесь, потому что этот вопрос был отмечен вне темы на - игровой обмен стека развития - и они предложили мне задать вопрос здесь.
По какой-то причине он не возвращается к функции 1 из функции 2. – kp21
Он циклически перемещается по методам в порядке возрастания. Если вы хотите пройти назад через них, добавьте что-то вроде 'if (Input.GetMouseButtonDown (1)) {clickNumber + = -1;}' – LWKatze
Я имею в виду функцию 3 * извините. Он не возвращается к функции 0 из функции 3 – kp21