Processing::Appからのkey, mouseイベントのフック、修正

 Processing::Appからのkey, mouseイベントのフック - 会者定離で以降なんて書いたんですが
これ実際使おうとすると使えません*w*


 どうしてかと言うと、java.awt.event.KeyEventの仮想キーの定数である
UP,DOWN,RIGHT,LEFTなどを参照出来ないからw;


 標準出力に出力するだけで十分じゃんって、愚か者や
仮想キー定数の定数値なんて覚えてるでしょって、強者でも無い限り
馬鹿で平凡な一般ピープルにとっては

仮想キー定数を使えないのは一大事なのデスw<


 というワケでRubyのクラス継承に割り込んで定数を参照 - 会者定離で以降なんてことを
調べて、以下のように修正します。

module M
  def self.included subclass
    @@sub = subclass
  end
  
  def set
    @x = @y = 10
  end

  def move_rect
    rect @x,@y,10,10
  end

  def keyPressed event
    if key == @@sub::CODED
      case event.key_code
      when @@sub::UP
        @y -= 5 if 0 < @y
      when @@sub::DOWN
        @y += 5 if @y < height
      when @@sub::LEFT
        @x -= 5 if 0 < @x
      when @@sub::RIGHT
        @x += 5 if @x < width
      end
    end
  end
end

class Sketch < Processing::App
  include M
  
  def setup
    set
  end
  
  def draw
    move_rect
  end
end

Sketch.new :title => "Sketch", :width => 800, :height => 600
まあ、まだまだ増長ですけど^^;