if( !base.b活性化してない )\r
{\r
this.txゲージ = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlayDrums gauge.png" ) );\r
+ this.txゲージ白 = CDTXMania.tテクスチャの生成Af( CSkin.Path( @"Graphics\ScreenPlayDrums_gauge_white.png " ) );\r
base.OnManagedリソースの作成();\r
}\r
}\r
{\r
if( !base.b活性化してない )\r
{\r
+ CDTXMania.tテクスチャの解放( ref this.txゲージ白 );\r
CDTXMania.tテクスチャの解放( ref this.txゲージ );\r
base.OnManagedリソースの解放();\r
}\r
}\r
#endregion\r
#region [ 光彩 ]\r
- if ( this.txゲージ != null )\r
+ if ( this.txゲージ白 != null )\r
{\r
- //this.txゲージ.vc拡大縮小倍率 = new Vector3( 1f, 1f, 1f );\r
- this.txゲージ.n透明度 = 180;\r
- this.txゲージ.b加算合成 = true;\r
+ this.txゲージ白.vc拡大縮小倍率 = new Vector3( 1f, 1f, 1f );\r
+ this.txゲージ白.n透明度 = 180;\r
+ this.txゲージ白.b加算合成 = true;\r
}\r
- for ( int i = 0; i < 4; i++ )\r
{\r
Rectangle rect = new Rectangle(\r
- (int) ( ( 0x40 + ( i * 0x10 ) ) * Scale.X ),\r
0,\r
- (int) ( 0x10 * Scale.X ),\r
- (int) ( 0x40 * Scale.Y )\r
+ 0,\r
+ (int) ( 0x10 * Scale.X ),\r
+ (int) ( 0x40 * 4 * Scale.Y )\r
);\r
- #region [ clipping ]\r
- int ylight = ( n表示ゲージ最大値 - n表示するゲージの高さ ) + (int) ( i * 0x40 * Scale.Y );\r
+ #region [ clipping1 ]\r
+ int ylight = ( n表示ゲージ最大値 - n表示するゲージの高さ ) + (int) ( 0 * 0x40 * Scale.Y );\r
if ( ylight >= n表示ゲージ最大値 )\r
{\r
- break;\r
- }\r
- if ( ( ylight + rect.Height ) > n表示ゲージ最大値 )\r
- {\r
- int d = ( ylight + rect.Height ) - n表示ゲージ最大値;\r
- rect.Height -= d;\r
+ //break;\r
}\r
#endregion\r
- if ( ( rect.Top < rect.Bottom ) && ( this.txゲージ != null ) )\r
+ else\r
{\r
- this.txゲージ.t2D描画(\r
- CDTXMania.app.Device,\r
- (int) ( 6 * Scale.X ),\r
- (int) ( ylight + 0.5f ),\r
- rect\r
- );\r
+ #region [ Clipping2 ]\r
+ if ( ( ylight + rect.Height ) > n表示ゲージ最大値 )\r
+ {\r
+ int d = ( ylight + rect.Height ) - n表示ゲージ最大値;\r
+ rect.Height -= d;\r
+ }\r
+ #endregion\r
+ if ( ( rect.Top < rect.Bottom ) && ( this.txゲージ白 != null ) )\r
+ {\r
+ this.txゲージ白.t2D描画(\r
+ CDTXMania.app.Device,\r
+ (int) ( 6 * Scale.X ),\r
+ (int) ( ylight + 0.5f ),\r
+ rect\r
+ );\r
+ }\r
}\r
}\r
#endregion\r
#region [ 泡 ]\r
if ( this.txゲージ != null )\r
{\r
- this.txゲージ.b加算合成 = true;\r
+ this.txゲージ.b加算合成 = true;\r
}\r
for ( int j = 0; j < 24; j++ )\r
{\r
- this.st白い星[ j ].ct進行.t進行Loop();\r
- int x = 6 + this.st白い星[ j ].x;\r
+ this.st白い星[ j ].ct進行.t進行Loop();\r
+ int x = 6 + this.st白い星[ j ].x;\r
int y泡 = ( n表示ゲージ最大値 - n表示するゲージの高さ ) + (int) ( ( 0x160 - this.st白い星[ j ].ct進行.n現在の値 ) * Scale.Y );\r
- int n透明度 = ( this.st白い星[ j ].ct進行.n現在の値 < 0xb0 ) ? 0 : ( (int) ( 255.0 * ( ( (double) ( this.st白い星[ j ].ct進行.n現在の値 - 0xb0 ) ) / 176.0 ) ) );\r
- if ( ( n透明度 != 0 ) && ( y泡 < (int) ( 0x191 * Scale.Y ) ) )\r
- {\r
- Rectangle rect = new Rectangle(\r
- (int) ( 0 * Scale.X ),\r
- (int) ( 0x20 * Scale.Y ),\r
- (int) ( 0x20 * Scale.X ),\r
- (int) ( 0x20 * Scale.Y )\r
- );\r
- if ( this.txゲージ != null )\r
- {\r
- this.txゲージ.vc拡大縮小倍率 = new Vector3( this.st白い星[ j ].fScale, this.st白い星[ j ].fScale, 1f );\r
- this.txゲージ.n透明度 = n透明度;\r
- this.txゲージ.t2D描画(\r
- CDTXMania.app.Device,\r
- (int) ( x * Scale.X ),\r
- (int) ( y泡 + 0.5f ),\r
- rect\r
- );\r
- }\r
- }\r
+ int n透明度 = ( this.st白い星[ j ].ct進行.n現在の値 < 0xb0 ) ? 0 : ( (int) ( 255.0 * ( ( (double) ( this.st白い星[ j ].ct進行.n現在の値 - 0xb0 ) ) / 176.0 ) ) );\r
+ if ( ( n透明度 != 0 ) && ( y泡 < (int) ( 0x191 * Scale.Y ) ) )\r
+ {\r
+ Rectangle rect = new Rectangle(\r
+ (int) ( 0 * Scale.X ),\r
+ (int) ( 0x20 * Scale.Y ),\r
+ (int) ( 0x20 * Scale.X ),\r
+ (int) ( 0x20 * Scale.Y )\r
+ );\r
+ if ( this.txゲージ != null )\r
+ {\r
+ this.txゲージ.vc拡大縮小倍率 = new Vector3( this.st白い星[ j ].fScale, this.st白い星[ j ].fScale, 1f );\r
+ this.txゲージ.n透明度 = n透明度;\r
+ this.txゲージ.t2D描画(\r
+ CDTXMania.app.Device,\r
+ (int) ( x * Scale.X ),\r
+ (int) ( y泡 + 0.5f ),\r
+ rect\r
+ );\r
+ }\r
+ }\r
}\r
#endregion\r
}\r
public CCounter ct進行;\r
}\r
\r
-\r
+ private CTextureAf txゲージ白;\r
private const int STAR_MAX = 0x18;\r
private ST白い星[] st白い星 = new ST白い星[ 0x18 ];\r
//-----------------\r