Develop and Download Open Source Software

Browse Subversion Repository

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 194 - (show annotations) (download)
Tue Dec 24 07:07:14 2013 UTC (10 years, 3 months ago) by kairera0467
File size: 8707 byte(s)
#xxxxx E楽器パートの判定にBassOpenが含まれていなかったのを修正。
#xxxxx 「CActSelect曲リスト」の例外処理の対応。
#xxxxx Guitar画面のステータスパネルにジャケットが表示されるようにした。
#xxxxx ランク判定処理を一部変更。
1 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 this.n本体X = 138;
33 this.n本体Y = 8;
34 base.On活性化();
35 }
36 public override void On非活性化()
37 {
38 if( this.ctランク表示 != null )
39 {
40 this.ctランク表示 = null;
41 }
42 base.On非活性化();
43 }
44 public override void OnManagedリソスの作成()
45 {
46 if( !base.b活性化してない )
47 {
48 if (CDTXMania.ConfigIni.bDrums有効)
49 {
50 switch (CDTXMania.stage結果.n総合ランク値)
51 {
52 case 0:
53 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankSS.png"));
54 break;
55
56 case 1:
57 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankS.png"));
58 break;
59
60 case 2:
61 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankA.png"));
62 break;
63
64 case 3:
65 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankB.png"));
66 break;
67
68 case 4:
69 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankC.png"));
70 break;
71
72 case 5:
73 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankD.png"));
74 break;
75
76 case 6:
77 case 99: // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす
78 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
79 break;
80
81 default:
82 this.txランク文字 = null;
83 break;
84 }
85 }
86 else if( CDTXMania.ConfigIni.bDrums有効 == false && CDTXMania.ConfigIni.bGuitar有効 == true )
87 {
88 switch( CDTXMania.stage結果.nランク値.Guitar )
89 {
90 case 0:
91 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankSS.png"));
92 break;
93
94 case 1:
95 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankS.png"));
96 break;
97
98 case 2:
99 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankA.png"));
100 break;
101
102 case 3:
103 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankB.png"));
104 break;
105
106 case 4:
107 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankC.png"));
108 break;
109
110 case 5:
111 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankD.png"));
112 break;
113
114 case 6:
115 case 99: // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす
116 this.txランク文字 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\8_rankE.png" ) );
117 if( CDTXMania.ConfigIni.bギタが全部オトプレイである )
118 this.txランク文字 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\8_rankSS.png" ) );
119 break;
120
121 default:
122 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
123 break;
124 }
125 switch (CDTXMania.stage結果.nランク値.Bass)
126 {
127 case 0:
128 this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankSS.png"));
129 break;
130
131 case 1:
132 this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankS.png"));
133 break;
134
135 case 2:
136 this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankA.png"));
137 break;
138
139 case 3:
140 this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankB.png"));
141 break;
142
143 case 4:
144 this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankC.png"));
145 break;
146
147 case 5:
148 this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankD.png"));
149 break;
150
151 case 6:
152 case 99: // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす
153 this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
154 break;
155
156 default:
157 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
158 break;
159 }
160 }
161 base.OnManagedリソスの作成();
162 }
163 }
164 public override void OnManagedリソスの解放()
165 {
166 if( !base.b活性化してない )
167 {
168 CDTXMania.tテクスチャの解放( ref this.txランク文字 );
169 CDTXMania.tテクスチャの解放( ref this.txランク文字2P );
170 base.OnManagedリソスの解放();
171 }
172 }
173 public override int On進行描画()
174 {
175 if( base.b活性化してない )
176 {
177 return 0;
178 }
179 if( base.b初めての進行描画 )
180 {
181 this.ctランク表示 = new CCounter(0, 0x3e8, 2, CDTXMania.Timer);
182 base.b初めての進行描画 = false;
183 }
184 this.ctランク表示.t進行();
185 if( this.ctランク表示.n現在の値 >= 500 )
186 {
187 double num2 = ( (double) ( this.ctランク表示.n現在の値 - 500 ) ) / 500.0;
188 if (this.txランク文字 != null)
189 {
190 this.txランク文字.t2D描画(CDTXMania.app.Device, this.n本体X, this.n本体Y, new Rectangle(0, 0, (int)((double)txランク文字.sz画像サイズ.Width * num2), this.txランク文字.sz画像サイズ.Height));
191 }
192 if ( this.txランク文字2P != null )
193 {
194 this.txランク文字2P.t2D描画(CDTXMania.app.Device, 850, 420, new Rectangle(0, 0, (int)((double)txランク文字.sz画像サイズ.Width * num2), this.txランク文字.sz画像サイズ.Height));
195 }
196 }
197 if( !this.ctランク表示.b終了値に達した )
198 {
199 return 0;
200 }
201 return 1;
202 }
203
204
205 // その他
206
207 #region [ private ]
208 //-----------------
209 private CCounter ctランク表示;
210 private int n本体X;
211 private int n本体Y;
212 private CTexture txランク文字;
213 private CTexture txランク文字2P;
214 //-----------------
215 #endregion
216 }
217 }

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