Example #1
0
 //ボスステージ進入失敗
 public void BossStartFailed()
 {
     //表示
     DisplayInfomationText.text = "ゲームオーバー!";
     //キャラクターがゆっくり止まる
     status = Question.SolveStatus.Stoping;
     //SE
     SEManagerPrefab.Play(SEManager.SEs.InCorrect);
 }
Example #2
0
 void Start()
 {
     //SEのインスタンス生成
     SEManagerPrefab      = Instantiate(SEManagerPrefab) as SEManager;
     SEManagerPrefab.name = "SEs";
     //初期化
     Question.QuestionManager.Create(ref QuestionFuncs, SEManagerPrefab, QuestionText, AnswerPrefab, AnswerText, CorrectAnswerText, this, "Lesson" + CurrentlyUserInfo.selectedLevel.ToString());
     status = Question.SolveStatus.Waiting;
 }
Example #3
0
    void Update()
    {
        QuestionFuncs.UpdateQuestion(ref timerForNextQues, ref status);

        /*timerForNextQuesが更新されたら、timerForNextQues秒後に次の問題を出力*/
        if (timerForNextQues > 0.0f)
        {
            timerForNextQues -= Time.deltaTime;
            if (timerForNextQues <= 0)
            {
                timerForNextQues = 0;
                QuestionFuncs.UpdateToNextQuestion();
                timeoutTimer = TIMEOUTTICK;
            }
        }
        else
        {
            if (status == Question.SolveStatus.Solving)
            {
                //制限時間を数える
                timeoutTimer -= Time.deltaTime;
            }

            //時間切れ
            if (timeoutTimer <= 0)
            {
                timerForNextQues = Question.QuestionManager.TICK_X;
                /*間違ったこととみなす*/
                if (status == Question.SolveStatus.Solving)
                {
                    status = Question.SolveStatus.Incorrect;
                }
                QuestionFuncs.ClearQuestion();
                QuestionText.text = "時間切れ";
            }

            //テキストオブジェクトに出力
            TimeoutText.text = "残り:" + (int)timeoutTimer + "秒";

            //タイマーをスクロールバーで表示
            TimerBar.size = timeoutTimer / TIMEOUTTICK;
        }

        ////問題がまだ設定されていない状況なら処理終了
        //if (status == Question.SolveStatus.Solving)
        //    return;

        /*不正解だったらダメージアニメ開始*/
        switch (status)
        {
        case Question.SolveStatus.Correct:
            if (!CurrentlyUserInfo.bBoss)
            {
                CurrentScoreText.text = "点数:" + CurrentlyUserInfo.score.ToString();
            }
            else
            {
                CurrentScoreText.text = "点数:" + (CurrentlyUserInfo.bossScore + CurrentlyUserInfo.score).ToString();
            }
            break;

        case Question.SolveStatus.Incorrect:
            if (!Panel.GetBool("Damaged"))
            {
                Panel.SetBool("Damaged", true);
            }
            break;

        default:
            break;
        }

        //WarningAnimation終了
        if (WarningAnimation && WarningAnimator.GetBool("IsEnd"))
        {
            WarningAnimation = false;
            QuestionFuncs.UpdateToNextQuestion();
        }
    }
 //ステータスを取得
 void GetStatus()
 {
     status = Question_Mng.status;
 }