0

libGosu と Chingu を使用して、基本的なチュートリアル スタイルの宇宙船の武器アップグレードを作成しようとしています。

プレーヤー クラスでは、次のいくつかのバリエーションを試しました。

def fire
  Bullet.create(:x => @x, :y => @y, :angle => @angle)
  Bullet.create(:x => @x + Gosu::offset_x(90, 25), :y => @y + Gosu::offset_y(@angle, 0), :angle => @angle)
end

ある程度は機能しますが、理想的な方法とは言えません。参考までに、Bullet クラスは次のようになります。

class Bullet < Chingu::GameObject
  def initialize(options)
    super(options.merge(:image => Gosu::Image["assets/laser.png"]))
    @speed = 7
    self.velocity_x = Gosu::offset_x(@angle, @speed)
    self.velocity_y = Gosu::offset_y(@angle, @speed)
  end

  def update
    @y += self.velocity_y
    @x += self.velocity_x
  end
end

宇宙船が回転するときに余分な弾丸を適切に整列させるために、「防火」をどのように構築すればよいですか?

4

2 に答える 2