OSDN Git Service

#23886 簡易CONFIGで、ギター/ベースのAuto Neck, Auto Pickを扱えるようにした。
authoryyagi <yyagi@16f42ceb-6dc6-49c8-ba94-f2d53467949d>
Thu, 31 May 2012 16:34:18 +0000 (16:34 +0000)
committeryyagi <yyagi@16f42ceb-6dc6-49c8-ba94-f2d53467949d>
Thu, 31 May 2012 16:34:18 +0000 (16:34 +0000)
#23886 CONFIGでのギター/ベースのAuto説明を見直した。

git-svn-id: http://svn.osdn.jp/svnroot/dtxmania/trunk@417 16f42ceb-6dc6-49c8-ba94-f2d53467949d

DTXManiaプロジェクト/コード/ステージ/04.コンフィグ/CActConfigList.cs
DTXManiaプロジェクト/コード/ステージ/05.選曲/CActSelectQuickConfig.cs
実行時フォルダ/DTXManiaGR.exe

index 6667c80..5bd0e01 100644 (file)
@@ -622,10 +622,10 @@ namespace DTXMania
                        //this.list項目リスト.Add( this.iGuitarAutoPlay );\r
 \r
                        this.iGuitarAutoPlayAll = new CItemThreeState( "AutoPlay (All)", CItemThreeState.E状態.不定,\r
-                               "å\85¨ã\83\91ã\83\83ã\83\89の自動演奏の ON/OFF を\n" +\r
+                               "å\85¨ã\83\8dã\83\83ã\82¯/ã\83\94ã\83\83ã\82¯の自動演奏の ON/OFF を\n" +\r
                                "まとめて切り替えます。",\r
                                "You can change whether Auto or not\n" +\r
-                               " for all guitar lanes at once." );\r
+                               " for all guitar neck/pick at once." );\r
                        this.list項目リスト.Add( this.iGuitarAutoPlayAll );\r
                        this.iGuitarR = new CItemToggle( "    R", CDTXMania.ConfigIni.bAutoPlay.GtR,\r
                                "Rネックを自動で演奏します。",\r
@@ -724,10 +724,10 @@ namespace DTXMania
                        //this.list項目リスト.Add( this.iBassAutoPlay );\r
 \r
                        this.iBassAutoPlayAll = new CItemThreeState( "AutoPlay (All)", CItemThreeState.E状態.不定,\r
-                       "全パッドの自動演奏の ON/OFF を\n" +\r
-                       "まとめて切り替えます。",\r
-                       "You can change whether Auto or not\n" +\r
-                       " for all guitar lanes at once." );\r
+                               "全ネック/ピックの自動演奏の ON/OFF を\n" +\r
+                               "まとめて切り替えます。",\r
+                               "You can change whether Auto or not\n" +\r
+                               " for all bass neck/pick at once." );\r
                        this.list項目リスト.Add( this.iBassAutoPlayAll );\r
                        this.iBassR = new CItemToggle( "    R", CDTXMania.ConfigIni.bAutoPlay.BsR,\r
                                "Rネックを自動で演奏します。",\r
index 5aec253..79782c3 100644 (file)
@@ -55,15 +55,13 @@ namespace DTXMania
                        #region [ 共通 Target/AutoMode/AutoLane ]\r
                        l.Add( new CSwitchItemList( "Target", CItemBase.Eパネル種別.通常, nInst, "", "", new string[] { "Drums", "Guitar", "Bass" } ) );\r
                        List<int> automode = tConfigureAuto_DefaultSettings();\r
-                       if ( nInst == 0 )\r
+                       if ( nInst == (int) E楽器パート.DRUMS )\r
                        {\r
                                l.Add( new CItemList( "Auto Mode", CItemBase.Eパネル種別.通常, automode[ nInst ], "", "", new string[] { "All Auto", "Auto HH", "Auto BD", "Custom", "OFF" } ) );\r
-                       //      l.Add( new CItemList( "Auto Lanes", CItemBase.Eパネル種別.通常, 0, "", "", new string[] { "" } ) );\r
                        }\r
                        else\r
                        {\r
-                               l.Add( new CItemList( "Auto Mode", CItemBase.Eパネル種別.通常, automode[ nInst ], "", "", new string[] { "OFF", "ON" } ) );\r
-                       //      l.Add( new CItemList( "Auto Lanes", CItemBase.Eパネル種別.通常, 0, "", "", new string[] { "" } ) );\r
+                               l.Add( new CItemList( "Auto Mode", CItemBase.Eパネル種別.通常, automode[ nInst ], "", "", new string[] { "All Auto", "Auto Neck", "Auto Pick", "Custom", "OFF"  } ) );\r
                        }\r
                        #endregion\r
                        #region [ 個別 ScrollSpeed ]\r
@@ -166,10 +164,66 @@ namespace DTXMania
                        }\r
                        l.Add( automode );\r
                        #endregion\r
