`

我用Shoes做飞机游戏(1)

阅读更多
这只是一个利用零散时间 学习Ruby Shoes和面向对象的方式来组纪织代码的过程,我希望通过这样一个方式来加强我的面向对象架零件的能力。

我打算做一个可以用键盘控件小飞机的游戏,目前这个是0.0001版啦,很多shoes的api还不怎么会用,目前的这个可以实现利用空格键和点击“开始”键启动飞机向右边飞行。


我要作造一个飞机,这个飞机有状态(停止,飞行中等状态),然后我给它一些行为,让它飞。


class Plane
  def initialize(app)
    @app = app
    @running = false
    @image = @app.image "resources/0001.gif"
    @x = 1
  end

  def start
    @running = true
  end

  def running?
    @running
  end

  def go(x)
    @x += x
    @image.displace @x,30
  end

end

Shoes.app :height => 500 do
  stack do
    background("#1744BF", "#FFFFFF")
    banner("Plane Game")
  end
  
  stack :height => 400 do
    @plane = Plane.new(self)
  end
  
  stack do
    button("Start Game"){ @plane.start }
  end
  
  animate(1) do
    @plane.go(20) if @plane.running?
  end

  keypress do |k|
    @plane.start if k == " "
  end
end



好玩吧。(待续...)
  • 大小: 9.6 KB
1
0
分享到:
评论
1 楼 Hooopo 2009-05-04  
打飞机..

相关推荐

Global site tag (gtag.js) - Google Analytics