言語ゲーム

とあるエンジニアが嘘ばかり書く日記

Twitter: @propella

イベントモデル Tweak の例

  • ScriptEvent
    • Object>>signal: によって作成される。myEventMap を検索し、
  • Object>>myEventMap
    • イベントとハンドラを対応付ける。Object>>privateSignalEvent: によりハンドラは非同期スケジューリングされる。
  • CompiledMethod>>properties
    • メソッドには <キー: 値> の形でプロパティを書ける。
    • もしもキーが on の場合、イベントハンドラとしてイベントマップに登録される。
    • もしもキーが ticking の場合、TickMessageSend として myScript に登録される。
    • もしもキーが get の場合、フィールドとして扱われる。
    • もしもキーが set の場合、フィールドとして扱われる。
    • もしもキーが signals: の場合はシグナル発火らしい。

CCostume>>playerSignal: でイベントが発火
Object>>signal:
Object>>signalEvent:
Object>>privateSignalEvent: でイベントが実行される。