我正在尝试重新创建一个简单的游戏,但我被困在我试图让我的角色(或玩家)跳跃的那一刻。我一直在检查 gosu 的示例,但对我来说并不是很清楚。有人能帮我吗?
这是我的窗口代码:
class Game < Gosu::Window
def initialize(background,player)
super 640,480
self.caption = "My First Game!"
@background = background
@player = player
@player.warp(170,352)
@x_back = @y_back = 0
@allow_to_press = true
end
# ...
def update
#...
if Gosu.button_down? Gosu::KbSpace and @allow_to_press
@allow_to_press = false
@player.jump
end
end
end
然后是我的播放器类:
class Player
def initialize(image)
@image = image
@x = @y = @vel_x = @vel_y = @angle = 0.0
@score = 0
end
def warp(x,y)
@x,@y = x,y
end
def draw
@image.draw_rot(@x,@y,1,@angle,0.5,0.5,0.3,0.3)
end
def jump
#@y -= 15 # THIS IS NOT CORRECT
end
end
基本上,这个想法是当你按下空格键时,跳转方法被调用,在这里我应该能够重新创建一个动画来向上移动“y”位置(例如 15 px)然后再向下移动。只是我想改变@y 变量的值,但我不知道如何用动画来做到这一点,然后回到原点。
谢谢!