-using System;\r
-using System.Collections.Generic;\r
-using System.Text;\r
-using System.Drawing;\r
-using FDK;\r
-\r
-namespace DTXMania\r
-{\r
- internal class CAct演奏GuitarWailingBonus : CAct演奏WailingBonus共通\r
- {\r
- // メソッド\r
-\r
- public CAct演奏GuitarWailingBonus()\r
- {\r
- base.b活性化してない = true;\r
- }\r
- //public override void Start( E楽器パート part )\r
- //{\r
- // this.Start( part, null );\r
- //}\r
- public override void Start(E楽器パート part, CChip r歓声Chip)\r
- {\r
- if (part != E楽器パート.DRUMS)\r
- {\r
- for (int i = 0; i < 4; i++)\r
- {\r
- if ((this.ct進行用[(int)part, i] == null) || this.ct進行用[(int)part, i].b停止中)\r
- {\r
- this.ct進行用[(int)part, i] = new CCounter(0, 300, 2, CDTXMania.Instance.Timer);\r
- if (CDTXMania.Instance.ConfigIni.b歓声を発声する)\r
- {\r
- if (r歓声Chip != null)\r
- {\r
- CDTXMania.Instance.DTX.tチップの再生(r歓声Chip, CSound管理.rc演奏用タイマ.nシステム時刻, (int)Eレーン.BGM, CDTXMania.Instance.DTX.nモニタを考慮した音量(E楽器パート.UNKNOWN));\r
- return;\r
- }\r
- CDTXMania.Instance.Skin.sound歓声音.n位置_次に鳴るサウンド = (part == E楽器パート.GUITAR) ? -50 : 50;\r
- CDTXMania.Instance.Skin.sound歓声音.t再生する();\r
- return;\r
- }\r
- break;\r
- }\r
- }\r
- }\r
- }\r
-\r
-\r
- // CActivity 実装\r
-\r
- public override void On活性化()\r
- {\r
- for (int i = 0; i < 3; i++)\r
- {\r
- for (int j = 0; j < 4; j++)\r
- {\r
- this.ct進行用[i, j] = null;\r
- }\r
- }\r
- base.On活性化();\r
- }\r
- public override int On進行描画()\r
- {\r
- if (!base.b活性化してない)\r
- {\r
- for (int i = 0; i < 2; i++)\r
- {\r
- E楽器パート e楽器パート = (i == 0) ? E楽器パート.GUITAR : E楽器パート.BASS;\r
- for (int k = 0; k < 4; k++)\r
- {\r
- if ((this.ct進行用[(int)e楽器パート, k] != null) && !this.ct進行用[(int)e楽器パート, k].b停止中)\r
- {\r
- if (this.ct進行用[(int)e楽器パート, k].b終了値に達した)\r
- {\r
- this.ct進行用[(int)e楽器パート, k].t停止();\r
- }\r
- else\r
- {\r
- this.ct進行用[(int)e楽器パート, k].t進行();\r
- }\r
- }\r
- }\r
- }\r
- for (int j = 0; j < 2; j++)\r
- {\r
- E楽器パート e楽器パート2 = (j == 0) ? E楽器パート.GUITAR : E楽器パート.BASS;\r
- for (int m = 0; m < 4; m++)\r
- {\r
- if ((this.ct進行用[(int)e楽器パート2, m] != null) && !this.ct進行用[(int)e楽器パート2, m].b停止中)\r
- {\r
- int x = ((e楽器パート2 == E楽器パート.GUITAR) ? 0x1a : 480) + 0x71;\r
- int num6 = 0;\r
- int num7 = 0;\r
- int num8 = this.ct進行用[(int)e楽器パート2, m].n現在の値;\r
- if (num8 < 100)\r
- {\r
- num6 = (int)(64.0 + (290.0 * Math.Cos(Math.PI / 2 * (((double)num8) / 100.0))));\r
- }\r
- else if (num8 < 150)\r
- {\r
- num6 = (int)(64.0 + ((150 - num8) * Math.Sin((Math.PI * ((num8 - 100) % 0x19)) / 25.0)));\r
- }\r
- else if (num8 < 200)\r
- {\r
- num6 = 0x40;\r
- }\r
- else\r
- {\r
- num6 = (int)(64.0 - (((double)(290 * (num8 - 200))) / 100.0));\r
- }\r
- if (CDTXMania.Instance.ConfigIni.bReverse[(int)e楽器パート2])\r
- {\r
- num6 = (0x199 - num6) - 0xf4;\r
- }\r
- Rectangle rectangle = new Rectangle(0, 0, 0x1a, 0x7a * 2);\r
- if ((0x199 - num6) < rectangle.Bottom)\r
- {\r
- rectangle.Height = (0x199 - num6) - rectangle.Top;\r
- }\r
- if (num6 < 0)\r
- {\r
- rectangle.Y = -num6;\r
- rectangle.Height -= -num6;\r
- num7 = -num6;\r
- }\r
- if ((rectangle.Top < rectangle.Bottom) && (this.txWailingBonus != null))\r
- {\r
- rectangle.X = (int)(rectangle.X * Scale.X);\r
- rectangle.Y = (int)(rectangle.Y * Scale.Y);\r
- rectangle.Width = (int)(rectangle.Width * Scale.X);\r
- rectangle.Height = (int)(rectangle.Height * Scale.Y);\r
-\r
- this.txWailingBonus.t2D描画(\r
- CDTXMania.Instance.Device,\r
- x * Scale.X,\r
- (num6 + num7) * Scale.Y,\r
- rectangle\r
- );\r
- }\r
- }\r
- }\r
- }\r
- }\r
- return 0;\r
- }\r
- }\r
-}\r
+
\ No newline at end of file