いちばんやさしいゲームの作り方

文系の人でも、数理学がわからない人でもゲームプログラミングをマスターできるブログ

念願のハンディパソコンが届きましたので、移動中とか眠りに落ちる直前とかまで同人ゲームの設計をやっております(これでネットにつながれば文句ないです)。…で、ちょっと悩み事が出て参りました。

ActionScript によるコンテンツ制作があまりに楽だったので、それを参考にしているのも悪いのですが、イベントを送出するという特性に対して、受け取るという特性も必要か迷っております。

ActionScript では EventDispatcher 、もしくは IEventDispathcer を実装して内部でイベントを処理できるオブジェクトのみがイベントを送出できます。具体的にイベントを構築したり(プログラマが設定できない情報を登録する currentTarget とか)伝播させたりするのはコアのエンジンがやりそうな気もしますので、イベントの送出に特性が必要なのはたぶん仕方ないのだと思います。

ただ、イベントを受け取ることには特性はいらないような気がするのです(今、想定しているゲームの要件ならという条件付きですが)。実は ActionScript もそうなっているのですが、イベントを待ち受けるのに addEventListner() を使わねばならず、これのインタフェースと実装が IEventDispatcher と EventDispathcer にあります。ちょっと、イベントを受け取るという振る舞いを想像するのに Dispatch という単語がピンとこなくて悩んでいました。

Google Maps API なんかですと、イベントは誰でも受け取れて、リスナー登録はイベントクラスの静的メソッドで実現します。こういうの良いかもなぁ…、なんて思ったのですが、これだと private なイベントハンドラが登録できなそうです。

よくわからないのに無理にオブジェクト指向っぽくしているのがいけません。

Contributions




Trackback URL

メルマガ登録・解除
 
挫折不可能!初級ゲームプログラミング完全マニュアル
RSS track feedいちばんやさしいゲームの作り方 カウンター
ブログSEO対策:track word あわせて読みたい SEO STATUS