• R/O
  • SSH
  • HTTPS

dtxmaniaxg-verk: Commit


Commit MetaInfo

Revision533 (tree)
Time2016-03-12 20:38:56
Authorkairera0467

Log Message

#33798 ギターベース譜面のCLASSIC譜面判別を本格実装。

Change Summary

Incremental Difference

--- trunk/DTXManiaプロジェクト/コード/スコア、曲/CSong管理.cs (revision 532)
+++ trunk/DTXManiaプロジェクト/コード/スコア、曲/CSong管理.cs (revision 533)
@@ -858,8 +858,8 @@
858858 c曲リストノード.arスコア[ i ].譜面情報.レベルDec.Bass = cdtx.LEVELDEC.Bass;
859859 c曲リストノード.arスコア[ i ].譜面情報.レベルを非表示にする = cdtx.HIDDENLEVEL;
860860 c曲リストノード.arスコア[ i ].譜面情報.b完全にCLASSIC譜面である.Drums = (cdtx2.bチップがある.LeftCymbal == false && cdtx2.bチップがある.LP == false && cdtx2.bチップがある.LBD == false && cdtx2.bチップがある.FT == false && cdtx2.bチップがある.Ride == false) ? true : false;
861- c曲リストノード.arスコア[ i ].譜面情報.b完全にCLASSIC譜面である.Guitar = false;
862- c曲リストノード.arスコア[ i ].譜面情報.b完全にCLASSIC譜面である.Bass = false;
861+ c曲リストノード.arスコア[ i ].譜面情報.b完全にCLASSIC譜面である.Guitar = !cdtx2.bチップがある.YPGuitar ? true : false;
862+ c曲リストノード.arスコア[ i ].譜面情報.b完全にCLASSIC譜面である.Bass = !cdtx2.bチップがある.YPBass ? true : false;
863863 c曲リストノード.arスコア[ i ].譜面情報.b譜面がある.Drums = cdtx2.bチップがある.Drums;
864864 c曲リストノード.arスコア[ i ].譜面情報.b譜面がある.Guitar = cdtx2.bチップがある.Guitar;
865865 c曲リストノード.arスコア[ i ].譜面情報.b譜面がある.Bass = cdtx2.bチップがある.Bass;
--- trunk/DTXManiaプロジェクト/コード/スコア、曲/CDTX.cs (revision 532)
+++ trunk/DTXManiaプロジェクト/コード/スコア、曲/CDTX.cs (revision 533)
@@ -7151,7 +7151,7 @@
71517151 this.listChip.Add( chip );
71527152
71537153 //2015.04.15 kairera0467 ギターベースの場合、chipをギターベースのリストにも入れる。
7154- //ここでロングノーツのための発生位置を設定したりする。
7154+ //ここでロングノーツのための発声位置を設定したりする。
71557155 if( chip.e楽器パート == E楽器パート.GUITAR )
71567156 {
71577157 if( chip.nチャンネル番号 == 0x2A )
--- trunk/DTXManiaプロジェクト/コード/ステージ/08.結果/CActResultImage.cs (revision 532)
+++ trunk/DTXManiaプロジェクト/コード/ステージ/08.結果/CActResultImage.cs (revision 533)
@@ -374,8 +374,24 @@
374374
375375 string strLevel = string.Format("{0:0.00}", n表記するLEVEL[i]);
376376
377- if (CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする && (CDTXMania.DTX.bチップがある.LeftCymbal == false) && (CDTXMania.DTX.bチップがある.LP == false) && (CDTXMania.DTX.bチップがある.LBD == false) && (CDTXMania.DTX.bチップがある.FT == false) && (CDTXMania.DTX.bチップがある.Ride == false))
377+ #region[ CLASSIC譜面判別 ]
378+ STDGBVALUE<bool> bClassic = new STDGBVALUE<bool>();
379+ if( i == 0 )
378380 {
381+ bClassic[ 0 ] = ( (CDTXMania.DTX.bチップがある.LeftCymbal == false) && (CDTXMania.DTX.bチップがある.LP == false) && (CDTXMania.DTX.bチップがある.LBD == false) && (CDTXMania.DTX.bチップがある.FT == false) && (CDTXMania.DTX.bチップがある.Ride == false) );
382+ }
383+ else if( i == 1 )
384+ {
385+ bClassic[ 1 ] = !CDTXMania.DTX.bチップがある.YPGuitar;
386+ }
387+ else if( i == 2 )
388+ {
389+ bClassic[ 2 ] = !CDTXMania.DTX.bチップがある.YPBass;
390+ }
391+ #endregion
392+
393+ if( CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする && bClassic[ i ] )
394+ {
379395 num = ((float)CDTXMania.stage選曲.r確定されたスコア.譜面情報.レベル[i]);
380396 }
381397 else
@@ -390,7 +406,7 @@
390406 }
391407 }
392408
393- if (CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする && (CDTXMania.DTX.bチップがある.LeftCymbal == false) && (CDTXMania.DTX.bチップがある.LP == false) && (CDTXMania.DTX.bチップがある.LBD == false) && (CDTXMania.DTX.bチップがある.FT == false) && (CDTXMania.DTX.bチップがある.Ride == false))
409+ if (CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする && bClassic[i] )
394410 {
395411 // graphics.DrawString(string.Format("{0:00}", num), this.ftSongDifficultyFont, new SolidBrush(Color.FromArgb(0xba, 0xba, 0xba)), (float)0f, (float)-4f);
396412 this.t大文字表示(this.n本体X[i] + 653, this.n本体Y[i] + 11, num.ToString());
--- trunk/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CAct演奏Drumsスキルメーター.cs (revision 532)
+++ trunk/DTXManiaプロジェクト/コード/ステージ/07.演奏/ドラム画面/CAct演奏Drumsスキルメーター.cs (revision 533)
@@ -321,7 +321,7 @@
321321 }
322322 else
323323 {
324- dbTargetSkill = CDTXMania.stage選曲.r確定されたスコア.譜面情報.最大スキル[ 0 ];
324+ //dbTargetSkill = CDTXMania.stage選曲.r確定されたスコア.譜面情報.最大スキル[ 0 ];
325325 }
326326 if( CDTXMania.ConfigIni.eTargetGhost.Drums == ETargetGhostData.PERFECT )
327327 dbTargetSkill = 100.0;
--- trunk/DTXManiaプロジェクト/コード/ステージ/06.曲読み込み/CStage曲読み込み.cs (revision 532)
+++ trunk/DTXManiaプロジェクト/コード/ステージ/06.曲読み込み/CStage曲読み込み.cs (revision 533)
@@ -500,9 +500,12 @@
500500 string strDTXファイルパス = (CDTXMania.bコンパクトモード) ?
501501 CDTXMania.strコンパクトモードファイル : CDTXMania.stage選曲.r確定されたスコア.ファイル情報.ファイルの絶対パス;
502502 CDTX cdtx = new CDTX(strDTXファイルパス, false);
503- bool bCLASSIC = CDTXMania.bコンパクトモード ? false : CDTXMania.stage選曲.r確定されたスコア.譜面情報.b完全にCLASSIC譜面である.Drums;
504-
503+ STDGBVALUE< bool > bCLASSIC = new STDGBVALUE<bool>();
505504
505+ for( int i = 0; i < 3; i++ )
506+ {
507+ bCLASSIC[ i ] = CDTXMania.bコンパクトモード ? false : CDTXMania.stage選曲.r確定されたスコア.譜面情報.b完全にCLASSIC譜面である[ i ];
508+ }
506509
507510 if( this.ds背景動画 != null && !this.bSTAGEFILEが存在する )
508511 {
@@ -559,20 +562,17 @@
559562 this.txヘッダーパネル.t2D描画( CDTXMania.app.Device, 0, 0 );
560563
561564 #region[ 難易度数字 ]
562-
563- //後に変数にしてギターベースなどでも正常に表示できるようにする予定
564565 STDGBVALUE<double> n表記するLEVEL = new STDGBVALUE<double>();
565-
566566 if( CDTXMania.ConfigIni.bDrums有効 )
567567 {
568568 int i = 0;
569569
570- n表記するLEVEL[i] = cdtx.LEVEL[i] / 10.0;
571- n表記するLEVEL[i] += (cdtx.LEVELDEC[i] != 0 ? cdtx.LEVELDEC[i] / 100.0 : 0);
572- int DTXLevel = cdtx.LEVEL[i];
573- double DTXLevelDeci = (DTXLevel * 10 - cdtx.LEVEL[i]);
570+ n表記するLEVEL[ i ] = cdtx.LEVEL[ i ] / 10.0;
571+ n表記するLEVEL[ i ] += ( cdtx.LEVELDEC[ i ] != 0 ? cdtx.LEVELDEC[ i ] / 100.0 : 0 );
572+ int DTXLevel = cdtx.LEVEL[ i ];
573+ double DTXLevelDeci = ( DTXLevel * 10 - cdtx.LEVEL[ i ] );
574574
575- string strLevel = string.Format("{0:0.00}", n表記するLEVEL[i]);
575+ string strLevel = string.Format( "{0:0.00}", n表記するLEVEL[ i ] );
576576
577577 if (cdtx.LEVEL[i] > 99)
578578 {
@@ -585,10 +585,10 @@
585585 DTXLevelDeci = (cdtx.LEVEL[i] - DTXLevel * 10);
586586 }
587587
588- if (bCLASSIC && !cdtx.b強制的にXG譜面にする)
588+ if( bCLASSIC.Drums && !cdtx.b強制的にXG譜面にする )
589589 {
590- DTXLevel = cdtx.LEVEL[i];
591- this.t大文字表示(338, 220, string.Format("{0,2:00}", DTXLevel));
590+ DTXLevel = cdtx.LEVEL[ i ];
591+ this.t大文字表示( 338, 220, string.Format("{0,2:00}", DTXLevel));
592592 }
593593 else
594594 {
@@ -621,12 +621,12 @@
621621 //ギター
622622 if( cdtx.bチップがある.Guitar )
623623 {
624- //if (bCLASSIC && !cdtx.b強制的にXG譜面にする)
624+ if( bCLASSIC.Guitar && !cdtx.b強制的にXG譜面にする )
625625 {
626- // DTXLevel = cdtx.LEVEL[i];
627- // this.t大文字表示(338, 220, string.Format("{0,2:00}", DTXLevel));
626+ DTXLevel.Guitar = cdtx.LEVEL.Guitar;
627+ this.t大文字表示(338, 220, string.Format( "{0,2:00}", DTXLevel.Guitar ));
628628 }
629- //else
629+ else
630630 {
631631 this.t大文字表示(335 + (616 * iPart), 218, string.Format("{0:0}", strLevel_G.Substring(0, 1)));
632632 this.txLevel.t2D描画(CDTXMania.app.Device, 359 + (616 * iPart), 251, new Rectangle(145, 54, 7, 8));
@@ -643,12 +643,12 @@
643643 if( cdtx.bチップがある.Bass )
644644 {
645645 //ベース
646- //if (bCLASSIC && !cdtx.b強制的にXG譜面にする)
646+ if( bCLASSIC.Bass && !cdtx.b強制的にXG譜面にする )
647647 {
648- // DTXLevel = cdtx.LEVEL[i];
649- // this.t大文字表示(338, 220, string.Format("{0,2:00}", DTXLevel));
648+ DTXLevel.Bass = cdtx.LEVEL.Bass;
649+ this.t大文字表示( 338, 220, string.Format( "{0,2:00}", DTXLevel.Bass ) );
650650 }
651- //else
651+ else
652652 {
653653 this.t大文字表示(953 - (616 * iPart), 218, string.Format("{0:0}", strLevel_B.Substring(0, 1)));
654654 this.txLevel.t2D描画(CDTXMania.app.Device, 975 - (616 * iPart), 251, new Rectangle(145, 54, 7, 8));
@@ -1037,7 +1037,9 @@
10371037
10381038 private void tSkillModeを譜面に応じて切り替える( CDTX cdtx )
10391039 {
1040- if( CDTXMania.stage選曲.r確定されたスコア.譜面情報.b完全にCLASSIC譜面である.Drums && !cdtx.b強制的にXG譜面にする )
1040+ if( CDTXMania.ConfigIni.bDrums有効 ? ( CDTXMania.stage選曲.r確定されたスコア.譜面情報.b完全にCLASSIC譜面である.Drums ) :
1041+ ( CDTXMania.stage選曲.r確定されたスコア.譜面情報.b完全にCLASSIC譜面である.Guitar | CDTXMania.stage選曲.r確定されたスコア.譜面情報.b完全にCLASSIC譜面である.Bass ) &&
1042+ !cdtx.b強制的にXG譜面にする )
10411043 CDTXMania.ConfigIni.nSkillMode = 0;
10421044 else
10431045 CDTXMania.ConfigIni.nSkillMode = 1;
Show on old repository browser