Game Maker Language リファレンス > 組み込み関数 用途別 > リソース操作 > リソース操作・シーケンス > ブロードキャストメッセージ
シーケンスとスプライトはどちらも、その長さに沿った任意の時点で、いわゆるブロードキャストメッセージを生成できます。 これらのメッセージは、アニメーションタイムラインに沿って特定のフレームに追加される単純な文字列であり、タイムラインのそのポイントに到達すると、それをリッスンするすべてのインスタンスに文字列がブロードキャストされます。 ブロードキャストメッセージイベント(「その他」イベントカテゴリにある)を持つインスタンスは、タイムラインで到達したときにメッセージ文字列を受け取ります。その時点で、それを解析してそれに応じて反応するコードを用意する必要があります。 また、シーケンスはブロードキャストメッセージを受け取ることもできますが、これにはまずコードを使用してリスナーメソッドを設定する必要があります(詳細については、シーケンスイベントとモーメントのGMLセクションを参照してください)。
ブロードキャストメッセージイベントがトリガーされると、特別な DS_Map が作成され、組み込み変数 event_data に格納されます。 この変数IDは組み込みのグローバルスコープ変数ですが、それをトリガーしたイベント(この場合はBroadcast Messageイベント)にDSマップデータのみが含まれ、それ以外の場合は常に-1を返します。 イベントが持つキーは次のとおりです。
if event_data[? "event_type"] == "sequence event" { switch (event_data[? "message"]) { case "hit": audio_play_sound(snd_hit, 0, false); break; case "destroy": sequence_destroy(event_data[? "element_id"]); break; } }