使用ruby gosu库以原始口袋妖怪游戏的风格构建基本游戏。我设法弄清楚如何移动最初加载的精灵,但我无法弄清楚如何清除该精灵并绘制新的精灵,例如后视图取而代之。
我一直在查看文档并遇到了"插入"方法,虽然我不确定这是否是我想要的。有什么帮助吗?
我在初始化方法中创建var,然后在以后绘制它:
def initialize @character_image = Gosu::Image.new("media/images/char.png", :tileable => false) end def draw @character_image.draw(@character_location_X, @character_location_Y, 1) end
答案 0 :(得分:0)
您需要为角色创建一个类,这需要一个更新和绘制功能。在更新功能中,当接收到诸如WASD的输入时,您可以切换子画面的图像。如果没有Sprite工作表,则必须加载多个图像并在它们之间切换。
以下是一些红宝石伪代码可以帮助您:
@back_image = Gosu::Image.new("media/images/back.png")
@front_image = Gosu::Image.new("media/images/front.png")
@left_image = Gosu::Image.new("media/images/left.png")
@right_image = Gosu::Image.new("media/images/right.png")
current_image = front_image
这进入了您的更新功能:
if up
current_image = back_image
elsif down
current_image = front_image
elsif right
current_image = right_image
elsif left
current_image = left_image
end
然后在绘图功能中,您要做的就是
def draw
@current_image.draw(@character_location_X, @character_location_Y, 1)
end
这是一种非常基本的方法,但是如果使用Sprite表,则可以创建Gosu可以使用的自己的动画类,该动画类允许您在角色Spritesheet的某些帧范围之间进行选择。