// ノベルシーンの読み込み、使用するノベルデータ名を渡す public void LoadEventScene(string novelDataName) { //使用するノベルデータを取得 novelData = Resources.Load <NovelData>("EventData/" + novelDataName); // イベントに登録 SceneManager.sceneLoaded += EventSceneLoaded; // シーン切り替え SceneManager.LoadScene("EventScene"); }
/// <summary> /// コンストラクタ(NovelCommandからTypeを取得) /// </summary> public NovelExecuter(NovelData data) { this.novelData = data; // NovelCommandのインナークラスをすべて取得 var nestedType = typeof(NovelCommand).GetNestedTypes(System.Reflection.BindingFlags.Public); // コマンド以外のクラスも含まれている為、除外しつつコマンドを集計 commandTypeDic = nestedType .Where(type => 0 < type.GetCustomAttributes(typeof(NovelCommandAttribute), false).Length) .Select(type => type) .ToDictionary(type => ((NovelCommandAttribute)type.GetCustomAttributes(typeof(NovelCommandAttribute), false).First()).id); }
/// <summary> /// コンストラクタ /// </summary> /// <param name="data"></param> /// <param name="commandTypeDic"></param> public NovelExecuter(NovelData data, Dictionary <int, Type> commandTypeDic) { this.novelData = data; this.commandTypeDic = commandTypeDic; }