ユーザー入力にタイマーを設定するにはどうすればよいですか?

チャン・キム

私はあなたが4つのランダムな色を与えられ、勝つために正しいワイヤーを切る必要がある爆弾処理ミニゲームを作ろうとしています。私が今抱えている問題は、それを取得する方法を理解しているので、カットする色を選択するプレーヤーからの入力が必要な各部分にタイマーがあり、タイマーがなくなるとプレーヤーは失敗します。

setTimeoutを間違って使用しているように感じます。希望どおりに機能させる方法がわかりません。

const asdf = require('readline').createInterface({
        input: process.stdin,
        output: process.stdout
});

asdf.question('What will you cut?', wire => { //First part where you are given 4 colors
    setTimeout(asdf.question, 7000, console.log("asdf"))
    if (!allowedColors.includes(wire)) {
        console.log("You need to pick one of the 4 colors!");
        return;
    }
    console.log(`You cut ${wire}!`);
    asdf.close();
    ruleEnforcer(wire, fourRandomColors, f);

})
Howäms

調整しなければならないことがいくつかあります。

  1. setTimeoutのコールバック関数を呼び出しているquestionので、ユーザーが色を入力してEnterキーを押すと、タイマーが開始されます。

  2. 使用方法は、7000ミリ秒後setTimeoutに関数を呼び出し、呼び出された関数asdf.questionconsole.log("asdf")引数として渡します。setTimeoutAPI定義をもう一度確認する必要があります

  3. setTimeout は非同期であるため、タイマーが切れたときにゲームを停止したい場合は、ゲーム全体も​​非同期にする必要があります

このプロセスの非常に基本的な実装(複数の質問や実際に入力された色が正しいかどうかの確認なし)は、次のようになります。

const readline = require('readline').createInterface({
        input: process.stdin,
        output: process.stdout
});

// start game and react to callback
startGame((win) => {
  readline.close()
  if(win) {
    console.log('you won')
  } else {
    console.log('you lost')
  }
})

