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 179 - (hide annotations) (download)
Sun Nov 10 03:30:31 2013 UTC (10 years, 4 months ago) by kairera0467
File size: 8463 byte(s)
#31082 少し追加。
#32011 曲名をPrivateFontに移行。さらに曲名が長い場合の処理を変更。
#32337 表示できるように修正。
#32368 試しに実装。座標などは仮の段階。
#xxxxx ランク値の計算をさせる分岐がSkillModeで逆になっていたのを修正。
#xxxxx ギター側のレーンフラッシュの線が1px下に寄っていたのを修正。
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     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 kairera0467 110 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 kairera0467 2
56 kairera0467 110 case 1:
57     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankS.png"));
58     break;
59 kairera0467 2
60 kairera0467 110 case 2:
61     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankA.png"));
62     break;
63 kairera0467 2
64 kairera0467 110 case 3:
65     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankB.png"));
66     break;
67 kairera0467 2
68 kairera0467 110 case 4:
69     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankC.png"));
70     break;
71 kairera0467 2
72 kairera0467 110 case 5:
73     this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankD.png"));
74     break;
75 kairera0467 2
76 kairera0467 110 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 kairera0467 2
81 kairera0467 110 default:
82     this.txランク文字 = null;
83     break;
84     }
85     }
86     else if (CDTXMania.ConfigIni.bDrums有効 == false && CDTXMania.ConfigIni.bGuitar有効 == true)
87     {
88 kairera0467 179 switch( CDTXMania.stage結果.nランク値.Guitar )
89 kairera0467 110 {
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     break;
118    
119     default:
120 kairera0467 144 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
121 kairera0467 110 break;
122     }
123     switch (CDTXMania.stage結果.nランク値.Bass)
124     {
125     case 0:
126     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankSS.png"));
127     break;
128    
129     case 1:
130     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankS.png"));
131     break;
132    
133     case 2:
134     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankA.png"));
135     break;
136    
137     case 3:
138     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankB.png"));
139     break;
140    
141     case 4:
142     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankC.png"));
143     break;
144    
145     case 5:
146     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankD.png"));
147     break;
148    
149     case 6:
150     case 99: // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす
151     this.txランク文字2P = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
152     break;
153    
154     default:
155 kairera0467 144 this.txランク文字 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\8_rankE.png"));
156 kairera0467 110 break;
157     }
158     }
159 kairera0467 2 base.OnManagedリソスの作成();
160     }
161     }
162     public override void OnManagedリソスの解放()
163     {
164     if( !base.b活性化してない )
165     {
166     CDTXMania.tテクスチャの解放( ref this.txランク文字 );
167 kairera0467 110 CDTXMania.tテクスチャの解放( ref this.txランク文字2P );
168 kairera0467 2 base.OnManagedリソスの解放();
169     }
170     }
171     public override int On進行描画()
172     {
173     if( base.b活性化してない )
174     {
175     return 0;
176     }
177     if( base.b初めての進行描画 )
178     {
179     this.ctランク表示 = new CCounter(0, 0x3e8, 2, CDTXMania.Timer);
180     base.b初めての進行描画 = false;
181     }
182     this.ctランク表示.t進行();
183     if( this.ctランク表示.n現在の値 >= 500 )
184     {
185     double num2 = ( (double) ( this.ctランク表示.n現在の値 - 500 ) ) / 500.0;
186     if (this.txランク文字 != null)
187     {
188 kairera0467 110 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));
189 kairera0467 2 }
190 kairera0467 110 if ( this.txランク文字2P != null )
191     {
192 kairera0467 115 this.txランク文字2P.t2D描画(CDTXMania.app.Device, 850, 420, new Rectangle(0, 0, (int)((double)txランク文字.sz画像サイズ.Width * num2), this.txランク文字.sz画像サイズ.Height));
193 kairera0467 110 }
194 kairera0467 2 }
195     if( !this.ctランク表示.b終了値に達した )
196     {
197     return 0;
198     }
199     return 1;
200     }
201    
202    
203     // その他
204    
205     #region [ private ]
206     //-----------------
207     private CCounter ctランク表示;
208     private int n本体X;
209     private int n本体Y;
210     private CTexture txランク文字;
211 kairera0467 110 private CTexture txランク文字2P;
212 kairera0467 2 //-----------------
213     #endregion
214     }
215     }

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