1

タイル (キャラクターを含む) がすべて50x50. 私は前に chingu を使用したことがありませんが、ドキュメントを見て、私はこれを持っています:

class Player < Chingu::GameObject
  def initialize(options)
  end
  def move_left
    @x -= 50
  end
  def move_right
    @x += 50
  end
 end
 class Game < Chingu::Window
   def initialize
     super
     @player = Player.create
     @player.input = {:left => :move_left, :right => :move_right}
   end
 end

この動きを使用すると、ステップ間に流動性がなくなります。さて、標準while key_down?(:left); move_left; endタイプの取引を行ってから、キャラクターをより短い間隔で移動するだけでスムーズになりますが、問題は、キャラクターがグリッドライン間で停止できることです(それが理にかなっている場合)。

move_leftの値をmove_right返す必要があるため、そのメソッド内で再帰を実行しても@x機能しません。誰にもアイデアがありますか、それとも chingu を使用せずにdrawメソッド内のロジックを理解しようとする必要がありますか?

4

0 に答える 0