コード例 #1
0
    /// <summary>
    /// StoryCanbasにマス目の内容を表示させるメソッド
    /// </summary>
    /// <param name="story">マス目の内容</param>
    /// <param name="activePlayer">アクティブプレイヤ</param>
    public void Show(StoryList story, Player activePlayer)
    {
        //StoryCanvasを表示させる
        canvas.SetActive(true);
        //テキスト表示をスタートさせるフラグを立てる
        isTextEnd = false;

        if (firstShow)
        {
            image.sprite = first;
            firstShow    = false;
        }
        else
        {
            image.sprite = help;
        }
        //ストーリーの内容を取得する
        var storyDelegate = storyContents.ReturnContents(story);
        var storyStr      = storyDelegate(activePlayer);

        if (story == StoryList.callbattle)
        {
            return;
        }
        //ストーリーの内容をテキスト表示させる
        StartCoroutine(ShowTextFiled.ShowStorys(storyStr, text, Hide));
    }
コード例 #2
0
    /// <summary>
    /// 選択された行動を基に、敵とバトルをするコルーチン
    /// </summary>
    /// <returns></returns>
    IEnumerator Fighting()
    {
        {
            //早いほうに攻撃させ、遅いほうに防御させる
            //バトル結果の文字列と、終了のフラグを受け取る
            (var battleStr, var isEnd) = Direct(battlers[0], battlers[1]);
            //文字を画面に出力
            isTextCoroutineRunning = true;
            var battleStrArray = battleStr.ToArray();
            StartCoroutine(ShowTextFiled.ShowStorys(battleStrArray, text, JugdeIsCoroutineFinish));
            //文字表示終了待ち
            yield return(new WaitUntil(() => !isTextCoroutineRunning));

            //もし戦闘が終わっているのならループ終了
            if (isEnd)
            {
                Hide();
            }

            //遅いほうに攻撃させ、早いほうに防御させる
            //バトル結果の文字列と、終了のフラグを受け取る
            (battleStr, isEnd) = Direct(battlers[1], battlers[0]);
            //文字を画面に出力
            isTextCoroutineRunning = true;
            battleStrArray         = battleStr.ToArray();
            StartCoroutine(ShowTextFiled.ShowStorys(battleStrArray, text, JugdeIsCoroutineFinish));
            //文字表示終了待ち
            yield return(new WaitUntil(() => !isTextCoroutineRunning));

            //もし戦闘が終わっているのならループ終了
            if (isEnd)
            {
                Hide();
            }
        }
        text.text = "どうしますか?";
        buttons.SetActive(true);
    }