1
「Rubyでゲームプログラミングを学ぼう」 練習の1つは、ゴスをイメージに読み込んで画面の端から跳ね返すことです。私は練習を続け、画像は上と左のコーナーからうまくバウンスしますが、しばらくの間、画面の端を越えて下側と右側から跳ね返ります。Ruby/Gosuがバウンシングイメージを取得する
require 'gosu'
class Window < Gosu::Window
def initialize
super(800, 600)
self.caption = 'First Game'
@blueheart = Gosu::Image.new('blueheart.png')
@x = 200
@y = 200
@width = 50
@height = 43
@velocity_x = 2
@velocity_y = 2
@direction = 1
end
def update
@x += @velocity_x
@y += @velocity_y
@velocity_x*= -1 if @x + @width /2 > 800 || @x - @width/2 < 0
@velocity_y*= -1 if @y + @height /2 > 600 || @y - @height/2 < 0
end
def draw
@blueheart.draw(@x - @width/2, @y - @height/2, 1)
end
end
window = Window.new
window.show
私はそれがルビーは画像の座標として画像の右上隅を使用する方法とは何かを持っていると思いますが、私は
@blueheart.draw(@x - @width/2, @y - @height/2, 1)
はどのようにすることができ、それを修正することになったと思いましたそれは私が望むように動作させる? ありがとうございました
私はこれがnoobの質問だと確信していますが、私はそれについて具体的に何か情報を見つけることはできません... –