public override void OnManagedリソースの解放()
 {
     Dan_Plate?.Dispose();
     Sound_Section?.t解放する();
     Sound_Failed?.t解放する();
     base.OnManagedリソースの解放();
 }
 public override void OnManagedリソースの解放()
 {
     if (!base.b活性化してない)
     {
         Dan_Plate?.Dispose();
         base.OnManagedリソースの解放();
     }
 }
Beispiel #3
0
 public override void OnManagedリソースの解放()
 {
     if (TJAPlayer4.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan)
     {
         return;
     }
     Dan_Plate?.Dispose();
     Sound_Section?.t解放する();
     Sound_Failed?.t解放する();
     base.OnManagedリソースの解放();
 }
        public override int On進行描画()
        {
            if (TJAPlayer3.stage選曲.n確定された曲の難易度 != (int)Difficulty.Dan)
            {
                return(base.On進行描画());
            }
            Counter_In?.t進行();
            Counter_Wait?.t進行();
            Counter_Out?.t進行();
            Counter_Text?.t進行();

            if (Counter_Text != null)
            {
                if (Counter_Text.n現在の値 >= 2000)
                {
                    for (int i = Counter_Text_Old; i < Counter_Text.n現在の値; i++)
                    {
                        if (i % 2 == 0)
                        {
                            if (TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].TitleTex != null)
                            {
                                TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].TitleTex.Opacity--;
                            }
                            if (TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].SubTitleTex != null)
                            {
                                TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].SubTitleTex.Opacity--;
                            }
                        }
                    }
                }
                else
                {
                    if (TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].TitleTex != null)
                    {
                        TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].TitleTex.Opacity = 255;
                    }
                    if (TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].SubTitleTex != null)
                    {
                        TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].SubTitleTex.Opacity = 255;
                    }
                }
                Counter_Text_Old = Counter_Text.n現在の値;
            }

            for (int i = 0; i < 4; i++)
            {
                Status[i].Timer_Amount?.t進行();
            }

            //for (int i = 0; i < 3; i++)
            //{
            //    if (Challenge[i] != null && Challenge[i].GetEnable())
            //        CDTXMania.act文字コンソール.tPrint(0, 20 * i, C文字コンソール.Eフォント種別.白, Challenge[i].ToString());
            //    else
            //        CDTXMania.act文字コンソール.tPrint(0, 20 * i, C文字コンソール.Eフォント種別.白, "None");
            //}
            //CDTXMania.act文字コンソール.tPrint(0, 80, C文字コンソール.Eフォント種別.白, String.Format("Notes Remain: {0}", CDTXMania.DTX.nノーツ数[3] - (CDTXMania.stage演奏ドラム画面.nヒット数_Auto含む.Drums.Perfect + CDTXMania.stage演奏ドラム画面.nヒット数_Auto含まない.Drums.Perfect) - (CDTXMania.stage演奏ドラム画面.nヒット数_Auto含む.Drums.Great + CDTXMania.stage演奏ドラム画面.nヒット数_Auto含まない.Drums.Great) - (CDTXMania.stage演奏ドラム画面.nヒット数_Auto含む.Drums.Miss + CDTXMania.stage演奏ドラム画面.nヒット数_Auto含まない.Drums.Miss)));

            // 背景を描画する。

            TJAPlayer3.Tx.DanC_Background?.t2D描画(TJAPlayer3.app.Device, 0, 0);



            // 段プレートを描画する。
            Dan_Plate?.t2D中心基準描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_DanC_Dan_Plate[0], TJAPlayer3.Skin.Game_DanC_Dan_Plate[1]);

            DrawExam(Challenge);

            // 幕のアニメーション
            if (Counter_In != null)
            {
                if (Counter_In.b終了値に達してない)
                {
                    for (int i = Counter_In_Old; i < Counter_In.n現在の値; i++)
                    {
                        ScreenPoint[0] += (TJAPlayer3.Skin.nScrollFieldBGX[0] - ScreenPoint[0]) / 180.0;
                        ScreenPoint[1] += ((1280 / 2 + TJAPlayer3.Skin.nScrollFieldBGX[0] / 2) - ScreenPoint[1]) / 180.0;
                    }
                    Counter_In_Old = Counter_In.n現在の値;
                    TJAPlayer3.Tx.DanC_Screen?.t2D描画(TJAPlayer3.app.Device, (int)ScreenPoint[0], TJAPlayer3.Skin.nScrollFieldY[0], new Rectangle(0, 0, TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Height));
                    TJAPlayer3.Tx.DanC_Screen?.t2D描画(TJAPlayer3.app.Device, (int)ScreenPoint[1], TJAPlayer3.Skin.nScrollFieldY[0], new Rectangle(TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, 0, TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Height));
                    //CDTXMania.act文字コンソール.tPrint(0, 420, C文字コンソール.Eフォント種別.白, String.Format("{0} : {1}", ScreenPoint[0], ScreenPoint[1]));
                }
                if (Counter_In.b終了値に達した)
                {
                    Counter_In   = null;
                    Counter_Wait = new CCounter(0, 2299, 1, TJAPlayer3.Timer);
                }
            }
            if (Counter_Wait != null)
            {
                if (Counter_Wait.b終了値に達してない)
                {
                    TJAPlayer3.Tx.DanC_Screen?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nScrollFieldBGX[0], TJAPlayer3.Skin.nScrollFieldY[0]);
                }
                if (Counter_Wait.b終了値に達した)
                {
                    Counter_Wait = null;
                    Counter_Out  = new CCounter(0, 499, 1, TJAPlayer3.Timer);
                    Counter_Text = new CCounter(0, 2899, 1, TJAPlayer3.Timer);
                }
            }
            if (Counter_Text != null)
            {
                if (Counter_Text.b終了値に達してない)
                {
                    var title    = TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].TitleTex;
                    var subTitle = TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].SubTitleTex;
                    if (subTitle == null)
                    {
                        title?.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 1280 / 2 + TJAPlayer3.Skin.nScrollFieldBGX[0] / 2, TJAPlayer3.Skin.nScrollFieldY[0] + 65);
                    }
                    else
                    {
                        title?.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 1280 / 2 + TJAPlayer3.Skin.nScrollFieldBGX[0] / 2, TJAPlayer3.Skin.nScrollFieldY[0] + 45);
                        subTitle?.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 1280 / 2 + TJAPlayer3.Skin.nScrollFieldBGX[0] / 2, TJAPlayer3.Skin.nScrollFieldY[0] + 85);
                    }
                }
                if (Counter_Text.b終了値に達した)
                {
                    Counter_Text = null;
                    IsAnimating  = false;
                }
            }
            if (Counter_Out != null)
            {
                if (Counter_Out.b終了値に達してない)
                {
                    for (int i = Counter_Out_Old; i < Counter_Out.n現在の値; i++)
                    {
                        ScreenPoint[0] += -3;
                        ScreenPoint[1] += 3;
                    }
                    Counter_Out_Old = Counter_Out.n現在の値;
                    TJAPlayer3.Tx.DanC_Screen?.t2D描画(TJAPlayer3.app.Device, (int)ScreenPoint[0], TJAPlayer3.Skin.nScrollFieldY[0], new Rectangle(0, 0, TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Height));
                    TJAPlayer3.Tx.DanC_Screen?.t2D描画(TJAPlayer3.app.Device, (int)ScreenPoint[1], TJAPlayer3.Skin.nScrollFieldY[0], new Rectangle(TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, 0, TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Height));
                    //CDTXMania.act文字コンソール.tPrint(0, 420, C文字コンソール.Eフォント種別.白, String.Format("{0} : {1}", ScreenPoint[0], ScreenPoint[1]));
                }
                if (Counter_Out.b終了値に達した)
                {
                    Counter_Out = null;
                }
            }
            return(base.On進行描画());
        }
        public override int On進行描画()
        {
            if (base.b活性化してない)
            {
                return(0);
            }
            if (base.b初めての進行描画)
            {
                this.ctMainTimer = new CCounter();
                this.ct数字回転      = new CCounter(0, 9, TJAPlayer3.Skin.dbNumberRotationSpeed, TJAPlayer3.Timer);
                this.ct表示用       = new CCounter(0, 0x3e7, 2, TJAPlayer3.Timer);
                this.C           = new CCounter(0, 1, 500, TJAPlayer3.Timer);
                this.C1          = new CCounter(0, 2, 200, TJAPlayer3.Timer);
                this.C2          = new CCounter(0, 5, 130, TJAPlayer3.Timer);
                this.M           = new CCounter(0, 350, 10, TJAPlayer3.Timer);
                this.S           = new CCounter(0, 255, 1, TJAPlayer3.Timer);
                this.R           = new CCounter(0, 8, 60, TJAPlayer3.Timer);
                base.b初めての進行描画   = false;
            }
            ctMainTimer.t進行();
            ct数字回転.t進行Loop();
            ct表示用.t進行();
            C2.t進行();
            C1.t進行();
            S.t進行();
            this.M.t進行Loop();
            this.C.t進行Loop();
            this.R.t進行Loop();

            TJAPlayer3.Tx.Result_Background.t2D描画(TJAPlayer3.app.Device, 0, 0);
            if (TJAPlayer3.Tx.Result_Panel != null)
            {
                TJAPlayer3.Tx.Result_Panel.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultPanelP1X, TJAPlayer3.Skin.nResultPanelP1Y);
            }
            if (TJAPlayer3.Tx.Result_Gauge_Base != null && TJAPlayer3.Tx.Result_Gauge != null)
            {
                //int nRectX = (int)( CDTXMania.stage結果.st演奏記録.Drums.fゲージ / 2) * 12;
                double Rate = TJAPlayer3.stage結果.st演奏記録.Drums.fゲージ;
                //nRectX = CDTXMania.stage結果.st演奏記録.Drums.fゲージ >= 80.0f ? 80 : nRectX;

                if (this.ctMainTimer.n現在の値 >= 1000)
                {
                    //ハード/EXハードゲージ用のBase
                    if (TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.ExHard)
                    {
                        if (TJAPlayer3.Tx.Result_Gauge_Base_ExHard != null)
                        {
                            TJAPlayer3.Tx.Result_Gauge_Base_ExHard.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                        }
                        else if (TJAPlayer3.Tx.Result_Gauge_Base_Hard != null)
                        {
                            TJAPlayer3.Tx.Result_Gauge_Base_Hard.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                        }
                        else
                        {
                            TJAPlayer3.Tx.Result_Gauge_Base.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                        }
                    }
                    else if (TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.Hard)
                    {
                        if (TJAPlayer3.Tx.Result_Gauge_Base_Hard != null)
                        {
                            TJAPlayer3.Tx.Result_Gauge_Base_Hard.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                        }
                        else
                        {
                            TJAPlayer3.Tx.Result_Gauge_Base_Hard.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                        }
                    }
                    else
                    {
                        TJAPlayer3.Tx.Result_Gauge_Base.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                    }

                    #region [ ゲージ本体 ]

                    //ハードゲージ用のゲージ画像の分岐(ゲージ本体のコードを使いまわしたいので)
                    if (TJAPlayer3.Tx.Result_Gauge_ExHard != null && TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.ExHard)
                    {
                        Gauge = TJAPlayer3.Tx.Result_Gauge_ExHard;
                    }
                    else if (TJAPlayer3.Tx.Result_Gauge_Hard != null && (TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.Hard || TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.ExHard))
                    {
                        Gauge = TJAPlayer3.Tx.Result_Gauge_Hard;
                    }
                    else
                    {
                        Gauge = TJAPlayer3.Tx.Gauge[0];
                    }

                    int a  = 4;
                    int b  = 742;
                    int c  = 18;
                    int d  = 481;
                    int a2 = 8;
                    int b2 = 702;

                    // Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 39, d, new Rectangle(b2, 35, 18, 30));3
                    //Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 39 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));2
                    //Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 39 + a + 4, d - 18, new Rectangle(b2 + a2, 17, 18, 18));1


                    if (Rate > 2)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b, d, new Rectangle(0, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + a, d, new Rectangle(a, 35, 18, 15));
                    }
                    if (Rate > 4)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 6)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 2, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 2 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 8)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 3, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 3 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 10)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 4, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 4 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 12)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 5, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 5 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 14)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 6, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 6 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 16)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 7, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 7 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 18)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 8, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 8 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 20)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 9, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 9 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 22)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 10, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 10 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 24)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 11, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 11 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 26)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 12, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 12 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 28)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 13, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 13 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 30)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 14, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 14 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 32)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 15, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 15 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 34)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 16, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 16 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 36)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 17, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 17 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }

                    if (Rate > 38)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 18, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 18 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 40)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 19, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 19 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 42)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 20, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 20 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 44)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 21, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 21 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 46)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 22, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 22 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 48)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 23, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 23 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 50)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 24, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 24 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 52)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 25, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 25 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 54)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 26, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 26 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 56)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 27, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 27 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 58)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 28, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 28 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 60)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 29, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 29 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 62)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 30, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 30 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 64)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 31, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 31 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 66)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 32, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 32 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 68)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 33, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 33 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 70)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 34, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 34 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 72)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 35, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 35 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 74)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 36, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 36 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 76)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 37, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 37 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    if (Rate > 78)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 38, d, new Rectangle(18, 35, 18, 30));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 38 + a, d, new Rectangle(18 + a, 35, 18, 15));
                    }
                    //ここから下はクリア
                    if (Rate > 80)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 39, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 39 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 39 + a + 4, d - 18, new Rectangle(b2 + a2, 17, 18, 18));
                    }
                    if (Rate > 82)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 40, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 40 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 40 + a + 4, d - 18, new Rectangle(b2 + a2 + c, 17, 18, 18));
                    }
                    if (Rate > 84)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 41, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 41 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 41 + a + 4, d - 18, new Rectangle(b2 + a2 + c, 17, 18, 18));
                    }
                    if (Rate > 86)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 42, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 42 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 42 + a + 4, d - 18, new Rectangle(b2 + a2 + c, 17, 18, 18));
                    }
                    if (Rate > 88)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 43, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 43 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 43 + a + 4, d - 18, new Rectangle(b2 + a2 + c, 17, 18, 18));
                    }
                    if (Rate > 90)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 44, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 44 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 44 + a + 4, d - 18, new Rectangle(b2 + a2 + c, 17, 18, 18));
                    }
                    if (Rate > 92)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 45, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 45 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 45 + a + 4, d - 18, new Rectangle(b2 + a2 + c, 17, 18, 18));
                    }
                    if (Rate > 94)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 46, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 46 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 46 + a + 4, d - 18, new Rectangle(b2 + a2 + c, 17, 18, 18));
                    }
                    if (Rate > 96)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 47, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 47 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 47 + a + 4, d - 18, new Rectangle(b2 + a2 + c, 17, 18, 18));
                    }
                    if (Rate > 98)
                    {
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 48, d + 15, new Rectangle(b2, 50, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 48 + a, d, new Rectangle(b2 + a + c, 35, 18, 15));
                        Gauge.t2D描画(TJAPlayer3.app.Device, b + c * 48 + a + 4, d - 18, new Rectangle(b2 + a2 + c, 17, 18, 18));
                    }
                    if (Rate >= 100.0f)
                    {
                        TJAPlayer3.Tx.Gauge_Rainbow.Opacity = 255;
                        TJAPlayer3.Tx.Gauge_Rainbow.t2D描画(TJAPlayer3.app.Device, b - 2, d, new Rectangle(0, 35 * this.R.n現在の値, 711, 35));
                        TJAPlayer3.Tx.Gauge_Line[0].t2D描画(TJAPlayer3.app.Device, b, d - 36);
                    }


                    #endregion
                }
                if (TJAPlayer3.Tx.Gauge_Soul != null)
                {
                    if (TJAPlayer3.Tx.Gauge_Soul_Fire != null && TJAPlayer3.stage結果.st演奏記録.Drums.fゲージ >= 100.0f)
                    {
                        TJAPlayer3.Tx.Gauge_Soul_Fire.t2D描画(TJAPlayer3.app.Device, 1100, 34, new Rectangle(0, 0, 230, 230));
                    }
                    TJAPlayer3.Tx.Gauge_Soul.t2D描画(TJAPlayer3.app.Device, 1174, 107, new Rectangle(0, 0, 80, 80));
                }
                double Rate1 = TJAPlayer3.stage結果.st演奏記録.Drums.fゲージ;
                double Rate2 = TJAPlayer3.stage結果.fMiss率.Drums;
                double 回転値   = 180.0;
                double u     = Math.Sin(this.M.n現在の値 * Math.PI / (this.M.n終了値 * 180.0 / 回転値)) * 23;
                if (this.S.b終了値に達してない)
                {
                    if (TJAPlayer3.Tx.Result_Chara != null)
                    {
                        TJAPlayer3.Tx.Result_Chara[2].Opacity = 0;
                        TJAPlayer3.Tx.Result_Chara[0].Opacity = 225;
                        TJAPlayer3.Tx.Result_Chara[3].Opacity = 0;
                        TJAPlayer3.Tx.Result_Chara[0].t2D描画(TJAPlayer3.app.Device, 0, 268, new Rectangle(530 * this.C.n現在の値, 0, 530, 319));
                    }
                }
                if (this.S.b終了値に達した && Rate1 > 80)
                {
                    TJAPlayer3.Tx.Result_Chara[2].Opacity = 255;
                    TJAPlayer3.Tx.Result_Chara[0].Opacity = 0;
                    TJAPlayer3.Tx.Result_Chara[3].Opacity = 0;
                    if (TJAPlayer3.Tx.Result_Chara[2] != null && C2.b終了値に達してない)
                    {
                        TJAPlayer3.Tx.Result_Chara[2].t2D描画(TJAPlayer3.app.Device, 0, 268, new Rectangle(530 * this.C2.n現在の値, 0, 530, 319));
                    }
                    else
                    {
                        TJAPlayer3.Tx.Result_Chara[2].Opacity = 0;
                        TJAPlayer3.Tx.Result_Chara[0].Opacity = 0;
                        TJAPlayer3.Tx.Result_Chara[3].Opacity = 225;
                        TJAPlayer3.Tx.Result_Chara[3].t2D描画(TJAPlayer3.app.Device, 0, 268 + (float)u);
                    }
                }
                if (this.S.b終了値に達した && Rate1 < 80)
                {
                    TJAPlayer3.Tx.Result_Chara[1].Opacity = 255;
                    TJAPlayer3.Tx.Result_Chara[0].Opacity = 0;
                    if (TJAPlayer3.Tx.Result_Chara[1] != null && C1.b終了値に達してない)
                    {
                        TJAPlayer3.Tx.Result_Chara[1].t2D描画(TJAPlayer3.app.Device, 0, 268, new Rectangle(530 * this.C1.n現在の値, 0, 530, 319));
                    }
                    else
                    {
                        TJAPlayer3.Tx.Result_Chara[1].t2D描画(TJAPlayer3.app.Device, 0, 268, new Rectangle(1060, 0, 530, 319));
                    }
                }
            }



            this.tスコア文字表示(TJAPlayer3.Skin.nResultScoreP1X + 200, TJAPlayer3.Skin.nResultScoreP1Y + 335, string.Format("{0,7:######0}", TJAPlayer3.stage結果.st演奏記録.Drums.nスコア));
            this.t小文字表示(TJAPlayer3.Skin.nResultGreatP1X + 660, TJAPlayer3.Skin.nResultGreatP1Y + 356, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nPerfect数.ToString()));
            this.t小文字表示(TJAPlayer3.Skin.nResultGoodP1X + 660, TJAPlayer3.Skin.nResultGoodP1Y + 382, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nGreat数.ToString()));
            this.t小文字表示(TJAPlayer3.Skin.nResultBadP1X + 660, TJAPlayer3.Skin.nResultBadP1Y + 406, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nMiss数.ToString()));
            this.t小文字表示(TJAPlayer3.Skin.nResultComboP1X + 798, TJAPlayer3.Skin.nResultComboP1Y + 372, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n最大コンボ数.ToString()));
            this.t小文字表示(TJAPlayer3.Skin.nResultRollP1X + 798, TJAPlayer3.Skin.nResultRollP1Y + 431, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n連打数.ToString()));


            #region 段位認定モード用
            if (TJAPlayer3.stage選曲.n確定された曲の難易度 == (int)Difficulty.Dan)
            {
                TJAPlayer3.stage演奏ドラム画面.actDan.DrawExam(TJAPlayer3.stage結果.st演奏記録.Drums.Dan_C);
                switch (TJAPlayer3.stage演奏ドラム画面.actDan.GetExamStatus(TJAPlayer3.stage結果.st演奏記録.Drums.Dan_C))
                {
                case Exam.Status.Failure:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(0, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Success:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0], 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Better_Success:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0] * 2, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                default:
                    break;
                }
                // Dan_Plate
                Dan_Plate?.t2D中心基準描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_Plate_XY[0], TJAPlayer3.Skin.Result_Dan_Plate_XY[1]);
            }
            #endregion


            if (!this.ct表示用.b終了値に達した)
            {
                return(0);
            }
            return(1);
        }
        public override int On進行描画()
        {
            if (base.b活性化してない)
            {
                return(0);
            }
            if (base.b初めての進行描画)
            {
                this.ct表示用     = new CCounter(0, 0x3e7, 2, TJAPlayer3.Timer);
                base.b初めての進行描画 = false;
            }
            if (TJAPlayer3.stage選曲.n確定された曲の難易度 != (int)Difficulty.Dan && TJAPlayer3.stage選曲.n確定された曲の難易度 != (int)Difficulty.Tower)
            {
                #region [ 通常時リザルト ]

                this.ct表示用.t進行();
                ct全体アニメ.t進行();
                ctゲージアニメーション.t進行();
                ctEndAnime.t進行();
                ctBackgroundAnime.t進行Loop();
                ctMountain_ClearIn.t進行();
                ctDonchan_Clear.t進行Loop();
                ctDonchan_Normal.t進行Loop();
                if (TJAPlayer3.Tx.Result_Panel != null)
                {
                    int[] y補正 = { 0, 1, 0, 11, 12 };
                    TJAPlayer3.Tx.Result_Panel.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultPanelP1X, TJAPlayer3.Skin.nResultPanelP1Y);
                    //TJAPlayer3.Tx.Result_Diff_Bar.t2D描画(TJAPlayer3.app.Device, 27, 120 - y補正[TJAPlayer3.stage選曲.n確定された曲の難易度], new Rectangle(0, TJAPlayer3.stage選曲.n確定された曲の難易度 * 50, 153, 50));
                }
                if (TJAPlayer3.Tx.Result_Gauge_Base != null && TJAPlayer3.Tx.Result_Gauge != null)
                {
                    //int nRectX = (int)( CDTXMania.stage結果.st演奏記録.Drums.fゲージ / 2) * 12;
                    double Rate = TJAPlayer3.stage結果.st演奏記録.Drums.fゲージ;
                    //nRectX = CDTXMania.stage結果.st演奏記録.Drums.fゲージ >= 80.0f ? 80 : nRectX;
                    TJAPlayer3.Tx.Result_Gauge_Base.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y);
                    if (ctゲージアニメーション.n現在の値 <= 49)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 57, 141, new RectangleF(3, 0, 9.78f * ctゲージアニメーション.n現在の値, 37));

                        if (ctゲージアニメーション.n現在の値 < 40)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 441, 145, new RectangleF(45, 38, 40, 17));
                        }
                        else
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 441, 145, new RectangleF(2, 38, 37, 17));
                        }
                    }
                    else
                    {
                        ctRainbowGauge.t進行Loop();
                        TJAPlayer3.Tx.Result_Rainbow[ctRainbowGauge.n現在の値].t2D描画(TJAPlayer3.app.Device, 57, 145);
                    }
                }
                if (ct全体アニメ.n現在の値 >= 2000)
                {
                    if (!ctゲージアニメーション.b進行中)
                    {
                        ctゲージアニメーション.t開始(0, (int)Math.Floor(TJAPlayer3.stage結果.st演奏記録.Drums.fゲージ) / 2, 66, TJAPlayer3.Timer);
                    }
                }

                if (TJAPlayer3.stage結果.EndAnime)
                {
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultGreatP1X, TJAPlayer3.Skin.nResultGreatP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nPerfect数.ToString()));
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                    }
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultGoodP1X, TJAPlayer3.Skin.nResultGoodP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nGreat数.ToString()));
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                    }
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultBadP1X, TJAPlayer3.Skin.nResultBadP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nMiss数.ToString()));
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                    }
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultComboP1X, TJAPlayer3.Skin.nResultComboP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n最大コンボ数.ToString()));
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                    }
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = this.ctEndAnime.n現在の値 <= 270 ? 1.3f - (float)Math.Sin((ctEndAnime.n現在の値) / 3 * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultRollP1X, TJAPlayer3.Skin.nResultRollP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n連打数.ToString()));
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                    }

                    if (!b音声再生[5])
                    {
                        TJAPlayer3.Skin.sound決定音.t再生する();
                        b音声再生[5] = true;
                    }

                    {
                        TJAPlayer3.Tx.Result_Score_Number.vc拡大縮小倍率.X = this.ctEndAnime.n現在の値 <= 270 ? 1.0f + (float)Math.Sin((ctEndAnime.n現在の値 / 1.5f * (Math.PI / 180))) * 0.5f : 1.0f - (float)Math.Sin((ctEndAnime.n現在の値 - 270) * 2 * (Math.PI / 180)) * 0.05f;
                        TJAPlayer3.Tx.Result_Score_Number.vc拡大縮小倍率.Y = this.ctEndAnime.n現在の値 <= 270 ? 1.0f + (float)Math.Sin((ctEndAnime.n現在の値 / 1.5f * (Math.PI / 180))) * 0.5f : 1.0f - (float)Math.Sin((ctEndAnime.n現在の値 - 270) * 2 * (Math.PI / 180)) * 0.05f;
                        this.tスコア文字表示(TJAPlayer3.Skin.nResultScoreP1X, TJAPlayer3.Skin.nResultScoreP1Y, string.Format("{0,7:######0}", TJAPlayer3.stage結果.st演奏記録.Drums.nスコア));
                    }

                    /*
                     * TJAPlayer3.Tx.ScoreRank.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 135, 339, new Rectangle(0, (TJAPlayer3.stage結果.st演奏記録[0].nScoreRank[TJAPlayer3.stage選曲.n確定された曲の難易度]) * 120, 140, 120));
                     *
                     * if (TJAPlayer3.ConfigIni.b太鼓パートAutoPlay)
                     * {
                     *      TJAPlayer3.Tx.Result_Crown[2].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 262, 336);
                     * }
                     * else
                     * {
                     *      if (TJAPlayer3.stage結果.st演奏記録[0].bIsClear[TJAPlayer3.stage選曲.n確定された曲の難易度])
                     *      {
                     *              TJAPlayer3.Tx.Result_Crown[0].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 262, 336);
                     *      }
                     *      else if (TJAPlayer3.stage結果.st演奏記録[0].bIsFullCombo[TJAPlayer3.stage選曲.n確定された曲の難易度])
                     *      {
                     *              TJAPlayer3.Tx.Result_Crown[1].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 262, 336);
                     *      }
                     *      else if (TJAPlayer3.stage結果.st演奏記録[0].bIsDondaFullCombo[TJAPlayer3.stage選曲.n確定された曲の難易度])
                     *      {
                     *              TJAPlayer3.Tx.Result_Crown[2].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 262, 336);
                     *      }
                     * }
                     */

                    if (TJAPlayer3.stage結果.st演奏記録[0].fゲージ >= 80.0f)
                    {
                        if (!this.ctDonchan_Clear.b進行中)
                        {
                            this.ctDonchan_Clear.t開始(0, TJAPlayer3.Tx.Result_Donchan_Clear.Length - 1, 1000 / 60, TJAPlayer3.Timer);
                        }
                    }
                }
                else
                {
                    if (ct全体アニメ.n現在の値 >= 2000)
                    {
                        if (ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 1000)
                        {
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 1180 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 1000)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 1180 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 1000)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            this.t小文字表示(TJAPlayer3.Skin.nResultGreatP1X, TJAPlayer3.Skin.nResultGreatP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nPerfect数.ToString()));
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                        }
                        if (ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 1500)
                        {
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 1680 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 1500)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 1680 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 1500)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            this.t小文字表示(TJAPlayer3.Skin.nResultGoodP1X, TJAPlayer3.Skin.nResultGoodP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nGreat数.ToString()));
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                        }
                        if (ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 2000)
                        {
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 2180 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 2000)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 2180 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 2000)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            this.t小文字表示(TJAPlayer3.Skin.nResultBadP1X, TJAPlayer3.Skin.nResultBadP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nMiss数.ToString()));
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                        }
                        if (ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 2500)
                        {
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 2680 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 2500)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 2680 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 2500)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            this.t小文字表示(TJAPlayer3.Skin.nResultRollP1X, TJAPlayer3.Skin.nResultRollP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n連打数.ToString()));
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                        }
                        if (ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 3000)
                        {
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 3180 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 3000)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 3180 ? 1.3f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 3000)) / 2 * (Math.PI / 180)) * 0.3f : 1.0f;
                            this.t小文字表示(TJAPlayer3.Skin.nResultComboP1X, TJAPlayer3.Skin.nResultComboP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n最大コンボ数.ToString()));
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1;
                            TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1;
                        }

                        if (ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 4000)
                        {
                            if (!b音声再生[5])
                            {
                                TJAPlayer3.Skin.sound決定音.t再生する();
                                b音声再生[5] = true;
                            }
                        }

                        if (ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 4000)
                        {
                            TJAPlayer3.Tx.Result_Score_Number.vc拡大縮小倍率.X = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 4270 ? 1.0f + (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 4000)) / 1.5f * (Math.PI / 180)) * 0.5f :
                                                                           ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 4270 && ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 4360 ? 1.0f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 4270)) / 1.5f * (Math.PI / 180)) * 0.05f : 1.0f;

                            TJAPlayer3.Tx.Result_Score_Number.vc拡大縮小倍率.Y = ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 4270 ? 1.0f + (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 4000)) / 1.5f * (Math.PI / 180)) * 0.5f :
                                                                           ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 4270 && ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 4360 ? 1.0f - (float)Math.Sin((ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 4270)) / 1.5f * (Math.PI / 180)) * 0.05f : 1.0f;


                            this.tスコア文字表示(TJAPlayer3.Skin.nResultScoreP1X, TJAPlayer3.Skin.nResultScoreP1Y, string.Format("{0,7:######0}", TJAPlayer3.stage結果.st演奏記録.Drums.nスコア));
                        }

                        /*
                         * if (ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 5000)
                         * {
                         *      if (ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 5180)
                         *              for (int i = 0; i < 3; i++)
                         *              {
                         *                      TJAPlayer3.Tx.ScoreRank.Opacity = (ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 5000)) / 180.0f * 255.0f;
                         *                      TJAPlayer3.Tx.ScoreRank.vc拡大縮小倍率.X = 1.0f + (float)Math.Sin((float)(ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 4910)) / 1.5f * (Math.PI / 180)) * 1.4f;
                         *                      TJAPlayer3.Tx.ScoreRank.vc拡大縮小倍率.Y = 1.0f + (float)Math.Sin((float)(ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 4910)) / 1.5f * (Math.PI / 180)) * 1.4f;
                         *              }
                         *      else if (ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 5270)
                         *              for (int i = 0; i < 3; i++)
                         *              {
                         *                      TJAPlayer3.Tx.ScoreRank.vc拡大縮小倍率.X = 0.5f + (float)Math.Sin((float)(ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 5180)) * (Math.PI / 180)) * 0.5f;
                         *                      TJAPlayer3.Tx.ScoreRank.vc拡大縮小倍率.Y = 0.5f + (float)Math.Sin((float)(ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 5180)) * (Math.PI / 180)) * 0.5f;
                         *              }
                         *
                         *      TJAPlayer3.Tx.ScoreRank.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 135, 339, new Rectangle(0, (TJAPlayer3.stage結果.st演奏記録[0].nScoreRank[TJAPlayer3.stage選曲.n確定された曲の難易度]) * 120, 140, 120));
                         * }
                         *
                         * if (ct全体アニメ.n現在の値 >= 2000 + (ctゲージアニメーション.n終了値 * 66) + 6500)
                         * {
                         *      if (ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 6680)
                         *              for (int i = 0; i < 3; i++)
                         *              {
                         *                      TJAPlayer3.Tx.Result_Crown[i].Opacity = (ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 6500)) / 180.0f * 255.0f;
                         *                      TJAPlayer3.Tx.Result_Crown[i].vc拡大縮小倍率.X = 1.0f + (float)Math.Sin((float)(ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 6410)) / 1.5f * (Math.PI / 180)) * 1.4f;
                         *                      TJAPlayer3.Tx.Result_Crown[i].vc拡大縮小倍率.Y = 1.0f + (float)Math.Sin((float)(ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 6410)) / 1.5f * (Math.PI / 180)) * 1.4f;
                         *              }
                         *      else if (ct全体アニメ.n現在の値 <= 2000 + (ctゲージアニメーション.n終了値 * 66) + 6770)
                         *              for (int i = 0; i < 3; i++)
                         *              {
                         *                      TJAPlayer3.Tx.Result_Crown[i].vc拡大縮小倍率.X = 0.5f + (float)Math.Sin((float)(ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 6680)) * (Math.PI / 180)) * 0.5f;
                         *                      TJAPlayer3.Tx.Result_Crown[i].vc拡大縮小倍率.Y = 0.5f + (float)Math.Sin((float)(ct全体アニメ.n現在の値 - (2000 + (ctゲージアニメーション.n終了値 * 66) + 6680)) * (Math.PI / 180)) * 0.5f;
                         *              }
                         *
                         *      if (TJAPlayer3.ConfigIni.b太鼓パートAutoPlay)
                         *      {
                         *              TJAPlayer3.Tx.Result_Crown[2].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 262, 336);
                         *      }
                         *      else
                         *      {
                         *              if (TJAPlayer3.stage結果.st演奏記録[0].bIsClear[TJAPlayer3.stage選曲.n確定された曲の難易度])
                         *              {
                         *                      TJAPlayer3.Tx.Result_Crown[0].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 262, 336);
                         *              }
                         *              else if (TJAPlayer3.stage結果.st演奏記録[0].bIsFullCombo[TJAPlayer3.stage選曲.n確定された曲の難易度])
                         *              {
                         *                      TJAPlayer3.Tx.Result_Crown[1].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 262, 336);
                         *              }
                         *              else if (TJAPlayer3.stage結果.st演奏記録[0].bIsDondaFullCombo[TJAPlayer3.stage選曲.n確定された曲の難易度])
                         *              {
                         *                      TJAPlayer3.Tx.Result_Crown[2].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 262, 336);
                         *              }
                         *      }
                         * }
                         */
                        if (ct全体アニメ.n現在の値 >= 2000 + (this.ctゲージアニメーション.n終了値 * 66) + 8360 - 85)
                        {
                            if (!this.ctMountain_ClearIn.b進行中)
                            {
                                this.ctMountain_ClearIn.t開始(0, 515, 3, TJAPlayer3.Timer);
                            }

                            if (TJAPlayer3.stage結果.st演奏記録[0].fゲージ >= 80.0f)
                            {
                                if (!this.ctDonchan_Clear.b進行中)
                                {
                                    this.ctDonchan_Clear.t開始(0, TJAPlayer3.Tx.Result_Donchan_Clear.Length - 1, 1000 / 60, TJAPlayer3.Timer);
                                }
                            }
                        }
                    }
                }

                if (!this.ctDonchan_Clear.b進行中)
                {
                    TJAPlayer3.Tx.Result_Donchan_Normal[ctDonchan_Normal.n現在の値].t2D中心基準描画(TJAPlayer3.app.Device, 157, 527);
                }
                else
                {
                    TJAPlayer3.Tx.Result_Donchan_Clear[ctDonchan_Clear.n現在の値].t2D中心基準描画(TJAPlayer3.app.Device, 157, 527);
                }

                if (TJAPlayer3.Tx.Result_Soul_Text != null)
                {
                    if (ctゲージアニメーション.n現在の値 <= 30)
                    {
                        TJAPlayer3.Tx.Result_Soul_Text.t2D中心基準描画(TJAPlayer3.app.Device, 575, 159, new Rectangle(37 * 0, 0, 37, 37));
                    }

                    if (ctゲージアニメーション.n現在の値 > 30 && ctゲージアニメーション.n現在の値 <= 49)
                    {
                        TJAPlayer3.Tx.Result_Soul_Text.t2D中心基準描画(TJAPlayer3.app.Device, 575, 159, new Rectangle(37 * 1, 0, 37, 37));
                    }

                    if (ctゲージアニメーション.n現在の値 >= 50)
                    {
                        this.ctSoulFlash.t進行Loop();
                        this.ctSoul.t進行Loop();

                        TJAPlayer3.Tx.Result_Soul_Fire.t2D中心基準描画(TJAPlayer3.app.Device, 575, 159, new Rectangle(150 * ctSoul.n現在の値, 0, 150, 131));

                        if (ctSoulFlash.n現在の値 >= 1)
                        {
                            TJAPlayer3.Tx.Result_Soul_Text.t2D中心基準描画(TJAPlayer3.app.Device, 575, 159, new Rectangle(37 * 2, 0, 37, 37));
                        }
                        else
                        {
                            TJAPlayer3.Tx.Result_Soul_Text.t2D中心基準描画(TJAPlayer3.app.Device, 575, 159, new Rectangle(37 * 1, 0, 37, 37));
                        }
                    }
                }
                #endregion
            }

            #region 段位認定モード用
            if (TJAPlayer3.stage選曲.n確定された曲の難易度 == (int)Difficulty.Dan)
            {
                TJAPlayer3.stage演奏ドラム画面.actDan.DrawExam(TJAPlayer3.stage結果.st演奏記録.Drums.Dan_C);
                switch (TJAPlayer3.stage演奏ドラム画面.actDan.GetExamStatus(TJAPlayer3.stage結果.st演奏記録.Drums.Dan_C))
                {
                case Exam.Status.Failure:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(0, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Success:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0], 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Better_Success:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0] * 2, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                default:
                    break;
                }
                // Dan_Plate
                Dan_Plate?.t2D中心基準描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_Plate_XY[0], TJAPlayer3.Skin.Result_Dan_Plate_XY[1]);
            }
            #endregion

            if (!this.ct表示用.b終了値に達した)
            {
                return(0);
            }
            return(1);
        }
