Мне нужно попросить пользователя щелкнуть в другой раз на JButton для предоставления действия, но я не знаю, как запросить еще один клик. (Я новичок)
Здравствуйте,
В настоящее время я делаю Java-программу для своего класса информатики: это небольшая видеоигра, в которой есть карта, созданная из JButtons: каждая кнопка - это случай, в котором пользователь нажимает, чтобы переместить персонажа на карту.
Как и в любой игре, здесь должна быть сложная часть: на карте есть три врага, и пользователь должен щелкнуть по случаям, в которых он должен начать бой.
Бой основан на трех случайных числах: если первое больше 70, пользователь теряет одну жизнь. Он должен нажать еще раз на кнопку, чтобы запустить еще одну пробную версию, и борьба продолжается до тех пор, пока одно из случайных чисел не выполнит условие, и вот в чем проблема: все делается за один раз, пользователь нажимает на кейс и программу проверяет все числа, чтобы пользователь не испытывал желания начинать каждый бой.
Я хотел бы знать, можно ли запросить другое нажатие кнопки перед запуском проверки состояния?
Заранее спасибо,
Начинающий лимон.
if (source == Px3y2) {
numclickPx3y2 = numclickPx3y2 + 1; //I tried to create a variable that counts how many times the button has been cicked, but it doesn't change the result
if (e1 == 1) {
if (n1 <= 1) {
sx = pix + 200; //These are the variables that help the program to know where the character is on the map
sy = piy + 200;
GestionEnnemis1(); //Function to manage the fight
x4y2.setIcon(null);
x4y2.setIcon(new ImageIcon("4-2.png"));
x4y2.repaint(); //Changing the images on the cases
} else {
looselife1(); //Function that removes one life
}
if (numclickPx3y2 == 2) {
if (n2 > 1) {
looselife2();
}
if (numclickPx3y2 == 3) {
if (n3 > 70) {
game();
}
} else {
sx = pix + 200;
sy = piy + 200;
GestionEnnemis1();
x4y2.setIcon(null);
x4y2.setIcon(new ImageIcon("4-2.png"));
x4y2.repaint();
}
} else {
sx = pix + 200;
sy = piy + 200;
GestionEnnemis1();
x4y2.setIcon(null);
x4y2.setIcon(new ImageIcon("4-2.png"));
x4y2.repaint();
}
Я ожидал, что программа сделает поражения одно за другим, одно испытание за один щелчок по кнопке, но нажатие кнопки запускает все одновременно.