備忘録の続き。
Excelデータの形式をこんな感じにしたので(下図)、UserScriptManagerのスイッチ文も少しだけアレンジする。
public class UserScriptManager : MonoBehaviour
{
// スクリプト処理
// Excel
Entity_ExcelData entity_ExcelData;
~省略~
// 命令の実行
public void ExecuteStatement(string statement)
{
// 第一引数の中身を判別する。
switch(statement)
{
case "text":
GManager.Instance.mainTextController.DisplayText();
break;
case "bg":
GManager.Instance.imageManager.PutImage(entity_ExcelData.param[GManager.Instance.lineNumber].parameter01, entity_ExcelData.param[GManager.Instance.lineNumber].parameter02);
GManager.Instance.mainTextController.GoToNextLine(); // 画像処理等が全て済んで、テキスト処理が行われるまで再帰
break;
case "rmimg":
GManager.Instance.imageManager.RemoveImage(entity_ExcelData.param[GManager.Instance.lineNumber].parameter01);
GManager.Instance.mainTextController.GoToNextLine(); // 画像処理等が全て済んで、テキスト処理が行われるまで再帰
break;
~省略~
※参考サイトの(https://original-game.com/how-to-make-a-novel-game-in-unity2d/)さんでは、画像表示とかテキスト処理以外の処理があれば全部済ませ、それからテキストを表示しなさいという記述だったので、&textというコマンドを設けたらテキストを表示しなさいという命令を各case文につけることになった。・・・うまい表現方法を思いつかなかった。
それでも今のところはこれでいいので雛形はここで完成。これをベースに試してみたいものを設置したり外したりして実験できそう。
次は、追加としてLive2Dのモデルを表示してみます。
コメント