Beispiel #7
0
        public override int On進行描画()
        {
            if (base.b活性化してない)
            {
                return(0);
            }
            if (base.b初めての進行描画)
            {
                this.ct表示用     = new CCounter(0, 0x3e7, 2, TJAPlayer3.Timer);
                base.b初めての進行描画 = false;
            }
            this.ct表示用.t進行();
            for (int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
            {
                if (TJAPlayer3.Tx.Result_Panel != null)
                {
                    TJAPlayer3.Tx.Result_Panel.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultPanelX[i], TJAPlayer3.Skin.nResultPanelY[i]);
                }
                if (TJAPlayer3.Tx.Result_Score_Text != null)
                {
                    int[] s_y = { 249, 609 };
                    TJAPlayer3.Tx.Result_Score_Text.t2D描画(TJAPlayer3.app.Device, 753, s_y[i]);                     //点
                }
                if (TJAPlayer3.Tx.Result_Judge != null)
                {
                    TJAPlayer3.Tx.Result_Judge.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultJudge_X[i], TJAPlayer3.Skin.nResultJudge_Y[i]);
                }
                if (TJAPlayer3.Tx.Result_Gauge_Base != null && TJAPlayer3.Tx.Result_Gauge != null)
                {
                    double Rate = TJAPlayer3.stage結果.st演奏記録[i].fゲージ;
                    TJAPlayer3.Tx.Result_Gauge_Base.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseX[i], TJAPlayer3.Skin.nResultGaugeBaseY[i], new Rectangle(0, 0, 691, 47));
                    #region [ ゲージ本体 ]
                    int[] y_tmp = { 145, 505 };
                    int   y     = y_tmp[i];
                    if (Rate > 2)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 4)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 12, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 6)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 24, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 8)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 36, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 10)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 49, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 12)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 62, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 14)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 74, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 16)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 86, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 18)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 99, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 20)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 112, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 22)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 125, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 24)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 138, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 26)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 150, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 28)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 162, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 30)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 175, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 32)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 187, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 34)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 200, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 36)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 212, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 38)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 225, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 40)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 238, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 42)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 251, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 44)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 263, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 46)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 276, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 48)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 288, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 50)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 301, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 52)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 313, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 54)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 326, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 56)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 339, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 58)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 352, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 60)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 364, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 62)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 377, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 64)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 390, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 66)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 402, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 68)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 415, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 70)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 427, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 72)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 440, y, new Rectangle(0, 20, 12, 20));
                    }
                    if (Rate > 74)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 452, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 76)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 465, y, new Rectangle(12, 20, 13, 20));
                    }
                    if (Rate > 78)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 478, y, new Rectangle(12, 20, 13, 20));
                    }

                    if (Rate > 80)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 491, y - 20, new Rectangle(25, 0, 12, 40));
                    }
                    if (Rate > 82)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 503, y - 20, new Rectangle(49, 0, 13, 40));
                    }
                    if (Rate > 84)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 516, y - 20, new Rectangle(37, 0, 12, 40));
                    }
                    if (Rate > 86)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 528, y - 20, new Rectangle(49, 0, 13, 40));
                    }
                    if (Rate > 88)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 541, y - 20, new Rectangle(37, 0, 12, 40));
                    }
                    if (Rate > 90)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 553, y - 20, new Rectangle(49, 0, 13, 40));
                    }
                    if (Rate > 92)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 566, y - 20, new Rectangle(49, 0, 13, 40));
                    }
                    if (Rate > 94)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 579, y - 20, new Rectangle(37, 0, 12, 40));
                    }
                    if (Rate > 96)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 591, y - 20, new Rectangle(49, 0, 13, 40));
                    }
                    if (Rate > 98)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 604, y - 20, new Rectangle(37, 0, 12, 40));
                    }
                    if (Rate >= 100)
                    {
                        TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 616, y - 20, new Rectangle(49, 0, 10, 40));
                    }

                    #endregion
                }
                if (TJAPlayer3.Tx.Gauge_Soul != null)
                {
                    int[] y_Fire = { 34, 394 };
                    int[] y_Soul = { 107, 467 };
                    if (TJAPlayer3.Tx.Gauge_Soul_Fire != null && TJAPlayer3.stage結果.st演奏記録[i].fゲージ >= 100.0f)
                    {
                        TJAPlayer3.Tx.Gauge_Soul_Fire.t2D描画(TJAPlayer3.app.Device, 1100, y_Fire[i], new Rectangle(0, 0, 230, 230));
                    }
                    TJAPlayer3.Tx.Gauge_Soul.t2D描画(TJAPlayer3.app.Device, 1174, y_Soul[i], new Rectangle(0, 0, 80, 80));
                }
                //演奏中のやつ使いまわせなかった。ファック。
                this.tスコア文字表示(TJAPlayer3.Skin.nResultScoreX[i] + 50, TJAPlayer3.Skin.nResultScoreY[i], string.Format("{0,4:#####0}", TJAPlayer3.stage結果.st演奏記録[i].nPerfect数 * 2 + TJAPlayer3.stage結果.st演奏記録[i].nGreat数 + TJAPlayer3.stage結果.st演奏記録[i].nGood数));
                TJAPlayer3.act文字コンソール.tPrint(TJAPlayer3.Skin.nResultScoreX[i] + 50, TJAPlayer3.Skin.nResultScoreY[i] + 50, C文字コンソール.Eフォント種別.白, string.Format("{0,7:######0}", TJAPlayer3.stage結果.st演奏記録[i].nスコア));
                this.t小文字表示(TJAPlayer3.Skin.nResultGreatX[i], TJAPlayer3.Skin.nResultGreatY[i], string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録[i].nPerfect数.ToString()));
                this.t小文字表示(TJAPlayer3.Skin.nResultGoodX[i], TJAPlayer3.Skin.nResultGoodY[i], string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録[i].nGreat数 + TJAPlayer3.stage結果.st演奏記録[i].nGood数));
                if (TJAPlayer3.stage結果.st演奏記録[i].nGreat数 > 0 || TJAPlayer3.stage結果.st演奏記録[i].nGood数 > 0)
                {
                    TJAPlayer3.act文字コンソール.tPrint(TJAPlayer3.Skin.nResultGoodX[i] + 110, TJAPlayer3.Skin.nResultGoodY[i] + 12, C文字コンソール.Eフォント種別.白, string.Format("{0:0}+{1:0}", TJAPlayer3.stage結果.st演奏記録[i].nGood数.ToString(), TJAPlayer3.stage結果.st演奏記録[i].nGreat数.ToString()));
                }
                this.t小文字表示(TJAPlayer3.Skin.nResultBadX[i], TJAPlayer3.Skin.nResultBadY[i], string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録[i].nPoor数 + TJAPlayer3.stage結果.st演奏記録[i].nMiss数));
                if (TJAPlayer3.stage結果.st演奏記録[i].nPoor数 > 0 || TJAPlayer3.stage結果.st演奏記録[i].nMiss数 > 0)
                {
                    TJAPlayer3.act文字コンソール.tPrint(TJAPlayer3.Skin.nResultBadX[i] + 110, TJAPlayer3.Skin.nResultBadY[i] + 12, C文字コンソール.Eフォント種別.白, string.Format("{0:0}+{1:0}", TJAPlayer3.stage結果.st演奏記録[i].nPoor数.ToString(), TJAPlayer3.stage結果.st演奏記録[i].nMiss数.ToString()));
                }
                this.t小文字表示(TJAPlayer3.Skin.nResultComboX[i], TJAPlayer3.Skin.nResultComboY[i], string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録[i].n最大コンボ数.ToString()));
                this.t小文字表示(TJAPlayer3.Skin.nResultRollX[i], TJAPlayer3.Skin.nResultRollY[i], string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録[i].n連打数.ToString()));

                #region 段位認定モード用+王冠
                if (TJAPlayer3.stage選曲.n確定された曲の難易度[i] == (int)Difficulty.Dan)
                {
                    TJAPlayer3.stage演奏ドラム画面.actDan.DrawExam(TJAPlayer3.stage結果.st演奏記録[i].Dan_C);
                    switch (TJAPlayer3.stage演奏ドラム画面.actDan.GetExamStatus(TJAPlayer3.stage結果.st演奏記録[i].Dan_C))
                    {
                    case Exam.Status.Failure:
                        TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(0, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                        break;

                    case Exam.Status.Success:
                        TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0], 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                        break;

                    case Exam.Status.Better_Success:
                        TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0] * 2, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                        break;

                    default:
                        break;
                    }
                    // Dan_Plate
                    Dan_Plate?.t2D中心基準描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_Plate_XY[0], TJAPlayer3.Skin.Result_Dan_Plate_XY[1]);
                }
                else
                {
                    int j;
                    if (TJAPlayer3.stage結果.st演奏記録[i].fゲージ < 80)
                    {
                        j = 0;
                    }
                    else if (TJAPlayer3.stage結果.st演奏記録[i].nMiss数_Auto含まない != 0)
                    {
                        j = 1;
                    }
                    else if (TJAPlayer3.stage結果.st演奏記録[i].nGreat数_Auto含まない != 0)
                    {
                        j = 2;
                    }
                    else
                    {
                        j = 3;
                    }
                    if (j != 0 && TJAPlayer3.Tx.Crown_t != null)
                    {
                        TJAPlayer3.Tx.Crown_t.vc拡大縮小倍率.X = 1.0f;
                        TJAPlayer3.Tx.Crown_t.vc拡大縮小倍率.Y = 1.0f;
                        TJAPlayer3.Tx.Crown_t.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Crown_X[i], TJAPlayer3.Skin.Result_Crown_Y[i], new Rectangle(j * 100, 0, 100, 100));
                    }
                }
                #endregion
            }

            if (!this.ct表示用.b終了値に達した)
            {
                return(0);
            }
            return(1);
        }
        public override int On進行描画()
        {
            if (base.b活性化してない)
            {
                return(0);
            }
            if (base.b初めての進行描画)
            {
                this.ct表示用     = new CCounter(0, 0x3e7, 2, TJAPlayer3.Timer);
                base.b初めての進行描画 = false;
            }
            this.ct表示用.t進行();
            if (TJAPlayer3.Tx.Result_Panel != null)
            {
                TJAPlayer3.Tx.Result_Panel.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultPanelP1X, TJAPlayer3.Skin.nResultPanelP1Y);
            }
            if (TJAPlayer3.Tx.Result_Score_Text != null)
            {
                TJAPlayer3.Tx.Result_Score_Text.t2D描画(TJAPlayer3.app.Device, 753, 249);   //点
            }
            if (TJAPlayer3.Tx.Result_Judge != null)
            {
                TJAPlayer3.Tx.Result_Judge.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultJudge1_P1X, TJAPlayer3.Skin.nResultJudge1_P1Y);
            }
            if (TJAPlayer3.Tx.Result_Judge != null)
            {
                //CDTXMania.Tx.Result_Judge.t2D描画( CDTXMania.app.Device, CDTXMania.Skin.nResultJudge2_P1X, CDTXMania.Skin.nResultJudge2_P1Y );
            }
            if (TJAPlayer3.Tx.Result_Gauge_Base != null && TJAPlayer3.Tx.Result_Gauge != null)
            {
                //int nRectX = (int)( CDTXMania.stage結果.st演奏記録.Drums.fゲージ / 2) * 12;
                double Rate = TJAPlayer3.stage結果.st演奏記録.Drums.fゲージ;
                //nRectX = CDTXMania.stage結果.st演奏記録.Drums.fゲージ >= 80.0f ? 80 : nRectX;


                //ハード/EXハードゲージ用のBase
                if (TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.ExHard)
                {
                    if (TJAPlayer3.Tx.Result_Gauge_Base_ExHard != null)
                    {
                        TJAPlayer3.Tx.Result_Gauge_Base_ExHard.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                    }
                    else if (TJAPlayer3.Tx.Result_Gauge_Base_Hard != null)
                    {
                        TJAPlayer3.Tx.Result_Gauge_Base_Hard.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                    }
                    else
                    {
                        TJAPlayer3.Tx.Result_Gauge_Base.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                    }
                }
                else if (TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.Hard)
                {
                    if (TJAPlayer3.Tx.Result_Gauge_Base_Hard != null)
                    {
                        TJAPlayer3.Tx.Result_Gauge_Base_Hard.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                    }
                    else
                    {
                        TJAPlayer3.Tx.Result_Gauge_Base_Hard.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                    }
                }
                else
                {
                    TJAPlayer3.Tx.Result_Gauge_Base.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseP1X, TJAPlayer3.Skin.nResultGaugeBaseP1Y, new Rectangle(0, 0, 691, 47));
                }

                #region [ ゲージ本体 ]

                //ハードゲージ用のゲージ画像の分岐(ゲージ本体のコードを使いまわしたいので)
                if (TJAPlayer3.Tx.Result_Gauge_ExHard != null && TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.ExHard)
                {
                    Gauge = TJAPlayer3.Tx.Result_Gauge_ExHard;
                }
                else if (TJAPlayer3.Tx.Result_Gauge_Hard != null && (TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.Hard || TJAPlayer3.ConfigIni.eGaugeMode == EGaugeMode.ExHard))
                {
                    Gauge = TJAPlayer3.Tx.Result_Gauge_Hard;
                }
                else
                {
                    Gauge = TJAPlayer3.Tx.Result_Gauge;
                }

                if (Rate > 2)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 4)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 12, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 6)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 24, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 8)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 36, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 10)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 49, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 12)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 62, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 14)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 74, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 16)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 86, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 18)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 99, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 20)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 112, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 22)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 125, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 24)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 138, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 26)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 150, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 28)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 162, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 30)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 175, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 32)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 187, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 34)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 200, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 36)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 212, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 38)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 225, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 40)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 238, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 42)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 251, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 44)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 263, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 46)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 276, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 48)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 288, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 50)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 301, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 52)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 313, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 54)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 326, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 56)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 339, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 58)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 352, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 60)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 364, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 62)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 377, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 64)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 390, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 66)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 402, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 68)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 415, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 70)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 427, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 72)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 440, 145, new Rectangle(0, 20, 12, 20));
                }
                if (Rate > 74)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 452, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 76)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 465, 145, new Rectangle(12, 20, 13, 20));
                }
                if (Rate > 78)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 478, 145, new Rectangle(12, 20, 13, 20));
                }

                if (Rate > 80)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 491, 125, new Rectangle(25, 0, 12, 40));
                }
                if (Rate > 82)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 503, 125, new Rectangle(49, 0, 13, 40));
                }
                if (Rate > 84)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 516, 125, new Rectangle(37, 0, 12, 40));
                }
                if (Rate > 86)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 528, 125, new Rectangle(49, 0, 13, 40));
                }
                if (Rate > 88)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 541, 125, new Rectangle(37, 0, 12, 40));
                }
                if (Rate > 90)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 553, 125, new Rectangle(49, 0, 13, 40));
                }
                if (Rate > 92)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 566, 125, new Rectangle(49, 0, 13, 40));
                }
                if (Rate > 94)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 579, 125, new Rectangle(37, 0, 12, 40));
                }
                if (Rate > 96)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 591, 125, new Rectangle(49, 0, 13, 40));
                }
                if (Rate > 98)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 604, 125, new Rectangle(37, 0, 12, 40));
                }
                if (Rate >= 100)
                {
                    Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 616, 125, new Rectangle(49, 0, 10, 40));
                }

                #endregion
            }
            if (TJAPlayer3.Tx.Gauge_Soul != null)
            {
                if (TJAPlayer3.Tx.Gauge_Soul_Fire != null && TJAPlayer3.stage結果.st演奏記録.Drums.fゲージ >= 100.0f)
                {
                    TJAPlayer3.Tx.Gauge_Soul_Fire.t2D描画(TJAPlayer3.app.Device, 1100, 34, new Rectangle(0, 0, 230, 230));
                }
                TJAPlayer3.Tx.Gauge_Soul.t2D描画(TJAPlayer3.app.Device, 1174, 107, new Rectangle(0, 0, 80, 80));
            }
            //演奏中のやつ使いまわせなかった。ファック。
            this.tスコア文字表示(TJAPlayer3.Skin.nResultScoreP1X, TJAPlayer3.Skin.nResultScoreP1Y, string.Format("{0,7:######0}", TJAPlayer3.stage結果.st演奏記録.Drums.nスコア));
            this.t小文字表示(TJAPlayer3.Skin.nResultGreatP1X, TJAPlayer3.Skin.nResultGreatP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nPerfect数.ToString()));
            this.t小文字表示(TJAPlayer3.Skin.nResultGoodP1X, TJAPlayer3.Skin.nResultGoodP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nGreat数.ToString()));
            this.t小文字表示(TJAPlayer3.Skin.nResultBadP1X, TJAPlayer3.Skin.nResultBadP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nMiss数.ToString()));

            this.t小文字表示(TJAPlayer3.Skin.nResultComboP1X, TJAPlayer3.Skin.nResultComboP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n最大コンボ数.ToString()));
            this.t小文字表示(TJAPlayer3.Skin.nResultRollP1X, TJAPlayer3.Skin.nResultRollP1Y, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n連打数.ToString()));
            //CDTXMania.act文字コンソール.tPrint( 960, 200, C文字コンソール.Eフォント種別.白, string.Format( "{0,4:###0}",CDTXMania.stage結果.st演奏記録.Drums.nPerfect数.ToString()) );
            //CDTXMania.act文字コンソール.tPrint( 960, 236, C文字コンソール.Eフォント種別.白, string.Format( "{0,4:###0}",CDTXMania.stage結果.st演奏記録.Drums.nGreat数.ToString()) );
            //CDTXMania.act文字コンソール.tPrint( 960, 276, C文字コンソール.Eフォント種別.白, string.Format( "{0,4:###0}",CDTXMania.stage結果.st演奏記録.Drums.nMiss数.ToString()) );

            //CDTXMania.act文字コンソール.tPrint( 1150, 200, C文字コンソール.Eフォント種別.白, string.Format( "{0,4:###0}",CDTXMania.stage結果.st演奏記録.Drums.n最大コンボ数.ToString()) );
            int num = this.ct表示用.n現在の値;

            //this.txプレイヤーナンバー.t2D描画(CDTXMania.app.Device, 254, 93);
            //this.txネームプレート.t2D描画( CDTXMania.app.Device, 254, 93 );

            #region 段位認定モード用
            if (TJAPlayer3.stage選曲.n確定された曲の難易度 == (int)Difficulty.Dan)
            {
                TJAPlayer3.stage演奏ドラム画面.actDan.DrawExam(TJAPlayer3.stage結果.st演奏記録.Drums.Dan_C);
                switch (TJAPlayer3.stage演奏ドラム画面.actDan.GetExamStatus(TJAPlayer3.stage結果.st演奏記録.Drums.Dan_C))
                {
                case Exam.Status.Failure:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(0, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Success:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0], 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Better_Success:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0] * 2, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                default:
                    break;
                }
                // Dan_Plate
                Dan_Plate?.t2D中心基準描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_Plate_XY[0], TJAPlayer3.Skin.Result_Dan_Plate_XY[1]);
            }
            #endregion


            if (!this.ct表示用.b終了値に達した)
            {
                return(0);
            }
            return(1);
        }
        public override int On進行描画()
        {
            if (base.b活性化してない)
            {
                return(0);
            }
            if (base.b初めての進行描画)
            {
                base.b初めての進行描画 = false;
            }
            if (TJAPlayer3.ConfigIni.bEnableSkinV2)
            {
                this.ct文字V2用.t進行();

                #region [phaseの進行]
                if (ephase_v2 == EPhaseV2.Start)
                {
                    this.ctGauge.n現在の値 = 0;
                    this.ctGauge.t時間Reset();
                    this.NextPhaseV2();
                }
                if (ephase_v2 == EPhaseV2.Gauge)
                {
                    if (this.ctGauge.b終了値に達した)
                    {
                        this.NextPhaseV2();
                    }
                }
                else if (ephase_v2 == EPhaseV2.Skill)
                {
                    this.ctCrown用.n現在の値 = 0;
                    this.ctCrown用.t時間Reset();
                    this.NextPhaseV2();
                }
                else if (ephase_v2 == EPhaseV2.Crown)
                {
                    if (this.ctCrown用.b終了値に達した)
                    {
                        this.NextPhaseV2();
                    }
                }
                else if (ephase_v2 != EPhaseV2.Loop)
                {
                    if (this.ct文字V2用.b終了値に達した)
                    {
                        this.NextPhaseV2();
                    }
                }
                #endregion

                if (ephase_v2 == EPhaseV2.Crown)
                {
                    this.ctCrown用.t進行();
                }
                else if (ephase_v2 == EPhaseV2.Gauge)
                {
                    ctGauge.t進行();
                }

                for (int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
                {
                    if (TJAPlayer3.Tx.Result_v2_Panel != null)
                    {
                        if (TJAPlayer3.Tx.Result_v2_Panel[i] != null)
                        {
                            TJAPlayer3.Tx.Result_v2_Panel[i].t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultV2PanelX[i], TJAPlayer3.Skin.nResultV2PanelY[i]);
                        }
                    }
                    if (TJAPlayer3.Tx.Result_v2_GaugeBack != null)
                    {
                        TJAPlayer3.Tx.Result_v2_GaugeBack.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultV2GaugeBackX[i], TJAPlayer3.Skin.nResultV2GaugeBackY[i]);
                    }
                    if (TJAPlayer3.Tx.Result_v2_GaugeBase != null && TJAPlayer3.Tx.Result_v2_Gauge != null)
                    {
                        int       width = (int)(TJAPlayer3.Tx.Result_v2_Gauge.szTextureSize.Width * (Math.Min((TJAPlayer3.stageResult.st演奏記録[i].fゲージ / 100f), this.ctGauge.n現在の値 / 100f))) / (TJAPlayer3.Tx.Result_v2_Gauge.szTextureSize.Width / 50) * (TJAPlayer3.Tx.Result_v2_Gauge.szTextureSize.Width / 50);                  // 2020/10/13 Mr-Ojii 最後の意味が無いように見える乗算、除算には意味があります。消さないで。
                        Rectangle rec   = new Rectangle(0, 0, width, TJAPlayer3.Tx.Result_v2_Gauge.szTextureSize.Height);
                        TJAPlayer3.Tx.Result_v2_GaugeBase.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultV2GaugeBodyX[i], TJAPlayer3.Skin.nResultV2GaugeBodyY[i]);
                        TJAPlayer3.Tx.Result_v2_Gauge.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultV2GaugeBodyX[i], TJAPlayer3.Skin.nResultV2GaugeBodyY[i], rec);
                    }

                    this.t小文字表示V2(TJAPlayer3.Skin.nResultV2GreatX[i], TJAPlayer3.Skin.nResultV2GreatY[i], TJAPlayer3.stageResult.st演奏記録[i].nPerfect数, false, EPhaseV2.Perfect, i);
                    this.t小文字表示V2(TJAPlayer3.Skin.nResultV2GoodX[i], TJAPlayer3.Skin.nResultV2GoodY[i], TJAPlayer3.stageResult.st演奏記録[i].nGreat数, false, EPhaseV2.Good, i);
                    this.t小文字表示V2(TJAPlayer3.Skin.nResultV2BadX[i], TJAPlayer3.Skin.nResultV2BadY[i], TJAPlayer3.stageResult.st演奏記録[i].nMiss数, false, EPhaseV2.Poor, i);
                    this.t小文字表示V2(TJAPlayer3.Skin.nResultV2RollX[i], TJAPlayer3.Skin.nResultV2RollY[i], TJAPlayer3.stageResult.st演奏記録[i].n連打数, false, EPhaseV2.Roll, i);
                    this.t小文字表示V2(TJAPlayer3.Skin.nResultV2ComboX[i], TJAPlayer3.Skin.nResultV2ComboY[i], TJAPlayer3.stageResult.st演奏記録[i].n最大コンボ数, false, EPhaseV2.Combo, i);

                    this.t小文字表示V2(TJAPlayer3.Skin.nResultV2ScoreX[i], TJAPlayer3.Skin.nResultV2ScoreY[i], TJAPlayer3.stageResult.st演奏記録[i].nスコア, true, EPhaseV2.Score, i);

                    #region 段位認定モード用+王冠
                    if (TJAPlayer3.stage選曲.n確定された曲の難易度[i] == (int)Difficulty.Dan)
                    {
                        TJAPlayer3.stage演奏ドラム画面.actDan.DrawExam(TJAPlayer3.stageResult.st演奏記録[i].Dan_C);

                        TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0] * CrownState[i], 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                        // Dan_Plate
                        Dan_Plate?.t2D描画(TJAPlayer3.app.Device, CTexture.RefPnt.Center, TJAPlayer3.Skin.Result_Dan_Plate_XY[0], TJAPlayer3.Skin.Result_Dan_Plate_XY[1]);
                    }
                    else
                    {
                        if (CrownState[i] != 0 && TJAPlayer3.Tx.Crown_t != null)
                        {
                            TJAPlayer3.Tx.Crown_t.Opacity     = this.ctCrown用.n現在の値;
                            TJAPlayer3.Tx.Crown_t.vcScaling.X = ((this.ctCrown用.n終了値 - this.ctCrown用.n現在の値) / 255f) * 2f + 1.0f;
                            TJAPlayer3.Tx.Crown_t.vcScaling.Y = ((this.ctCrown用.n終了値 - this.ctCrown用.n現在の値) / 255f) * 2f + 1.0f;
                            TJAPlayer3.Tx.Crown_t.t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Center, TJAPlayer3.Skin.Result_v2_Crown_X[i], TJAPlayer3.Skin.Result_v2_Crown_Y[i], new Rectangle(CrownState[i] * 100, 0, 100, 100));
                        }
                    }
                    #endregion
                }
                return((ephase_v2 == EPhaseV2.Loop) ? 1 : 0);
            }
            else
            {
                for (int i = 0; i < this.ct文字アニメ用.Length; i++)
                {
                    if (!this.ToNextPhase[i])
                    {
                        this.ct文字アニメ用[i].t進行();
                    }
                }
                this.ctCrown用.t進行();

                #region [phaseの進行]
                if (ephase == EPhase.Start)
                {
                    ctCrown用.n現在の値 = 0;
                    ctCrown用.t時間Reset();
                    this.NextPhase();
                }
                else if (ephase == EPhase.Crown)
                {
                    if (this.ctCrown用.b終了値に達した || this.AllPlayerCannotGetCrown)
                    {
                        this.NextPhase();
                    }
                }
                else if (ephase == EPhase.HighScore)
                {
                    this.NextPhase();
                }
                else if (ephase != EPhase.Loop)
                {
                    bool bIstrue = true;
                    for (int index = 0; index < TJAPlayer3.ConfigIni.nPlayerCount; index++)
                    {
                        if (!this.ToNextPhase[index])
                        {
                            bIstrue = false;
                        }
                    }

                    if (bIstrue)
                    {
                        this.NextPhase();
                    }
                }
                #endregion

                for (int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
                {
                    if (TJAPlayer3.Tx.Result_Panel != null)
                    {
                        TJAPlayer3.Tx.Result_Panel.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultPanelX[i], TJAPlayer3.Skin.nResultPanelY[i]);
                    }
                    if (TJAPlayer3.Tx.Result_Score_Text != null)
                    {
                        int[] s_y = { 249, 543 };
                        TJAPlayer3.Tx.Result_Score_Text.t2D描画(TJAPlayer3.app.Device, 753, s_y[i]);                         //点
                    }
                    if (TJAPlayer3.Tx.Result_Judge != null)
                    {
                        TJAPlayer3.Tx.Result_Judge.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultJudge_X[i], TJAPlayer3.Skin.nResultJudge_Y[i]);
                    }
                    if (TJAPlayer3.Tx.Result_Gauge_Base != null && TJAPlayer3.Tx.Result_Gauge != null)
                    {
                        double Rate = TJAPlayer3.stageResult.st演奏記録[i].fゲージ;
                        TJAPlayer3.Tx.Result_Gauge_Base.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.nResultGaugeBaseX[i], TJAPlayer3.Skin.nResultGaugeBaseY[i], new Rectangle(0, 0, 691, 47));
                        #region [ ゲージ本体 ]
                        int[] y_tmp = { 145, 439 };
                        int   y     = y_tmp[i];
                        if (Rate > 2)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 4)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 12, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 6)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 24, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 8)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 36, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 10)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 49, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 12)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 62, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 14)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 74, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 16)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 86, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 18)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 99, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 20)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 112, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 22)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 125, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 24)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 138, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 26)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 150, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 28)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 162, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 30)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 175, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 32)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 187, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 34)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 200, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 36)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 212, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 38)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 225, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 40)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 238, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 42)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 251, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 44)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 263, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 46)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 276, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 48)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 288, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 50)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 301, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 52)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 313, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 54)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 326, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 56)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 339, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 58)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 352, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 60)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 364, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 62)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 377, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 64)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 390, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 66)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 402, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 68)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 415, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 70)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 427, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 72)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 440, y, new Rectangle(0, 20, 12, 20));
                        }
                        if (Rate > 74)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 452, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 76)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 465, y, new Rectangle(12, 20, 13, 20));
                        }
                        if (Rate > 78)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 478, y, new Rectangle(12, 20, 13, 20));
                        }

                        if (Rate > 80)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 491, y - 20, new Rectangle(25, 0, 12, 40));
                        }
                        if (Rate > 82)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 503, y - 20, new Rectangle(49, 0, 13, 40));
                        }
                        if (Rate > 84)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 516, y - 20, new Rectangle(37, 0, 12, 40));
                        }
                        if (Rate > 86)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 528, y - 20, new Rectangle(49, 0, 13, 40));
                        }
                        if (Rate > 88)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 541, y - 20, new Rectangle(37, 0, 12, 40));
                        }
                        if (Rate > 90)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 553, y - 20, new Rectangle(49, 0, 13, 40));
                        }
                        if (Rate > 92)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 566, y - 20, new Rectangle(49, 0, 13, 40));
                        }
                        if (Rate > 94)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 579, y - 20, new Rectangle(37, 0, 12, 40));
                        }
                        if (Rate > 96)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 591, y - 20, new Rectangle(49, 0, 13, 40));
                        }
                        if (Rate > 98)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 604, y - 20, new Rectangle(37, 0, 12, 40));
                        }
                        if (Rate >= 100)
                        {
                            TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 559 + 616, y - 20, new Rectangle(49, 0, 10, 40));
                        }

                        #endregion
                    }
                    if (TJAPlayer3.Tx.Gauge_Soul != null)
                    {
                        int[] y_Fire = { 34, 328 };
                        int[] y_Soul = { 107, 401 };
                        if (TJAPlayer3.Tx.Gauge_Soul_Fire != null && TJAPlayer3.stageResult.st演奏記録[i].fゲージ >= 100.0f)
                        {
                            TJAPlayer3.Tx.Gauge_Soul_Fire.t2D描画(TJAPlayer3.app.Device, 1100, y_Fire[i], new Rectangle(0, 0, 230, 230));
                        }
                        TJAPlayer3.Tx.Gauge_Soul.t2D描画(TJAPlayer3.app.Device, 1174, y_Soul[i], new Rectangle(0, 0, 80, 80));
                    }
                    //演奏中のやつ使いまわせなかった。ファック。
                    this.t小文字表示(TJAPlayer3.Skin.nResultScoreX[i], TJAPlayer3.Skin.nResultScoreY[i], TJAPlayer3.stageResult.st演奏記録[i].nスコア, true, EPhase.Score, i);
                    this.t小文字表示(TJAPlayer3.Skin.nResultGreatX[i], TJAPlayer3.Skin.nResultGreatY[i], TJAPlayer3.stageResult.st演奏記録[i].nPerfect数, false, EPhase.Perfect, i);
                    this.t小文字表示(TJAPlayer3.Skin.nResultGoodX[i], TJAPlayer3.Skin.nResultGoodY[i], TJAPlayer3.stageResult.st演奏記録[i].nGreat数, false, EPhase.Good, i);
                    this.t小文字表示(TJAPlayer3.Skin.nResultBadX[i], TJAPlayer3.Skin.nResultBadY[i], TJAPlayer3.stageResult.st演奏記録[i].nMiss数, false, EPhase.Poor, i);

                    this.t小文字表示(TJAPlayer3.Skin.nResultComboX[i], TJAPlayer3.Skin.nResultComboY[i], TJAPlayer3.stageResult.st演奏記録[i].n最大コンボ数, false, EPhase.Combo, i);
                    this.t小文字表示(TJAPlayer3.Skin.nResultRollX[i], TJAPlayer3.Skin.nResultRollY[i], TJAPlayer3.stageResult.st演奏記録[i].n連打数, false, EPhase.Roll, i);

                    #region 段位認定モード用+王冠
                    if (TJAPlayer3.stage選曲.n確定された曲の難易度[i] == (int)Difficulty.Dan)
                    {
                        TJAPlayer3.stage演奏ドラム画面.actDan.DrawExam(TJAPlayer3.stageResult.st演奏記録[i].Dan_C);

                        TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0] * CrownState[i], 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                        // Dan_Plate
                        Dan_Plate?.t2D描画(TJAPlayer3.app.Device, CTexture.RefPnt.Center, TJAPlayer3.Skin.Result_Dan_Plate_XY[0], TJAPlayer3.Skin.Result_Dan_Plate_XY[1]);
                    }
                    else
                    {
                        if (CrownState[i] != 0 && TJAPlayer3.Tx.Crown_t != null)
                        {
                            TJAPlayer3.Tx.Crown_t.Opacity     = this.ctCrown用.n現在の値;
                            TJAPlayer3.Tx.Crown_t.vcScaling.X = ((this.ctCrown用.n終了値 - this.ctCrown用.n現在の値) / 255f) * 2f + 1.0f;
                            TJAPlayer3.Tx.Crown_t.vcScaling.Y = ((this.ctCrown用.n終了値 - this.ctCrown用.n現在の値) / 255f) * 2f + 1.0f;
                            TJAPlayer3.Tx.Crown_t.t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Center, TJAPlayer3.Skin.Result_Crown_X[i], TJAPlayer3.Skin.Result_Crown_Y[i], new Rectangle(CrownState[i] * 100, 0, 100, 100));
                        }
                    }
                    #endregion
                }

                return((this.ephase == EPhase.Loop) ? 1 : 0);
            }
        }
