OSDN Git Service

#23595 score.iniに最終プレイ結果を記録するようにした。
authorikanick <ikanick@16f42ceb-6dc6-49c8-ba94-f2d53467949d>
Mon, 10 Jan 2011 00:20:30 +0000 (00:20 +0000)
committerikanick <ikanick@16f42ceb-6dc6-49c8-ba94-f2d53467949d>
Mon, 10 Jan 2011 00:20:30 +0000 (00:20 +0000)
git-svn-id: http://svn.osdn.jp/svnroot/dtxmania/trunk@60 16f42ceb-6dc6-49c8-ba94-f2d53467949d

DTXManiaプロジェクト/コード/スコア、曲/CScoreIni.cs
DTXManiaプロジェクト/コード/ステージ/08.結果/CStage結果.cs

index 5c6af3e..892a7bf 100644 (file)
@@ -36,17 +36,20 @@ namespace DTXMania
                        public int BGMAdjust;\r
                }\r
 \r
-               // 演奏記録セクション(6種類)\r
+               // 演奏記録セクション(9種類)\r
                public STセクション stセクション;\r
                [StructLayout( LayoutKind.Sequential )]\r
                public struct STセクション\r
                {\r
-                       public CScoreIni.C演奏記録 HiScoreDrums;\r
-                       public CScoreIni.C演奏記録 HiSkillDrums;\r
+            public CScoreIni.C演奏記録 HiScoreDrums;\r
+            public CScoreIni.C演奏記録 HiSkillDrums;\r
                        public CScoreIni.C演奏記録 HiScoreGuitar;\r
-                       public CScoreIni.C演奏記録 HiSkillGuitar;\r
+            public CScoreIni.C演奏記録 HiSkillGuitar;\r
                        public CScoreIni.C演奏記録 HiScoreBass;\r
-                       public CScoreIni.C演奏記録 HiSkillBass;\r
+            public CScoreIni.C演奏記録 HiSkillBass;\r
+            public CScoreIni.C演奏記録 LastPlayDrums;   // #23595 2011.1.9 ikanick\r
+            public CScoreIni.C演奏記録 LastPlayGuitar;  //\r
+            public CScoreIni.C演奏記録 LastPlayBass;    //\r
                        public CScoreIni.C演奏記録 this[ int index ]\r
                        {\r
                                get\r
@@ -68,8 +71,19 @@ namespace DTXMania
                                                case 4:\r
                                                        return this.HiScoreBass;\r
 \r
-                                               case 5:\r
-                                                       return this.HiSkillBass;\r
+                        case 5:\r
+                            return this.HiSkillBass;\r
+\r
+                        // #23595 2011.1.9 ikanick\r
+                        case 6:\r
+                            return this.LastPlayDrums;\r
+\r
+                        case 7:\r
+                            return this.LastPlayGuitar;\r
+\r
+                        case 8:\r
+                            return this.LastPlayBass;\r
+                        //------------\r
                                        }\r
                                        throw new IndexOutOfRangeException();\r
                                }\r
@@ -95,11 +109,24 @@ namespace DTXMania
 \r
                                                case 4:\r
                                                        this.HiScoreBass = value;\r
-                                                       return;\r
+                            return;\r
 \r
-                                               case 5:\r
-                                                       this.HiSkillBass = value;\r
-                                                       return;\r
+                        case 5:\r
+                            this.HiSkillBass = value;\r
+                            return;\r
+                        // #23595 2011.1.9 ikanick\r
+                        case 6:\r
+                            this.LastPlayDrums = value;\r
+                            return;\r
+\r
+                        case 7:\r
+                            this.LastPlayGuitar = value;\r
+                            return;\r
+\r
+                        case 8:\r
+                            this.LastPlayBass = value;\r
+                            return;\r
+                        //------------------\r
                                        }\r
                                        throw new IndexOutOfRangeException();\r
                                }\r
@@ -114,7 +141,10 @@ namespace DTXMania
                        HiScoreGuitar = 2,\r
                        HiSkillGuitar = 3,\r
                        HiScoreBass = 4,\r
