У меня есть персонаж, которому я хочу сделать функцию прыжка. Во втором потоке, я создал такой вот код:
Код
public void run() {
if (jump == true) {
for (int i = 1; i <= 7; i++) {
y = y - 1;
repaint();
Thread.currentThread();
Thread.sleep(120);
}
}
}
А также есть таймер который, каждые 20 милисекунд запускает этот метод run и еще один метод из основного потока, для движения по горизонтали. По сути, когда срабатывает таймер проверяется не нажата ли кнопка пробела и если нажата то активируется условие, а вместе с ним цикл. И дальше при каждом повышении персонажа на один пиксель, должно перерисовываться все, но почему-то перерисовка происходит только в конце после выполнения цикла. Почему?