コール

コールによってメソッド(関数)が呼び出されます。メソッドに決まった動作を記述することで、メソッドを呼び出すだけで一連の動作を実行できます。

コールの基本的な動作は、アセンブラ(マシン語)のコールと同じですが、スタックがありませんのでデータの受け渡しは、グローバル変数(プロパティ)経由になります。

  • 呼び出し先オブジェクトのプロパティに数値をセット
  • メソッドをコール
  • コールされたスクリプト側でプロパティから数値を取り出して、処理する。

メソッドからデータを渡すには、上記と逆の手順になります。

多重コールを考慮する場合は、グローバル変数に受け取ったデータをすぐにローカル変数にコピーしてください。ローカル変数は、呼び出しごとに領域が作成され、多重コールでもデータが保証されています。

カテゴリー: ScriptOverview | コール はコメントを受け付けていません

イベント

スクリプトはイベントによって起動されます。登録されているイベントの条件が満たされると、イベントが発生しスクリプトがコールされます。スクリプトは、コールされるメソッドをあらかじめ登録しておきます。

イベントは設定時に、識別のためのIDを返します。このIDは、設定したイベントをあとで削除するときに、どのイベントを削除するかを特定する数値になります。

カテゴリー: ScriptOverview | イベント はコメントを受け付けていません

条件分岐

if文の次にある変数の内容を評価して、条件分岐します。if – endifで区間を指定します。

例1
if
条件成立の処理
else
条件不成立の処理
endif

例2
if
条件成立の処理
endif

カテゴリー: ScriptOverview | 条件分岐 はコメントを受け付けていません

ラベルジャンプ

ラベルは、jump命令の飛び先を指定します。

“:”で開始される行は、ラベル名になります。ラベルは、BeginFunc-EndFuncの中で使用します。BeginFunc-EndFuncをまたいでジャンプしないでください。


	//skip1にジャンプする
	jump	skip1
	//ここは実行されない
:skip1
	//ここから続きが実行される
カテゴリー: ScriptOverview | ラベルジャンプ はコメントを受け付けていません

命令のパラメータ

パラメータに「変数」が指定されている命令は、変数のかわりに数値をそのまま設定する「直接記述(イミディエート方式)」が可能です。また、オブジェクトに所属する変数だけでなく、外部オブジェクトのグローバル変数にアクセスすることもできます。

  1. 数値指定(整数または小数)
  2. オブジェクトに所属するローカル変数
  3. オブジェクトに所属するグローバル変数
  4. オブジェクトに所属するローカル変数でオブジェクト参照した相手先の変数
  5. オブジェクトに所属するグローバル変数でオブジェクト参照した相手先の変数
  6. 名前でオブジェクト参照した相手先の変数

オブジェクト形式の変数でオブジェクト参照する場合は、オブジェクトの指定と変数名の間にピリオドをいれてください。ピリオドの前後にはスペースはいれないでください。(ピリオドの前後を含めて1つの単語にします)

オブジェクト変数 + “.” + 相手先の変数


//objtrain変数で指定した編成のグローバル変数pxにアクセスする
objtrain.px

名前指定でオブジェクトを参照する場合は、上記のオブジェクト変数のかわりにオブジェクトに設定した名前を使用します。


//TRAIN5という名前の編成のグローバル変数pxにアクセスする
"TRAIN5.px"

命令のパラメータは、データを設定する場合とデータを受け取る場合の2種類があります。データを設定する場合は、変数の代わりに直接、数値を設定できますが、データを受け取る場合は、かならず変数を指定します。

また、ifeq命令のように2つのパラメータのうち1つを変数で指定するする必要のある命令があります。

※レイアウトオブジェクトを名前で指定する場合は、”LAYOUT”としてください。LAYOUTは、レイアウトオブジェクトをあらわすただ1つの名前です。


//レイアウトオブジェクトのグローバル変数pxにアクセスする
"LAYOUT.px"

カテゴリー: ScriptOverview | 命令のパラメータ はコメントを受け付けていません