[前へ] [目次へ] [次へ]

会話できるイベントを追加する

会話できるイベントはサンプルにも入っていますが、
新しく追加したマップに新しく会話できるイベントを追加してみましょう。


●新規イベントを設置する
   編集対象のマップを「チュートリアル1」に切り替え(切り替え方法は前回を参照のこと)、
   イベント編集モード(右上の赤丸部分)になっていることを確認してから、
   「選択」ボタンを押し、「新規イベント」を選択してください。




   「新規イベント」を選択する操作はイベントがない場所で S5キー(キーボードのA) を
   押すことでも同様の操作とすることができます。
   この操作はしばしば使うことになるので覚えておくとよいでしょう。

   新規イベントを選択したら、新規イベントを設置したい場所をダブルクリックします。


   イベントエディターが起動します。
   まず 第2回 と同じ要領でグラフィックを設定してください。

   画面右側の入力領域(青丸の部分)はイベントの実行内容となるFGESスクリプトを記述します。
   FGESはFGSのための専用スクリプト言語で、C++をベースとしてゲーム開発用に最適化されています。
   簡単なことは簡単に、一方で複雑なことは十分にできるように設計しましたので、
   新しくプログラミングを始める人にも対応できる一方、このスクリプトを使いこなせるようになれば
   本格的なプログラミング言語も使いこなせるだけの知識を得られるようになっている(はず)です。

   しかしゲームで扱うデータにはテキストベースの入力だけでは手間の掛かるものが多くあります。
   そこでそういったコマンド群をサクッと扱えるように「スクリプトの挿入」機能が準備されています。
   まずはそれを使って「メッセージの表示」処理を作ってみましょう。
   
   補助コマンドウィンドウを表示してください。(右上の赤丸部分)


   続けてコマンドの挿入ボタンを押します。


   挿入できるコマンドの一覧が表示されるので、「メッセージの表示」を選びます。


   メッセージを入力できるウィンドウが開くので、表示したいメッセージを入力します。
   入力したメッセージがどのように表示されるかは常にプレビューされます。
   この機能にはメッセージの表示内容を凝ったものにするための「特殊文字」が定義されています。
   下側に色々と凡例が示されており、メッセージ内に特殊文字として解釈できる文字があるとその効果が発動します。
   特殊文字は % か @ で始まるので、単に % や @ を表示したい場合は %% や @@ と指定してください。

   入力が終わったら、「挿入して次ページ」を押してください。


   メッセージが挿入され、2ページ目となるメッセージを入力できる状態になります。
   入力が終わったら、今度は「最終ページとして挿入」を押してください。
   この二つのボタンは、以下の違いがあります。
   ●「挿入して次ページ」
      ・メッセージ入力ウィンドウが閉じません。
      ・ゲーム実行時にメッセージの後メッセージウィンドウを消去する処理が行われません。
         別途メッセージウィンドウを消去する処理を行うまで、
         メッセージウィンドウは表示されっぱなしになります。
         (表示したままイベントは先に進み、イベントが完了してもウィンドウが自動消去されることはありません)
   ●「最終ページとして挿入」
      ・メッセージ入力ウィンドウが閉じます。
      ・ゲーム実行時にメッセージの後メッセージウィンドウが消去されます。


   イベントの実行内容となるスクリプトエディタの部分にスクリプトが挿入されました。
   記述にミスがないことを確認するため、「テストコンパイル」ボタンを押してください。
   (コマンドの挿入で追加したスクリプトが誤っているなら機能のバグなのですが、
      自分で書き換えた場合のために押す癖をつけておきましょう)

   
   スクリプトに(実行しなくても分かるような)問題がなければ以下のメッセージが表示されます。
   「テストコンパイル」はスクリプト上に実行プログラムが理解できないような記述がないか、
   またスクリプト上で行った宣言との間で矛盾がないかを調べます。
   (宣言との矛盾というのは、例えば「数値を扱う」と宣言したのに「文字列を指定した」など、
      事前に「●●である」と言った内容と違う内容を実行しようとしているということです)


   スクリプトに問題がある場合、「テストコンパイル」はその問題を示してくれます。
   以下に一例を挙げます。
   
   ●「理解できない記述がある」パターン
      以下のように、意味の分からないものがある場合です。


      「11行目で a は名前っぽいけどそんな名前は知らない」と返しました。


   ●「宣言との矛盾がある」パターン
      以下のように、表示メッセージの部分に数値を指定してみました。


      「9行目で文字列( String )と宣言された場所に整数( Integer )が指定されている」と返しました。


   行番号がずれてる?って思った人。
   実はこれらの行番号は「問題を検知した[式]の最後の行番号」が示されるようになっているのです。
   ここでいう「式」はスクリプトを解釈する単位の一つで、
   「理解できない記述がある」パターンでは式の終わりがわからないため、
   記述したスクリプトの終端までが「式」として読み取られ、欄外の11行目で止まっています。
   「宣言との矛盾がある」パターンでは問題の「式」は8〜9行目の二行に渡る「式」であるため、9行目と示されています。
   そのため、示された行番号以前にも注意を向けるようにしましょう。

   これらのエラーメッセージにはまだ理解できない内容が含まれているかもしれません。
   これらのエラーメッセージには本格的なプログラムを作っている時に必要になる情報も含まれます。
   まずは理解できる部分だけを読み取ることを心がけましょう。
   スクリプトに関する知識が増えるにつれ、読み取れる範囲は増えていくはずです。
   
   
   さて、無事テストコンパイルが成功したらOKを押してイベントエディターを終了します。


   指定した座標に新規イベントが設置され、
   マップイベントを配置していることを示す青色の枠が表示されます。



●動作確認








   作成したイベントと会話できました。
   



[前へ] [目次へ] [次へ]

最終更新 2018/10/29