예제 #1
0
/// <summary>
/// 再生するシナリオを準備
/// </summary>
    private void ProcScenarioData(int nextScenarioNo)
    {
        // 現在のシナリオ番号を次のシナリオ番号に更新
        currentScenarioNo = nextScenarioNo;

        // currentScenarioNoと合致するシナリオをシナリオデータから検索して、再生するシナリオを決定
        ScenarioMasterData.ScenarioData scenarioData = GameData.instance.scenarioSO.scenarioMasterData.scenario.Find(x => x.scenarioNo == currentScenarioNo);

        // 文字送りをするクラスにシナリオをセットして、メッセージを再生する(該当するメソッドを次の手順で追加するので、それまでこの処理はコメントアウトしておきます)
        textMessageViewer.SetUpScenarioData(scenarioData);
    }
예제 #2
0
    /// <summary>
    /// シナリオのメッセージや分岐などを設定
    /// </summary>
    /// <param name="scenarioData"></param>
    public void SetUpScenarioData(ScenarioMasterData.ScenarioData scenarioData)
    {
        Debug.Log("シナリオ番号 : " + scenarioData.scenarioNo + "のシナリオデータをセット");

        // シナリオの各データを準備
        messages = new string[scenarioData.messages.Length];
        messages = scenarioData.messages;

        charaTypes = new CHARA_NAME_TYPE[scenarioData.charaTypes.Length];
        charaTypes = scenarioData.charaTypes;

        branchs = new int[scenarioData.branchs.Length];
        branchs = scenarioData.branchs;

        displayCharas = new Dictionary <int, CHARA_NAME_TYPE[]>(scenarioData.displayCharas);

        //再生するBGMを設定
        bgmNo = scenarioData.bgmNo;

        //取得した番号のBGMを再生
        SoundManager.Instance.PlayBGM((SoundManager.BGM_Type)bgmNo);

        //分岐用のメッセージを設定
        branchMessages = new string[scenarioData.branchMessages.Length];
        branchMessages = scenarioData.branchMessages;

        // 初期化
        messagesIndex         = 0;
        isDisplayedAllMessage = false;

        //シナリオの背景を設定
        imgBackground.sprite = Resources.Load <Sprite>("BackGround/" + scenarioData.backgroundImageNo);

        // 1文字ずつメッセージ表示を開始
        StartCoroutine(DisplayMessage());
        Debug.Log("シナリオ 再生開始");
    }