Неустойчивое движение с Руби Госу и Чингу
Я делаю игру типа RPG на основе плиток, где все плитки (включая персонажей) 50x50
, Я раньше не использовал чингу, но, посмотрев документы, у меня есть это:
class Player < Chingu::GameObject
def initialize(options)
end
def move_left
@x -= 50
end
def move_right
@x += 50
end
end
class Game < Chingu::Window
def initialize
super
@player = Player.create
@player.input = {:left => :move_left, :right => :move_right}
end
end
Используя это движение, между шагами нет плавности. Теперь делаю стандарт while key_down?(:left); move_left; end
введите тип сделки, а затем просто переместите символ с меньшими интервалами, чтобы сделать его более плавным, но в итоге проблема заключается в том, что персонаж может остановиться между линиями сетки (если это имеет смысл).
Кажется move_left
а также move_right
нужно вернуть значение @x
поэтому рекурсия внутри этого метода не работает. У кого-нибудь есть какие-либо идеи, или я должен просто не использовать chingu и попытаться выяснить логику внутри draw
метод?