1

私は、ランテルナを使用して単純な Java テキストベースの絞首刑執行人を作成しています (主に、コンソールでのクリアスクリーンとユーザー入力のため)。

ユーザー入力に問題があります。入力を入力してコードを実行すると、毎回同じ入力が使用され続け、別の入力を挿入できなくなります。

ここに私のコードがあります:

while (hidenWord.equals(word) == false) {
        //start of basic visual setup
        terminal.moveCursor(0,0);
        cursorPlace[0] = 0;cursorPlace[1] = 0;
        normalSetup(hidenWord, kansen, choose[categorie]);
        terminal.moveCursor(12, cursorPlace[1] - 3);
        //end of basic visual setup
        while (bool == false) {
            Thread.sleep(5);
            Key key = terminal.readInput();
            try {
                if (key.getKind() == Key.Kind.NormalKey) {
                    guess = (key).toString().substring(key.toString().lastIndexOf(' '));
                    terminal.putCharacter(key.getCharacter());
                }
            } catch (Exception err) {
            }
            try {
                if (key.getKind() == Key.Kind.Backspace) {
                    terminal.clearScreen();
                    terminal.moveCursor(0, 0);
                    cursorPlace[0] = 0;
                    cursorPlace[1] = 0;
                    normalSetup(hidenWord, kansen, choose[categorie]);
                    terminal.moveCursor(12, cursorPlace[1] - 3);
                }
            } catch (Exception err) {
            }
            try {
                if (key.getKind() == Key.Kind.Enter && guess != null) {
                    bool = true;
                }
            } catch (Exception err) {
            }
        }
        if(word.contains(guess)){
            guesses.add(guess);
            hidenWord = addHidden(guess, word);
        }else{
            kansen --;
            miss.add(guess);
        }
        //end of other visual objects
    }

ありがとう!

4

1 に答える 1