リファレンス URL:alarm_get(index);
「実数型 (Real) 」として戻り値 ※ v1.4.1675 以降追加された関数 アラーム配列から値を取得する関数です。関数には引数として配列要素(index)を与えます。 アラーム配列へのアクセスは従来までの書き方が冗長だったため、シンタックスシュガー(糖衣構文)として新しく用意された関数です。GM:S では各オブジェクト・インスタンス毎にアラームは各一個、配列の要素は 12 個で Built-In として用意されています。アラームとは
alarm は GM:Studio が標準機能として提供している 1D-Array (一次元配列)のこと。 ただしこの配列はデータ型と処理・手続きがあらかじめ結び付けられているので、データ構造の一種(代入した値を勝手に減算していく仕様と、値がゼロになった時にイベントトリガーを発生させる仕様を持つ)とも言える。つまりこの配列は「普通の配列」とは違います。 「Step」数でカウントを測りたい場合などに利用され、いわゆる「タイマー機能(ワンタイムアラーム機能)」を提供する。 配列に値(通常は正の整数)を代入すれば以降 steps 毎、自動的に値は 1 デクリメント( 1 減算)されます。 最終的に値が0
となったらタイマー終了で、0
になった時のイベントとアクションを作っておけば一定時間経過後に指定したアクションを実行するゲームアルゴリズムを簡単に作成できるという便利機能です。
alarm[0 ... 11]
30
の場合、
alarm[0]=room_speed;
alarm_set(0,room_speed);
-1
が返って来た場合、アラームはすでに動作を終了しているという意味に成ります。
スクリプト・サンプル
/* 配列の全要素をチェック、値が0より大きい時に-1を代入しアラームをリセット */ for (var i = 0; i < 12; i++) { if (alarm_get(i) > 0) { alarm_set(i, -1); }; };
Functions/alarm_get