-                       HiSkillBass = 5,\r
+            HiSkillBass = 5,\r
+            LastPlayDrums = 6,  // #23595 2011.1.9 ikanick\r
+            LastPlayGuitar = 7, //\r
+            LastPlayBass = 8,   //\r
                }\r
                public class C演奏記録\r
                {\r
@@ -381,9 +411,12 @@ namespace DTXMania
                        stセクション.HiScoreDrums = new C演奏記録();\r
                        stセクション.HiSkillDrums = new C演奏記録();\r
                        stセクション.HiScoreGuitar = new C演奏記録();\r
-                       stセクション.HiSkillGuitar = new C演奏記録();\r
-                       stセクション.HiScoreBass = new C演奏記録();\r
-                       stセクション.HiSkillBass = new C演奏記録();\r
+            stセクション.HiSkillGuitar = new C演奏記録();\r
+            stセクション.HiScoreBass = new C演奏記録();\r
+            stセクション.HiSkillBass = new C演奏記録();\r
+            stセクション.LastPlayDrums = new C演奏記録();\r
+            stセクション.LastPlayGuitar = new C演奏記録();\r
+            stセクション.LastPlayBass = new C演奏記録();\r
                        this.stセクション = stセクション;\r
                }\r
 \r
@@ -489,11 +522,25 @@ namespace DTXMania
                                                                else if( str2.Equals( "HiScore.Bass" ) )\r
                                                                {\r
                                                                        unknown = Eセクション種別.HiScoreBass;\r
-                                                               }\r
-                                                               else if( str2.Equals( "HiSkill.Bass" ) )\r
-                                                               {\r
-                                                                       unknown = Eセクション種別.HiSkillBass;\r
-                                                               }\r
+                                }\r
+                                else if (str2.Equals("HiSkill.Bass"))\r
+                                {\r
+                                    unknown = Eセクション種別.HiSkillBass;\r
+                                }\r
+                                // #23595 2011.1.9 ikanick\r
+                                else if (str2.Equals("LastPlay.Drums"))\r
+                                {\r
+                                    unknown = Eセクション種別.LastPlayDrums;\r
+                                }\r
+                                else if (str2.Equals("LastPlay.Guitar"))\r
+                                {\r
+                                    unknown = Eセクション種別.LastPlayGuitar;\r
+                                }\r
+                                else if (str2.Equals("LastPlay.Bass"))\r
+                                {\r
+                                    unknown = Eセクション種別.LastPlayBass;\r
+                                }\r
+                                //----------------------------------------------------\r
                                                                else\r
                                                                {\r
                                                                        unknown = Eセクション種別.Unknown;\r
@@ -522,7 +569,10 @@ namespace DTXMania
                                                                                case Eセクション種別.HiScoreGuitar:\r
                                                                                case Eセクション種別.HiSkillGuitar:\r
                                                                                case Eセクション種別.HiScoreBass:\r
-                                                                               case Eセクション種別.HiSkillBass:\r
+                                        case Eセクション種別.HiSkillBass:\r
+                                        case Eセクション種別.LastPlayDrums:// #23595 2011.1.9 ikanick\r
+                                        case Eセクション種別.LastPlayGuitar:\r
+                                        case Eセクション種別.LastPlayBass:\r
                                                                                        {\r
                                                                                                c演奏記録 = this.stセクション[ (int) unknown ];\r
                                                                                                if( !str3.Equals( "Score" ) )\r
@@ -1038,8 +1088,8 @@ namespace DTXMania
                        writer.WriteLine( "PlayCountGuitars={0}", this.stファイル.PlayCountGuitar );\r
             writer.WriteLine( "PlayCountBass={0}", this.stファイル.PlayCountBass );\r
             writer.WriteLine( "ClearCountDrums={0}", this.stファイル.ClearCountDrums );       // #23596 10.11.16 add ikanick\r
-            writer.WriteLine( "ClearCountGuitars={0}", this.stファイル.ClearCountGuitar );    // #23596 10.11.16 add ikanick\r
-            writer.WriteLine( "ClearCountBass={0}", this.stファイル.ClearCountBass );         // #23596 10.11.16 add ikanick\r
+            writer.WriteLine( "ClearCountGuitars={0}", this.stファイル.ClearCountGuitar );    //\r
+            writer.WriteLine( "ClearCountBass={0}", this.stファイル.ClearCountBass );         //\r
                        writer.WriteLine( "HistoryCount={0}", this.stファイル.HistoryCount );\r
                        writer.WriteLine( "History0={0}", this.stファイル.History[ 0 ] );\r
                        writer.WriteLine( "History1={0}", this.stファイル.History[ 1 ] );\r
@@ -1048,9 +1098,9 @@ namespace DTXMania
                        writer.WriteLine( "History4={0}", this.stファイル.History[ 4 ] );\r
                        writer.WriteLine( "BGMAdjust={0}", this.stファイル.BGMAdjust );\r
                        writer.WriteLine();\r
-                       for( int i = 0; i < 6; i++ )\r
+                       for( int i = 0; i < 9; i++ )\r
                        {\r
-                               string[] strArray = new string[] { "HiScore.Drums", "HiSkill.Drums", "HiScore.Guitar", "HiSkill.Guitar", "HiScore.Bass", "HiSkill.Bass" };\r
+                string[] strArray = new string[] { "HiScore.Drums", "HiSkill.Drums", "HiScore.Guitar", "HiSkill.Guitar", "HiScore.Bass", "HiSkill.Bass", "LastPlay.Drums", "LastPlay.Guitar", "LastPlay.Bass" };\r
                                writer.WriteLine( "[{0}]", strArray[ i ] );\r
                                writer.WriteLine( "Score={0}", this.stセクション[ i ].nスコア );\r
                                writer.WriteLine( "PlaySkill={0}", this.stセクション[ i ].db演奏型スキル値 );\r
@@ -1115,7 +1165,7 @@ namespace DTXMania
                }\r
                internal void t全演奏記録セクションの整合性をチェックし不整合があればリセットする()\r
                {\r
-                       for( int i = 0; i < 6; i++ )\r
+                       for( int i = 0; i < 9; i++ )\r
                        {\r
                                if( !this.b整合性がある( (Eセクション種別) i ) )\r
                                        this.stセクション[ i ] = new C演奏記録();\r
index 632f415..bc49387 100644 (file)
@@ -12,7 +12,8 @@ namespace DTXMania
 \r
                public STDGBVALUE<bool> b新記録スキル;\r
                public STDGBVALUE<bool> b新記録スコア;\r
-               public STDGBVALUE<bool> b新記録ランク;\r
+        public STDGBVALUE<bool> b新記録ランク;\r
+        public STDGBVALUE<bool> b新記録ラスト;\r
                public STDGBVALUE<float> fPerfect率;\r
                public STDGBVALUE<float> fGreat率;\r
                public STDGBVALUE<float> fGood率;\r
@@ -69,8 +70,8 @@ namespace DTXMania
                                for( int i = 0; i < 3; i++ )\r
                                {\r
                                        this.b新記録スキル[ i ] = false;\r
-                                       this.b新記録スコア[ i ] = false;\r
-                                       this.b新記録ランク[ i ] = false;\r
+                    this.b新記録スコア[ i ] = false;\r
+                    this.b新記録ランク[ i ] = false;\r
                                }\r
                                //---------------------\r
                                #endregion\r
@@ -137,12 +138,18 @@ namespace DTXMania
                                                ini.stセクション[ k * 2 ] = this.st演奏記録[ k ];\r
                                        }\r
 \r
-                                       // 新記録スキルチェック\r
-                                       if( this.st演奏記録[ k ].db演奏型スキル値 > ini.stセクション[ ( k * 2 ) + 1 ].db演奏型スキル値 )\r
-                                       {\r
-                                               this.b新記録スキル[ k ] = true;\r
-                                               ini.stセクション[ ( k * 2 ) + 1 ] = this.st演奏記録[ k ];\r
-                                       }\r
+                    // 新記録スキルチェック\r
+                    if (this.st演奏記録[k].db演奏型スキル値 > ini.stセクション[(k * 2) + 1].db演奏型スキル値)\r
+                    {\r
+                        this.b新記録スキル[ k ] = true;\r
+                        ini.stセクション[(k * 2) + 1] = this.st演奏記録[ k ];\r
+                    }\r
+                    // ラストプレイ #23595 2011.1.9 ikanick\r
+                    // オートじゃなければプレイ結果を書き込む\r
+                    if (this.bオート[ k ] == false) {\r
+                        ini.stセクション[k + 6] = this.st演奏記録[ k ];\r
+                    }\r
+\r
                     // #23596 10.11.16 add ikanick オートじゃないならクリア回数を1増やす\r
                     //        10.11.17 change (nオート to bオート)\r
                     //                 add default..throw           ikanick\r
@@ -187,12 +194,12 @@ namespace DTXMania
                                                        if( this.b新記録スキル[ m ] )\r
                                                        {\r
                                                                cスコア.譜面情報.最大スキル[ m ] = this.st演奏記録[ m ].db演奏型スキル値;\r
-                                                       }\r
+                            }\r
 \r
-                                                       if( this.b新記録ランク[ m ] )\r
-                                                       {\r
-                                                               cスコア.譜面情報.最大ランク[ m ] = this.nランク値[ m ];\r
-                                                       }\r
+                            if (this.b新記録ランク[ m ])\r
+                            {\r
+                                cスコア.譜面情報.最大ランク[ m ] = this.nランク値[ m ];\r
+                            }\r
                                                }\r
                                        }\r
                                }\r