-                       #region [ Guitar/Bass ]\r
-                       // "OFF", "ON" \r
-                       l.Add( ( CDTXMania.ConfigIni.bAutoPlay.Guitar == true ) ? 1 : 0 );\r
-                       l.Add( ( CDTXMania.ConfigIni.bAutoPlay.Bass   == true ) ? 1 : 0 );\r
+                       #region [ Guitar ]\r
+// "OFF", "ON" \r
+//                     l.Add( ( CDTXMania.ConfigIni.bAutoPlay.Guitar == true ) ? 1 : 0 );\r
+//                     l.Add( ( CDTXMania.ConfigIni.bAutoPlay.Bass   == true ) ? 1 : 0 );\r
+                       if ( CDTXMania.ConfigIni.bギターが全部オートプレイである)\r
+                       {\r
+                               automode = 0;   // All Auto\r
+                       }\r
+                       else if (       CDTXMania.ConfigIni.bAutoPlay.GtR == true && CDTXMania.ConfigIni.bAutoPlay.GtB == true &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.GtB == true && CDTXMania.ConfigIni.bAutoPlay.GtPick == false &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.GtW == false )\r
+                       {\r
+                               automode = 1;   // Auto Neck\r
+                       }\r
+                       else if (       CDTXMania.ConfigIni.bAutoPlay.GtR == false && CDTXMania.ConfigIni.bAutoPlay.GtB == false &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.GtB == false && CDTXMania.ConfigIni.bAutoPlay.GtPick == true &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.GtW == false )\r
+                       {\r
+                               automode = 2;   // Auto Pick\r
+                       }\r
+                       else if (       CDTXMania.ConfigIni.bAutoPlay.GtR == false && CDTXMania.ConfigIni.bAutoPlay.GtB == false &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.GtB == false && CDTXMania.ConfigIni.bAutoPlay.GtPick == false &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.GtW == false )\r
+                       {\r
+                               automode = 4;   // OFF\r
+                       }\r
+                       else\r
+                       {\r
+                               automode = 3;   // Custom\r
+                       }\r
+                       l.Add( automode );\r
+                       #endregion\r
+                       #region [ Bass ]\r
+                       if ( CDTXMania.ConfigIni.bベースが全部オートプレイである )\r
+                       {\r
+                               automode = 0;   // All Auto\r
+                       }\r
+                       else if (       CDTXMania.ConfigIni.bAutoPlay.BsR == true && CDTXMania.ConfigIni.bAutoPlay.BsB == true &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.BsB == true && CDTXMania.ConfigIni.bAutoPlay.BsPick == false &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.BsW == false )\r
+                       {\r
+                               automode = 1;   // Auto Neck\r
+                       }\r
+                       else if (       CDTXMania.ConfigIni.bAutoPlay.BsR == false && CDTXMania.ConfigIni.bAutoPlay.BsB == false &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.BsB == false && CDTXMania.ConfigIni.bAutoPlay.BsPick == true &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.BsW == false )\r
+                       {\r
+                               automode = 2;   // Auto Pick\r
+                       }\r
+                       else if (       CDTXMania.ConfigIni.bAutoPlay.BsR == false && CDTXMania.ConfigIni.bAutoPlay.BsB == false &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.BsB == false && CDTXMania.ConfigIni.bAutoPlay.BsPick == false &&\r
+                                               CDTXMania.ConfigIni.bAutoPlay.BsW == false )\r
+                       {\r
+                               automode = 4;   // OFF\r
+                       }\r
+                       else\r
+                       {\r
+                               automode = 3;   // Custom\r
+                       }\r
+                       l.Add( automode );\r
                        #endregion\r
                        return l;\r
                }\r
