« 赤いぷつぷつ | メイン | KAGを使ってみる その2 »

KAGを使ってみる その1

以前に作成したTJSのリバーシをKAGを使って
体裁を整えようと決意しました。

……が、予想以上に難しいことに気づきました。

何より、マウスのイベントを拾う必要があるのですけど、
スクリプトは逐次実行型で書いていくため、
イベントドリブンな記述をするのには厳しすぎます。

# クリックだけでなく、座標や左・右クリックの区別もする必要があるため。

というわけで、悩んだ結果KAGPluginで実装させることに。

画面一覧
・タイトル画面
・対戦相手選択画面
・ゲーム画面

上記の画面構成で作ってみることにしました。
タイトル画面と相手選択画面はグラフィカルマップを
使えばあっというまに実装できるので何の問題もないです。

肝心のゲーム画面はKAGPluginによる実装です。

具体的に言うと、透明のレイヤをひとつかぶせてしまい、
そのレイヤのonMouseDownイベントを拾ってゲームを
進行させていこうかと。

そして画面を右クリックするタイミングでトリガを発行して
KAGに制御を戻してやることにしました。

TJSもKAGもにわかなため、トライアンドエラーの繰返しです。
レイヤ構成は非常に悩んだのですが、こんな感じで考えてます。

背景レイヤ
 KAGの背景をそのまま利用します。
イベント取得用レイヤ
 onMouseDownを取るためのレイヤですが、盤を描くための
 レイヤでもあり、各種オブジェクトのコンテナとして使います。
前景レイヤ
 KAGの前景を利用しようと思いましたが自前で実装します。
メッセージレイヤ
 これが一番厳しいです。
 仮にKAGのメッセージレイヤを使うにしても、TJSから使うには
 どうやらprocessCh()で1文字ずつ呼び出すしかなさそうだったので
 それならばと適当にレイヤを作って、そこにdrawTextで
 オーナードローして表示することに決めました。

ちなみに駒は全て1つ1つがレイヤオブジェクトになっています。

今回はここまで。

About

2007年10月09日 00:00に投稿されたエントリーのページです。

ひとつ前の投稿は「赤いぷつぷつ」です。

次の投稿は「KAGを使ってみる その2」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

メールフォーム

ぽそにメール