Beispiel #10
0
        public override int On進行描画()
        {
            if (CDTXMania.stage選曲.n確定された曲の難易度 != (int)Difficulty.Dan)
            {
                return(base.On進行描画());
            }
            Counter_In?.t進行();
            Counter_Wait?.t進行();
            Counter_Out?.t進行();
            Counter_Text?.t進行();

            if (Counter_Text != null)
            {
                if (Counter_Text.n現在の値 >= 2000)
                {
                    for (int i = Counter_Text_Old; i < Counter_Text.n現在の値; i++)
                    {
                        if (i % 2 == 0)
                        {
                            if (CDTXMania.DTX.List_DanSongs[NowShowingNumber].TitleTex != null)
                            {
                                CDTXMania.DTX.List_DanSongs[NowShowingNumber].TitleTex.n透明度--;
                            }
                            if (CDTXMania.DTX.List_DanSongs[NowShowingNumber].SubTitleTex != null)
                            {
                                CDTXMania.DTX.List_DanSongs[NowShowingNumber].SubTitleTex.n透明度--;
                            }
                        }
                    }
                }
                else
                {
                    if (CDTXMania.DTX.List_DanSongs[NowShowingNumber].TitleTex != null)
                    {
                        CDTXMania.DTX.List_DanSongs[NowShowingNumber].TitleTex.n透明度 = 255;
                    }
                    if (CDTXMania.DTX.List_DanSongs[NowShowingNumber].SubTitleTex != null)
                    {
                        CDTXMania.DTX.List_DanSongs[NowShowingNumber].SubTitleTex.n透明度 = 255;
                    }
                }
                Counter_Text_Old = Counter_Text.n現在の値;
            }

            for (int i = 0; i < 3; i++)
            {
                Status[i].Timer_Amount?.t進行();
            }

            //for (int i = 0; i < 3; i++)
            //{
            //    if (Challenge[i] != null && Challenge[i].GetEnable())
            //        CDTXMania.act文字コンソール.tPrint(0, 20 * i, C文字コンソール.Eフォント種別.白, Challenge[i].ToString());
            //    else
            //        CDTXMania.act文字コンソール.tPrint(0, 20 * i, C文字コンソール.Eフォント種別.白, "None");
            //}
            //CDTXMania.act文字コンソール.tPrint(0, 80, C文字コンソール.Eフォント種別.白, String.Format("Notes Remain: {0}", CDTXMania.DTX.nノーツ数[3] - (CDTXMania.stage演奏ドラム画面.nヒット数_Auto含む.Drums.Perfect + CDTXMania.stage演奏ドラム画面.nヒット数_Auto含まない.Drums.Perfect) - (CDTXMania.stage演奏ドラム画面.nヒット数_Auto含む.Drums.Great + CDTXMania.stage演奏ドラム画面.nヒット数_Auto含まない.Drums.Great) - (CDTXMania.stage演奏ドラム画面.nヒット数_Auto含む.Drums.Miss + CDTXMania.stage演奏ドラム画面.nヒット数_Auto含まない.Drums.Miss)));

            // 背景を描画する。

            CDTXMania.Tx.DanC_Background?.t2D描画(CDTXMania.app.Device, 0, 0);


            // 残り音符数を描画する。
            var notesRemain = CDTXMania.DTX.nノーツ数[3] - (CDTXMania.stage演奏ドラム画面.nヒット数_Auto含む.Drums.Perfect + CDTXMania.stage演奏ドラム画面.nヒット数_Auto含まない.Drums.Perfect) - (CDTXMania.stage演奏ドラム画面.nヒット数_Auto含む.Drums.Great + CDTXMania.stage演奏ドラム画面.nヒット数_Auto含まない.Drums.Great) - (CDTXMania.stage演奏ドラム画面.nヒット数_Auto含む.Drums.Miss + CDTXMania.stage演奏ドラム画面.nヒット数_Auto含まない.Drums.Miss);

            DrawNumber(notesRemain, CDTXMania.Skin.Game_DanC_Number_XY[0], CDTXMania.Skin.Game_DanC_Number_XY[1], CDTXMania.Skin.Game_DanC_Number_Padding);

            // 段プレートを描画する。
            Dan_Plate?.t2D中心基準描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_Dan_Plate[0], CDTXMania.Skin.Game_DanC_Dan_Plate[1]);

            for (int i = 0; i < this.ExamCount; i++)
            {
                #region ゲージの土台を描画する。
                CDTXMania.Tx.DanC_Base?.t2D描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1], CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * i + (i * CDTXMania.Skin.Game_DanC_Padding));
                #endregion


                #region ゲージを描画する。
                var drawGaugeType = 0;
                if (Challenge[i].GetExamRange() == Exam.Range.More)
                {
                    if (Challenge[i].GetAmountToPercent() >= 100)
                    {
                        drawGaugeType = 2;
                    }
                    else if (Challenge[i].GetAmountToPercent() >= 70)
                    {
                        drawGaugeType = 1;
                    }
                    else
                    {
                        drawGaugeType = 0;
                    }
                }
                else
                {
                    if (Challenge[i].GetAmountToPercent() >= 100)
                    {
                        drawGaugeType = 2;
                    }
                    else if (Challenge[i].GetAmountToPercent() > 70)
                    {
                        drawGaugeType = 1;
                    }
                    else
                    {
                        drawGaugeType = 0;
                    }
                }
                CDTXMania.Tx.DanC_Gauge[drawGaugeType]?.t2D拡大率考慮下基準描画(CDTXMania.app.Device,
                                                                      CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Offset[0], CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Offset[1], new Rectangle(0, 0, (int)(Challenge[i].GetAmountToPercent() * 9.26), CDTXMania.Tx.DanC_Gauge[drawGaugeType].szテクスチャサイズ.Height));
                #endregion

                #region 現在の値を描画する。
                var nowAmount = 0;
                if (Challenge[i].GetExamRange() == Exam.Range.Less)
                {
                    nowAmount = Challenge[i].Value[0] - Challenge[i].Amount;
                }
                else
                {
                    nowAmount = Challenge[i].Amount;
                }
                if (nowAmount < 0)
                {
                    nowAmount = 0;
                }

                DrawNumber(nowAmount, CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Number_Small_Number_Offset[0], CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Number_Small_Number_Offset[1], CDTXMania.Skin.Game_DanC_Number_Small_Padding, CDTXMania.Skin.Game_DanC_Number_Small_Scale, CDTXMania.Skin.Game_DanC_Number_Small_Scale, ScoreScale[Status[i].Timer_Amount.n現在の値]);

                // 単位(あれば)
                switch (Challenge[i].GetExamType())
                {
                case Exam.Type.Gauge:
                    // パーセント
                    CDTXMania.Tx.DanC_ExamUnit?.t2D拡大率考慮下基準描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Number_Small_Number_Offset[0] + CDTXMania.Skin.Game_DanC_Number_Padding / 4 - CDTXMania.Skin.Game_DanC_Percent_Hit_Score_Padding[0], CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Number_Small_Number_Offset[1], new Rectangle(0, CDTXMania.Skin.Game_DanC_ExamUnit_Size[1] * 0, CDTXMania.Skin.Game_DanC_ExamUnit_Size[0], CDTXMania.Skin.Game_DanC_ExamUnit_Size[1]));
                    break;

                case Exam.Type.Score:
                    CDTXMania.Tx.DanC_ExamUnit?.t2D拡大率考慮下基準描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Number_Small_Number_Offset[0] + CDTXMania.Skin.Game_DanC_Number_Padding / 4 - CDTXMania.Skin.Game_DanC_Percent_Hit_Score_Padding[2], CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Number_Small_Number_Offset[1], new Rectangle(0, CDTXMania.Skin.Game_DanC_ExamUnit_Size[1] * 2, CDTXMania.Skin.Game_DanC_ExamUnit_Size[0], CDTXMania.Skin.Game_DanC_ExamUnit_Size[1]));

                    // 点
                    break;

                case Exam.Type.Roll:
                case Exam.Type.Hit:
                    CDTXMania.Tx.DanC_ExamUnit?.t2D拡大率考慮下基準描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Number_Small_Number_Offset[0] + CDTXMania.Skin.Game_DanC_Number_Padding / 4 - CDTXMania.Skin.Game_DanC_Percent_Hit_Score_Padding[1], CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Number_Small_Number_Offset[1], new Rectangle(0, CDTXMania.Skin.Game_DanC_ExamUnit_Size[1] * 1, CDTXMania.Skin.Game_DanC_ExamUnit_Size[0], CDTXMania.Skin.Game_DanC_ExamUnit_Size[1]));

                    // 打
                    break;

                default:
                    // 何もしない
                    break;
                }

                #endregion


                #region 条件の文字を描画する。
                var offset = CDTXMania.Skin.Game_DanC_Exam_Offset[0];
                //offset -= CDTXMania.Skin.Game_DanC_ExamRange_Padding;
                // 条件の範囲
                CDTXMania.Tx.DanC_ExamRange?.t2D拡大率考慮下基準描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + offset - CDTXMania.Tx.DanC_ExamRange.szテクスチャサイズ.Width, CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Exam_Offset[1], new Rectangle(0, CDTXMania.Skin.Game_DanC_ExamRange_Size[1] * (int)Challenge[i].GetExamRange(), CDTXMania.Skin.Game_DanC_ExamRange_Size[0], CDTXMania.Skin.Game_DanC_ExamRange_Size[1]));
                //offset -= CDTXMania.Skin.Game_DanC_ExamRange_Padding;
                offset -= CDTXMania.Skin.Game_DanC_ExamRange_Padding;

                // 単位(あれば)
                switch (Challenge[i].GetExamType())
                {
                case Exam.Type.Gauge:
                    // パーセント
                    CDTXMania.Tx.DanC_ExamUnit?.t2D拡大率考慮下基準描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + offset - CDTXMania.Tx.DanC_ExamUnit.szテクスチャサイズ.Width, CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Exam_Offset[1], new Rectangle(0, CDTXMania.Skin.Game_DanC_ExamUnit_Size[1] * 0, CDTXMania.Skin.Game_DanC_ExamUnit_Size[0], CDTXMania.Skin.Game_DanC_ExamUnit_Size[1]));
                    offset -= CDTXMania.Skin.Game_DanC_Percent_Hit_Score_Padding[0];
                    break;

                case Exam.Type.Score:
                    CDTXMania.Tx.DanC_ExamUnit?.t2D拡大率考慮下基準描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + offset - CDTXMania.Tx.DanC_ExamUnit.szテクスチャサイズ.Width, CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Exam_Offset[1], new Rectangle(0, CDTXMania.Skin.Game_DanC_ExamUnit_Size[1] * 2, CDTXMania.Skin.Game_DanC_ExamUnit_Size[0], CDTXMania.Skin.Game_DanC_ExamUnit_Size[1]));
                    offset -= CDTXMania.Skin.Game_DanC_Percent_Hit_Score_Padding[2];

                    // 点
                    break;

                case Exam.Type.Roll:
                case Exam.Type.Hit:
                    CDTXMania.Tx.DanC_ExamUnit?.t2D拡大率考慮下基準描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + offset - CDTXMania.Tx.DanC_ExamUnit.szテクスチャサイズ.Width, CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Exam_Offset[1], new Rectangle(0, CDTXMania.Skin.Game_DanC_ExamUnit_Size[1] * 1, CDTXMania.Skin.Game_DanC_ExamUnit_Size[0], CDTXMania.Skin.Game_DanC_ExamUnit_Size[1]));
                    offset -= CDTXMania.Skin.Game_DanC_Percent_Hit_Score_Padding[1];

                    // 打
                    break;

                default:
                    // 何もしない
                    break;
                }

                // 条件の数字
                DrawNumber(Challenge[i].Value[0], CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + offset, CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Exam_Offset[1], CDTXMania.Skin.Game_DanC_Number_Small_Padding, CDTXMania.Skin.Game_DanC_Number_Small_Scale, CDTXMania.Skin.Game_DanC_Number_Small_Scale);
                //offset -= CDTXMania.Skin.Game_DanC_Number_Small_Padding * (Challenge[i].Value[0].ToString().Length + 1);
                offset -= CDTXMania.Skin.Game_DanC_Number_Small_Padding * (Challenge[i].Value[0].ToString().Length);

                // 条件の種類
                CDTXMania.Tx.DanC_ExamType?.t2D拡大率考慮下基準描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1] + offset - CDTXMania.Tx.DanC_ExamType.szテクスチャサイズ.Width, CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * (i + 1) + ((i + 1) * CDTXMania.Skin.Game_DanC_Padding) - CDTXMania.Skin.Game_DanC_Exam_Offset[1], new Rectangle(0, CDTXMania.Skin.Game_DanC_ExamType_Size[1] * (int)Challenge[i].GetExamType(), CDTXMania.Skin.Game_DanC_ExamType_Size[0], CDTXMania.Skin.Game_DanC_ExamType_Size[1]));
                #endregion

                #region 条件達成失敗の画像を描画する。
                if (Challenge[i].GetReached())
                {
                    CDTXMania.Tx.DanC_Failed.t2D描画(CDTXMania.app.Device, CDTXMania.Skin.Game_DanC_X[ExamCount - 1], CDTXMania.Skin.Game_DanC_Y[ExamCount - 1] + CDTXMania.Skin.Game_DanC_Size[1] * i + (i * CDTXMania.Skin.Game_DanC_Padding));
                }
                #endregion
            }

            // 幕のアニメーション
            if (Counter_In != null)
            {
                if (Counter_In.b終了値に達してない)
                {
                    for (int i = Counter_In_Old; i < Counter_In.n現在の値; i++)
                    {
                        ScreenPoint[0] += (CDTXMania.Skin.nScrollFieldBGX[0] - ScreenPoint[0]) / 180.0;
                        ScreenPoint[1] += ((1280 / 2 + CDTXMania.Skin.nScrollFieldBGX[0] / 2) - ScreenPoint[1]) / 180.0;
                    }
                    Counter_In_Old = Counter_In.n現在の値;
                    CDTXMania.Tx.DanC_Screen?.t2D描画(CDTXMania.app.Device, (int)ScreenPoint[0], CDTXMania.Skin.nScrollFieldY[0], new Rectangle(0, 0, CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Height));
                    CDTXMania.Tx.DanC_Screen?.t2D描画(CDTXMania.app.Device, (int)ScreenPoint[1], CDTXMania.Skin.nScrollFieldY[0], new Rectangle(CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, 0, CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Height));
                    //CDTXMania.act文字コンソール.tPrint(0, 420, C文字コンソール.Eフォント種別.白, String.Format("{0} : {1}", ScreenPoint[0], ScreenPoint[1]));
                }
                if (Counter_In.b終了値に達した)
                {
                    Counter_In   = null;
                    Counter_Wait = new CCounter(0, 2299, 1, CDTXMania.Timer);
                }
            }
            if (Counter_Wait != null)
            {
                if (Counter_Wait.b終了値に達してない)
                {
                    CDTXMania.Tx.DanC_Screen?.t2D描画(CDTXMania.app.Device, CDTXMania.Skin.nScrollFieldBGX[0], CDTXMania.Skin.nScrollFieldY[0]);
                }
                if (Counter_Wait.b終了値に達した)
                {
                    Counter_Wait = null;
                    Counter_Out  = new CCounter(0, 499, 1, CDTXMania.Timer);
                    Counter_Text = new CCounter(0, 2899, 1, CDTXMania.Timer);
                }
            }
            if (Counter_Text != null)
            {
                if (Counter_Text.b終了値に達してない)
                {
                    if (CDTXMania.DTX.List_DanSongs[NowShowingNumber].SubTitleTex == null)
                    {
                        CDTXMania.DTX.List_DanSongs[NowShowingNumber].TitleTex?.t2D中心基準描画(CDTXMania.app.Device, 1280 / 2 + CDTXMania.Skin.nScrollFieldBGX[0] / 2, CDTXMania.Skin.nScrollFieldY[0] + 65);
                    }
                    else
                    {
                        CDTXMania.DTX.List_DanSongs[NowShowingNumber].TitleTex?.t2D中心基準描画(CDTXMania.app.Device, 1280 / 2 + CDTXMania.Skin.nScrollFieldBGX[0] / 2, CDTXMania.Skin.nScrollFieldY[0] + 45);
                        CDTXMania.DTX.List_DanSongs[NowShowingNumber].SubTitleTex?.t2D中心基準描画(CDTXMania.app.Device, 1280 / 2 + CDTXMania.Skin.nScrollFieldBGX[0] / 2, CDTXMania.Skin.nScrollFieldY[0] + 85);
                    }
                }
                if (Counter_Text.b終了値に達した)
                {
                    Counter_Text = null;
                    IsAnimating  = false;
                }
            }
            if (Counter_Out != null)
            {
                if (Counter_Out.b終了値に達してない)
                {
                    for (int i = Counter_Out_Old; i < Counter_Out.n現在の値; i++)
                    {
                        ScreenPoint[0] += -3;
                        ScreenPoint[1] += 3;
                    }
                    Counter_Out_Old = Counter_Out.n現在の値;
                    CDTXMania.Tx.DanC_Screen?.t2D描画(CDTXMania.app.Device, (int)ScreenPoint[0], CDTXMania.Skin.nScrollFieldY[0], new Rectangle(0, 0, CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Height));
                    CDTXMania.Tx.DanC_Screen?.t2D描画(CDTXMania.app.Device, (int)ScreenPoint[1], CDTXMania.Skin.nScrollFieldY[0], new Rectangle(CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, 0, CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, CDTXMania.Tx.DanC_Screen.szテクスチャサイズ.Height));
                    //CDTXMania.act文字コンソール.tPrint(0, 420, C文字コンソール.Eフォント種別.白, String.Format("{0} : {1}", ScreenPoint[0], ScreenPoint[1]));
                }
                if (Counter_Out.b終了値に達した)
                {
                    Counter_Out = null;
                }
            }
            return(base.On進行描画());
        }
