Windowクラス
RGSS互換ライブラリをちょっとずつ作っているのだが、これはなかなか難しい。
画像の扱い方に対する考え方が違うから、DXRubyの機能では実現できないものが多い。
たとえばSpriteのflashやcolor、toneなど。
これらは実行時に動的に画像を修正して描画するから、DXRubyのようなテクスチャをそのまま描画する系のライブラリでは、とりあえず実装することはできない。
メソッドを呼び出したときにImageオブジェクトを生成して画像を編集すればなんとかならないこともないが、Rubyでやっていては遅いだろう。
SpriteならまだマシだがViewportにも同様の機能があるため、こっちはかなり厳しいことになりそうだ。
難しいことは後回しにして、とりあえず?って感じでWindowクラスを実装してみた。
透明度とかの指定はまだできていないが、ウィンドウの外観を描画することができるようにはなった。
中身の編集やカーソルの移動などはRGSS組み込みライブラリには無いので、RPGのコードのほうで書かれているのだろう。
そこまではサポートできない。
ウィンドウスキンはこちらの仮)ツクールライフさまからいただいてみた。
http://cacaosoft.blog42.fc2.com/?no=16
require 'dxrubyrgss' window = Window.new window.windowskin = Bitmap.new("Window002.png") contents = Bitmap.new(200,200) contents.draw_text(10, 10, 200, 200, "がおー") window.x = 100 window.y = 100 window.width = 200 window.height = 200 window.contents = contents loop do Graphics.update end