Ejemplo n.º 1
0
        public override void On活性化()
        {
            if (TJAPlayer4.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan)
            {
                return;
            }

            NowShowingNumber = 0;

            if (TJAPlayer4.DTX[0].Dan_Gauge != null)
            {
                Challenge_Gauge = new Dan_C(TJAPlayer4.DTX[0].Dan_Gauge);
            }
            Challenge = new Dan_C[TJAPlayer4.DTX[0].List_DanSongs.Count][];
            for (int i = 0; i < TJAPlayer4.DTX[0].List_DanSongs.Count; i++)
            {
                Challenge[i] = new Dan_C[3];
                for (int n = 0; n < 3; n++)
                {
                    if (TJAPlayer4.DTX[0].List_DanSongs[i] != null && TJAPlayer4.DTX[0].List_DanSongs[i].Dan_C[n] != null)
                    {
                        Challenge[i][n] = new Dan_C(TJAPlayer4.DTX[0].List_DanSongs[i].Dan_C[n]);
                    }
                }
            }

            for (int i = 0; i < 3; i++)
            {
                Status[i] = new ChallengeStatus();
                Status[i].Timer_Amount = new CCounter();
                Status[i].Timer_Gauge  = new CCounter();
                Status[i].Timer_Failed = new CCounter();
            }
            //IsEnded = false;

            nPerfect = new int[TJAPlayer4.DTX[0].List_DanSongs.Count];
            nGood    = new int[TJAPlayer4.DTX[0].List_DanSongs.Count];
            nMiss    = new int[TJAPlayer4.DTX[0].List_DanSongs.Count];
            nRoll    = new int[TJAPlayer4.DTX[0].List_DanSongs.Count];
            nCombo   = new int[TJAPlayer4.DTX[0].List_DanSongs.Count];
            nScore   = new int[TJAPlayer4.DTX[0].List_DanSongs.Count];

            if (TJAPlayer4.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan)
            {
                IsAnimating = true;
            }
            base.On活性化();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// n個の条件で段位認定モードのステータスを返します。
        /// </summary>
        /// <param name="dan_C">条件。</param>
        /// <returns>ExamStatus。</returns>
        public Exam.Status GetExamStatus(Dan_C[][] dan_C, Dan_C dan_Gauge)
        {
            var status = Exam.Status.Better_Success;

            if (dan_Gauge != null && dan_Gauge.GetEnable())
            {
                if (!dan_Gauge.GetCleared()[1])
                {
                    status = Exam.Status.Success;
                }
            }
            for (int i = 0; i < dan_C.Length; i++)
            {
                for (int n = 0; n < 3; n++)
                {
                    if (dan_C[i][n] != null && dan_C[i][n].GetEnable())
                    {
                        if (!dan_C[i][n].GetCleared()[1])
                        {
                            status = Exam.Status.Success;
                        }
                    }
                }
            }
            if (dan_Gauge != null && dan_Gauge.GetEnable())
            {
                if (!dan_Gauge.GetCleared()[0])
                {
                    status = Exam.Status.Failure;
                }
            }
            for (int i = 0; i < dan_C.Length; i++)
            {
                for (int n = 0; n < 3; n++)
                {
                    if (dan_C[i][n] != null && dan_C[i][n].GetEnable())
                    {
                        if (!dan_C[i][n].GetCleared()[0])
                        {
                            status = Exam.Status.Failure;
                        }
                    }
                }
            }
            return(status);
        }
Ejemplo n.º 3
0
        public override void On非活性化()
        {
            if (TJAPlayer4.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan)
            {
                return;
            }
            for (int i = 0; i < Challenge.Length; i++)
            {
                for (int n = 0; n < Challenge[i].Length; n++)
                {
                    Challenge[i][n] = null;
                }
            }
            Challenge_Gauge = null;

            for (int i = 0; i < 3; i++)
            {
                Status[i].Timer_Amount = null;
                Status[i].Timer_Gauge  = null;
                Status[i].Timer_Failed = null;
            }
            //IsEnded = false;
            base.On非活性化();
        }
Ejemplo n.º 4
0
 public void GetExam(out Dan_C[][] Dan_C, out Dan_C Dan_Gauge)
 {
     Dan_C     = Challenge;
     Dan_Gauge = Challenge_Gauge;
 }
Ejemplo n.º 5
0
 public Dan_C(Dan_C dan_C) : this(dan_C.GetExamType(), new int[] { dan_C.GetValue(false), dan_C.GetValue(true) }, dan_C.GetExamRange())
 {
 }