私は、ランテルナを使用して単純な 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
}
ありがとう!