Develop and Download Open Source Software

Browse Subversion Repository

Annotation of /trunk/DTXManiaプロジェクト/コード/ステージ/08.結果/CActResultRank.cs

Parent Directory Parent Directory | Revision Log Revision Log


Revision 232 - (hide annotations) (download)
Wed Jan 15 06:14:57 2014 UTC (10 years, 2 months ago) by ron1120
File size: 10453 byte(s)
#xxxxx ギター用リザルト画面の改善。エクセレント、フルコンボ時に難あり。
1 kairera0467 2 using System;
2     using System.Collections.Generic;
3     using System.Text;
4     using System.Drawing;
5     using SlimDX;
6     using FDK;
7    
8     namespace DTXMania
9     {
10     internal class CActResultRank : CActivity
11     {
12     // コンストラクタ
13    
14     public CActResultRank()
15     {
16     base.b活性化してない = true;
17     }
18    
19    
20     // メソッド
21    
22     public void tアニメを完了させる()
23     {
24     this.ctランク表示.n現在の値 = this.ctランク表示.n終了値;
25     }
26    
27    
28     // CActivity 実装
29    
30     public override void On活性化()
31     {
32 ron1120 232
33     #region [ 本体位置 ]
34     this.n本体1X = 0;
35     this.n本体1Y = 0;
36    
37     this.n本体2X = 0;
38     this.n本体2Y = 0;
39    
40     this.n本体3X = 0;
41     this.n本体3Y = 0;
42    
43    
44     if (CDTXMania.ConfigIni.bDrums有効)
45     {
46     this.n本体1X = 138;
47     this.n本体1Y = 8;
48     }
49     else if (CDTXMania.ConfigIni.bGuitar有効)
50     {
51     if (CDTXMania.DTX.bチップがある.Guitar)
52     {
53     this.n本体1X = 138;
54     this.n本体1Y = 8;
55     }
56    
57     if (CDTXMania.DTX.bチップがある.Bass)
58     {
59     this.n本体2X = 850;
60     this.n本体2Y = 420;
61     }
62    
63     if (CDTXMania.ConfigIni.bIsSwappedGuitarBass && CDTXMania.DTX.bチップがある.Guitar && CDTXMania.DTX.bチップがある.Bass)
64     {
65     this.n本体3X = this.n本体1X;
66     this.n本体3Y = this.n本体1Y;
67     this.n本体1X = this.n本体2X;
68     this.n本体1Y = this.n本体2Y;
69     this.n本体2X = this.n本体3X;
70     this.n本体2Y = this.n本体3Y;
71     }
72     }
73     #endregion
74    
75 kairera0467 2 base.On活性化();
76     }
77     public override void On非活性化()
78     {
79     if( this.ctランク表示 != null )
80     {
81     this.ctランク表示 = null;
82     }
83     base.On非活性化();
84     }
85     public override void OnManagedリソスの作成()
86     {
87     if( !base.b活性化してない )
88     {
89 kairera0467 110 if (CDTXMania.ConfigIni.bDrums有効)
90     {
91     switch (CDTXMania.stage結果.n総合ランク値)
92     {
93     case 0:
94     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankSS.png"));
95     break;
96 kairera0467 2
97 kairera0467 110 case 1:
98     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankS.png"));
99     break;
100 kairera0467 2
101 kairera0467 110 case 2:
102     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankA.png"));
103     break;
104 kairera0467 2
105 kairera0467 110 case 3:
106     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankB.png"));
107     break;
108 kairera0467 2
109 kairera0467 110 case 4:
110     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankC.png"));
111     break;
112 kairera0467 2
113 kairera0467 110 case 5:
114     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankD.png"));
115     break;
116 kairera0467 2
117 kairera0467 110 case 6:
118     case 99: // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす
119     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
120     break;
121 kairera0467 2
122 kairera0467 110 default:
123     this.txランク文字 = null;
124     break;
125     }
126     }
127 ron1120 232 else if( CDTXMania.ConfigIni.bGuitar有効 )
128 kairera0467 110 {
129 kairera0467 179 switch( CDTXMania.stage結果.nランク値.Guitar )
130 kairera0467 110 {
131     case 0:
132     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankSS.png"));
133     break;
134    
135     case 1:
136     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankS.png"));
137     break;
138    
139     case 2:
140     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankA.png"));
141     break;
142    
143     case 3:
144     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankB.png"));
145     break;
146    
147     case 4:
148     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankC.png"));
149     break;
150    
151     case 5:
152     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankD.png"));
153     break;
154    
155     case 6:
156     case 99: // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす
157 kairera0467 194 this.txランク文字 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\8_rankE.png" ) );
158     if( CDTXMania.ConfigIni.bギタが全部オトプレイである )
159     this.txランク文字 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\8_rankSS.png" ) );
160 kairera0467 110 break;
161    
162     default:
163 kairera0467 144 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
164 kairera0467 110 break;
165     }
166     switch (CDTXMania.stage結果.nランク値.Bass)
167     {
168     case 0:
169     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankSS.png"));
170     break;
171    
172     case 1:
173     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankS.png"));
174     break;
175    
176     case 2:
177     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankA.png"));
178     break;
179    
180     case 3:
181     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankB.png"));
182     break;
183    
184     case 4:
185     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankC.png"));
186     break;
187    
188     case 5:
189     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankD.png"));
190     break;
191    
192     case 6:
193     case 99: // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす
194     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
195 ron1120 232 if (CDTXMania.ConfigIni.bスが全部オトプレイである)
196     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankSS.png"));
197 kairera0467 110 break;
198    
199     default:
200 ron1120 232 this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
201 kairera0467 110 break;
202     }
203     }
204 kairera0467 2 base.OnManagedリソスの作成();
205     }
206     }
207     public override void OnManagedリソスの解放()
208     {
209     if( !base.b活性化してない )
210     {
211     CDTXMania.tテクスチャの解放( ref this.txランク文字 );
212 kairera0467 110 CDTXMania.tテクスチャの解放( ref this.txランク文字2P );
213 kairera0467 2 base.OnManagedリソスの解放();
214     }
215     }
216     public override int On進行描画()
217     {
218     if( base.b活性化してない )
219     {
220     return 0;
221     }
222     if( base.b初めての進行描画 )
223     {
224     this.ctランク表示 = new CCounter(0, 0x3e8, 2, CDTXMania.Timer);
225     base.b初めての進行描画 = false;
226     }
227     this.ctランク表示.t進行();
228     if( this.ctランク表示.n現在の値 >= 500 )
229     {
230     double num2 = ( (double) ( this.ctランク表示.n現在の値 - 500 ) ) / 500.0;
231 ron1120 232 if ( this.txランク文字 != null && this.n本体1Y != 0 )
232 kairera0467 2 {
233 ron1120 232 this.txランク文字.t2D描画(CDTXMania.app.Device, this.n本体1X, this.n本体1Y, new Rectangle(0, 0, (int)((double)txランク文字.sz画像サイズ.Width * num2), this.txランク文字.sz画像サイズ.Height));
234 kairera0467 2 }
235 ron1120 232 if ( this.txランク文字2P != null && this.n本体2Y != 0 )
236 kairera0467 110 {
237 ron1120 232 this.txランク文字2P.t2D描画(CDTXMania.app.Device, this.n本体2X, this.n本体2Y, new Rectangle(0, 0, (int)((double)txランク文字.sz画像サイズ.Width * num2), this.txランク文字.sz画像サイズ.Height));
238 kairera0467 110 }
239 kairera0467 2 }
240     if( !this.ctランク表示.b終了値に達した )
241     {
242     return 0;
243     }
244     return 1;
245     }
246    
247    
248     // その他
249    
250     #region [ private ]
251     //-----------------
252     private CCounter ctランク表示;
253 ron1120 232 private int n本体1X;
254     private int n本体1Y;
255     private int n本体2X;
256     private int n本体2Y;
257     private int n本体3X;
258     private int n本体3Y;
259     private CTexture txランク文字;
260 kairera0467 110 private CTexture txランク文字2P;
261 kairera0467 2 //-----------------
262     #endregion
263     }
264     }

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26