Я пишу текстовую игру в javascript, и одна из основных «функций» - это поле ввода, которое принимает пользовательский ввод, и отправляет ввод тегом кнопки. В моем основном цикле игры вызов OnClick данной кнопки:Javascript Game: Как «приостановить» цикл while, чтобы ждать ввода пользователем
var game_u = new game_util();
function Game_Main(){
while(active){
input = game_u.getText();
//p = new player();
active = false;
}
}
function game_util(){
this.getText = function(){
//The Submit button
confirm_plr.onclick = function(){
//Input value
return player_in.value;
}
}
}
Проблема с этим способом, хотя в том, что цикл, пока не «ждать» кнопки отправки нужно нажать, чтобы получить входные данные от `game_u .getText(); и продолжает цикл.
Есть ли лучший способ для этого сделать это, это моя первая ошибка в текстовой игре? Я не хочу использовать метод prompt, потому что он нарушает погружение в игровой процесс.
Я тоже из Java, объектно-ориентированного языка программирования, поэтому я использую цикл while.
Любая помощь приветствуется.
'prompt' окно, как' alert' будет приостановить исполнение –
Возможная дубликата [Sleep в Javascript - задержка между действиями] (HTTP: // StackOverflow .com/questions/758688/sleep-in-javascript-delay-between-actions) –
Переместить game_u.getText() в глобальную переменную при нажатии кнопки, а затем «уничтожить» это в игровом цикле, установив его обратно на пробел, когда он будет прочитывать его во время одной итерации игрового цикла. Это одна из возможностей. Примечание: постоянные javascript-контуры немного необычны. – ebyrob