function startGame(callback) {

  // set timer when game starts, if it runs out player loses -> call callback false
  let timer = setTimeout(() => {
    callback(false)
  }, 7000);

  readline.question('What will you cut?', wire => {
   // stop timer from running when player enters a color
   clearTimeout(timer);

   // wire is correct and player won the game -> call callback true
   callback(true)
  })
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ユーザーによるテキスト入力のスタイルを設定するにはどうすればよいですか?

分類Dev

PHPでユーザー入力をサニタイズするにはどうすればよいですか?

分類Dev

Coldfusion(Windows)でgithubマシンユーザーを設定するにはどうすればよいですか?

分類Dev

ユーザー入力からコンポーネントの属性を動的に設定するにはどうすればよいですか?

分類Dev

C#Windowsアプリケーションのユーザー入力に従ってタイマー制御を設定するにはどうすればよいですか?

分類Dev

ユーザー入力が有効であることを確認し、入力タイプに基づいてアラートを設定するにはどうすればよいですか?

分類Dev

AlertDialog textinputは、タイマーの時間を設定します。形式は00:00:00である必要がありますが、ユーザーは任意の数値を入力できるため、エラーが発生します。入力を制限するにはどうすればよいですか?

分類Dev

hadoop入力フォーマットをNLineInputFormatに設定するにはどうすればよいですか?

分類Dev

ユーザー入力に基づいて月の最終日を取得して設定するにはどうすればよいですか?

分類Dev

ユーザーに複数の入力を入力させるにはどうすればよいですか?

分類Dev

Androidでユーザー入力から日付を設定するにはどうすればよいですか?

分類Dev

EXCEL-同じセルに数式出力とユーザー入力を設定するにはどうすればよいですか?

分類Dev

Javaで設定ユーザー設定を保存するにはどうすればよいですか?

分類Dev

ユーザーにきれいに入力を求め、いくつかのタイプを許可するにはどうすればよいですか?

分類Dev

Angular4のユーザー入力によって定義されたカスタムCSSを追加するにはどうすればよいですか?

分類Dev

ctypes pythonを介してユーザーの入力言語を設定するにはどうすればよいですか?

分類Dev

Outlookで他のユーザーに予定を設定するにはどうすればよいですか?

分類Dev

ループにユーザー入力を追加するにはどうすればよいですか?

分類Dev

アラートにユーザー入力を表示するにはどうすればよいですか?(迅速)

分類Dev

RxJSを使用して「ユーザーが入力しています」インジケーターを表示するにはどうすればよいですか?

分類Dev

ユーザー設定とデータを新しいマシンに移行するにはどうすればよいですか?

分類Dev

ユーザー設定とデータを新しいマシンに移行するにはどうすればよいですか?

分類Dev

ユーザー入力に基づいてJButtonを生成するにはどうすればよいですか?

分類Dev

ユーザー入力でCループを停止するにはどうすればよいですか

分類Dev

ユーザー入力でwhileループを停止するにはどうすればよいですか?

分類Dev

Pythonでユーザー入力のループを作成するにはどうすればよいですか?

分類Dev

`forin`ループ内でユーザー入力を取得するにはどうすればよいですか

分類Dev

ユーザーがC ++で入力しているときに、ユーザーの入力を確認するにはどうすればよいですか?

分類Dev

ユーザー定義関数をPythonのユーザー入力として使用するにはどうすればよいですか?

Related 関連記事

  1. 1

    ユーザーによるテキスト入力のスタイルを設定するにはどうすればよいですか?

  2. 2

    PHPでユーザー入力をサニタイズするにはどうすればよいですか?

  3. 3

    Coldfusion(Windows)でgithubマシンユーザーを設定するにはどうすればよいですか?

  4. 4

    ユーザー入力からコンポーネントの属性を動的に設定するにはどうすればよいですか?

  5. 5

    C#Windowsアプリケーションのユーザー入力に従ってタイマー制御を設定するにはどうすればよいですか?

  6. 6

    ユーザー入力が有効であることを確認し、入力タイプに基づいてアラートを設定するにはどうすればよいですか?

  7. 7

    AlertDialog textinputは、タイマーの時間を設定します。形式は00:00:00である必要がありますが、ユーザーは任意の数値を入力できるため、エラーが発生します。入力を制限するにはどうすればよいですか?

  8. 8

    hadoop入力フォーマットをNLineInputFormatに設定するにはどうすればよいですか?

  9. 9

    ユーザー入力に基づいて月の最終日を取得して設定するにはどうすればよいですか?

  10. 10

    ユーザーに複数の入力を入力させるにはどうすればよいですか?

  11. 11

    Androidでユーザー入力から日付を設定するにはどうすればよいですか?

  12. 12

    EXCEL-同じセルに数式出力とユーザー入力を設定するにはどうすればよいですか?

  13. 13

    Javaで設定ユーザー設定を保存するにはどうすればよいですか?

  14. 14

    ユーザーにきれいに入力を求め、いくつかのタイプを許可するにはどうすればよいですか?

  15. 15

    Angular4のユーザー入力によって定義されたカスタムCSSを追加するにはどうすればよいですか?

  16. 16

    ctypes pythonを介してユーザーの入力言語を設定するにはどうすればよいですか?

  17. 17

    Outlookで他のユーザーに予定を設定するにはどうすればよいですか?

  18. 18

    ループにユーザー入力を追加するにはどうすればよいですか?

  19. 19

    アラートにユーザー入力を表示するにはどうすればよいですか?(迅速)

  20. 20

    RxJSを使用して「ユーザーが入力しています」インジケーターを表示するにはどうすればよいですか?

  21. 21

    ユーザー設定とデータを新しいマシンに移行するにはどうすればよいですか?

  22. 22

    ユーザー設定とデータを新しいマシンに移行するにはどうすればよいですか?

  23. 23

    ユーザー入力に基づいてJButtonを生成するにはどうすればよいですか?

  24. 24

    ユーザー入力でCループを停止するにはどうすればよいですか

  25. 25

    ユーザー入力でwhileループを停止するにはどうすればよいですか?

  26. 26

    Pythonでユーザー入力のループを作成するにはどうすればよいですか?

  27. 27

    `forin`ループ内でユーザー入力を取得するにはどうすればよいですか

  28. 28

    ユーザーがC ++で入力しているときに、ユーザーの入力を確認するにはどうすればよいですか?

  29. 29

    ユーザー定義関数をPythonのユーザー入力として使用するにはどうすればよいですか?

ホットタグ

アーカイブ