Scenario Manual

補足:スクリプトとしてのシナリオ

まず理解しておきたいことは、SRCのシナリオというものは、 一種のプログラムであると言うことです。 SRCというプログラム上で動くものですので、 スクリプトという呼び方をすることもあります。

あくまで参考ではありますが、市販のプログラム手引書を 一度読んでおくとより一層の理解に役立つでしょう。 書式などが流用できるわけではありませんが、 「プログラム」がどういうものかという事を知っておくことは 決してマイナスにはならないでしょう。

まずは基本的なところから触れていきましょう。 全てのイベントコマンドと関数は 「半角英数」で記述されなければなりません。

イベントコマンドとは、TalkコマンドなどのSRC本体に 特定の動作・処理を行なわせるためのコマンドであり、 関数とは、SRC本体にデータや数値などを調べさせたり、 判定させたりするためのものです。 主にSRC本体に特定の動作・処理を要求するものは 全て半角英数で記述されます。

では、半角英数でなくていいものは何でしょうか? 答えは半角英数でなければならないもの以外は 半角でも全角でもどちらでも構いません。

イベントラベル、変数名などはどちらでも構いませんが、 SRC本体で書式が決められているものは きちんと守らなければエラーが発生します。 システム変数などがこの例に当てはまるでしょう。

例えば、ターンイベント。書式は「ターン ターン数 陣営:」です。 この場合「ターン」は全角、「ターン数」は基本的に半角数字、「陣営 」は全角です。 「ターン数」を基本的にと言ったのは、ここに変数を記述することも可能なためです。

また、「ターン」がイベントラベルであり、 ターン数と陣営はイベントラベルの引数になります。 引数というのはそのイベントが発生するタイミングや 条件を決めるために必要なものです。

例えば、「ターン 3 敵:」というイベントラベルがあったとしましょう。 するとこのイベントは3ターン目の敵フェイズになったときに発生し、 それ以外の場合には発生しません。 他に例を挙げると、例えば「攻撃 A B:」というイベントでは、 AがBに攻撃した時に発生します。 ただし、「攻撃B A:」というイベントを設定していない場合は BがAに攻撃した時にも発生します。

それから、イベントラベルや引数の区切りには 半角スペースを入れなければなりません。 これはイベントコマンドの区切りにも同じことが言えます。 全角スペースは文字として認識されることがあるため、使わないで下さい。

行頭のインデントとして全角スペースを使うことは仕様で認められていますが、 これは以前から「なぜか」使用可能だったための特別措置と考えてください。 したがってこれからシナリオを書く時には インデントにも全角スペースは使わないようにするべきです。

なお、インデントというのは、行頭の字下げのことで、 普通は記述した内容をわかりやすくするためにつけられています。 あとでミスがあったときにも分かりやすいので、 インデントは積極的につけるようにしましょう。 ただし、むやみにつけてもかえって混乱する場合があるので、 必要に応じて使ってください。

引数に半角スペースを使った文字列を使いたい場合もあるでしょう。 そういう時はその引数を"(ダブルクォート)で囲みます。 こうすれば"で囲まれた部分が1つの引数として認識されるようになります。 ただし、Talk コマンドとAutoTalkコマンドのセリフ部分だけは"で囲む必要がありません。 なお、ダブルクォートを表示させたい時は文字列を`(バッククォート)で囲む必要があります。

次は変数について。変数は数値や文字列を格納するための、 いわば入れ物と言っていいでしょう。 そして、変数には好きな名前を付けることができます。 全角でも半角でも構いません。 ただし、イベントコマンドやイベントラベル、 それからシステムで指定されているシステム変数、 関数名、陣営名(敵や味方など)、キャラクター名、ユニット名を 変数名としてつけることは誤作動の原因になるので避けましょう。

また、SRCでは、システム上の制限から 「大文字と小文字、ひらがなとカタカナ」の区別ができません。 そのため、Aという変数とaという変数が別のものとして設定されていると SRC本体はどちらを参照していいのか分からず、 Aを参照したいのにaの値を返したりする場合があります。 へんすうとヘンスウなんていうものでも同じ事が起こる場合があります。

それから、アルファベットで記述した、例えば「Variable」という変数がある場合、 それを参照させる時には大文字と小文字は正確に用いる必要があります。 variableで参照しようとしたり、VARIAVLEで参照しようとしたりすると 正しく処理できないことがあるためです。 仮に出来ても、自分自身が混乱するだけですので、やめておきましょう。

それから、半角数字で始まる変数名や、 アンダーバー(_)以外の特殊記号を変数名に使うことも避けてください。 いずれも、誤作動や自分自身の混乱を招く原因になります。 これらには注意を払うように務めましょう。

シナリオマニュアル目次へ

サイトホームへ