Я создаю игру в c. В игре есть функция loop (), которая вызывает другие функции и обновляет их во время каждого игрового цикла.
Игровой персонаж - это просто изображение персонажа.
Проблема, с которой я столкнулся, заключается в том, что я хочу, чтобы изображение этого символа непрерывно перемещалось в направлении после 1 нажатия клавиши, однако мне может показаться, что оно перемещается только один раз за нажатие клавиши, то есть его нужно удерживать до получить непрерывное движение.
Вещи, которые я пробовал:
Я сделал цикл while, чтобы указать, что символ будет непрерывно перемещаться до тех пор, пока не достигнет границы на экране ... У меня была проблема с тем, что цикл while был вложен во все циклы игры while, то есть вложенный loop, проходя через все итерации внутри диапазона вложенного цикла, прежде чем outloop выполнил его один раз, означая, что игровой персонаж мгновенно перескочил к границе игры.
попытался сделать это с помощью оператора if, который, как и ожидалось, выполняется только один раз.
Я также пытался использовать логическое значение для чтения истины после нажатия клавиши и пробовал несколько разных версий.
Мне просто нужны идеи о том, как заставить изображение персонажа двигаться непрерывно в зависимости от его сохраненной скорости, и сделать шаг изображения один раз за итерацию всего игрового цикла.