Beispiel #11
0
        public override int On進行描画()
        {
            if (base.b活性化してない)
            {
                return(0);
            }
            if (base.b初めての進行描画)
            {
                this.ct表示用     = new CCounter(0, 0x3e7, 2, TJAPlayer3.Timer);
                base.b初めての進行描画 = false;
            }

            ct全体進行.t進行();
            ctゲージアニメ.t進行();

            if (TJAPlayer3.stage選曲.n確定された曲の難易度 != (int)Difficulty.Dan)
            {
                #region [ 通常時リザルト ]

                int AnimeCount = 3000 + (int)ctゲージアニメ.n終了値 * 59;

                TJAPlayer3.Tx.Result_Panel.t2D描画(TJAPlayer3.app.Device, 0, 0);

                TJAPlayer3.Tx.Result_Diff_Bar.t2D描画(TJAPlayer3.app.Device, 18, 101, new RectangleF(0, TJAPlayer3.stage選曲.n確定された曲の難易度 * 54, 185, 54));

                TJAPlayer3.Tx.Result_Gauge_Base.t2D描画(TJAPlayer3.app.Device, 55, 140);

                if (ct全体進行.n現在の値 >= 2000)
                {
                    #region [ ゲージ関連 ]

                    if (!b音声再生[0])
                    {
                        TJAPlayer3.Skin.soundGauge.t再生する();
                        b音声再生[0] = true;
                    }

                    if (!ctゲージアニメ.b進行中)
                    {
                        ctゲージアニメ.t開始(0, (int)TJAPlayer3.stage結果.st演奏記録.Drums.fゲージ / 2, 59, TJAPlayer3.Timer);
                    }

                    TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 57, 140, new RectangleF(0, 0, 9.74f * ctゲージアニメ.n現在の値, 36));

                    if (ctゲージアニメ.b終了値に達した)
                    {
                        if (ctゲージアニメ.n現在の値 != 50)
                        {
                            TJAPlayer3.Skin.soundGauge.t停止する();
                        }
                        else
                        {
                            if (!TJAPlayer3.Skin.soundGauge.b再生中)
                            {
                                TJAPlayer3.Skin.soundGauge.t停止する();
                            }

                            if (!ct虹ゲージアニメ.b進行中)
                            {
                                ct虹ゲージアニメ.t開始(0, 40, 1000 / 60, TJAPlayer3.Timer);
                            }

                            if (!ctSoul.b進行中)
                            {
                                ctSoul.t開始(0, 8, 33, TJAPlayer3.Timer);
                            }

                            ct虹ゲージアニメ.t進行Loop();
                            ctSoul.t進行Loop();

                            TJAPlayer3.Tx.Result_Rainbow[ct虹ゲージアニメ.n現在の値].t2D描画(TJAPlayer3.app.Device, 57, 144);

                            TJAPlayer3.Tx.Result_Soul_Fire.t2D中心基準描画(TJAPlayer3.app.Device, 576, 160, new Rectangle(150 * ctSoul.n現在の値, 0, 150, 131));

                            TJAPlayer3.Tx.Result_Soul_Text.t2D中心基準描画(TJAPlayer3.app.Device, 575, 159, new Rectangle(37 * 1, 0, 37, 37));

                            if (ctSoul.n現在の値 % 2 == 0)
                            {
                                TJAPlayer3.Tx.Result_Soul_Text.t2D中心基準描画(TJAPlayer3.app.Device, 575, 159, new Rectangle(37 * 2, 0, 37, 37));
                            }
                        }
                    }

                    #endregion
                }

                if (ct全体進行.n現在の値 >= 2000)
                {
                    #region [ 成績(スコアを除く)関連 ]

                    int Interval = 420;

                    float AddCount = 135;

                    if (ct全体進行.n現在の値 >= AnimeCount)
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体進行.n現在の値 <= AnimeCount + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - AnimeCount) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体進行.n現在の値 <= AnimeCount + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - AnimeCount) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultNumberP1X, TJAPlayer3.Skin.nResultNumberY + TJAPlayer3.Skin.nResultNumberYPadding * 0, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nPerfect数.ToString()));
                        if (!this.b音声再生[1])
                        {
                            TJAPlayer3.Skin.soundPon.t再生する();
                            this.b音声再生[1] = true;
                        }
                    }
                    if (ct全体進行.n現在の値 >= AnimeCount + Interval)
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体進行.n現在の値 <= AnimeCount + Interval + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + Interval)) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体進行.n現在の値 <= AnimeCount + Interval + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + Interval)) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultNumberP1X, TJAPlayer3.Skin.nResultNumberY + TJAPlayer3.Skin.nResultNumberYPadding * 1, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nGreat数.ToString()));
                        if (!this.b音声再生[2])
                        {
                            TJAPlayer3.Skin.soundPon.t再生する();
                            this.b音声再生[2] = true;
                        }
                    }
                    if (ct全体進行.n現在の値 >= AnimeCount + Interval * 2)
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体進行.n現在の値 <= AnimeCount + Interval * 2 + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + Interval * 2)) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体進行.n現在の値 <= AnimeCount + Interval * 2 + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + Interval * 2)) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultNumberP1X, TJAPlayer3.Skin.nResultNumberY + TJAPlayer3.Skin.nResultNumberYPadding * 2, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.nMiss数.ToString()));
                        if (!this.b音声再生[3])
                        {
                            TJAPlayer3.Skin.soundPon.t再生する();
                            this.b音声再生[3] = true;
                        }
                    }
                    if (ct全体進行.n現在の値 >= AnimeCount + Interval * 3)
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体進行.n現在の値 <= AnimeCount + Interval * 3 + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + Interval * 3)) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体進行.n現在の値 <= AnimeCount + Interval * 3 + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + Interval * 3)) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultNumberP1X, TJAPlayer3.Skin.nResultNumberY + TJAPlayer3.Skin.nResultNumberYPadding * 3, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n連打数.ToString()));
                        if (!this.b音声再生[4])
                        {
                            TJAPlayer3.Skin.soundPon.t再生する();
                            this.b音声再生[4] = true;
                        }
                    }
                    if (ct全体進行.n現在の値 >= AnimeCount + Interval * 4)
                    {
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体進行.n現在の値 <= AnimeCount + Interval * 4 + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + Interval * 4)) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体進行.n現在の値 <= AnimeCount + Interval * 4 + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + Interval * 4)) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
                        this.t小文字表示(TJAPlayer3.Skin.nResultNumberP1X, TJAPlayer3.Skin.nResultNumberY + TJAPlayer3.Skin.nResultNumberYPadding * 4, string.Format("{0,4:###0}", TJAPlayer3.stage結果.st演奏記録.Drums.n最大コンボ数.ToString()));
                        if (!this.b音声再生[5])
                        {
                            TJAPlayer3.Skin.soundPon.t再生する();
                            this.b音声再生[5] = true;
                        }
                    }

                    #endregion

                    #region [ スコア関連 ]

                    if (ct全体進行.n現在の値 >= AnimeCount + Interval * 4 + 840)
                    {
                        int AnimeCount1 = AnimeCount + Interval * 4 + 840;

                        TJAPlayer3.Tx.Result_Score_Number.vc拡大縮小倍率.X = ct全体進行.n現在の値 <= AnimeCount1 + 270 ? 1.0f + (float)Math.Sin((ct全体進行.n現在の値 - AnimeCount1) / 1.5f * (Math.PI / 180)) * 0.65f :
                                                                       ct全体進行.n現在の値 <= AnimeCount1 + 360 ? 1.0f - (float)Math.Sin((ct全体進行.n現在の値 - AnimeCount1 - 270) * (Math.PI / 180)) * 0.1f : 1.0f;
                        TJAPlayer3.Tx.Result_Score_Number.vc拡大縮小倍率.Y = ct全体進行.n現在の値 <= AnimeCount1 + 270 ? 1.0f + (float)Math.Sin((ct全体進行.n現在の値 - AnimeCount1) / 1.5f * (Math.PI / 180)) * 0.65f :
                                                                       ct全体進行.n現在の値 <= AnimeCount1 + 360 ? 1.0f - (float)Math.Sin((ct全体進行.n現在の値 - AnimeCount1 - 270) * (Math.PI / 180)) * 0.1f : 1.0f;

                        this.tスコア文字表示(TJAPlayer3.Skin.nResultScoreP1X, TJAPlayer3.Skin.nResultScoreP1Y, string.Format("{0,7:######0}", TJAPlayer3.stage結果.st演奏記録.Drums.nスコア));

                        if (!b音声再生[6])
                        {
                            TJAPlayer3.Skin.soundScoreDon.t再生する();
                            b音声再生[6] = true;
                        }
                    }

                    #endregion
                }

                if (ctゲージアニメ.n現在の値 != 50)
                {
                    TJAPlayer3.Tx.Result_Gauge.t2D描画(TJAPlayer3.app.Device, 441, 142, new RectangleF(ctゲージアニメ.n現在の値 < 40 ? 0 : 42, 35, 42, 20));

                    TJAPlayer3.Tx.Result_Soul_Text.t2D中心基準描画(TJAPlayer3.app.Device, 575, 159, new Rectangle(37 * (ctゲージアニメ.n現在の値 <= 30 ? 0 : 1), 0, 37, 37));
                }

                #endregion
            }
            else
            {
                #region 段位時リザルト

                switch (TJAPlayer3.stage演奏ドラム画面.actDan.GetExamStatus(TJAPlayer3.stage結果.st演奏記録.Drums.Dan_C))
                {
                case Exam.Status.Failure:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(0, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Success:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0], 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Better_Success:
                    TJAPlayer3.Tx.Result_Dan?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_XY[0], TJAPlayer3.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer3.Skin.Result_Dan[0] * 2, 0, TJAPlayer3.Skin.Result_Dan[0], TJAPlayer3.Skin.Result_Dan[1]));
                    break;

                default:
                    break;
                }

                Dan_Plate?.t2D中心基準描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Dan_Plate_XY[0], TJAPlayer3.Skin.Result_Dan_Plate_XY[1]);

                #endregion
            }

            if (!this.ct表示用.b終了値に達した)
            {
                return(0);
            }
            return(1);
        }
