| goto ラベル名 | 次に実行するスクリプト上の位置をラベル名に変更する |
| *loop 1 2 3 goto loop | |
| *ラベル名 | gotoの飛び先に指定される |
| *loop 1 2 3 goto loop | |
| if 変数名 = 値① then <変数の値が値①と等しい場合に実行させる内容> else if 変数名 = 値② then <変数の値が値②と等しい場合に実行させる内容> endif |
変数の内容と値を比較し 結果が真ならブロック内の処理を実行する 場合分けの2番目以降はifの代わりにelse ifを使用 比較演算子には=の他に!=<,>,<=,>=が使用可能 |
| 変数 = 1 if 変数 = 1 then 変数は1です else if 変数 != 1 then 変数は1ではありません endif 変数や条件をいじってコンパイルして試してみてください wait 12 | |
| for 変数 = 値① to 値② step 値③ <繰り返し実行させる内容> endfor |
変数が値①から値②まで変化する間ブロック内の処理を繰り返す 1回処理する度に変数は値③ずつ加算される step以降を省略すると加算値は1になる 値①~③は数字・変数どちらでも指定可能 ※値③に変数を使用しその値が負のとき正常に動作しない不具合がある |
| 九の段の答えを言います for 計算 = 9 to 81 step 9 $計算$ endfor 計算終了 | |
| gosub ラベル名 と return |
goto(ジャンプ)とよく似ていますがこちらの命令ではreturnコマンドで戻ってくる (つまり指定したラベルからreturnまでを実行する) ※サブルーチンないから別のサブルーチンを呼ぶことも可能(メモリの許す限り) |
| サブルーチンを呼びます gosub ラベル名 text 0 サブルーチンから戻ってきました スクリプトの順番と実際に実行されている処理の順番を 見比べてみてください endtext end *ラベル名 text 0 サブルーチンです returnまで実行をしたらgosubの位置に戻ります endtext return | |
| wait フレーム数 | 指定フレーム数の間停止する ※1秒=12フレーム(rateコマンドで変更可能) ※0以下の値を指定するとフレームレートに関係なく最少時間だけ停止する。 |
| msg 5秒待ちます . wait 60 | |
| weight フレーム数 | 最後にこのコマンドが呼ばれてから経過した時間と 指定したフレーム数と現在のフレームレートに該当する時間の差分だけ停止する (最少時間=1/36秒) 例えばフレームレート=12で処理に2/36秒かかったとき weight 1を指定すると1/36秒だけ停止 (wait 1なら所持時間に関係なく3/36秒停止してしまう) ※主にアクションゲームのメインループなどで使用。 |
| a = 0 12フレーム(1秒)経過するごとにループします *loop msg $a$秒経過 . a < a + 1 weight 12 goto loop | |
| end | スクリプトを終了する。 ※エディタではエディタ画面に戻り 公開版では最初に戻る |