@@ -193,9 +247,6 @@ namespace DTXMania
                {\r
                        if ( base.n現在の選択行 == (int) EOrder.AutoMode )\r
                        {\r
-                               // if ( eInst == E楽器パート.DRUMS )\r
-                               if ( nCurrentTarget == (int) E楽器パート.DRUMS )\r
-                               {\r
                                        if ( tx文字列パネル == null )             // TagetとAuto Modeを全く変更せずにAuto Modeまで動かした場合限り、ここに来る\r
                                        {\r
                                                MakeAutoPanel();\r
@@ -207,9 +258,10 @@ namespace DTXMania
                                        }\r
                                        if ( this.tx文字列パネル != null )\r
                                        {\r
-                                               this.tx文字列パネル.t2D描画( CDTXMania.app.Device, 230, 190 );\r
+                                               int x = ( nCurrentTarget == (int) E楽器パート.DRUMS ) ? 230 : 260;\r
+                                               this.tx文字列パネル.t2D描画( CDTXMania.app.Device, x, 190 );\r
+\r
                                        }\r
-                               }\r
                        }\r
                }\r
 \r
@@ -229,7 +281,7 @@ namespace DTXMania
                                        break;\r
                                case (int) E楽器パート.GUITAR:\r
                                case (int) E楽器パート.BASS:\r
-                                       // header = "RGBPW"\r
+                                       header = "RGBPW";\r
                                        break;\r
                                default:\r
                                        break;\r
@@ -348,23 +400,13 @@ namespace DTXMania
                {\r
                        for ( int target = 0; target < 3; target++ )\r
                        {\r
-                               string s = GetAutoParameters( target );\r
-                               switch ( target )\r
+                               string str = GetAutoParameters( target );\r
+                               int[] pa = { (int) Eレーン.LC, (int) Eレーン.GtR, (int) Eレーン.BsR };\r
+                               int start = pa[ target ];\r
+\r
+                               for ( int i = 0; i < str.Length; i++ )\r
                                {\r
-                                       case (int) E楽器パート.DRUMS:\r
-                                               for ( int i = 0; i < s.Length; i++ )\r
-                                               {\r
-                                                       CDTXMania.ConfigIni.bAutoPlay[ i ] = ( s[ i ] == 'A' ) ? true : false;\r
-                                               }\r
-                                               break;\r
-                                       case (int) E楽器パート.GUITAR:\r
-                                               CDTXMania.ConfigIni.bAutoPlay.Guitar = ( s[ 0 ] == 'A' ) ? true : false;\r
-                                               break;\r
-                                       case (int) E楽器パート.BASS:\r
-                                               CDTXMania.ConfigIni.bAutoPlay.Bass = ( s[ 0 ] == 'A' ) ? true : false;\r
-                                               break;\r
-                                       default:\r
-                                               break;\r
+                                       CDTXMania.ConfigIni.bAutoPlay[ i + start ] = ( str[ i ] == 'A' ) ? true : false;\r
                                }\r
                        }\r
                }\r
@@ -409,7 +451,32 @@ namespace DTXMania
                                #region [ Guitar / Bass ]\r
                                case (int) E楽器パート.GUITAR:\r
                                case (int) E楽器パート.BASS:\r
-                                       s = ( lci[ nCurrentConfigSet ][ target ][ (int) EOrder.AutoMode ].GetIndex() ) == 1 ? "A" : "_";\r
+//                                     s = ( lci[ nCurrentConfigSet ][ target ][ (int) EOrder.AutoMode ].GetIndex() ) == 1 ? "A" : "_";\r
+                                       switch ( lci[ nCurrentConfigSet ][ target ][ (int) EOrder.AutoMode ].GetIndex() )\r
+                                       {\r
+                                               case 0: // All Auto\r
+                                                       s = "AAAAA";\r
+                                                       break;\r
+                                               case 1: // Auto Neck\r
+                                                       s = "AAA__";\r
+                                                       break;\r
+                                               case 2: // Auto Pick\r
+                                                       s = "___A_";\r
+                                                       break;\r
+                                               case 3: // Custom\r
+                                                       int p = (target == (int) E楽器パート.GUITAR ) ? (int) Eレーン.GtR : (int) Eレーン.BsR;\r
+                                                       int len = (int) Eレーン.GtW - (int) Eレーン.GtR + 1;\r
+                                                       for ( int i = p; i < p + len; i++ )\r
+                                                       {\r
+                                                               s += ( CDTXMania.ConfigIni.bAutoPlay[ i ] ) ? "A" : "_";\r
+                                                       }\r
+                                                       break;\r
+                                               case 4: // OFF\r
+                                                       s = "_____";\r
+                                                       break;\r
+                                               default:\r
+                                                       throw new ArgumentOutOfRangeException();\r
+                                       }\r
                                        break;\r
                                default:\r
                                        break;\r
index 6cb32be..6551b03 100644 (file)
Binary files a/実行時フォルダ/DTXManiaGR.exe and b/実行時フォルダ/DTXManiaGR.exe differ