Beispiel #12
0
        public override int On進行描画()
        {
            if (base.b活性化してない)
            {
                return(0);
            }
            if (base.b初めての進行描画)
            {
                this.ct表示用     = new CCounter(0, 0x3e7, 2, TJAPlayer4.Timer);
                base.b初めての進行描画 = false;
            }
            this.ct表示用.t進行();
            for (int nPlayer = 0; nPlayer < TJAPlayer4.ConfigIni.nPlayerCount; nPlayer++)
            {
                TJAPlayer4.Tx.Result_Panel?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_Panel_X[nPlayer], TJAPlayer4.Skin.Result_Panel_Y[nPlayer]);
                TJAPlayer4.Tx.Result_Score_Text?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_ScoreText_X[nPlayer], TJAPlayer4.Skin.Result_ScoreText_Y[nPlayer]);                 //点
                TJAPlayer4.Tx.Result_Judge?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_Judge_X[nPlayer], TJAPlayer4.Skin.Result_Judge_Y[nPlayer]);
                TJAPlayer4.Tx.Result_Gauge_Base[nPlayer]?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_GaugeBase_X[nPlayer], TJAPlayer4.Skin.Result_GaugeBase_Y[nPlayer], new Rectangle(0, 0, 691, 47));
                for (int nGauge = 2; nGauge <= TJAPlayer4.stage結果.st演奏記録.Drums.fゲージ[nPlayer]; nGauge += 2)
                {
                    int       px  = (nGauge - 2) * 616 / 98;
                    Rectangle rec = new Rectangle(0, 0, 13, 40);
                    if (nGauge >= 100)
                    {
                        rec = new Rectangle(49, 0, 10, 40);
                    }
                    else if (nGauge > 80)
                    {
                        rec = new Rectangle(37, 0, 13, 40);
                    }
                    else if (nGauge == 80)
                    {
                        rec = new Rectangle(25, 0, 13, 40);
                    }
                    else if (nGauge == 40)
                    {
                        rec = new Rectangle(12, 0, 13, 40);
                    }
                    if (TJAPlayer4.stage結果.st演奏記録.Drums.fゲージ[nPlayer] >= nGauge + 2)
                    {
                        TJAPlayer4.Tx.Result_Gauge[nPlayer]?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_GaugeBody_X[nPlayer] + px, TJAPlayer4.Skin.Result_GaugeBody_Y[nPlayer], rec);
                    }
                }
                if (TJAPlayer4.stage結果.st演奏記録.Drums.fゲージ[nPlayer] >= 100.0f)
                {
                    TJAPlayer4.Tx.Gauge_Soul_Fire?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_GaugeSoulFire_X[nPlayer], TJAPlayer4.Skin.Result_GaugeSoulFire_Y[nPlayer], new Rectangle(0, 0, 230, 230));
                }
                TJAPlayer4.Tx.Gauge_Soul?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_GaugeSoul_X[nPlayer], TJAPlayer4.Skin.Result_GaugeSoul_Y[nPlayer], new Rectangle(0, 0, 80, 80));
                //演奏中のやつ使いまわせなかった。ファック。
                //↑使い回すことはできるけれど、一度格納したほうが安全
                this.tスコア文字表示(TJAPlayer4.Skin.Result_Score_X[nPlayer], TJAPlayer4.Skin.Result_Score_Y[nPlayer], string.Format("{0,7:######0}", TJAPlayer4.stage結果.st演奏記録.Drums.nスコア[nPlayer]));
                this.t小文字表示(TJAPlayer4.Skin.Result_Great_X[nPlayer], TJAPlayer4.Skin.Result_Great_Y[nPlayer], string.Format("{0,4:###0}", TJAPlayer4.stage結果.st演奏記録.Drums.nPerfect数[nPlayer].ToString()));
                this.t小文字表示(TJAPlayer4.Skin.Result_Good_X[nPlayer], TJAPlayer4.Skin.Result_Good_Y[nPlayer], string.Format("{0,4:###0}", TJAPlayer4.stage結果.st演奏記録.Drums.nGreat数[nPlayer].ToString()));
                this.t小文字表示(TJAPlayer4.Skin.Result_Bad_X[nPlayer], TJAPlayer4.Skin.Result_Bad_Y[nPlayer], string.Format("{0,4:###0}", TJAPlayer4.stage結果.st演奏記録.Drums.nMiss数[nPlayer].ToString()));
                this.t小文字表示(TJAPlayer4.Skin.Result_Combo_X[nPlayer], TJAPlayer4.Skin.Result_Combo_Y[nPlayer], string.Format("{0,4:###0}", TJAPlayer4.stage結果.st演奏記録.Drums.n最大コンボ数[nPlayer].ToString()));
                this.t小文字表示(TJAPlayer4.Skin.Result_Roll_X[nPlayer], TJAPlayer4.Skin.Result_Roll_Y[nPlayer], string.Format("{0,4:###0}", TJAPlayer4.stage結果.st演奏記録.Drums.n連打数[nPlayer].ToString()));
            }

            #region 段位認定モード用
            if (TJAPlayer4.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan)
            {
                DanExamChangeCount.t進行Loop();
                TJAPlayer4.stage演奏ドラム画面.actDan.DrawExam(TJAPlayer4.stage結果.st演奏記録.Drums.Dan_C[DanExamChangeCount.n現在の値]);
                switch (TJAPlayer4.stage演奏ドラム画面.actDan.GetExamStatus(TJAPlayer4.stage結果.st演奏記録.Drums.Dan_C, TJAPlayer4.stage結果.st演奏記録.Drums.Dan_Gauge))
                {
                case Exam.Status.Failure:
                    TJAPlayer4.Tx.Result_Dan?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_Dan_XY[0], TJAPlayer4.Skin.Result_Dan_XY[1], new Rectangle(0, 0, TJAPlayer4.Skin.Result_Dan[0], TJAPlayer4.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Success:
                    TJAPlayer4.Tx.Result_Dan?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_Dan_XY[0], TJAPlayer4.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer4.Skin.Result_Dan[0], 0, TJAPlayer4.Skin.Result_Dan[0], TJAPlayer4.Skin.Result_Dan[1]));
                    break;

                case Exam.Status.Better_Success:
                    TJAPlayer4.Tx.Result_Dan?.t2D描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_Dan_XY[0], TJAPlayer4.Skin.Result_Dan_XY[1], new Rectangle(TJAPlayer4.Skin.Result_Dan[0] * 2, 0, TJAPlayer4.Skin.Result_Dan[0], TJAPlayer4.Skin.Result_Dan[1]));
                    break;

                default:
                    break;
                }
                // Dan_Plate
                Dan_Plate?.t2D中心基準描画(TJAPlayer4.app.Device, TJAPlayer4.Skin.Result_Dan_Plate_XY[0], TJAPlayer4.Skin.Result_Dan_Plate_XY[1]);
            }
            #endregion


            if (!this.ct表示用.b終了値に達した)
            {
                return(0);
            }
            return(1);
        }