OSDN Git Service

TP.csvの処理をDataLoaderに移動する
[kancollesniffer/KancolleSniffer.git] / KancolleSniffer / ItemInfo.cs
index 50972be..134427d 100644 (file)
 // See the License for the specific language governing permissions and\r
 // limitations under the License.\r
 \r
+using System;\r
 using System.Collections.Generic;\r
 using System.Drawing;\r
+using System.IO;\r
 using System.Linq;\r
 using static System.Math;\r
 \r
@@ -161,6 +163,9 @@ namespace KancolleSniffer
         {\r
             get\r
             {\r
+                var tp = DataLoader.ItemTp(Id);\r
+                if (tp >= 0)\r
+                    return tp;\r
                 switch (Id)\r
                 {\r
                     case 75: // ドラム缶(輸送用)\r
@@ -170,15 +175,17 @@ namespace KancolleSniffer
                     case 193: // 特大発動艇\r
                         return 8.0;\r
                     case 166: // 大発動艇(八九式中戦車&陸戦隊)\r
-                        return IncreaceLandPowerTp ? 13.0 : 8.0;\r
+                        return 8.0;\r
                     case 167: // 特二式内火艇\r
-                        return IncreaceLandPowerTp ? 7.0 : 2.0;\r
+                        return 2.0;\r
                     case 230: // 特大発動艇+戦車第11連隊\r
                         return 8.0;\r
                     case 145: // 戦闘糧食\r
                         return 1.0;\r
                     case 150: // 秋刀魚の缶詰\r
                         return 1.0;\r
+                    case 241: // 戦闘糧食(特別なおにぎり)\r
+                        return 1.0;\r
                     default:\r
                         return 0;\r
                 }\r
@@ -195,7 +202,8 @@ namespace KancolleSniffer
                         return LoS <= 7 ? 1.2 : 1.3;\r
                     case 10:\r
                     case 41:\r
-                        return LoS <= 7 ? 1.1 : LoS <= 8 ? 1.13 : 1.16;\r
+                        return LoS <= 7 ? 1.1 :\r
+                            LoS <= 8 ? 1.13 : 1.16;\r
                 }\r
                 return 1;\r
             }\r
@@ -711,7 +719,7 @@ namespace KancolleSniffer
             }\r
         }\r
 \r
-        public ItemSpec GetSpecByItemId(int id) => _itemSpecs[id];\r
+        public ItemSpec GetSpecByItemId(int id) => _itemSpecs.TryGetValue(id, out var spec) ? spec : new ItemSpec();\r
 \r
         public string GetName(int id) => GetStatus(id).Spec.Name;\r
 \r