From ed643511094473b059395b1c3202ef0fbc4d2c7a Mon Sep 17 00:00:00 2001 From: yyagi Date: Thu, 17 Feb 2011 15:14:07 +0000 Subject: [PATCH] =?utf8?q?=E7=B6=9A=E3=83=BB=E6=BC=94=E5=A5=8F=E7=94=BB?= =?utf8?q?=E9=9D=A2=E3=81=AE=E3=83=AA=E3=83=95=E3=82=A1=E3=82=AF=E3=82=BF?= =?utf8?q?=E3=80=82=E3=83=89=E3=83=A9=E3=83=A0=E3=81=A8=E3=82=AE=E3=82=BF?= =?utf8?q?=E3=83=BC=E7=94=BB=E9=9D=A2=E3=81=A7=E5=85=B1=E9=80=9A=E3=81=A7?= =?utf8?q?=E4=BD=BF=E7=94=A8=E3=81=97=E3=81=A6=E3=81=84=E3=82=8B=E3=83=A1?= =?utf8?q?=E3=82=BD=E3=83=83=E3=83=89=E3=82=921=E3=81=A4=E3=81=AB=E3=81=BE?= =?utf8?q?=E3=81=A8=E3=82=81=E3=82=8B=E4=BD=9C=E6=A5=AD=E3=80=82=E3=81=BE?= =?utf8?q?=E3=81=A0=E5=AE=8C=E5=85=A8=E3=81=AB=E3=81=AF=E4=BD=9C=E6=A5=AD?= =?utf8?q?=E5=AE=8C=E4=BA=86=E3=81=97=E3=81=A6=E3=81=84=E3=81=AA=E3=81=84?= =?utf8?q?=E3=80=82=E5=B0=91=E3=81=97=E3=81=9A=E3=81=A4=E6=85=8E=E9=87=8D?= =?utf8?q?=E3=81=AB=E9=80=B2=E3=82=81=E3=81=BE=E3=81=99=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit git-svn-id: http://svn.osdn.jp/svnroot/dtxmania/trunk@118 16f42ceb-6dc6-49c8-ba94-f2d53467949d --- .../07.演奏/CStage演奏画面共通.cs | 222 +++++++++++- .../CAct演奏GuitarWailingBonus.cs | 38 +-- .../ギター画面/CStage演奏ギター画面.cs | 376 +++++++++++---------- .../ドラム画面/CAct演奏DrumsWailingBonus.cs | 39 +-- .../ドラム画面/CStage演奏ドラム画面.cs | 350 ++++++++++--------- 5 files changed, 594 insertions(+), 431 deletions(-) diff --git a/DTXManiaプロジェクト/コード/ステージ/07.演奏/CStage演奏画面共通.cs b/DTXManiaプロジェクト/コード/ステージ/07.演奏/CStage演奏画面共通.cs index 896b50b4..9cc56c94 100644 --- a/DTXManiaプロジェクト/コード/ステージ/07.演奏/CStage演奏画面共通.cs +++ b/DTXManiaプロジェクト/コード/ステージ/07.演奏/CStage演奏画面共通.cs @@ -54,7 +54,26 @@ namespace DTXMania this.bIsAutoPlay = CDTXMania.ConfigIni.bAutoPlay; // #24239 2011.1.23 yyagi } + public override void OnManagedリソースの作成() + { + if ( !base.b活性化してない ) + { + this.t背景テクスチャの生成(); + this.txWailing枠 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlay wailing cursor.png" ) ); + + base.OnManagedリソースの作成(); + } + } + public override void OnManagedリソースの解放() + { + if ( !base.b活性化してない ) + { + CDTXMania.tテクスチャの解放( ref this.tx背景 ); + CDTXMania.tテクスチャの解放( ref this.txWailing枠 ); + base.OnManagedリソースの解放(); + } + } // その他 @@ -222,11 +241,20 @@ namespace DTXMania } } + protected CAct演奏AVI actAVI; + protected CAct演奏BGA actBGA; protected CActFIFOBlack actFI; protected CActFIFOBlack actFO; protected CActFIFOWhite actFOClear; protected CAct演奏ゲージ actGauge; + protected CAct演奏パネル文字列 actPanel; + protected CAct演奏演奏情報 actPlayInfo; + + protected CAct演奏ステージ失敗 actStageFailed; + + protected CAct演奏WailingBonus actWailingBonus; + protected CAct演奏スクロール速度 act譜面スクロール速度; protected bool bPAUSE; protected STDGBVALUE b演奏にMIDI入力を使った; protected STDGBVALUE b演奏にキーボードを使った; @@ -239,8 +267,9 @@ namespace DTXMania protected CDTX.CChip r次にくるギターChip; protected CDTX.CChip r次にくるベースChip; + protected CTexture txWailing枠; - + protected CTexture tx背景; protected STDGBVALUE nInputAdjustTimeMs; // #23580 2011.1.3 yyagi protected CConfigIni.STAUTOPLAY bIsAutoPlay; // #24239 2011.1.23 yyagi @@ -596,7 +625,85 @@ namespace DTXMania } + protected abstract void t進行描画・AVI(); + protected void t進行描画・AVI(int x, int y) + { + if ( ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( !CDTXMania.ConfigIni.bストイックモード && CDTXMania.ConfigIni.bAVI有効 ) ) + { + this.actAVI.t進行描画( x, y ); + } + } + protected abstract void t進行描画・BGA(); + protected void t進行描画・BGA(int x, int y) + { + if ( ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( !CDTXMania.ConfigIni.bストイックモード && CDTXMania.ConfigIni.bBGA有効 ) ) + { + this.actBGA.t進行描画( x, y ); + } + } + + protected void t進行描画・MIDIBGM() + { + if ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) + { + CStage.Eフェーズ eフェーズid1 = base.eフェーズID; + } + } + + protected void t進行描画・STAGEFAILED() + { + if ( ( ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED ) || ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( ( this.actStageFailed.On進行描画() != 0 ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) + { + this.eフェードアウト完了時の戻り値 = E演奏画面の戻り値.ステージ失敗; + base.eフェーズID = CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト; + this.actFO.tフェードアウト開始(); + } + } + protected void t進行描画・WailingBonus() + { + if ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) + { + this.actWailingBonus.On進行描画(); + } + } + protected abstract void t進行描画・Wailing枠(); + protected void t進行描画・Wailing枠(int GtWailingFrameX, int BsWailingFrameX, int GtWailingFrameY, int BsWailingFrameY) + { + if ( ( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) && CDTXMania.ConfigIni.bGuitar有効 ) + { + if ( CDTXMania.DTX.bチップがある.Guitar && ( this.txWailing枠 != null ) ) + { + this.txWailing枠.t2D描画( CDTXMania.app.Device, GtWailingFrameX, GtWailingFrameY ); + } + if ( CDTXMania.DTX.bチップがある.Bass && ( this.txWailing枠 != null ) ) + { + this.txWailing枠.t2D描画( CDTXMania.app.Device, BsWailingFrameX, BsWailingFrameY ); + } + } + } + + + protected abstract void t進行描画・パネル文字列(); + protected void t進行描画・パネル文字列(int x, int y) + { + if ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) + { + this.actPanel.t進行描画( x, y ); + } + } + protected void tパネル文字列の設定() + { + this.actPanel.SetPanelString( string.IsNullOrEmpty( CDTXMania.DTX.PANEL ) ? CDTXMania.DTX.TITLE : CDTXMania.DTX.PANEL ); + } + + protected void t進行描画・ゲージ() + { + if ( ( ( CDTXMania.ConfigIni.eDark != Eダークモード.HALF ) && ( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) ) && ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) + { + this.actGauge.On進行描画(); + } + } protected bool t進行描画・フェードイン・アウト() { @@ -626,10 +733,119 @@ namespace DTXMania } return false; - } + } - + protected abstract void t進行描画・演奏情報(); + protected void t進行描画・演奏情報(int x, int y) + { + if ( !CDTXMania.ConfigIni.b演奏情報を表示しない ) + { + this.actPlayInfo.t進行描画( x, y ); + } + } + protected void t進行描画・背景() + { + if ( CDTXMania.ConfigIni.eDark == Eダークモード.OFF ) + { + if ( this.tx背景 != null ) + { + this.tx背景.t2D描画( CDTXMania.app.Device, 0, 0 ); + } + } + else + { + CDTXMania.app.Device.Clear( ClearFlags.ZBuffer | ClearFlags.Target, Color.Black, 0f, 0 ); + } + } + protected void t進行描画・譜面スクロール速度() + { + this.act譜面スクロール速度.On進行描画(); + } + + protected abstract void t背景テクスチャの生成(); // overwrited by a successor + protected void t背景テクスチャの生成( string DefaultBgFilename, Rectangle bgrect, string bgfilename ) + { + Bitmap image = null; + bool flag = true; + + if ( bgfilename != null && File.Exists( bgfilename ) ) + { + try + { + Bitmap bitmap2 = null; + bitmap2 = new Bitmap( bgfilename ); + if ( ( bitmap2.Size.Width == 0 ) && ( bitmap2.Size.Height == 0 ) ) + { + this.tx背景 = null; + return; + } + Bitmap bitmap3 = new Bitmap( 640, 480 ); + Graphics graphics = Graphics.FromImage( bitmap3 ); + for ( int i = 0; i < 480; i += bitmap2.Size.Height ) + { + for ( int j = 0; j < 640; j += bitmap2.Size.Width ) + { + graphics.DrawImage( bitmap2, j, i, bitmap2.Width, bitmap2.Height ); + } + } + graphics.Dispose(); + bitmap2.Dispose(); + image = new Bitmap( CSkin.Path( DefaultBgFilename ) ); + graphics = Graphics.FromImage( image ); + ColorMatrix matrix2 = new ColorMatrix(); + matrix2.Matrix00 = 1f; + matrix2.Matrix11 = 1f; + matrix2.Matrix22 = 1f; + matrix2.Matrix33 = ( (float) CDTXMania.ConfigIni.n背景の透過度 ) / 255f; + matrix2.Matrix44 = 1f; + ColorMatrix newColorMatrix = matrix2; + ImageAttributes imageAttr = new ImageAttributes(); + imageAttr.SetColorMatrix( newColorMatrix ); + graphics.DrawImage( bitmap3, new Rectangle( 0, 0, 640, 480 ), 0, 0, 640, 480, GraphicsUnit.Pixel, imageAttr ); + imageAttr.Dispose(); + graphics.DrawImage( bitmap3, bgrect, bgrect.X, bgrect.Y, bgrect.Width, bgrect.Height, GraphicsUnit.Pixel ); + graphics.Dispose(); + bitmap3.Dispose(); + flag = false; + } + catch + { + Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { bgfilename } ); + } + } + if ( flag ) + { + bgfilename = CSkin.Path( DefaultBgFilename ); + try + { + image = new Bitmap( bgfilename ); + } + catch + { + Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { bgfilename } ); + this.tx背景 = null; + return; + } + } + if ( ( CDTXMania.DTX.listBMP.Count > 0 ) || ( CDTXMania.DTX.listBMPTEX.Count > 0 ) ) + { + Graphics graphics2 = Graphics.FromImage( image ); + graphics2.FillRectangle( Brushes.Black, bgrect.X, bgrect.Y, bgrect.Width, bgrect.Height ); + graphics2.Dispose(); + } + try + { + this.tx背景 = new CTexture( CDTXMania.app.Device, image, CDTXMania.TextureFormat ); + } + catch ( CTextureCreateFailedException ) + { + Trace.TraceError( "背景テクスチャの生成に失敗しました。" ); + this.tx背景 = null; + } + image.Dispose(); + } + #if true // DAMAGELEVELTUNING #region [ DAMAGELEVELTUNING ] diff --git a/DTXManiaプロジェクト/コード/ステージ/07.演奏/ギター画面/CAct演奏GuitarWailingBonus.cs b/DTXManiaプロジェクト/コード/ステージ/07.演奏/ギター画面/CAct演奏GuitarWailingBonus.cs index e46a25ec..56657c9d 100644 --- a/DTXManiaプロジェクト/コード/ステージ/07.演奏/ギター画面/CAct演奏GuitarWailingBonus.cs +++ b/DTXManiaプロジェクト/コード/ステージ/07.演奏/ギター画面/CAct演奏GuitarWailingBonus.cs @@ -6,7 +6,7 @@ using FDK; namespace DTXMania { - internal class CAct演奏GuitarWailingBonus : CActivity + internal class CAct演奏GuitarWailingBonus : CAct演奏WailingBonus { // メソッド @@ -14,11 +14,11 @@ namespace DTXMania { base.b活性化してない = true; } - public void Start( E楽器パート part ) - { - this.Start( part, null ); - } - public void Start( E楽器パート part, CDTX.CChip r歓声Chip ) + //public override void Start( E楽器パート part ) + //{ + // this.Start( part, null ); + //} + public override void Start( E楽器パート part, CDTX.CChip r歓声Chip ) { if( part != E楽器パート.DRUMS ) { @@ -58,22 +58,6 @@ namespace DTXMania } base.On活性化(); } - public override void OnManagedリソースの作成() - { - if( !base.b活性化してない ) - { - this.txWailingBonus = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlay wailing bonus.png" ) ); - base.OnManagedリソースの作成(); - } - } - public override void OnManagedリソースの解放() - { - if( !base.b活性化してない ) - { - CDTXMania.tテクスチャの解放( ref this.txWailingBonus ); - base.OnManagedリソースの解放(); - } - } public override int On進行描画() { if( !base.b活性化してない ) @@ -164,15 +148,5 @@ namespace DTXMania } return 0; } - - - // その他 - - #region [ private ] - //----------------- - private CCounter[,] ct進行用 = new CCounter[ 3, 4 ]; - private CTexture txWailingBonus; - //----------------- - #endregion } } diff --git a/DTXManiaプロジェクト/コード/ステージ/07.演奏/ギター画面/CStage演奏ギター画面.cs b/DTXManiaプロジェクト/コード/ステージ/07.演奏/ギター画面/CStage演奏ギター画面.cs index 2d47f86e..87204d73 100644 --- a/DTXManiaプロジェクト/コード/ステージ/07.演奏/ギター画面/CStage演奏ギター画面.cs +++ b/DTXManiaプロジェクト/コード/ステージ/07.演奏/ギター画面/CStage演奏ギター画面.cs @@ -225,10 +225,10 @@ namespace DTXMania { if( !base.b活性化してない ) { - this.t背景テクスチャの生成(); + //this.t背景テクスチャの生成(); this.txチップ = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlayGuitar chips.png" ) ); this.txヒットバー = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlayGuitar hit-bar.png" ) ); - this.txWailing枠 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlay wailing cursor.png" ) ); + //this.txWailing枠 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlay wailing cursor.png" ) ); base.OnManagedリソースの作成(); } } @@ -236,10 +236,10 @@ namespace DTXMania { if( !base.b活性化してない ) { - CDTXMania.tテクスチャの解放( ref this.tx背景 ); + //CDTXMania.tテクスチャの解放( ref this.tx背景 ); CDTXMania.tテクスチャの解放( ref this.txチップ ); CDTXMania.tテクスチャの解放( ref this.txヒットバー ); - CDTXMania.tテクスチャの解放( ref this.txWailing枠 ); + //CDTXMania.tテクスチャの解放( ref this.txWailing枠 ); base.OnManagedリソースの解放(); } } @@ -534,8 +534,8 @@ namespace DTXMania // } //} - private CAct演奏AVI actAVI; - private CAct演奏BGA actBGA; + //private CAct演奏AVI actAVI; + //private CAct演奏BGA actBGA; private CAct演奏Guitarチップファイア actChipFire; private CAct演奏Guitarコンボ actCombo; //private CActFIFOBlack actFI; @@ -544,14 +544,14 @@ namespace DTXMania //private CAct演奏Guitarゲージ actGauge; private CAct演奏Guitar判定文字列 actJudgeString; private CAct演奏GuitarレーンフラッシュGB actLaneFlushGB; - private CAct演奏パネル文字列 actPanel; - private CAct演奏演奏情報 actPlayInfo; + //private CAct演奏パネル文字列 actPanel; + //private CAct演奏演奏情報 actPlayInfo; private CAct演奏GuitarRGB actRGB; private CAct演奏Guitarスコア actScore; - private CAct演奏ステージ失敗 actStageFailed; + //private CAct演奏ステージ失敗 actStageFailed; private CAct演奏Guitarステータスパネル actStatusPanels; - private CAct演奏GuitarWailingBonus actWailingBonus; - private CAct演奏スクロール速度 act譜面スクロール速度; + //private CAct演奏GuitarWailingBonus actWailingBonus; + //private CAct演奏スクロール速度 act譜面スクロール速度; //private bool bPAUSE; //private STDGBVALUE b演奏にMIDI入力を使った; //private STDGBVALUE b演奏にキーボードを使った; @@ -581,10 +581,10 @@ namespace DTXMania private CDTX.CChip r現在の空うちベースChip; //private CDTX.CChip r次にくるギターChip; //private CDTX.CChip r次にくるベースChip; - private CTexture txWailing枠; + //private CTexture txWailing枠; private CTexture txチップ; private CTexture txヒットバー; - private CTexture tx背景; + //private CTexture tx背景; // private STDGBVALUE nInputAdjustTimeMs; // #23580 2011.1.3 yyagi //private STDGBVALUE bIsAutoPlay; // #24239 2011.1.23 yyagi @@ -1089,34 +1089,28 @@ namespace DTXMania return; } } - private void tパネル文字列の設定() + //private void tパネル文字列の設定() + //{ + // this.actPanel.SetPanelString( string.IsNullOrEmpty( CDTXMania.DTX.PANEL ) ? CDTXMania.DTX.TITLE : CDTXMania.DTX.PANEL ); + //} + protected override void t進行描画・AVI() { - this.actPanel.SetPanelString( string.IsNullOrEmpty( CDTXMania.DTX.PANEL ) ? CDTXMania.DTX.TITLE : CDTXMania.DTX.PANEL ); + base.t進行描画・AVI( 0xb5, 50 ); } - private void t進行描画・AVI() + protected override void t進行描画・BGA() { - if( ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( !CDTXMania.ConfigIni.bストイックモード && CDTXMania.ConfigIni.bAVI有効 ) ) - { - this.actAVI.t進行描画( 0xb5, 50 ); - } - } - private void t進行描画・BGA() - { - if( ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( !CDTXMania.ConfigIni.bストイックモード && CDTXMania.ConfigIni.bBGA有効 ) ) - { - this.actBGA.t進行描画( 0xb5, 50 ); - } + base.t進行描画・BGA( 0xb5, 50 ); } private void t進行描画・DANGER() { } - private void t進行描画・MIDIBGM() - { - if( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) - { - CStage.Eフェーズ eフェーズid1 = base.eフェーズID; - } - } + //private void t進行描画・MIDIBGM() + //{ + // if( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) + // { + // CStage.Eフェーズ eフェーズid1 = base.eフェーズID; + // } + //} private void t進行描画・RGBボタン() { if( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) @@ -1124,35 +1118,28 @@ namespace DTXMania this.actRGB.On進行描画(); } } - private void t進行描画・STAGEFAILED() - { - if( ( ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED ) || ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( ( this.actStageFailed.On進行描画() != 0 ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) - { - this.eフェードアウト完了時の戻り値 = E演奏画面の戻り値.ステージ失敗; - base.eフェーズID = CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト; - this.actFO.tフェードアウト開始(); - } - } - private void t進行描画・WailingBonus() - { - if( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) - { - this.actWailingBonus.On進行描画(); - } - } - private void t進行描画・Wailing枠() + //private void t進行描画・STAGEFAILED() + //{ + // if( ( ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED ) || ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( ( this.actStageFailed.On進行描画() != 0 ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) + // { + // this.eフェードアウト完了時の戻り値 = E演奏画面の戻り値.ステージ失敗; + // base.eフェーズID = CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト; + // this.actFO.tフェードアウト開始(); + // } + //} + //private void t進行描画・WailingBonus() + //{ + // if( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) + // { + // this.actWailingBonus.On進行描画(); + // } + //} + protected override void t進行描画・Wailing枠() { - if( ( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) && CDTXMania.ConfigIni.bGuitar有効 ) - { - if( CDTXMania.DTX.bチップがある.Guitar && ( this.txWailing枠 != null ) ) - { - this.txWailing枠.t2D描画( CDTXMania.app.Device, 0x8b, CDTXMania.ConfigIni.bReverse.Guitar ? 340 : 11 ); - } - if( CDTXMania.DTX.bチップがある.Bass && ( this.txWailing枠 != null ) ) - { - this.txWailing枠.t2D描画( CDTXMania.app.Device, 0x251, CDTXMania.ConfigIni.bReverse.Bass ? 340 : 11 ); - } - } + base.t進行描画・Wailing枠( 0x8b, 0x251, + CDTXMania.ConfigIni.bReverse.Guitar ? 340 : 11, + CDTXMania.ConfigIni.bReverse.Bass ? 340 : 11 + ); } private void t進行描画・ギターベース判定ライン() { @@ -1182,13 +1169,13 @@ namespace DTXMania } } } - private void t進行描画・ゲージ() - { - if( ( ( CDTXMania.ConfigIni.eDark != Eダークモード.HALF ) && ( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) ) && ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) - { - this.actGauge.On進行描画(); - } - } + //private void t進行描画・ゲージ() + //{ + // if( ( ( CDTXMania.ConfigIni.eDark != Eダークモード.HALF ) && ( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) ) && ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) + // { + // this.actGauge.On進行描画(); + // } + //} private void t進行描画・コンボ() { this.actCombo.On進行描画(); @@ -1906,12 +1893,9 @@ namespace DTXMania { this.actChipFire.On進行描画(); } - private void t進行描画・パネル文字列() + protected override void t進行描画・パネル文字列() { - if( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) - { - this.actPanel.t進行描画( 0xb5, 430 ); - } + base.t進行描画・パネル文字列( 0xb5, 430 ); } //private bool t進行描画・フェードイン・アウト() //{ @@ -1948,35 +1932,32 @@ namespace DTXMania this.actLaneFlushGB.On進行描画(); } } - private void t進行描画・演奏情報() + protected override void t進行描画・演奏情報() { - if( !CDTXMania.ConfigIni.b演奏情報を表示しない ) - { - this.actPlayInfo.t進行描画( 0xb5, 50 ); - } - } - private void t進行描画・背景() - { - if( CDTXMania.ConfigIni.eDark == Eダークモード.OFF ) - { - if( this.tx背景 != null ) - { - this.tx背景.t2D描画( CDTXMania.app.Device, 0, 0 ); - } - } - else - { - CDTXMania.app.Device.Clear( ClearFlags.ZBuffer | ClearFlags.Target, Color.Black, 0f, 0 ); - } + base.t進行描画・演奏情報( 0xb5, 50 ); } + //private void t進行描画・背景() + //{ + // if( CDTXMania.ConfigIni.eDark == Eダークモード.OFF ) + // { + // if( this.tx背景 != null ) + // { + // this.tx背景.t2D描画( CDTXMania.app.Device, 0, 0 ); + // } + // } + // else + // { + // CDTXMania.app.Device.Clear( ClearFlags.ZBuffer | ClearFlags.Target, Color.Black, 0f, 0 ); + // } + //} private void t進行描画・判定文字列() { this.actJudgeString.On進行描画(); } - private void t進行描画・譜面スクロール速度() - { - this.act譜面スクロール速度.On進行描画(); - } + //private void t進行描画・譜面スクロール速度() + //{ + // this.act譜面スクロール速度.On進行描画(); + //} //private void t入力メソッド記憶( E楽器パート part ) //{ // if( CDTXMania.Pad.st検知したデバイス.Keyboard ) @@ -2281,103 +2262,126 @@ namespace DTXMania } } } - private void t背景テクスチャの生成() + + protected override void t背景テクスチャの生成() { - Bitmap image = null; - string path = ""; - bool flag = true; - if( !CDTXMania.ConfigIni.bストイックモード ) + Rectangle bgrect = new Rectangle( 181, 50, 278, 355 ); + string DefaultBgFilename = @"Graphics\ScreenPlayGuitar background.jpg"; + string BgFilename = ""; + string BACKGROUND = null; + if ( ( CDTXMania.DTX.BACKGROUND_GR != null ) && ( CDTXMania.DTX.BACKGROUND_GR.Length > 0 ) ) { - string bACKGROUND = null; - if( ( CDTXMania.DTX.BACKGROUND_GR != null ) && ( CDTXMania.DTX.BACKGROUND_GR.Length > 0 ) ) - { - bACKGROUND = CDTXMania.DTX.BACKGROUND_GR; - } - else if( ( CDTXMania.DTX.BACKGROUND != null ) && ( CDTXMania.DTX.BACKGROUND.Length > 0 ) ) - { - bACKGROUND = CDTXMania.DTX.BACKGROUND; - } - if( ( bACKGROUND != null ) && ( bACKGROUND.Length > 0 ) ) - { - path = CDTXMania.DTX.strフォルダ名 + bACKGROUND; - if( File.Exists( path ) ) - { - try - { - Bitmap bitmap2 = null; - bitmap2 = new Bitmap( path ); - if( ( bitmap2.Size.Width == 0 ) && ( bitmap2.Size.Height == 0 ) ) - { - this.tx背景 = null; - return; - } - Bitmap bitmap3 = new Bitmap( 640, 480 ); - Graphics graphics = Graphics.FromImage( bitmap3 ); - for( int i = 0; i < 480; i += bitmap2.Size.Height ) - { - for( int j = 0; j < 640; j += bitmap2.Size.Width ) - { - graphics.DrawImage( bitmap2, j, i, bitmap2.Width, bitmap2.Height ); - } - } - graphics.Dispose(); - bitmap2.Dispose(); - image = new Bitmap( CSkin.Path( @"Graphics\\ScreenPlayGuitar background.jpg" ) ); - graphics = Graphics.FromImage( image ); - ColorMatrix matrix2 = new ColorMatrix(); - matrix2.Matrix00 = 1f; - matrix2.Matrix11 = 1f; - matrix2.Matrix22 = 1f; - matrix2.Matrix33 = ( (float) CDTXMania.ConfigIni.n背景の透過度 ) / 255f; - matrix2.Matrix44 = 1f; - ColorMatrix newColorMatrix = matrix2; - ImageAttributes imageAttr = new ImageAttributes(); - imageAttr.SetColorMatrix( newColorMatrix ); - graphics.DrawImage( bitmap3, new Rectangle( 0, 0, 640, 480 ), 0, 0, 640, 480, GraphicsUnit.Pixel, imageAttr ); - imageAttr.Dispose(); - graphics.DrawImage( bitmap3, new Rectangle( 0xb5, 50, 0x116, 0x163 ), 0xb5, 50, 0x116, 0x163, GraphicsUnit.Pixel ); - graphics.Dispose(); - bitmap3.Dispose(); - flag = false; - } - catch - { - Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { path } ); - } - } - } - } - if( flag ) - { - path = CSkin.Path( @"Graphics\ScreenPlayGuitar background.jpg" ); - try - { - image = new Bitmap( path ); - } - catch - { - Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { path } ); - this.tx背景 = null; - return; - } + BACKGROUND = CDTXMania.DTX.BACKGROUND_GR; } - if( ( CDTXMania.DTX.listBMP.Count > 0 ) || ( CDTXMania.DTX.listBMPTEX.Count > 0 ) ) + else if ( ( CDTXMania.DTX.BACKGROUND != null ) && ( CDTXMania.DTX.BACKGROUND.Length > 0 ) ) { - Graphics graphics2 = Graphics.FromImage( image ); - graphics2.FillRectangle( Brushes.Black, 0xb5, 50, 0x116, 0x163 ); - graphics2.Dispose(); + BACKGROUND = CDTXMania.DTX.BACKGROUND; } - try + if ( ( BACKGROUND != null ) && ( BACKGROUND.Length > 0 ) ) { - this.tx背景 = new CTexture( CDTXMania.app.Device, image, CDTXMania.TextureFormat ); + BgFilename = CDTXMania.DTX.strフォルダ名 + BACKGROUND; } - catch( CTextureCreateFailedException ) - { - Trace.TraceError( "背景テクスチャの生成に失敗しました。" ); - this.tx背景 = null; - } - image.Dispose(); + base.t背景テクスチャの生成( DefaultBgFilename, bgrect, BgFilename ); } + + + //private void t背景テクスチャの生成() + //{ + // Bitmap image = null; + // string path = ""; + // bool flag = true; + // if( !CDTXMania.ConfigIni.bストイックモード ) + // { + // string bACKGROUND = null; + // if( ( CDTXMania.DTX.BACKGROUND_GR != null ) && ( CDTXMania.DTX.BACKGROUND_GR.Length > 0 ) ) + // { + // bACKGROUND = CDTXMania.DTX.BACKGROUND_GR; + // } + // else if( ( CDTXMania.DTX.BACKGROUND != null ) && ( CDTXMania.DTX.BACKGROUND.Length > 0 ) ) + // { + // bACKGROUND = CDTXMania.DTX.BACKGROUND; + // } + // if( ( bACKGROUND != null ) && ( bACKGROUND.Length > 0 ) ) + // { + // path = CDTXMania.DTX.strフォルダ名 + bACKGROUND; + // if( File.Exists( path ) ) + // { + // try + // { + // Bitmap bitmap2 = null; + // bitmap2 = new Bitmap( path ); + // if( ( bitmap2.Size.Width == 0 ) && ( bitmap2.Size.Height == 0 ) ) + // { + // this.tx背景 = null; + // return; + // } + // Bitmap bitmap3 = new Bitmap( 640, 480 ); + // Graphics graphics = Graphics.FromImage( bitmap3 ); + // for( int i = 0; i < 480; i += bitmap2.Size.Height ) + // { + // for( int j = 0; j < 640; j += bitmap2.Size.Width ) + // { + // graphics.DrawImage( bitmap2, j, i, bitmap2.Width, bitmap2.Height ); + // } + // } + // graphics.Dispose(); + // bitmap2.Dispose(); + // image = new Bitmap( CSkin.Path( @"Graphics\\ScreenPlayGuitar background.jpg" ) ); + // graphics = Graphics.FromImage( image ); + // ColorMatrix matrix2 = new ColorMatrix(); + // matrix2.Matrix00 = 1f; + // matrix2.Matrix11 = 1f; + // matrix2.Matrix22 = 1f; + // matrix2.Matrix33 = ( (float) CDTXMania.ConfigIni.n背景の透過度 ) / 255f; + // matrix2.Matrix44 = 1f; + // ColorMatrix newColorMatrix = matrix2; + // ImageAttributes imageAttr = new ImageAttributes(); + // imageAttr.SetColorMatrix( newColorMatrix ); + // graphics.DrawImage( bitmap3, new Rectangle( 0, 0, 640, 480 ), 0, 0, 640, 480, GraphicsUnit.Pixel, imageAttr ); + // imageAttr.Dispose(); + // graphics.DrawImage( bitmap3, new Rectangle( 0xb5, 50, 0x116, 0x163 ), 0xb5, 50, 0x116, 0x163, GraphicsUnit.Pixel ); + // graphics.Dispose(); + // bitmap3.Dispose(); + // flag = false; + // } + // catch + // { + // Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { path } ); + // } + // } + // } + // } + // if( flag ) + // { + // path = CSkin.Path( @"Graphics\ScreenPlayGuitar background.jpg" ); + // try + // { + // image = new Bitmap( path ); + // } + // catch + // { + // Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { path } ); + // this.tx背景 = null; + // return; + // } + // } + // if( ( CDTXMania.DTX.listBMP.Count > 0 ) || ( CDTXMania.DTX.listBMPTEX.Count > 0 ) ) + // { + // Graphics graphics2 = Graphics.FromImage( image ); + // graphics2.FillRectangle( Brushes.Black, 0xb5, 50, 0x116, 0x163 ); + // graphics2.Dispose(); + // } + // try + // { + // this.tx背景 = new CTexture( CDTXMania.app.Device, image, CDTXMania.TextureFormat ); + // } + // catch( CTextureCreateFailedException ) + // { + // Trace.TraceError( "背景テクスチャの生成に失敗しました。" ); + // this.tx背景 = null; + // } + // image.Dispose(); + //} //#if true // DAMAGELEVELTUNING // // ---------------------------------- // public float[,] fDamageGaugeDelta = { // #23625 2011.1.10 ickw_284: tuned damage/recover factors diff --git a/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CAct演奏DrumsWailingBonus.cs b/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CAct演奏DrumsWailingBonus.cs index a85b7c4b..fa1de320 100644 --- a/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CAct演奏DrumsWailingBonus.cs +++ b/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CAct演奏DrumsWailingBonus.cs @@ -6,7 +6,7 @@ using FDK; namespace DTXMania { - internal class CAct演奏DrumsWailingBonus : CActivity + internal class CAct演奏DrumsWailingBonus : CAct演奏WailingBonus { // コンストラクタ @@ -18,11 +18,11 @@ namespace DTXMania // メソッド - public void Start( E楽器パート part ) - { - this.Start( part, null ); - } - public void Start( E楽器パート part, CDTX.CChip r歓声Chip ) + //public override void Start( E楽器パート part ) + //{ + // this.Start( part, null ); + //} + public override void Start( E楽器パート part, CDTX.CChip r歓声Chip ) { if( ( part == E楽器パート.GUITAR ) || ( part == E楽器パート.BASS ) ) { @@ -73,22 +73,7 @@ namespace DTXMania } base.On非活性化(); } - public override void OnManagedリソースの作成() - { - if( !base.b活性化してない ) - { - this.txWailingBonus = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlay wailing bonus.png" ) ); - base.OnManagedリソースの作成(); - } - } - public override void OnManagedリソースの解放() - { - if( !base.b活性化してない ) - { - CDTXMania.tテクスチャの解放( ref this.txWailingBonus ); - base.OnManagedリソースの解放(); - } - } + public override int On進行描画() { if( !base.b活性化してない ) @@ -167,15 +152,5 @@ namespace DTXMania } return 0; } - - - // その他 - - #region [ private ] - //----------------- - private CCounter[,] ct進行用 = new CCounter[ 3, 4 ]; - private CTexture txWailingBonus; - //----------------- - #endregion } } diff --git a/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CStage演奏ドラム画面.cs b/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CStage演奏ドラム画面.cs index a8f97c56..c1ff570f 100644 --- a/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CStage演奏ドラム画面.cs +++ b/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CStage演奏ドラム画面.cs @@ -325,11 +325,11 @@ namespace DTXMania { if( !base.b活性化してない ) { - this.t背景テクスチャの生成(); + //this.t背景テクスチャの生成(); this.txチップ = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlayDrums chips.png" ) ); this.txヒットバー = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlayDrums hit-bar.png" ) ); this.txヒットバーGB = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlayDrums hit-bar guitar.png" ) ); - this.txWailing枠 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlay wailing cursor.png" ) ); + //this.txWailing枠 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlay wailing cursor.png" ) ); this.txレーンフレームGB = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenPlayDrums lane parts guitar.png" ) ); if( this.txレーンフレームGB != null ) { @@ -342,12 +342,12 @@ namespace DTXMania { if( !base.b活性化してない ) { - CDTXMania.tテクスチャの解放( ref this.tx背景 ); + //CDTXMania.tテクスチャの解放( ref this.tx背景 ); CDTXMania.tテクスチャの解放( ref this.txヒットバー ); CDTXMania.tテクスチャの解放( ref this.txヒットバーGB ); CDTXMania.tテクスチャの解放( ref this.txチップ ); CDTXMania.tテクスチャの解放( ref this.txレーンフレームGB ); - CDTXMania.tテクスチャの解放( ref this.txWailing枠 ); + //CDTXMania.tテクスチャの解放( ref this.txWailing枠 ); base.OnManagedリソースの解放(); } } @@ -590,8 +590,8 @@ namespace DTXMania // } //} - private CAct演奏AVI actAVI; - private CAct演奏BGA actBGA; + //private CAct演奏AVI actAVI; + //private CAct演奏BGA actBGA; private CAct演奏DrumsチップファイアD actChipFireD; private CAct演奏DrumsチップファイアGB actChipFireGB; private CAct演奏DrumsコンボDGB actCOMBO; @@ -605,14 +605,14 @@ namespace DTXMania private CAct演奏DrumsレーンフラッシュD actLaneFlushD; private CAct演奏DrumsレーンフラッシュGB actLaneFlushGB; private CAct演奏Drumsパッド actPad; - private CAct演奏パネル文字列 actPanel; - private CAct演奏演奏情報 actPlayInfo; + //private CAct演奏パネル文字列 actPanel; + //private CAct演奏演奏情報 actPlayInfo; private CAct演奏DrumsRGB actRGB; private CAct演奏Drumsスコア actScore; - private CAct演奏ステージ失敗 actStageFailed; + //private CAct演奏ステージ失敗 actStageFailed; private CAct演奏Drumsステータスパネル actStatusPanels; - private CAct演奏DrumsWailingBonus actWailingBonus; - private CAct演奏スクロール速度 act譜面スクロール速度; + //private CAct演奏DrumsWailingBonus actWailingBonus; + //private CAct演奏スクロール速度 act譜面スクロール速度; //private bool bPAUSE; private bool bフィルイン中; // private STDGBVALUE b演奏にMIDI入力を使った; @@ -645,12 +645,12 @@ namespace DTXMania private CDTX.CChip r現在の空うちベースChip; //private CDTX.CChip r次にくるギターChip; //private CDTX.CChip r次にくるベースChip; - private CTexture txWailing枠; + //private CTexture txWailing枠; private CTexture txチップ; private CTexture txヒットバー; private CTexture txヒットバーGB; private CTexture txレーンフレームGB; - private CTexture tx背景; + //private CTexture tx背景; // private STDGBVALUE nInputAdjustTimeMs; // #23580 2011.1.3 yyagi //private CConfigIni.STAUTOPLAY bIsAutoPlay; // #24239 2011.1.23 yyagi @@ -1434,10 +1434,10 @@ namespace DTXMania } return true; } - private void tパネル文字列の設定() - { - this.actPanel.SetPanelString( string.IsNullOrEmpty( CDTXMania.DTX.PANEL ) ? CDTXMania.DTX.TITLE : CDTXMania.DTX.PANEL ); - } + //private void tパネル文字列の設定() + //{ + // this.actPanel.SetPanelString( string.IsNullOrEmpty( CDTXMania.DTX.PANEL ) ? CDTXMania.DTX.TITLE : CDTXMania.DTX.PANEL ); + //} //private void tキー入力() //{ // IInputDevice keyboard = CDTXMania.Input管理.Keyboard; @@ -1510,31 +1510,25 @@ namespace DTXMania } - private void t進行描画・AVI() + protected override void t進行描画・AVI() { - if( ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( !CDTXMania.ConfigIni.bストイックモード && CDTXMania.ConfigIni.bAVI有効 ) ) - { - this.actAVI.t進行描画( 0x152, 0x39 ); - } + base.t進行描画・AVI( 0x152, 0x39 ); } - private void t進行描画・BGA() + protected override void t進行描画・BGA() { - if( ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( !CDTXMania.ConfigIni.bストイックモード && CDTXMania.ConfigIni.bBGA有効 ) ) - { - this.actBGA.t進行描画( 0x152, 0x39 ); - } + base.t進行描画・BGA( 0x152, 0x39 ); } private void t進行描画・DANGER() { this.actDANGER.t進行描画( this.actGauge.db現在のゲージ値.Drums < 0.3 ); } - private void t進行描画・MIDIBGM() - { - if( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) - { - CStage.Eフェーズ eフェーズid1 = base.eフェーズID; - } - } + //private void t進行描画・MIDIBGM() + //{ + // if( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) + // { + // CStage.Eフェーズ eフェーズid1 = base.eフェーズID; + // } + //} private void t進行描画・RGBボタン() { if( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) @@ -1542,35 +1536,28 @@ namespace DTXMania this.actRGB.On進行描画(); } } - private void t進行描画・STAGEFAILED() - { - if( ( ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED ) || ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( ( this.actStageFailed.On進行描画() != 0 ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) - { - this.eフェードアウト完了時の戻り値 = E演奏画面の戻り値.ステージ失敗; - base.eフェーズID = CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト; - this.actFO.tフェードアウト開始(); - } - } - private void t進行描画・WailingBonus() + //private void t進行描画・STAGEFAILED() + //{ + // if( ( ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED ) || ( base.eフェーズID == CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) && ( ( this.actStageFailed.On進行描画() != 0 ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) + // { + // this.eフェードアウト完了時の戻り値 = E演奏画面の戻り値.ステージ失敗; + // base.eフェーズID = CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト; + // this.actFO.tフェードアウト開始(); + // } + //} + //private void t進行描画・WailingBonus() + //{ + // if( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) + // { + // this.actWailingBonus.On進行描画(); + // } + //} + protected override void t進行描画・Wailing枠() { - if( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) - { - this.actWailingBonus.On進行描画(); - } - } - private void t進行描画・Wailing枠() - { - if( ( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) && CDTXMania.ConfigIni.bGuitar有効 ) - { - if( CDTXMania.DTX.bチップがある.Guitar && ( this.txWailing枠 != null ) ) - { - this.txWailing枠.t2D描画( CDTXMania.app.Device, 0x24b, CDTXMania.ConfigIni.bReverse.Guitar ? ( 400 - this.txWailing枠.sz画像サイズ.Height ) : 0x45 ); - } - if( CDTXMania.DTX.bチップがある.Bass && ( this.txWailing枠 != null ) ) - { - this.txWailing枠.t2D描画( CDTXMania.app.Device, 0x1de, CDTXMania.ConfigIni.bReverse.Bass ? ( 400 - this.txWailing枠.sz画像サイズ.Height ) : 0x45 ); - } - } + base.t進行描画・Wailing枠( 0x24b, 0x1de, + CDTXMania.ConfigIni.bReverse.Guitar ? ( 400 - this.txWailing枠.sz画像サイズ.Height ) : 0x45, + CDTXMania.ConfigIni.bReverse.Bass ? ( 400 - this.txWailing枠.sz画像サイズ.Height ) : 0x45 + ); } private void t進行描画・ギターベースフレーム() { @@ -1638,13 +1625,13 @@ namespace DTXMania } } } - private void t進行描画・ゲージ() - { - if( ( ( CDTXMania.ConfigIni.eDark != Eダークモード.HALF ) && ( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) ) && ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) - { - this.actGauge.On進行描画(); - } - } + //private void t進行描画・ゲージ() + //{ + // if( ( ( CDTXMania.ConfigIni.eDark != Eダークモード.HALF ) && ( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) ) && ( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) ) + // { + // this.actGauge.On進行描画(); + // } + //} // #24074 2011.01.23 add ikanick private void t進行描画・グラフ() { @@ -2599,12 +2586,9 @@ namespace DTXMania this.actPad.On進行描画(); } } - private void t進行描画・パネル文字列() + protected override void t進行描画・パネル文字列() { - if( ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED ) && ( base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト ) ) - { - this.actPanel.t進行描画( 0x150, 0x1ab ); - } + base.t進行描画・パネル文字列( 0x150, 0x1ab ); } //private bool t進行描画・フェードイン・アウト() //{ @@ -2648,27 +2632,24 @@ namespace DTXMania this.actLaneFlushGB.On進行描画(); } } - private void t進行描画・演奏情報() - { - if( !CDTXMania.ConfigIni.b演奏情報を表示しない ) - { - this.actPlayInfo.t進行描画( 0x152, 0x39 ); - } - } - private void t進行描画・背景() + protected override void t進行描画・演奏情報() { - if( CDTXMania.ConfigIni.eDark == Eダークモード.OFF ) - { - if( this.tx背景 != null ) - { - this.tx背景.t2D描画( CDTXMania.app.Device, 0, 0 ); - } - } - else - { - CDTXMania.app.Device.Clear( ClearFlags.ZBuffer | ClearFlags.Target, Color.Black, 0f, 0 ); - } + base.t進行描画・演奏情報( 0x152, 0x39 ); } + //private void t進行描画・背景() + //{ + // if( CDTXMania.ConfigIni.eDark == Eダークモード.OFF ) + // { + // if( this.tx背景 != null ) + // { + // this.tx背景.t2D描画( CDTXMania.app.Device, 0, 0 ); + // } + // } + // else + // { + // CDTXMania.app.Device.Clear( ClearFlags.ZBuffer | ClearFlags.Target, Color.Black, 0f, 0 ); + // } + //} private void t進行描画・判定ライン() { if( CDTXMania.ConfigIni.eDark != Eダークモード.FULL ) @@ -2697,10 +2678,10 @@ namespace DTXMania this.actJudgeString.On進行描画(); } } - private void t進行描画・譜面スクロール速度() - { - this.act譜面スクロール速度.On進行描画(); - } + //private void t進行描画・譜面スクロール速度() + //{ + // this.act譜面スクロール速度.On進行描画(); + //} //private void t入力メソッド記憶( E楽器パート part ) //{ // if( CDTXMania.Pad.st検知したデバイス.Keyboard ) @@ -4201,92 +4182,105 @@ namespace DTXMania } } } - private void t背景テクスチャの生成() + + protected override void t背景テクスチャの生成() { - Bitmap image = null; - string path = ""; - bool flag = true; - if( ( ( CDTXMania.DTX.BACKGROUND != null ) && ( CDTXMania.DTX.BACKGROUND.Length > 0 ) ) && !CDTXMania.ConfigIni.bストイックモード ) - { - path = CDTXMania.DTX.strフォルダ名 + CDTXMania.DTX.BACKGROUND; - if( File.Exists( path ) ) - { - try - { - Bitmap bitmap2 = null; - bitmap2 = new Bitmap( path ); - if( ( bitmap2.Size.Width == 0 ) && ( bitmap2.Size.Height == 0 ) ) - { - this.tx背景 = null; - return; - } - Bitmap bitmap3 = new Bitmap( 640, 480 ); - Graphics graphics = Graphics.FromImage( bitmap3 ); - for( int i = 0; i < 480; i += bitmap2.Size.Height ) - { - for( int j = 0; j < 640; j += bitmap2.Size.Width ) - { - graphics.DrawImage( bitmap2, j, i, bitmap2.Width, bitmap2.Height ); - } - } - graphics.Dispose(); - bitmap2.Dispose(); - image = new Bitmap( CSkin.Path( @"Graphics\ScreenPlayDrums background.jpg" ) ); - graphics = Graphics.FromImage( image ); - ColorMatrix matrix2 = new ColorMatrix(); - matrix2.Matrix00 = 1f; - matrix2.Matrix11 = 1f; - matrix2.Matrix22 = 1f; - matrix2.Matrix33 = ( (float) CDTXMania.ConfigIni.n背景の透過度 ) / 255f; - matrix2.Matrix44 = 1f; - ColorMatrix newColorMatrix = matrix2; - ImageAttributes imageAttr = new ImageAttributes(); - imageAttr.SetColorMatrix( newColorMatrix ); - graphics.DrawImage( bitmap3, new Rectangle( 0, 0, 640, 480 ), 0, 0, 640, 480, GraphicsUnit.Pixel, imageAttr ); - imageAttr.Dispose(); - graphics.DrawImage( bitmap3, new Rectangle( 0x152, 0x39, 0x116, 0x163 ), 0x152, 0x39, 0x116, 0x163, GraphicsUnit.Pixel ); - graphics.Dispose(); - bitmap3.Dispose(); - flag = false; - } - catch - { - Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { path } ); - } - } - } - if( flag ) - { - path = CSkin.Path( @"Graphics\ScreenPlayDrums background.jpg" ); - try - { - image = new Bitmap( path ); - } - catch - { - Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { path } ); - this.tx背景 = null; - return; - } - } - if( ( CDTXMania.DTX.listBMP.Count > 0 ) || ( CDTXMania.DTX.listBMPTEX.Count > 0 ) ) + Rectangle bgrect = new Rectangle( 338, 57, 278, 355 ); + string DefaultBgFilename = @"Graphics\ScreenPlayDrums background.jpg"; + string BgFilename = ""; + if ( ( ( CDTXMania.DTX.BACKGROUND != null ) && ( CDTXMania.DTX.BACKGROUND.Length > 0 ) ) && !CDTXMania.ConfigIni.bストイックモード ) { - Graphics graphics2 = Graphics.FromImage( image ); - graphics2.FillRectangle( Brushes.Black, 0x152, 0x39, 0x116, 0x163 ); - graphics2.Dispose(); + BgFilename = CDTXMania.DTX.strフォルダ名 + CDTXMania.DTX.BACKGROUND; } - try - { - this.tx背景 = new CTexture( CDTXMania.app.Device, image, CDTXMania.TextureFormat ); - } - catch( CTextureCreateFailedException ) - { - Trace.TraceError( "背景テクスチャの生成に失敗しました。" ); - this.tx背景 = null; - } - image.Dispose(); + base.t背景テクスチャの生成( DefaultBgFilename, bgrect, BgFilename ); } + //private void t背景テクスチャの生成() + //{ + // Bitmap image = null; + // string path = ""; + // bool flag = true; + // if( ( ( CDTXMania.DTX.BACKGROUND != null ) && ( CDTXMania.DTX.BACKGROUND.Length > 0 ) ) && !CDTXMania.ConfigIni.bストイックモード ) + // { + // path = CDTXMania.DTX.strフォルダ名 + CDTXMania.DTX.BACKGROUND; + // if( File.Exists( path ) ) + // { + // try + // { + // Bitmap bitmap2 = null; + // bitmap2 = new Bitmap( path ); + // if( ( bitmap2.Size.Width == 0 ) && ( bitmap2.Size.Height == 0 ) ) + // { + // this.tx背景 = null; + // return; + // } + // Bitmap bitmap3 = new Bitmap( 640, 480 ); + // Graphics graphics = Graphics.FromImage( bitmap3 ); + // for( int i = 0; i < 480; i += bitmap2.Size.Height ) + // { + // for( int j = 0; j < 640; j += bitmap2.Size.Width ) + // { + // graphics.DrawImage( bitmap2, j, i, bitmap2.Width, bitmap2.Height ); + // } + // } + // graphics.Dispose(); + // bitmap2.Dispose(); + // image = new Bitmap( CSkin.Path( @"Graphics\ScreenPlayDrums background.jpg" ) ); + // graphics = Graphics.FromImage( image ); + // ColorMatrix matrix2 = new ColorMatrix(); + // matrix2.Matrix00 = 1f; + // matrix2.Matrix11 = 1f; + // matrix2.Matrix22 = 1f; + // matrix2.Matrix33 = ( (float) CDTXMania.ConfigIni.n背景の透過度 ) / 255f; + // matrix2.Matrix44 = 1f; + // ColorMatrix newColorMatrix = matrix2; + // ImageAttributes imageAttr = new ImageAttributes(); + // imageAttr.SetColorMatrix( newColorMatrix ); + // graphics.DrawImage( bitmap3, new Rectangle( 0, 0, 640, 480 ), 0, 0, 640, 480, GraphicsUnit.Pixel, imageAttr ); + // imageAttr.Dispose(); + // graphics.DrawImage( bitmap3, new Rectangle( 0x152, 0x39, 0x116, 0x163 ), 0x152, 0x39, 0x116, 0x163, GraphicsUnit.Pixel ); + // graphics.Dispose(); + // bitmap3.Dispose(); + // flag = false; + // } + // catch + // { + // Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { path } ); + // } + // } + // } + // if( flag ) + // { + // path = CSkin.Path( @"Graphics\ScreenPlayDrums background.jpg" ); + // try + // { + // image = new Bitmap( path ); + // } + // catch + // { + // Trace.TraceError( "背景画像の読み込みに失敗しました。({0})", new object[] { path } ); + // this.tx背景 = null; + // return; + // } + // } + // if( ( CDTXMania.DTX.listBMP.Count > 0 ) || ( CDTXMania.DTX.listBMPTEX.Count > 0 ) ) + // { + // Graphics graphics2 = Graphics.FromImage( image ); + // graphics2.FillRectangle( Brushes.Black, 0x152, 0x39, 0x116, 0x163 ); + // graphics2.Dispose(); + // } + // try + // { + // this.tx背景 = new CTexture( CDTXMania.app.Device, image, CDTXMania.TextureFormat ); + // } + // catch( CTextureCreateFailedException ) + // { + // Trace.TraceError( "背景テクスチャの生成に失敗しました。" ); + // this.tx背景 = null; + // } + // image.Dispose(); + //} + //#if true // DAMAGELEVELTUNING // // ---------------------------------- -- 2.11.0