2 using System.Collections.Generic;
\r
4 using System.Runtime.InteropServices;
\r
5 using System.Drawing;
\r
11 internal class CAct演奏Drumsグラフ : CActivity
\r
13 // #24074 2011.01.23 ikanick グラフの描画
\r
16 // ・基準線(60,70,80,90,100%)を超えると線が黄色くなる(元は白)
\r
20 // ・グラフを波打たせるなどの視覚の向上
\r
25 public double dbグラフ値現在_渡
\r
29 return this.dbグラフ値現在;
\r
33 this.dbグラフ値現在 = value;
\r
36 public double dbグラフ値目標_渡
\r
40 return this.dbグラフ値目標;
\r
44 this.dbグラフ値目標 = value;
\r
50 public CAct演奏Drumsグラフ()
\r
52 base.b活性化してない = true;
\r
58 public override void On活性化()
\r
60 this.dbグラフ値目標 = 80f;
\r
64 public override void On非活性化()
\r
68 public override void OnManagedリソースの作成()
\r
70 if( !base.b活性化してない )
\r
72 this.txグラフ = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenPlay graph.png"));
\r
73 base.OnManagedリソースの作成();
\r
76 public override void OnManagedリソースの解放()
\r
78 if( !base.b活性化してない )
\r
80 CDTXMania.tテクスチャの解放( ref this.txグラフ );
\r
81 base.OnManagedリソースの解放();
\r
84 public override int On進行描画()
\r
86 if( !base.b活性化してない )
\r
88 if( base.b初めての進行描画 )
\r
90 base.b初めての進行描画 = false;
\r
93 if (this.txグラフ != null)
\r
95 this.txグラフ.n透明度 = 128;
\r
96 this.txグラフ.vc拡大縮小倍率 = new Vector3(38f, 230f, 1f);
\r
98 Rectangle rectangle = new Rectangle(22, 0, 1, 1);
\r
99 this.txグラフ.t2D描画(CDTXMania.app.Device, 345, 88, rectangle);
\r
102 if (this.txグラフ != null)
\r
104 this.txグラフ.n透明度 = 192;
\r
105 this.txグラフ.vc拡大縮小倍率 = new Vector3(38f, 1f, 1f);
\r
107 for (int i = 0; i < 4; i++)
\r
110 if (this.dbグラフ値現在 >= (100 - i * 10))
\r
112 rectangle = new Rectangle(21, 0, 1, 1);
\r
116 rectangle = new Rectangle(20, 0, 1, 1);
\r
118 this.txグラフ.t2D描画(CDTXMania.app.Device, 345, 88+i*23, rectangle);
\r
123 if (this.txグラフ != null)
\r
125 this.txグラフ.n透明度 = 192;
\r
126 this.txグラフ.vc拡大縮小倍率 = new Vector3(1f, 1f, 1f);
\r
128 rectangle = new Rectangle(0, 0, 10, (int)(230f * this.dbグラフ値現在 / 100));
\r
129 this.txグラフ.t2D描画(CDTXMania.app.Device, 350, 318 - (int)(230f * this.dbグラフ値現在 / 100), rectangle);
\r
130 if (dbグラフ値現在 >= dbグラフ値目標)
\r
132 this.txグラフ.vc拡大縮小倍率 = new Vector3(1.2f, 1f, 1f);
\r
133 this.txグラフ.n透明度 = 64;
\r
134 this.txグラフ.b加算合成 = true;
\r
135 this.txグラフ.t2D描画(CDTXMania.app.Device, 349, 318 - (int)(230f * this.dbグラフ値現在 / 100), rectangle);
\r
138 if (this.txグラフ != null)
\r
140 this.txグラフ.n透明度 = 192;
\r
141 this.txグラフ.vc拡大縮小倍率 = new Vector3(1f, 1f, 1f);
\r
142 this.txグラフ.b加算合成 = false;
\r
144 rectangle = new Rectangle(10, 0, 10, (int)(230f * this.dbグラフ値目標 / 100));
\r
145 this.txグラフ.t2D描画(CDTXMania.app.Device, 368, 318 - (int)(230f * this.dbグラフ値目標 / 100), rectangle);
\r
154 #region [ private ]
\r
156 private double dbグラフ値目標;
\r
157 private double dbグラフ値現在;
\r
158 private CTexture txグラフ;
\r
159 //-----------------
\r