OSDN Git Service

Merge branch 'feature/37178_プロジェクトとソリューションファイルの英語化' into develop
[dtxmania/dtxmania.git] / DTXManiaプロジェクト / コード / ステージ / 05.選曲 / CActSelectステータスパネル.cs
diff --git a/DTXManiaプロジェクト/コード/ステージ/05.選曲/CActSelectステータスパネル.cs b/DTXManiaプロジェクト/コード/ステージ/05.選曲/CActSelectステータスパネル.cs
deleted file mode 100644 (file)
index bc5f96d..0000000
+++ /dev/null
@@ -1,522 +0,0 @@
-using System;\r
-using System.Collections.Generic;\r
-using System.Text;\r
-using System.Runtime.InteropServices;\r
-using System.Drawing;\r
-using FDK;\r
-\r
-namespace DTXMania\r
-{\r
-       internal class CActSelectステータスパネル : CActivity\r
-       {\r
-               // メソッド\r
-\r
-               public CActSelectステータスパネル()\r
-               {\r
-                       base.b活性化してない = true;\r
-               }\r
-               public void t選択曲が変更された()\r
-               {\r
-                       C曲リストノード c曲リストノード = CDTXMania.Instance.stage選曲.r現在選択中の曲;\r
-                       Cスコア cスコア = CDTXMania.Instance.stage選曲.r現在選択中のスコア;\r
-                       if ((c曲リストノード != null) && (cスコア != null))\r
-                       {\r
-                               this.n現在選択中の曲の難易度 = CDTXMania.Instance.stage選曲.n現在選択中の曲の難易度;\r
-                               for (EPart i = EPart.Drums; i <= EPart.Bass; i++)\r
-                               {\r
-                                       int nLevel = cスコア.譜面情報.レベル[i];\r
-                                       if (nLevel < 0)\r
-                                       {\r
-                                               nLevel = 0;\r
-                                       }\r
-                                       if (nLevel > 99)\r
-                                       {\r
-                                               nLevel = 99;\r
-                                       }\r
-                                       this.n現在選択中の曲のレベル[i] = nLevel;\r
-                                       this.n現在選択中の曲の最高ランク[i] = cスコア.譜面情報.最大ランク[i];\r
-                                       this.b現在選択中の曲がフルコンボ[i] = cスコア.譜面情報.フルコンボ[i];\r
-                                       this.db現在選択中の曲の最高スキル値[i] = cスコア.譜面情報.最大スキル[i];\r
-                               }\r
-                               for (int i = 0; i < 5; i++)\r
-                               {\r
-                                       this.str難易度ラベル[i] = c曲リストノード.ar難易度ラベル[i];\r
-                               }\r
-                               if (this.r直前の曲 != c曲リストノード)\r
-                               {\r
-                                       this.n難易度開始文字位置 = 0;\r
-                               }\r
-                               this.r直前の曲 = c曲リストノード;\r
-                       }\r
-               }\r
-\r
-\r
-               // CActivity 実装\r
-\r
-               public override void On活性化()\r
-               {\r
-                       this.n本体X = (int)(3 * Scale.X);\r
-                       this.n本体Y = (int)(0x15d * Scale.Y);\r
-                       this.n現在選択中の曲の難易度 = 0;\r
-                       for (EPart i = EPart.Drums; i <= EPart.Bass; i++)\r
-                       {\r
-                               this.n現在選択中の曲のレベル[i] = 0;\r
-                               this.n現在選択中の曲の最高ランク[i] = CScoreIni.ERANK.UNKNOWN;\r
-                               this.b現在選択中の曲がフルコンボ[i] = false;\r
-                               this.db現在選択中の曲の最高スキル値[i] = 0.0;\r
-                       }\r
-                       for (int j = 0; j < 5; j++)\r
-                       {\r
-                               this.str難易度ラベル[j] = "";\r
-                       }\r
-                       this.n難易度開始文字位置 = 0;\r
-                       this.r直前の曲 = null;\r
-                       base.On活性化();\r
-               }\r
-               public override void On非活性化()\r
-               {\r
-                       this.ct登場アニメ用 = null;\r
-                       this.ct難易度スクロール用 = null;\r
-                       this.ct難易度矢印用 = null;\r
-                       base.On非活性化();\r
-               }\r
-               public override void OnManagedリソースの作成()\r
-               {\r
-                       if (!base.b活性化してない)\r
-                       {\r
-                               this.txパネル本体 = TextureFactory.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenSelect status panel.png"), true);\r
-                               this.txレベル数字 = TextureFactory.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenSelect level numbers.png"), false);\r
-                               this.txスキルゲージ = TextureFactory.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenSelect skill gauge.png"), false);\r
-                               this.txゲージ用数字他 = TextureFactory.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenSelect skill number on gauge etc.png"), false);\r
-                               this.tx難易度用矢印 = TextureFactory.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenSelect triangle arrow.png"), false);\r
-                               base.OnManagedリソースの作成();\r
-                       }\r
-               }\r
-               public override void OnManagedリソースの解放()\r
-               {\r
-                       if (!base.b活性化してない)\r
-                       {\r
-                               TextureFactory.tテクスチャの解放(ref this.txパネル本体);\r
-                               TextureFactory.tテクスチャの解放(ref this.txレベル数字);\r
-                               TextureFactory.tテクスチャの解放(ref this.txスキルゲージ);\r
-                               TextureFactory.tテクスチャの解放(ref this.txゲージ用数字他);\r
-                               TextureFactory.tテクスチャの解放(ref this.tx難易度用矢印);\r
-                               base.OnManagedリソースの解放();\r
-                       }\r
-               }\r
-               public override int On進行描画()\r
-               {\r
-                       if (!base.b活性化してない)\r
-                       {\r
-                               #region [ 初めての進行描画 ]\r
-                               //-----------------\r
-                               if (base.b初めての進行描画)\r
-                               {\r
-                                       this.ct登場アニメ用 = new CCounter(0, 100, 5, CDTXMania.Instance.Timer);\r
-                                       this.ct難易度スクロール用 = new CCounter(0, 20, 1, CDTXMania.Instance.Timer);\r
-                                       this.ct難易度矢印用 = new CCounter(0, 5, 80, CDTXMania.Instance.Timer);\r
-                                       base.b初めての進行描画 = false;\r
-                               }\r
-                               //-----------------\r
-                               #endregion\r
-\r
-                               // 進行\r
-\r
-                               this.ct登場アニメ用.t進行();\r
-\r
-                               this.ct難易度スクロール用.t進行();\r
-                               if (this.ct難易度スクロール用.b終了値に達した)\r
-                               {\r
-                                       int num = this.n現在の難易度ラベルが完全表示されているかを調べてスクロール方向を返す();\r
-                                       if (num < 0)\r
-                                       {\r
-                                               this.n難易度開始文字位置--;\r
-                                       }\r
-                                       else if (num > 0)\r
-                                       {\r
-                                               this.n難易度開始文字位置++;\r
-                                       }\r
-                                       this.ct難易度スクロール用.n現在の値 = 0;\r
-                               }\r
-\r
-                               this.ct難易度矢印用.t進行Loop();\r
-\r
-                               // 描画\r
-\r
-                               #region [ パネル本体の描画 ]\r
-                               //-----------------\r
-                               if (this.txパネル本体 != null)\r
-                               {\r
-                                       if (this.ct登場アニメ用.b終了値に達した)\r
-                                       {\r
-                                               this.n本体X = (int)(3 * Scale.X);\r
-                                               this.n本体Y = (int)(0x15d * Scale.Y);\r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               double num2 = ((double)((int)(100 * Scale.X) - this.ct登場アニメ用.n現在の値)) / 100.0;\r
-                                               double num3 = Math.Sin(Math.PI / 2 * num2);\r
-                                               this.n本体X = 3 - ((int)((this.txパネル本体.sz画像サイズ.Width * num3) * num3));\r
-                                               this.n本体Y = (int)(0x15d * Scale.Y);\r
-                                       }\r
-                                       this.txパネル本体.t2D描画(CDTXMania.Instance.Device, this.n本体X, this.n本体Y);\r
-                               }\r
-                               //-----------------\r
-                               #endregion\r
-\r
-                               #region [ 難易度文字列の描画 ]\r
-                               //-----------------\r
-\r
-                               #region [ chArray ← 難易度文字列を並べたもの、index ← その文字数 ]\r
-                               //-----------------\r
-                               char[] chArray = new char[0x100];\r
-                               C文字コンソール.Eフォント種別[] eフォント種別Array = new C文字コンソール.Eフォント種別[0x100];\r
-                               bool flag = false;\r
-                               bool flag2 = true;\r
-                               int index = 0;\r
-                               for (int i = 0; i < 5; i++)\r
-                               {\r
-                                       if ((this.str難易度ラベル[i] != null) && (this.str難易度ラベル[i].Length > 0))\r
-                                       {\r
-                                               string str = this.str難易度ラベル[i];\r
-                                               char[] chArray2 = new char[0x100];\r
-                                               int num6 = 0;\r
-                                               while ((num6 < 0xff) && (num6 < this.str難易度ラベル[i].Length))\r
-                                               {\r
-                                                       chArray2[num6] = str[num6];\r
-                                                       num6++;\r
-                                               }\r
-                                               chArray2[num6] = '\0';\r
-                                               if (!flag2)\r
-                                               {\r
-                                                       if (index < 0xff)\r
-                                                       {\r
-                                                               chArray[index] = ' ';\r
-                                                               eフォント種別Array[index] = C文字コンソール.Eフォント種別.白;\r
-                                                               index++;\r
-                                                       }\r
-                                                       if (index < 0xff)\r
-                                                       {\r
-                                                               chArray[index] = ' ';\r
-                                                               eフォント種別Array[index] = C文字コンソール.Eフォント種別.白;\r
-                                                               index++;\r
-                                                       }\r
-                                               }\r
-                                               flag2 = false;\r
-                                               num6 = 0;\r
-                                               while ((chArray2[num6] != '\0') && (index < 0xff))\r
-                                               {\r
-                                                       chArray[index] = chArray2[num6++];\r
-                                                       eフォント種別Array[index] = (this.n現在選択中の曲の難易度 == i) ? C文字コンソール.Eフォント種別.赤 : C文字コンソール.Eフォント種別.白;\r
-                                                       index++;\r
-                                               }\r
-                                               chArray[index] = '\0';\r
-                                       }\r
-                               }\r
-                               //-----------------\r
-                               #endregion\r
-\r
-                               if (index > 0)\r
-                               {\r
-                                       int x = this.n本体X + (int)(20 * Scale.X);\r
-                                       int y = this.n本体Y + (int)(0x10 * Scale.Y);\r
-                                       index = this.n難易度開始文字位置;\r
-                                       flag = true;\r
-                                       while (index < (this.n難易度開始文字位置 + 55))   // 0x24 -> 55\r
-                                       {\r
-                                               CDTXMania.Instance.act文字コンソール.tPrint(\r
-                                                       x,\r
-                                                       y + 5,\r
-                                                       eフォント種別Array[index],\r
-                                                       chArray[index].ToString()\r
-                                               );\r
-                                               x += 8 * 2;\r
-                                               index++;\r
-                                               if (chArray[index] == '\0')\r
-                                               {\r
-                                                       flag = false;\r
-                                                       break;\r
-                                               }\r
-                                       }\r
-                                       if (this.n難易度開始文字位置 > 0)\r
-                                       {\r
-                                               int num9 = (this.n本体X + (int)(12 * Scale.X)) - (int)(this.ct難易度矢印用.n現在の値 * Scale.X);\r
-                                               int num10 = (this.n本体Y + (int)(0x10 * Scale.Y)) + (int)(5 * Scale.Y);\r
-                                               if (this.tx難易度用矢印 != null)\r
-                                               {\r
-                                                       this.tx難易度用矢印.t2D描画(CDTXMania.Instance.Device, num9, num10, new Rectangle(0, 0, (int)(8 * Scale.X), (int)(0x10 * Scale.Y)));\r
-                                               }\r
-                                       }\r
-                                       if (flag)\r
-                                       {\r
-                                               int num11 = ((this.n本体X + (int)(20 * Scale.X)) + (int)(0x120 * Scale.X)) + (int)(this.ct難易度矢印用.n現在の値 * Scale.Y);\r
-                                               int num12 = (this.n本体Y + (int)(0x10 * Scale.Y)) + (int)(5 * Scale.Y);\r
-                                               if (this.tx難易度用矢印 != null)\r
-                                               {\r
-                                                       this.tx難易度用矢印.t2D描画(CDTXMania.Instance.Device, num11, num12, new Rectangle((int)(8 * Scale.X), 0, (int)(8 * Scale.X), (int)(0x10 * Scale.Y)));\r
-                                               }\r
-                                       }\r
-                               }\r
-                               //-----------------\r
-                               #endregion\r
-\r
-                               Cスコア cスコア = CDTXMania.Instance.stage選曲.r現在選択中のスコア;\r
-\r
-                               #region [ 選択曲の Lv の描画 ]\r
-                               //-----------------\r
-                               if ((cスコア != null) && (this.txレベル数字 != null))\r
-                               {\r
-                                       for (EPart i = EPart.Drums; i <= EPart.Bass; i++)\r
-                                       {\r
-                                               Rectangle rect十の位;\r
-                                               Rectangle rect一の位;\r
-                                               int nDispPosX = this.n本体X + (int)(66 * Scale.X);\r
-                                               int nDispPosY = this.n本体Y + (int)(50 * Scale.Y) + CDTXMania.Instance.Coordinates.OffsetGuitarBassSwap[(CDTXMania.Instance.ConfigIni.bIsSwappedGuitarBass ? 1 : 0)][i].Y;\r
-                                               int nLevel = this.n現在選択中の曲のレベル[i];\r
-                                               if (nLevel < 0)\r
-                                               {\r
-                                                       nLevel = 0;\r
-                                               }\r
-                                               else if (nLevel > 99)\r
-                                               {\r
-                                                       nLevel = 99;\r
-                                               }\r
-                                               // Lv25刻みで、白→オレンジ→黄色→赤、と色を変える\r
-                                               // \r
-                                               int nRectOffsetX = ((nLevel / 25) < 2) ? (int)(64 * Scale.X) : 0;\r
-                                               int nRectOffsetY = (((nLevel / 25) % 2) == 0) ? (int)(64 * Scale.Y) : 0;\r
-                                               if (nLevel == 0)\r
-                                               {\r
-                                                       rect十の位 = this.rc数字[11];    // "--"\r
-                                                       rect一の位 = this.rc数字[11];    // "-- "\r
-                                               }\r
-                                               else if (cスコア.譜面情報.レベルを非表示にする)\r
-                                               {\r
-                                                       rect十の位 = this.rc数字[10];    // "?"\r
-                                                       rect一の位 = this.rc数字[10];    // "?"\r
-                                               }\r
-                                               else\r
-                                               {\r
-                                                       rect十の位 = this.rc数字[nLevel / 10];\r
-                                                       rect一の位 = this.rc数字[nLevel % 10];\r
-                                               }\r
-                                               rect十の位.X += nRectOffsetX;\r
-                                               rect十の位.Y += nRectOffsetY;\r
-                                               rect一の位.X += nRectOffsetX;\r
-                                               rect一の位.Y += nRectOffsetY;\r
-                                               this.txレベル数字.t2D描画(CDTXMania.Instance.Device, nDispPosX, nDispPosY, rect十の位);\r
-                                               this.txレベル数字.t2D描画(CDTXMania.Instance.Device, nDispPosX + (int)(13 * Scale.X), nDispPosY, rect一の位);\r
-                                       }\r
-                               }\r
-                               //-----------------\r
-                               #endregion\r
-                               #region [ 選択曲の 最高スキル値ゲージ+数値の描画 ]\r
-                               //-----------------\r
-                               for (EPart i = EPart.Drums; i <= EPart.Bass; i++)\r
-                               {\r
-                                       if (this.n現在選択中の曲のレベル[i] != 0)\r
-                                       {\r
-                                               double dMaxSkill = this.db現在選択中の曲の最高スキル値[i];\r
-                                               if (dMaxSkill != 0.0)\r
-                                               {\r
-                                                       int nDispPosX = this.n本体X + (int)(100 * Scale.X);\r
-                                                       int nDispPosY = this.n本体Y + (int)(53 * Scale.Y) + +CDTXMania.Instance.Coordinates.OffsetGuitarBassSwap[(CDTXMania.Instance.ConfigIni.bIsSwappedGuitarBass ? 1 : 0)][i].Y;\r
-                                                       this.txスキルゲージ.t2D描画(CDTXMania.Instance.Device, nDispPosX, nDispPosY,\r
-                                                                                                               new Rectangle(0, 0, (int)(170.0 * Scale.X * dMaxSkill / 100.0), (int)(10 * Scale.Y)));\r
-                                               }\r
-                                               string sMaxSkillString = dMaxSkill.ToString("##0.00");\r
-                                               int nMaxSkillStringWidth = 0;\r
-                                               foreach (char ch in sMaxSkillString)\r
-                                               {\r
-                                                       for (int j = 0; j < 12; j++)\r
-                                                       {\r
-                                                               if (ch == this.st数字[j].ch)\r
-                                                               {\r
-                                                                       nMaxSkillStringWidth += this.st数字[j].rc.Width - 1;\r
-                                                                       break;\r
-                                                               }\r
-                                                       }\r
-                                               }\r
-                                               int x = this.n本体X + (int)(182 * Scale.X) - nMaxSkillStringWidth / 2;\r
-                                               int y = this.n本体Y + (int)(53 * Scale.Y) + +CDTXMania.Instance.Coordinates.OffsetGuitarBassSwap[(CDTXMania.Instance.ConfigIni.bIsSwappedGuitarBass ? 1 : 0)][i].Y;\r
-                                               foreach (char ch in sMaxSkillString)\r
-                                               {\r
-                                                       for (int j = 0; j < 12; j++)\r
-                                                       {\r
-                                                               if (ch == this.st数字[j].ch)\r
-                                                               {\r
-                                                                       if (this.txゲージ用数字他 != null)\r
-                                                                       {\r
-                                                                               this.txゲージ用数字他.t2D描画(CDTXMania.Instance.Device, x, y, this.st数字[j].rc);\r
-                                                                       }\r
-                                                                       x += this.st数字[j].rc.Width - 1;\r
-                                                                       break;\r
-                                                               }\r
-                                                       }\r
-                                               }\r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               int x = this.n本体X + (int)((182 - 20) * Scale.X);\r
-                                               int y = this.n本体Y + (int)(53 * Scale.Y) + +CDTXMania.Instance.Coordinates.OffsetGuitarBassSwap[(CDTXMania.Instance.ConfigIni.bIsSwappedGuitarBass ? 1 : 0)][i].Y;\r
-                                               if (this.txゲージ用数字他 != null)\r
-                                               {\r
-                                                       this.txゲージ用数字他.t2D描画(CDTXMania.Instance.Device, x, y, new Rectangle(0, (int)(22 * Scale.Y), (int)(42 * Scale.X), (int)(10 * Scale.Y)));\r
-                                               }\r
-                                       }\r
-                               }\r
-                               //-----------------\r
-                               #endregion\r
-                               #region [ 選択曲の 最高ランクの描画 ]\r
-                               //-----------------\r
-                               for (EPart i = EPart.Drums; i <= EPart.Bass; i++)\r
-                               {\r
-                                       CScoreIni.ERANK nMaxRank = this.n現在選択中の曲の最高ランク[i];\r
-                                       if (nMaxRank != CScoreIni.ERANK.UNKNOWN)\r
-                                       {\r
-                                               int x = this.n本体X + (int)(278 * Scale.X);\r
-                                               int y = this.n本体Y + (int)(55 * Scale.Y) + +CDTXMania.Instance.Coordinates.OffsetGuitarBassSwap[(CDTXMania.Instance.ConfigIni.bIsSwappedGuitarBass ? 1 : 0)][i].Y;\r
-                                               if (this.txゲージ用数字他 != null)\r
-                                               {\r
-                                                       this.txゲージ用数字他.t2D描画(CDTXMania.Instance.Device, x, y, this.rcランク[(int)nMaxRank]);\r
-                                               }\r
-                                       }\r
-                               }\r
-                               //-----------------\r
-                               #endregion\r
-                               #region [ 選択曲の FullCombo の 描画 ]\r
-                               //-----------------\r
-                               Rectangle rectFullCombo = new Rectangle((int)(30 * Scale.X), (int)(32 * Scale.Y), (int)(30 * Scale.X), (int)(16 * Scale.Y));\r
-                               for (EPart i = EPart.Drums; i <= EPart.Bass; i++)\r
-                               {\r
-                                       if (this.b現在選択中の曲がフルコンボ[i])\r
-                                       {\r
-                                               int x = this.n本体X + (int)(290 * Scale.X);\r
-                                               int y = this.n本体Y + (int)(53 * Scale.Y) + +CDTXMania.Instance.Coordinates.OffsetGuitarBassSwap[(CDTXMania.Instance.ConfigIni.bIsSwappedGuitarBass ? 1 : 0)][i].Y;\r
-                                               if (this.txゲージ用数字他 != null)\r
-                                               {\r
-                                                       this.txゲージ用数字他.t2D描画(CDTXMania.Instance.Device, x, y, rectFullCombo);\r
-                                               }\r
-                                       }\r
-                               }\r
-                               //-----------------\r
-                               #endregion\r
-                       }\r
-                       return 0;\r
-               }\r
-\r
-\r
-               // その他\r
-\r
-               #region [ private ]\r
-               //-----------------\r
-               [StructLayout(LayoutKind.Sequential)]\r
-               private struct ST数字\r
-               {\r
-                       public char ch;\r
-                       public Rectangle rc;\r
-                       public ST数字(char ch, Rectangle rc)\r
-                       {\r
-                               this.ch = ch;\r
-                               this.rc = rc;\r
-                       }\r
-               }\r
-\r
-               private STDGBSValue<bool> b現在選択中の曲がフルコンボ;\r
-               private CCounter ct登場アニメ用;\r
-               private CCounter ct難易度スクロール用;\r
-               private CCounter ct難易度矢印用;\r
-               private STDGBSValue<double> db現在選択中の曲の最高スキル値;\r
-               private STDGBSValue<int> n現在選択中の曲のレベル;\r
-               private STDGBSValue<CScoreIni.ERANK> n現在選択中の曲の最高ランク;\r
-               private int n現在選択中の曲の難易度;\r
-               private int n難易度開始文字位置;\r
-               private const int n難易度表示可能文字数 = 0x24;\r
-               private int n本体X;\r
-               private int n本体Y;\r
-               private readonly Rectangle[] rcランク = new Rectangle[] {\r
-                       new Rectangle( (int)(0 * Scale.X), (int)(0x20 * Scale.Y), (int)(10 * Scale.X), (int)(10 * Scale.Y) ),\r
-                       new Rectangle( (int)(10 * Scale.X), (int)(0x20 * Scale.Y), (int)(10 * Scale.X), (int)(10 * Scale.Y) ),\r
-                       new Rectangle( (int)(20 * Scale.X), (int)(0x20 * Scale.Y), (int)(10 * Scale.X), (int)(10 * Scale.Y) ),\r
-                       new Rectangle( (int)(0 * Scale.X), (int)(0x2a * Scale.Y), (int)(10 * Scale.X), (int)(10 * Scale.Y) ),\r
-                       new Rectangle( (int)(10 * Scale.X), (int)(0x2a * Scale.Y), (int)(10 * Scale.X), (int)(10 * Scale.Y) ),\r
-                       new Rectangle( (int)(20 * Scale.X), (int)(0x2a * Scale.Y), (int)(10 * Scale.X), (int)(10 * Scale.Y) ),\r
-                       new Rectangle( (int)(0 * Scale.X), (int)(0x34 * Scale.Y), (int)(10 * Scale.X), (int)(10 * Scale.Y) )\r
-               };\r
-               private readonly Rectangle[] rc数字 = new Rectangle[] {\r
-                       new Rectangle( (int)(0 * Scale.X), (int)(0 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(15 * Scale.X), (int)(0 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(30 * Scale.X), (int)(0 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(0x2d * Scale.X), (int)(0 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(0 * Scale.X), (int)(0x13 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(15 * Scale.X), (int)(0x13 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(30 * Scale.X), (int)(0x13 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(0x2d * Scale.X), (int)(0x13 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(0 * Scale.X), (int)(0x26 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(15 * Scale.X),(int)(0x26 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(30 * Scale.X), (int)(0x26 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) ),\r
-                       new Rectangle( (int)(0x2d * Scale.X), (int)(0x26 * Scale.Y), (int)(15 * Scale.X), (int)(0x13 * Scale.Y) )\r
-               };\r
-               private C曲リストノード r直前の曲;\r
-               private string[] str難易度ラベル = new string[] { "", "", "", "", "" };\r
-               private readonly ST数字[] st数字 = new ST数字[] {\r
-                       new ST数字( '0', new Rectangle( (int)(0 * Scale.X), (int)(0 * Scale.Y), (int)(8 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( '1', new Rectangle( (int)(8 * Scale.X), (int)(0 * Scale.Y), (int)(8 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( '2', new Rectangle( (int)(0x10 * Scale.X), (int)(0 * Scale.Y), (int)(8 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( '3', new Rectangle( (int)(0x18 * Scale.X), (int)(0 * Scale.Y), (int)(8 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( '4', new Rectangle( (int)(0x20 * Scale.X), (int)(0 * Scale.Y), (int)(8 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( '5', new Rectangle( (int)(40 * Scale.X), (int)(0 * Scale.Y), (int)(8 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( '6', new Rectangle( (int)(0 * Scale.X), (int)(11 * Scale.Y), (int)(8 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( '7', new Rectangle( (int)(8 * Scale.X), (int)(11 * Scale.Y), (int)(8 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( '8', new Rectangle( (int)(0x10 * Scale.X), (int)(11 * Scale.Y), (int)(8 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( '9', new Rectangle( (int)(0x18 * Scale.X), (int)(11 * Scale.Y), (int)(8 * Scale.X),(int)( 11 * Scale.Y) ) ),\r
-                       new ST数字( '.', new Rectangle( (int)(0x20 * Scale.X), (int)(11 * Scale.Y), (int)(4 * Scale.X), (int)(11 * Scale.Y) ) ),\r
-                       new ST数字( 'p', new Rectangle( (int)(0x24 * Scale.X), (int)(11 * Scale.Y), (int)(15 * Scale.X), (int)(11 * Scale.Y) ) )\r
-               };\r
-               private CTexture txゲージ用数字他;\r
-               private CTexture txスキルゲージ;\r
-               private CTexture txパネル本体;\r
-               private CTexture txレベル数字;\r
-               private CTexture tx難易度用矢印;\r
-\r
-               private int n現在の難易度ラベルが完全表示されているかを調べてスクロール方向を返す()\r
-               {\r
-                       int num = 0;\r
-                       int length = 0;\r
-                       for (int i = 0; i < 5; i++)\r
-                       {\r
-                               if ((this.str難易度ラベル[i] != null) && (this.str難易度ラベル[i].Length > 0))\r
-                               {\r
-                                       length = this.str難易度ラベル[i].Length;\r
-                               }\r
-                               if (this.n現在選択中の曲の難易度 == i)\r
-                               {\r
-                                       break;\r
-                               }\r
-                               if ((this.str難易度ラベル[i] != null) && (this.str難易度ラベル.Length > 0))\r
-                               {\r
-                                       num += length + 2;\r
-                               }\r
-                       }\r
-                       if (num >= (this.n難易度開始文字位置 + 55))  // 0x24 -> 55\r
-                       {\r
-                               return 1;\r
-                       }\r
-                       if ((num + length) <= this.n難易度開始文字位置)\r
-                       {\r
-                               return -1;\r
-                       }\r
-                       if (((num + length) - 1) >= (this.n難易度開始文字位置 + 55)) // 0x24 -> 55\r
-                       {\r
-                               return 1;\r
-                       }\r
-                       if (num < this.n難易度開始文字位置)\r
-                       {\r
-                               return -1;\r
-                       }\r
-                       return 0;\r
-               }\r
-               //-----------------\r
-               #endregion\r
-       }\r
-}\r