diff --git a/NHSE.Core/Structures/Item/FieldItem/FieldItemDefinition.cs b/NHSE.Core/Structures/Item/FieldItem/FieldItemDefinition.cs new file mode 100644 index 0000000..829bf7d --- /dev/null +++ b/NHSE.Core/Structures/Item/FieldItem/FieldItemDefinition.cs @@ -0,0 +1,16 @@ +namespace NHSE.Core +{ + public class FieldItemDefinition + { + public readonly ushort Index; + public readonly string Name; + public readonly FieldItemKind Kind; + + public FieldItemDefinition(ushort id, string name, FieldItemKind kind) + { + Index = id; + Name = name; + Kind = kind; + } + } +} \ No newline at end of file diff --git a/NHSE.Core/Structures/Item/FieldItem/FieldItemKind.cs b/NHSE.Core/Structures/Item/FieldItem/FieldItemKind.cs new file mode 100644 index 0000000..ac44b04 --- /dev/null +++ b/NHSE.Core/Structures/Item/FieldItem/FieldItemKind.cs @@ -0,0 +1,52 @@ +namespace NHSE.Core +{ + public enum FieldItemKind : byte + { + FenceBamboo, + FenceBarbedWire, + FenceChinese, + FenceDriedStraw, + FenceEasterEgg, + FenceHorizontalLog, + FenceHorizontalWood, + FenceIronAndStone, + FenceJapanese, + FenceLattice, + FenceLog, + FencePegRope, + FenceSharply, + FenceSteel, + FenceStone, + FenceVerticalWood, + FenceWallRenga, + FenceWoodWhite, + PltFlwAnemone, + PltFlwCosmos, + PltFlwHyacinth, + PltFlwLily, + PltFlwMum, + PltFlwPansy, + PltFlwRose, + PltFlwRoseGold, + PltFlwTulip, + PltFlwYuri, + PltTreeBamboo, + PltTreeCedar, + PltTreeCedarDeco, + PltTreeOak, + PltTreePalm, + PltWeedAut0, + PltWeedAut1, + PltWeedAut2, + PltWeedSmr, + PltWeedSpr, + PltWeedWin0, + PltWeedWin1, + StoneA, + StoneB, + StoneC, + StoneD, + StoneE, + UnitIconHole, + } +} diff --git a/NHSE.Core/Structures/Item/FieldItem/FieldItemList.cs b/NHSE.Core/Structures/Item/FieldItem/FieldItemList.cs new file mode 100644 index 0000000..561dcab --- /dev/null +++ b/NHSE.Core/Structures/Item/FieldItem/FieldItemList.cs @@ -0,0 +1,341 @@ +using System.Collections.Generic; + +namespace NHSE.Core +{ + public static class FieldItemList + { + public static readonly IReadOnlyDictionary Items = new Dictionary + { + {0xEA60, new FieldItemDefinition(0xEA60, "PltTreeOak4", FieldItemKind.PltTreeOak)}, // 広葉樹(成木) + {0xEA61, new FieldItemDefinition(0xEA61, "PltTreeApple", FieldItemKind.PltTreeOak)}, // リンゴの木(成木) + {0xEA62, new FieldItemDefinition(0xEA62, "PltTreeOrange", FieldItemKind.PltTreeOak)}, // オレンジの木(成木) + {0xEA65, new FieldItemDefinition(0xEA65, "PltTreeOak0", FieldItemKind.PltTreeOak)}, // 広葉樹(苗) + {0xEA66, new FieldItemDefinition(0xEA66, "PltTreeOak1", FieldItemKind.PltTreeOak)}, // 広葉樹(成長1) + {0xEA67, new FieldItemDefinition(0xEA67, "PltTreeOak2", FieldItemKind.PltTreeOak)}, // 広葉樹(成長2) + {0xEA68, new FieldItemDefinition(0xEA68, "PltTreeOak3", FieldItemKind.PltTreeOak)}, // 広葉樹(成長3) + {0xEA69, new FieldItemDefinition(0xEA69, "PltTreeCedar4", FieldItemKind.PltTreeCedar)}, // 針葉樹(成木) + {0xEA6F, new FieldItemDefinition(0xEA6F, "PltFlwCosmos1Red", FieldItemKind.PltFlwCosmos)}, // コスモス赤(茎) + {0xEA70, new FieldItemDefinition(0xEA70, "PltFlwCosmos2Red", FieldItemKind.PltFlwCosmos)}, // コスモス赤(つぼみ) + {0xEA71, new FieldItemDefinition(0xEA71, "PltFlwCosmos3Red", FieldItemKind.PltFlwCosmos)}, // コスモス赤(花) + {0xEA72, new FieldItemDefinition(0xEA72, "PltFlwCosmos1White", FieldItemKind.PltFlwCosmos)}, // コスモス白(茎) + {0xEA73, new FieldItemDefinition(0xEA73, "PltFlwCosmos2White", FieldItemKind.PltFlwCosmos)}, // コスモス白(つぼみ) + {0xEA74, new FieldItemDefinition(0xEA74, "PltFlwCosmos3White", FieldItemKind.PltFlwCosmos)}, // コスモス白(花) + {0xEA76, new FieldItemDefinition(0xEA76, "PltTreeBamboo4", FieldItemKind.PltTreeBamboo)}, // 竹(成木) + {0xEA77, new FieldItemDefinition(0xEA77, "PltTreePalm4", FieldItemKind.PltTreePalm)}, // ヤシの木(成木) + {0xEA79, new FieldItemDefinition(0xEA79, "Hole", FieldItemKind.UnitIconHole)}, // 穴 + {0xEA81, new FieldItemDefinition(0xEA81, "PltWeedAut1A", FieldItemKind.PltWeedAut0)}, // 秋の雑草01A + {0xEA82, new FieldItemDefinition(0xEA82, "PltWeedAut1B", FieldItemKind.PltWeedAut0)}, // 秋の雑草01B + {0xEA83, new FieldItemDefinition(0xEA83, "PltWeedAut1C", FieldItemKind.PltWeedAut0)}, // 秋の雑草01C + {0xEA86, new FieldItemDefinition(0xEA86, "PltWeedSmr1A", FieldItemKind.PltWeedSmr)}, // 夏の雑草1A + {0xEA87, new FieldItemDefinition(0xEA87, "PltWeedSmr1B", FieldItemKind.PltWeedSmr)}, // 夏の雑草1B + {0xEA88, new FieldItemDefinition(0xEA88, "PltWeedSmr1C", FieldItemKind.PltWeedSmr)}, // 夏の雑草1C + {0xEA89, new FieldItemDefinition(0xEA89, "PltFlwCosmos1Yellow", FieldItemKind.PltFlwCosmos)}, // コスモス黄(茎) + {0xEA8A, new FieldItemDefinition(0xEA8A, "PltFlwCosmos2Yellow", FieldItemKind.PltFlwCosmos)}, // コスモス黄(つぼみ) + {0xEA8B, new FieldItemDefinition(0xEA8B, "PltFlwCosmos3Yellow", FieldItemKind.PltFlwCosmos)}, // コスモス黄(花) + {0xEA9F, new FieldItemDefinition(0xEA9F, "PltTreeOak4Stump", FieldItemKind.PltTreeOak)}, // 広葉樹(成木の切り株) + {0xEAB4, new FieldItemDefinition(0xEAB4, "PltTreeCedar4Stump", FieldItemKind.PltTreeCedar)}, // 針葉樹(成木の切り株) + {0xEAB5, new FieldItemDefinition(0xEAB5, "PltTreeCedar0", FieldItemKind.PltTreeCedar)}, // 針葉樹(苗) + {0xEAB6, new FieldItemDefinition(0xEAB6, "PltTreeCedar2", FieldItemKind.PltTreeCedar)}, // 針葉樹(成長2) + {0xEAB7, new FieldItemDefinition(0xEAB7, "PltTreeCedar1", FieldItemKind.PltTreeCedar)}, // 針葉樹(成長1) + {0xEAB8, new FieldItemDefinition(0xEAB8, "PltTreeCedar3", FieldItemKind.PltTreeCedar)}, // 針葉樹(成長3) + {0xEABE, new FieldItemDefinition(0xEABE, "PltTreePalm4Stump", FieldItemKind.PltTreePalm)}, // ヤシの木(成木の切り株) + {0xEABF, new FieldItemDefinition(0xEABF, "PltTreePalm0", FieldItemKind.PltTreePalm)}, // ヤシの木(苗) + {0xEAC0, new FieldItemDefinition(0xEAC0, "PltTreePalm2", FieldItemKind.PltTreePalm)}, // ヤシの木(成長2) + {0xEAC1, new FieldItemDefinition(0xEAC1, "PltTreePalm1", FieldItemKind.PltTreePalm)}, // ヤシの木(成長1) + {0xEAC2, new FieldItemDefinition(0xEAC2, "PltTreePalm3", FieldItemKind.PltTreePalm)}, // ヤシの木(成長3) + {0xEAC3, new FieldItemDefinition(0xEAC3, "PltTreeBamboo4Stump", FieldItemKind.PltTreeBamboo)}, // 竹(成木の切り株) + {0xEAC4, new FieldItemDefinition(0xEAC4, "PltTreeBamboo0", FieldItemKind.PltTreeBamboo)}, // 竹(苗) + {0xEAC5, new FieldItemDefinition(0xEAC5, "PltTreeBamboo2", FieldItemKind.PltTreeBamboo)}, // 竹(成長2) + {0xEAC6, new FieldItemDefinition(0xEAC6, "PltTreeBamboo1", FieldItemKind.PltTreeBamboo)}, // 竹(成長1) + {0xEAC7, new FieldItemDefinition(0xEAC7, "PltTreeBamboo3", FieldItemKind.PltTreeBamboo)}, // 竹(成長3) + {0xEAC8, new FieldItemDefinition(0xEAC8, "PltTreePear", FieldItemKind.PltTreeOak)}, // ナシの木(成木) + {0xEAC9, new FieldItemDefinition(0xEAC9, "PltTreeCherry", FieldItemKind.PltTreeOak)}, // さくらんぼの木(成木) + {0xEACA, new FieldItemDefinition(0xEACA, "PltTreePeach", FieldItemKind.PltTreeOak)}, // モモの木(成木) + {0xEAF7, new FieldItemDefinition(0xEAF7, "PltFlwCosmos2Black", FieldItemKind.PltFlwCosmos)}, // コスモス黒(つぼみ) + {0xEAF8, new FieldItemDefinition(0xEAF8, "PltFlwCosmos3Orange", FieldItemKind.PltFlwCosmos)}, // コスモスオレンジ(花) + {0xEAF9, new FieldItemDefinition(0xEAF9, "PltFlwCosmos3Black", FieldItemKind.PltFlwCosmos)}, // コスモス黒(花) + {0xEAFA, new FieldItemDefinition(0xEAFA, "PltFlwCosmos3Pink", FieldItemKind.PltFlwCosmos)}, // コスモス桃(花) + {0xEAFB, new FieldItemDefinition(0xEAFB, "PltFlwCosmos1Black", FieldItemKind.PltFlwCosmos)}, // コスモス黒(茎) + {0xEAFC, new FieldItemDefinition(0xEAFC, "PltFlwCosmos1Orange", FieldItemKind.PltFlwCosmos)}, // コスモスオレンジ(茎) + {0xEAFD, new FieldItemDefinition(0xEAFD, "PltFlwCosmos2Orange", FieldItemKind.PltFlwCosmos)}, // コスモスオレンジ(つぼみ) + {0xEAFE, new FieldItemDefinition(0xEAFE, "PltFlwCosmos1Pink", FieldItemKind.PltFlwCosmos)}, // コスモス桃(茎) + {0xEAFF, new FieldItemDefinition(0xEAFF, "PltFlwCosmos2Pink", FieldItemKind.PltFlwCosmos)}, // コスモス桃(つぼみ) + {0xEB00, new FieldItemDefinition(0xEB00, "FenceWallRenga", FieldItemKind.FenceWallRenga)}, // レンガの壁 + {0xEB01, new FieldItemDefinition(0xEB01, "PltWeedSmr3", FieldItemKind.PltWeedSmr)}, // 夏の雑草3 + {0xEB02, new FieldItemDefinition(0xEB02, "PltWeedSmr2A", FieldItemKind.PltWeedSmr)}, // 夏の雑草2A + {0xEB03, new FieldItemDefinition(0xEB03, "PltWeedSmr2C", FieldItemKind.PltWeedSmr)}, // 夏の雑草2C + {0xEB04, new FieldItemDefinition(0xEB04, "PltWeedSmr2B", FieldItemKind.PltWeedSmr)}, // 夏の雑草2B + {0xEB05, new FieldItemDefinition(0xEB05, "PltWeedAut3", FieldItemKind.PltWeedAut0)}, // 秋の雑草03 + {0xEB12, new FieldItemDefinition(0xEB12, "StoneA", FieldItemKind.StoneA)}, // 岩A + {0xEB13, new FieldItemDefinition(0xEB13, "StoneB", FieldItemKind.StoneB)}, // 岩B + {0xEB14, new FieldItemDefinition(0xEB14, "StoneE", FieldItemKind.StoneE)}, // 岩E + {0xEB15, new FieldItemDefinition(0xEB15, "StoneD", FieldItemKind.StoneD)}, // 岩D + {0xEB16, new FieldItemDefinition(0xEB16, "StoneC", FieldItemKind.StoneC)}, // 岩C + {0xEB17, new FieldItemDefinition(0xEB17, "PltWeedAut2B", FieldItemKind.PltWeedAut0)}, // 秋の雑草02B + {0xEB18, new FieldItemDefinition(0xEB18, "PltWeedAut2C", FieldItemKind.PltWeedAut0)}, // 秋の雑草02C + {0xEB19, new FieldItemDefinition(0xEB19, "PltWeedAut2A", FieldItemKind.PltWeedAut0)}, // 秋の雑草02A + {0xEB28, new FieldItemDefinition(0xEB28, "PltWeedSpr1A", FieldItemKind.PltWeedSpr)}, // 春の雑草1A + {0xEB30, new FieldItemDefinition(0xEB30, "PltWeedSpr1B", FieldItemKind.PltWeedSpr)}, // 春の雑草1B + {0xEB31, new FieldItemDefinition(0xEB31, "PltWeedSpr1C", FieldItemKind.PltWeedSpr)}, // 春の雑草1C + {0xEB32, new FieldItemDefinition(0xEB32, "PltWeedSpr2A", FieldItemKind.PltWeedSpr)}, // 春の雑草2A + {0xEB33, new FieldItemDefinition(0xEB33, "PltWeedSpr2B", FieldItemKind.PltWeedSpr)}, // 春の雑草2B + {0xEB34, new FieldItemDefinition(0xEB34, "PltWeedSpr2C", FieldItemKind.PltWeedSpr)}, // 春の雑草2C + {0xEB35, new FieldItemDefinition(0xEB35, "PltWeedSpr3", FieldItemKind.PltWeedSpr)}, // 春の雑草3 + {0xEB36, new FieldItemDefinition(0xEB36, "PltWeedWin1A", FieldItemKind.PltWeedWin0)}, // 冬の雑草01A + {0xEB37, new FieldItemDefinition(0xEB37, "PltWeedWin1B", FieldItemKind.PltWeedWin0)}, // 冬の雑草01B + {0xEB38, new FieldItemDefinition(0xEB38, "PltWeedWin1C", FieldItemKind.PltWeedWin0)}, // 冬の雑草01C + {0xEB39, new FieldItemDefinition(0xEB39, "PltWeedWin2A", FieldItemKind.PltWeedWin0)}, // 冬の雑草02A + {0xEB3A, new FieldItemDefinition(0xEB3A, "PltWeedWin2B", FieldItemKind.PltWeedWin0)}, // 冬の雑草02B + {0xEB3B, new FieldItemDefinition(0xEB3B, "PltWeedWin2C", FieldItemKind.PltWeedWin0)}, // 冬の雑草02C + {0xEB3C, new FieldItemDefinition(0xEB3C, "PltWeedWin3", FieldItemKind.PltWeedWin0)}, // 冬の雑草03 + {0xEB3D, new FieldItemDefinition(0xEB3D, "PltFlwTulip1White", FieldItemKind.PltFlwTulip)}, // チューリップ白(茎) + {0xEB3E, new FieldItemDefinition(0xEB3E, "PltFlwTulip2White", FieldItemKind.PltFlwTulip)}, // チューリップ白(つぼみ) + {0xEB3F, new FieldItemDefinition(0xEB3F, "PltFlwTulip3White", FieldItemKind.PltFlwTulip)}, // チューリップ白(花) + {0xEB40, new FieldItemDefinition(0xEB40, "PltFlwTulip1Red", FieldItemKind.PltFlwTulip)}, // チューリップ赤(茎) + {0xEB41, new FieldItemDefinition(0xEB41, "PltFlwTulip2Red", FieldItemKind.PltFlwTulip)}, // チューリップ赤(つぼみ) + {0xEB42, new FieldItemDefinition(0xEB42, "PltFlwTulip3Red", FieldItemKind.PltFlwTulip)}, // チューリップ赤(花) + {0xEB43, new FieldItemDefinition(0xEB43, "PltFlwTulip1Yellow", FieldItemKind.PltFlwTulip)}, // チューリップ黄(茎) + {0xEB44, new FieldItemDefinition(0xEB44, "PltFlwTulip2Yellow", FieldItemKind.PltFlwTulip)}, // チューリップ黄(つぼみ) + {0xEB45, new FieldItemDefinition(0xEB45, "PltFlwTulip3Yellow", FieldItemKind.PltFlwTulip)}, // チューリップ黄(花) + {0xEB46, new FieldItemDefinition(0xEB46, "PltFlwTulip1Pink", FieldItemKind.PltFlwTulip)}, // チューリップ桃(茎) + {0xEB47, new FieldItemDefinition(0xEB47, "PltFlwTulip2Pink", FieldItemKind.PltFlwTulip)}, // チューリップ桃(つぼみ) + {0xEB48, new FieldItemDefinition(0xEB48, "PltFlwTulip3Pink", FieldItemKind.PltFlwTulip)}, // チューリップ桃(花) + {0xEB49, new FieldItemDefinition(0xEB49, "PltFlwTulip1Orange", FieldItemKind.PltFlwTulip)}, // チューリップオレンジ(茎) + {0xEB4A, new FieldItemDefinition(0xEB4A, "PltFlwTulip2Orange", FieldItemKind.PltFlwTulip)}, // チューリップオレンジ(つぼみ) + {0xEB4B, new FieldItemDefinition(0xEB4B, "PltFlwTulip3Orange", FieldItemKind.PltFlwTulip)}, // チューリップオレンジ(花) + {0xEB4C, new FieldItemDefinition(0xEB4C, "PltFlwTulip1Purple", FieldItemKind.PltFlwTulip)}, // チューリップ紫(茎) + {0xEB4D, new FieldItemDefinition(0xEB4D, "PltFlwTulip2Purple", FieldItemKind.PltFlwTulip)}, // チューリップ紫(つぼみ) + {0xEB4E, new FieldItemDefinition(0xEB4E, "PltFlwTulip3Purple", FieldItemKind.PltFlwTulip)}, // チューリップ紫(花) + {0xEB4F, new FieldItemDefinition(0xEB4F, "PltFlwTulip1Black", FieldItemKind.PltFlwTulip)}, // チューリップ黒(茎) + {0xEB50, new FieldItemDefinition(0xEB50, "PltFlwTulip2Black", FieldItemKind.PltFlwTulip)}, // チューリップ黒(つぼみ) + {0xEB51, new FieldItemDefinition(0xEB51, "PltFlwTulip3Black", FieldItemKind.PltFlwTulip)}, // チューリップ黒(花) + {0xEB52, new FieldItemDefinition(0xEB52, "PltFlwPansy1White", FieldItemKind.PltFlwPansy)}, // パンジー白(茎) + {0xEB53, new FieldItemDefinition(0xEB53, "PltFlwPansy2White", FieldItemKind.PltFlwPansy)}, // パンジー白(つぼみ) + {0xEB54, new FieldItemDefinition(0xEB54, "PltFlwPansy3White", FieldItemKind.PltFlwPansy)}, // パンジー白(花) + {0xEB55, new FieldItemDefinition(0xEB55, "PltFlwPansy1Red", FieldItemKind.PltFlwPansy)}, // パンジー赤(茎) + {0xEB56, new FieldItemDefinition(0xEB56, "PltFlwPansy2Red", FieldItemKind.PltFlwPansy)}, // パンジー赤(つぼみ) + {0xEB57, new FieldItemDefinition(0xEB57, "PltFlwPansy3Red", FieldItemKind.PltFlwPansy)}, // パンジー赤(花) + {0xEB58, new FieldItemDefinition(0xEB58, "PltFlwPansy1Yellow", FieldItemKind.PltFlwPansy)}, // パンジー黄(茎) + {0xEB59, new FieldItemDefinition(0xEB59, "PltFlwPansy2Yellow", FieldItemKind.PltFlwPansy)}, // パンジー黄(つぼみ) + {0xEB5A, new FieldItemDefinition(0xEB5A, "PltFlwPansy3Yellow", FieldItemKind.PltFlwPansy)}, // パンジー黄(花) + {0xEB5B, new FieldItemDefinition(0xEB5B, "PltFlwPansy1RedYellow", FieldItemKind.PltFlwPansy)}, // パンジー赤黄(茎) + {0xEB5C, new FieldItemDefinition(0xEB5C, "PltFlwPansy2RedYellow", FieldItemKind.PltFlwPansy)}, // パンジー赤黄(つぼみ) + {0xEB5D, new FieldItemDefinition(0xEB5D, "PltFlwPansy3RedYellow", FieldItemKind.PltFlwPansy)}, // パンジー赤黄(花) + {0xEB5E, new FieldItemDefinition(0xEB5E, "PltFlwPansy1Purple", FieldItemKind.PltFlwPansy)}, // パンジー紫(茎) + {0xEB5F, new FieldItemDefinition(0xEB5F, "PltFlwPansy2Purple", FieldItemKind.PltFlwPansy)}, // パンジー紫(つぼみ) + {0xEB60, new FieldItemDefinition(0xEB60, "PltFlwPansy3Purple", FieldItemKind.PltFlwPansy)}, // パンジー紫(花) + {0xEB61, new FieldItemDefinition(0xEB61, "PltFlwPansy1Blue", FieldItemKind.PltFlwPansy)}, // パンジー青(茎) + {0xEB62, new FieldItemDefinition(0xEB62, "PltFlwPansy2Blue", FieldItemKind.PltFlwPansy)}, // パンジー青(つぼみ) + {0xEB63, new FieldItemDefinition(0xEB63, "PltFlwPansy3Blue", FieldItemKind.PltFlwPansy)}, // パンジー青(花) + {0xEB64, new FieldItemDefinition(0xEB64, "PltFlwRose1White", FieldItemKind.PltFlwRose)}, // バラ白(茎) + {0xEB65, new FieldItemDefinition(0xEB65, "PltFlwRose2White", FieldItemKind.PltFlwRose)}, // バラ白(つぼみ) + {0xEB66, new FieldItemDefinition(0xEB66, "PltFlwRose3White", FieldItemKind.PltFlwRose)}, // バラ白(花) + {0xEB67, new FieldItemDefinition(0xEB67, "PltFlwRose1Red", FieldItemKind.PltFlwRose)}, // バラ赤(茎) + {0xEB68, new FieldItemDefinition(0xEB68, "PltFlwRose2Red", FieldItemKind.PltFlwRose)}, // バラ赤(つぼみ) + {0xEB69, new FieldItemDefinition(0xEB69, "PltFlwRose3Red", FieldItemKind.PltFlwRose)}, // バラ赤(花) + {0xEB6A, new FieldItemDefinition(0xEB6A, "PltFlwRose1Yellow", FieldItemKind.PltFlwRose)}, // バラ黄(茎) + {0xEB6B, new FieldItemDefinition(0xEB6B, "PltFlwRose2Yellow", FieldItemKind.PltFlwRose)}, // バラ黄(つぼみ) + {0xEB6C, new FieldItemDefinition(0xEB6C, "PltFlwRose3Yellow", FieldItemKind.PltFlwRose)}, // バラ黄(花) + {0xEB6D, new FieldItemDefinition(0xEB6D, "PltFlwRose1Pink", FieldItemKind.PltFlwRose)}, // バラ桃(茎) + {0xEB6E, new FieldItemDefinition(0xEB6E, "PltFlwRose2Pink", FieldItemKind.PltFlwRose)}, // バラ桃(つぼみ) + {0xEB6F, new FieldItemDefinition(0xEB6F, "PltFlwRose3Pink", FieldItemKind.PltFlwRose)}, // バラ桃(花) + {0xEB70, new FieldItemDefinition(0xEB70, "PltFlwRose1Orange", FieldItemKind.PltFlwRose)}, // バラオレンジ(茎) + {0xEB71, new FieldItemDefinition(0xEB71, "PltFlwRose2Orange", FieldItemKind.PltFlwRose)}, // バラオレンジ(つぼみ) + {0xEB72, new FieldItemDefinition(0xEB72, "PltFlwRose3Orange", FieldItemKind.PltFlwRose)}, // バラオレンジ(花) + {0xEB73, new FieldItemDefinition(0xEB73, "PltFlwRose1Purple", FieldItemKind.PltFlwRose)}, // バラ紫(茎) + {0xEB74, new FieldItemDefinition(0xEB74, "PltFlwRose2Purple", FieldItemKind.PltFlwRose)}, // バラ紫(つぼみ) + {0xEB75, new FieldItemDefinition(0xEB75, "PltFlwRose3Purple", FieldItemKind.PltFlwRose)}, // バラ紫(花) + {0xEB76, new FieldItemDefinition(0xEB76, "PltFlwRose1Black", FieldItemKind.PltFlwRose)}, // バラ黒(茎) + {0xEB77, new FieldItemDefinition(0xEB77, "PltFlwRose2Black", FieldItemKind.PltFlwRose)}, // バラ黒(つぼみ) + {0xEB78, new FieldItemDefinition(0xEB78, "PltFlwRose3Black", FieldItemKind.PltFlwRose)}, // バラ黒(花) + {0xEB79, new FieldItemDefinition(0xEB79, "PltFlwRose1Blue", FieldItemKind.PltFlwRose)}, // バラ青(茎) + {0xEB7A, new FieldItemDefinition(0xEB7A, "PltFlwRose2Blue", FieldItemKind.PltFlwRose)}, // バラ青(つぼみ) + {0xEB7B, new FieldItemDefinition(0xEB7B, "PltFlwRose3Blue", FieldItemKind.PltFlwRose)}, // バラ青(花) + {0xEB7C, new FieldItemDefinition(0xEB7C, "PltFlwRose1Gold", FieldItemKind.PltFlwRoseGold)}, // バラ金(茎) + {0xEB7D, new FieldItemDefinition(0xEB7D, "PltFlwRose2Gold", FieldItemKind.PltFlwRoseGold)}, // バラ金(つぼみ) + {0xEB7E, new FieldItemDefinition(0xEB7E, "PltFlwRose3Gold", FieldItemKind.PltFlwRoseGold)}, // バラ金(花) + {0xEB88, new FieldItemDefinition(0xEB88, "PltFlwYuri1White", FieldItemKind.PltFlwYuri)}, // ユリ白(茎) + {0xEB89, new FieldItemDefinition(0xEB89, "PltFlwYuri2White", FieldItemKind.PltFlwYuri)}, // ユリ白(つぼみ) + {0xEB8A, new FieldItemDefinition(0xEB8A, "PltFlwYuri3White", FieldItemKind.PltFlwYuri)}, // ユリ白(花) + {0xEB8B, new FieldItemDefinition(0xEB8B, "PltFlwYuri1Red", FieldItemKind.PltFlwYuri)}, // ユリ赤(茎) + {0xEB8C, new FieldItemDefinition(0xEB8C, "PltFlwYuri2Red", FieldItemKind.PltFlwYuri)}, // ユリ赤(つぼみ) + {0xEB8D, new FieldItemDefinition(0xEB8D, "PltFlwYuri3Red", FieldItemKind.PltFlwYuri)}, // ユリ赤(花) + {0xEB8E, new FieldItemDefinition(0xEB8E, "PltFlwYuri1Yellow", FieldItemKind.PltFlwYuri)}, // ユリ黄(茎) + {0xEB8F, new FieldItemDefinition(0xEB8F, "PltFlwYuri2Yellow", FieldItemKind.PltFlwYuri)}, // ユリ黄(つぼみ) + {0xEB90, new FieldItemDefinition(0xEB90, "PltFlwYuri3Yellow", FieldItemKind.PltFlwYuri)}, // ユリ黄(花) + {0xEB91, new FieldItemDefinition(0xEB91, "PltFlwYuri1Pink", FieldItemKind.PltFlwYuri)}, // ユリ桃(茎) + {0xEB92, new FieldItemDefinition(0xEB92, "PltFlwYuri2Pink", FieldItemKind.PltFlwYuri)}, // ユリ桃(つぼみ) + {0xEB93, new FieldItemDefinition(0xEB93, "PltFlwYuri3Pink", FieldItemKind.PltFlwYuri)}, // ユリ桃(花) + {0xEB94, new FieldItemDefinition(0xEB94, "PltFlwYuri1Orange", FieldItemKind.PltFlwYuri)}, // ユリオレンジ(茎) + {0xEB95, new FieldItemDefinition(0xEB95, "PltFlwYuri2Orange", FieldItemKind.PltFlwYuri)}, // ユリオレンジ(つぼみ) + {0xEB96, new FieldItemDefinition(0xEB96, "PltFlwYuri3Orange", FieldItemKind.PltFlwYuri)}, // ユリオレンジ(花) + {0xEB97, new FieldItemDefinition(0xEB97, "PltFlwYuri1Black", FieldItemKind.PltFlwYuri)}, // ユリ黒(茎) + {0xEB98, new FieldItemDefinition(0xEB98, "PltFlwYuri2Black", FieldItemKind.PltFlwYuri)}, // ユリ黒(つぼみ) + {0xEB99, new FieldItemDefinition(0xEB99, "PltFlwYuri3Black", FieldItemKind.PltFlwYuri)}, // ユリ黒(花) + {0xEBBA, new FieldItemDefinition(0xEBBA, "FenceVerticalWood", FieldItemKind.FenceVerticalWood)}, // 縦板の柵 + {0xEBBF, new FieldItemDefinition(0xEBBF, "FenceBamboo", FieldItemKind.FenceBamboo)}, // 竹の柵 + {0xEBC0, new FieldItemDefinition(0xEBC0, "PltTreeCherry3", FieldItemKind.PltTreeOak)}, // さくらんぼの木(成長3) + {0xEBC1, new FieldItemDefinition(0xEBC1, "PltTreeCherry2", FieldItemKind.PltTreeOak)}, // さくらんぼの木(成長2) + {0xEBC2, new FieldItemDefinition(0xEBC2, "PltTreeCherry0", FieldItemKind.PltTreeOak)}, // さくらんぼの木(苗) + {0xEBC3, new FieldItemDefinition(0xEBC3, "PltTreeCherry1", FieldItemKind.PltTreeOak)}, // さくらんぼの木(成長1) + {0xEBC4, new FieldItemDefinition(0xEBC4, "PltTreePeach0", FieldItemKind.PltTreeOak)}, // モモの木(苗) + {0xEBC5, new FieldItemDefinition(0xEBC5, "PltTreePeach1", FieldItemKind.PltTreeOak)}, // モモの木(成長1) + {0xEBC6, new FieldItemDefinition(0xEBC6, "PltTreePeach2", FieldItemKind.PltTreeOak)}, // モモの木(成長2) + {0xEBC7, new FieldItemDefinition(0xEBC7, "PltTreePeach3", FieldItemKind.PltTreeOak)}, // モモの木(成長3) + {0xEBC8, new FieldItemDefinition(0xEBC8, "PltTreeOrange0", FieldItemKind.PltTreeOak)}, // オレンジの木(苗) + {0xEBC9, new FieldItemDefinition(0xEBC9, "PltTreeOrange1", FieldItemKind.PltTreeOak)}, // オレンジの木(成長1) + {0xEBCA, new FieldItemDefinition(0xEBCA, "PltTreeOrange2", FieldItemKind.PltTreeOak)}, // オレンジの木(成長2) + {0xEBCB, new FieldItemDefinition(0xEBCB, "PltTreeOrange3", FieldItemKind.PltTreeOak)}, // オレンジの木(成長3) + {0xEBCC, new FieldItemDefinition(0xEBCC, "PltTreePear0", FieldItemKind.PltTreeOak)}, // ナシの木(苗) + {0xEBCD, new FieldItemDefinition(0xEBCD, "PltTreePear1", FieldItemKind.PltTreeOak)}, // ナシの木(成長1) + {0xEBCE, new FieldItemDefinition(0xEBCE, "PltTreePear2", FieldItemKind.PltTreeOak)}, // ナシの木(成長2) + {0xEBCF, new FieldItemDefinition(0xEBCF, "PltTreePear3", FieldItemKind.PltTreeOak)}, // ナシの木(成長3) + {0xEBD0, new FieldItemDefinition(0xEBD0, "PltTreeApple1", FieldItemKind.PltTreeOak)}, // リンゴの木(成長1) + {0xEBD1, new FieldItemDefinition(0xEBD1, "PltTreeApple2", FieldItemKind.PltTreeOak)}, // リンゴの木(成長2) + {0xEBD2, new FieldItemDefinition(0xEBD2, "PltTreeApple3", FieldItemKind.PltTreeOak)}, // リンゴの木(成長3) + {0xEBD3, new FieldItemDefinition(0xEBD3, "PltTreeApple0", FieldItemKind.PltTreeOak)}, // リンゴの木(苗) + {0xEBD5, new FieldItemDefinition(0xEBD5, "FenceHorizontalWood", FieldItemKind.FenceHorizontalWood)}, // よこいたのさく + {0xEBD6, new FieldItemDefinition(0xEBD6, "FenceLog", FieldItemKind.FenceLog)}, // まるたのさく + {0xEBD8, new FieldItemDefinition(0xEBD8, "FencePegRope", FieldItemKind.FencePegRope)}, // ペグのさく + {0xEBDA, new FieldItemDefinition(0xEBDA, "PltFlwHyacinth3Red", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス赤(花) + {0xEBDB, new FieldItemDefinition(0xEBDB, "PltFlwAnemones3Red", FieldItemKind.PltFlwAnemone)}, // アネモネ赤(花) + {0xEBDC, new FieldItemDefinition(0xEBDC, "PltFlwMum3Red", FieldItemKind.PltFlwMum)}, // キク赤(花) + {0xEBDD, new FieldItemDefinition(0xEBDD, "PltFlwMum1Red", FieldItemKind.PltFlwMum)}, // キク赤(茎) + {0xEBDE, new FieldItemDefinition(0xEBDE, "PltFlwMum2Red", FieldItemKind.PltFlwMum)}, // キク赤(つぼみ) + {0xEBDF, new FieldItemDefinition(0xEBDF, "PltFlwAnemones1Red", FieldItemKind.PltFlwAnemone)}, // アネモネ赤(茎) + {0xEBE0, new FieldItemDefinition(0xEBE0, "PltFlwAnemones2Red", FieldItemKind.PltFlwAnemone)}, // アネモネ赤(つぼみ) + {0xEBE1, new FieldItemDefinition(0xEBE1, "PltFlwHyacinth1Red", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス赤(茎) + {0xEBE2, new FieldItemDefinition(0xEBE2, "PltFlwHyacinth2Red", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス赤(つぼみ) + {0xEBE4, new FieldItemDefinition(0xEBE4, "PltFlwHyacinth3White", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス白(花) + {0xEBE5, new FieldItemDefinition(0xEBE5, "PltFlwHyacinth2White", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス白(つぼみ) + {0xEBE6, new FieldItemDefinition(0xEBE6, "PltFlwHyacinth1White", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス白(茎) + {0xEBE7, new FieldItemDefinition(0xEBE7, "PltFlwHyacinth2Yellow", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス黄(つぼみ) + {0xEBE8, new FieldItemDefinition(0xEBE8, "PltFlwHyacinth3Yellow", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス黄(花) + {0xEBE9, new FieldItemDefinition(0xEBE9, "PltFlwHyacinth1Yellow", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス黄(茎) + {0xEBEA, new FieldItemDefinition(0xEBEA, "PltFlwHyacinth3Blue", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス青(花) + {0xEBEB, new FieldItemDefinition(0xEBEB, "PltFlwHyacinth3Pink", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス桃(花) + {0xEBEC, new FieldItemDefinition(0xEBEC, "PltFlwHyacinth3Orange", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンスオレンジ(花) + {0xEBED, new FieldItemDefinition(0xEBED, "PltFlwHyacinth3Purple", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス紫(花) + {0xEBEE, new FieldItemDefinition(0xEBEE, "PltFlwHyacinth2Purple", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス紫(つぼみ) + {0xEBEF, new FieldItemDefinition(0xEBEF, "PltFlwHyacinth1Purple", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス紫(茎) + {0xEBF0, new FieldItemDefinition(0xEBF0, "PltFlwHyacinth2Orange", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンスオレンジ(つぼみ) + {0xEBF1, new FieldItemDefinition(0xEBF1, "PltFlwHyacinth2Pink", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス桃(つぼみ) + {0xEBF2, new FieldItemDefinition(0xEBF2, "PltFlwHyacinth1Pink", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス桃(茎) + {0xEBF3, new FieldItemDefinition(0xEBF3, "PltFlwHyacinth1Blue", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス青(茎) + {0xEBF4, new FieldItemDefinition(0xEBF4, "PltFlwHyacinth2Blue", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス青(つぼみ) + {0xEBF5, new FieldItemDefinition(0xEBF5, "PltFlwHyacinth1Orange", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンスオレンジ(茎) + {0xEC04, new FieldItemDefinition(0xEC04, "PltFlwMum1White", FieldItemKind.PltFlwMum)}, // キク白(茎) + {0xEC05, new FieldItemDefinition(0xEC05, "PltFlwMum1Yellow", FieldItemKind.PltFlwMum)}, // キク黄(茎) + {0xEC06, new FieldItemDefinition(0xEC06, "PltFlwMum1Purple", FieldItemKind.PltFlwMum)}, // キク紫(茎) + {0xEC07, new FieldItemDefinition(0xEC07, "PltFlwMum1Pink", FieldItemKind.PltFlwMum)}, // キク桃(茎) + {0xEC08, new FieldItemDefinition(0xEC08, "PltFlwMum2White", FieldItemKind.PltFlwMum)}, // キク白(つぼみ) + {0xEC09, new FieldItemDefinition(0xEC09, "PltFlwMum3White", FieldItemKind.PltFlwMum)}, // キク白(花) + {0xEC0A, new FieldItemDefinition(0xEC0A, "PltFlwMum2Yellow", FieldItemKind.PltFlwMum)}, // キク黄(つぼみ) + {0xEC0B, new FieldItemDefinition(0xEC0B, "PltFlwMum2Purple", FieldItemKind.PltFlwMum)}, // キク紫(つぼみ) + {0xEC0C, new FieldItemDefinition(0xEC0C, "PltFlwMum2Pink", FieldItemKind.PltFlwMum)}, // キク桃(つぼみ) + {0xEC0D, new FieldItemDefinition(0xEC0D, "PltFlwMum3Yellow", FieldItemKind.PltFlwMum)}, // キク黄(花) + {0xEC0E, new FieldItemDefinition(0xEC0E, "PltFlwMum3Purple", FieldItemKind.PltFlwMum)}, // キク紫(花) + {0xEC0F, new FieldItemDefinition(0xEC0F, "PltFlwMum3Pink", FieldItemKind.PltFlwMum)}, // キク桃(花) + {0xEC11, new FieldItemDefinition(0xEC11, "PltFlwAnemones1White", FieldItemKind.PltFlwAnemone)}, // アネモネ白(茎) + {0xEC12, new FieldItemDefinition(0xEC12, "PltFlwAnemones2White", FieldItemKind.PltFlwAnemone)}, // アネモネ白(つぼみ) + {0xEC13, new FieldItemDefinition(0xEC13, "PltFlwAnemones3White", FieldItemKind.PltFlwAnemone)}, // アネモネ白(花) + {0xEC14, new FieldItemDefinition(0xEC14, "PltFlwAnemones1Blue", FieldItemKind.PltFlwAnemone)}, // アネモネ青(茎) + {0xEC15, new FieldItemDefinition(0xEC15, "PltFlwAnemones1Purple", FieldItemKind.PltFlwAnemone)}, // アネモネ紫(茎) + {0xEC16, new FieldItemDefinition(0xEC16, "PltFlwAnemones1Pink", FieldItemKind.PltFlwAnemone)}, // アネモネ桃(茎) + {0xEC17, new FieldItemDefinition(0xEC17, "PltFlwAnemones1Orange", FieldItemKind.PltFlwAnemone)}, // アネモネオレンジ(茎) + {0xEC18, new FieldItemDefinition(0xEC18, "PltFlwAnemones2Blue", FieldItemKind.PltFlwAnemone)}, // アネモネ青(つぼみ) + {0xEC19, new FieldItemDefinition(0xEC19, "PltFlwAnemones3Blue", FieldItemKind.PltFlwAnemone)}, // アネモネ青(花) + {0xEC1A, new FieldItemDefinition(0xEC1A, "PltFlwAnemones2Purple", FieldItemKind.PltFlwAnemone)}, // アネモネ紫(つぼみ) + {0xEC1B, new FieldItemDefinition(0xEC1B, "PltFlwAnemones3Purple", FieldItemKind.PltFlwAnemone)}, // アネモネ紫(花) + {0xEC1C, new FieldItemDefinition(0xEC1C, "PltFlwAnemones2Pink", FieldItemKind.PltFlwAnemone)}, // アネモネ桃(つぼみ) + {0xEC1D, new FieldItemDefinition(0xEC1D, "PltFlwAnemones3Pink", FieldItemKind.PltFlwAnemone)}, // アネモネ桃(花) + {0xEC1E, new FieldItemDefinition(0xEC1E, "PltFlwAnemones2Orange", FieldItemKind.PltFlwAnemone)}, // アネモネオレンジ(つぼみ) + {0xEC1F, new FieldItemDefinition(0xEC1F, "PltFlwAnemones3Orange", FieldItemKind.PltFlwAnemone)}, // アネモネオレンジ(花) + {0xEC32, new FieldItemDefinition(0xEC32, "PltFlwMum1Green", FieldItemKind.PltFlwMum)}, // キク緑(茎) + {0xEC33, new FieldItemDefinition(0xEC33, "PltFlwMum2Green", FieldItemKind.PltFlwMum)}, // キク緑(つぼみ) + {0xEC34, new FieldItemDefinition(0xEC34, "PltFlwMum3Green", FieldItemKind.PltFlwMum)}, // キク緑(花) + {0xEC38, new FieldItemDefinition(0xEC38, "PltFlwHyacinth0White", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス白(芽) + {0xEC3A, new FieldItemDefinition(0xEC3A, "PltFlwMum0Yellow", FieldItemKind.PltFlwMum)}, // キク黄(芽) + {0xEC3B, new FieldItemDefinition(0xEC3B, "PltFlwHyacinth0Yellow", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス黄(芽) + {0xEC3F, new FieldItemDefinition(0xEC3F, "PltFlwHyacinth0Red", FieldItemKind.PltFlwHyacinth)}, // ヒヤシンス赤(芽) + {0xEC42, new FieldItemDefinition(0xEC42, "PltFlwAnemones0Red", FieldItemKind.PltFlwAnemone)}, // アネモネ赤(芽) + {0xEC43, new FieldItemDefinition(0xEC43, "PltFlwAnemones0White", FieldItemKind.PltFlwAnemone)}, // アネモネ白(芽) + {0xEC47, new FieldItemDefinition(0xEC47, "PltFlwAnemones0Orange", FieldItemKind.PltFlwAnemone)}, // アネモネオレンジ(芽) + {0xEC48, new FieldItemDefinition(0xEC48, "PltFlwM0Red", FieldItemKind.PltFlwMum)}, // キク赤(芽) + {0xEC49, new FieldItemDefinition(0xEC49, "PltFlwMum0White", FieldItemKind.PltFlwMum)}, // キク白(芽) + {0xEC4A, new FieldItemDefinition(0xEC4A, "PltFlwTulip0Yellow", FieldItemKind.PltFlwTulip)}, // チューリップ黄(芽) + {0xEC50, new FieldItemDefinition(0xEC50, "PltFlwPansy0White", FieldItemKind.PltFlwPansy)}, // パンジー白(芽) + {0xEC51, new FieldItemDefinition(0xEC51, "PltFlwPansy0Red", FieldItemKind.PltFlwPansy)}, // パンジー赤(芽) + {0xEC52, new FieldItemDefinition(0xEC52, "PltFlwPansy0Yellow", FieldItemKind.PltFlwPansy)}, // パンジー黄(芽) + {0xEC56, new FieldItemDefinition(0xEC56, "PltFlwRose0White", FieldItemKind.PltFlwRose)}, // バラ白(芽) + {0xEC57, new FieldItemDefinition(0xEC57, "PltFlwRose0Red", FieldItemKind.PltFlwRose)}, // バラ赤(芽) + {0xEC58, new FieldItemDefinition(0xEC58, "PltFlwRose0Yellow", FieldItemKind.PltFlwRose)}, // バラ黄(芽) + {0xEC5B, new FieldItemDefinition(0xEC5B, "PltFlwYuri0Yellow", FieldItemKind.PltFlwYuri)}, // ユリ黄(芽) + {0xEC60, new FieldItemDefinition(0xEC60, "PltFlwYuri0White", FieldItemKind.PltFlwYuri)}, // ユリ白(芽) + {0xEC61, new FieldItemDefinition(0xEC61, "PltFlwYuri0Red", FieldItemKind.PltFlwYuri)}, // ユリ赤(芽) + {0xEC62, new FieldItemDefinition(0xEC62, "PltFlwCosmos0Red", FieldItemKind.PltFlwCosmos)}, // コスモス赤(芽) + {0xEC63, new FieldItemDefinition(0xEC63, "PltFlwTulip0Red", FieldItemKind.PltFlwTulip)}, // チューリップ赤(芽) + {0xEC64, new FieldItemDefinition(0xEC64, "PltFlwCosmos0Yellow", FieldItemKind.PltFlwCosmos)}, // コスモス黄(芽) + {0xEC65, new FieldItemDefinition(0xEC65, "PltFlwCosmos0White", FieldItemKind.PltFlwCosmos)}, // コスモス白(芽) + {0xEC69, new FieldItemDefinition(0xEC69, "PltFlwTulip0White", FieldItemKind.PltFlwTulip)}, // チューリップ白(芽) + {0xEC6B, new FieldItemDefinition(0xEC6B, "PltTreeOak3Stump", FieldItemKind.PltTreeOak)}, // 広葉樹(成長3の切り株) + {0xEC6C, new FieldItemDefinition(0xEC6C, "PltTreeOak2Stump", FieldItemKind.PltTreeOak)}, // 広葉樹(成長2の切り株) + {0xEC6D, new FieldItemDefinition(0xEC6D, "PltTreeOak1Stump", FieldItemKind.PltTreeOak)}, // 広葉樹(成長1の切り株) + {0xEC6E, new FieldItemDefinition(0xEC6E, "PltTreeCedar3Stump", FieldItemKind.PltTreeCedar)}, // 針葉樹(成長3の切り株) + {0xEC6F, new FieldItemDefinition(0xEC6F, "PltTreeCedar2Stump", FieldItemKind.PltTreeCedar)}, // 針葉樹(成長2の切り株) + {0xEC70, new FieldItemDefinition(0xEC70, "PltTreeCedar1Stump", FieldItemKind.PltTreeCedar)}, // 針葉樹(成長1の切り株) + {0xEC71, new FieldItemDefinition(0xEC71, "PltTreeBamboo3Stump", FieldItemKind.PltTreeBamboo)}, // 竹(成長3の切り株) + {0xEC72, new FieldItemDefinition(0xEC72, "PltTreeBamboo2Stump", FieldItemKind.PltTreeBamboo)}, // 竹(成長2の切り株) + {0xEC73, new FieldItemDefinition(0xEC73, "PltTreeBamboo1Stump", FieldItemKind.PltTreeBamboo)}, // 竹(成長1の切り株) + {0xEC74, new FieldItemDefinition(0xEC74, "FenceChinese", FieldItemKind.FenceChinese)}, // 中華なさく + {0xEC78, new FieldItemDefinition(0xEC78, "PltTreePalm1Stump", FieldItemKind.PltTreePalm)}, // ヤシの木(成長1の切り株) + {0xEC79, new FieldItemDefinition(0xEC79, "PltTreePalm2Stump", FieldItemKind.PltTreePalm)}, // ヤシの木(成長2の切り株) + {0xEC7A, new FieldItemDefinition(0xEC7A, "PltTreePalm3Stump", FieldItemKind.PltTreePalm)}, // ヤシの木(成長3の切り株) + {0xEC7C, new FieldItemDefinition(0xEC7C, "FenceDriedStraw", FieldItemKind.FenceDriedStraw)}, // わらぼしのさく + {0xEC7D, new FieldItemDefinition(0xEC7D, "FenceSteel", FieldItemKind.FenceSteel)}, // てつのさく + {0xEC7E, new FieldItemDefinition(0xEC7E, "FenceSharply", FieldItemKind.FenceSharply)}, // とげとげのさく + {0xEC7F, new FieldItemDefinition(0xEC7F, "PltWeedAut23", FieldItemKind.PltWeedAut2)}, // 秋の雑草23 + {0xEC80, new FieldItemDefinition(0xEC80, "PltWeedAut22C", FieldItemKind.PltWeedAut2)}, // 秋の雑草22C + {0xEC81, new FieldItemDefinition(0xEC81, "PltWeedAut22A", FieldItemKind.PltWeedAut2)}, // 秋の雑草22A + {0xEC82, new FieldItemDefinition(0xEC82, "PltWeedAut22B", FieldItemKind.PltWeedAut2)}, // 秋の雑草22B + {0xEC83, new FieldItemDefinition(0xEC83, "PltWeedAut21A", FieldItemKind.PltWeedAut2)}, // 秋の雑草21A + {0xEC84, new FieldItemDefinition(0xEC84, "PltWeedAut21B", FieldItemKind.PltWeedAut2)}, // 秋の雑草21B + {0xEC85, new FieldItemDefinition(0xEC85, "PltWeedAut21C", FieldItemKind.PltWeedAut2)}, // 秋の雑草21C + {0xEC86, new FieldItemDefinition(0xEC86, "PltWeedAut11B", FieldItemKind.PltWeedAut1)}, // 秋の雑草11B + {0xEC87, new FieldItemDefinition(0xEC87, "PltWeedAut11C", FieldItemKind.PltWeedAut1)}, // 秋の雑草11C + {0xEC88, new FieldItemDefinition(0xEC88, "PltWeedAut12A", FieldItemKind.PltWeedAut1)}, // 秋の雑草12A + {0xEC89, new FieldItemDefinition(0xEC89, "PltWeedAut12B", FieldItemKind.PltWeedAut1)}, // 秋の雑草12B + {0xEC8A, new FieldItemDefinition(0xEC8A, "PltWeedAut12C", FieldItemKind.PltWeedAut1)}, // 秋の雑草12C + {0xEC8B, new FieldItemDefinition(0xEC8B, "PltWeedAut13", FieldItemKind.PltWeedAut1)}, // 秋の雑草13 + {0xEC8C, new FieldItemDefinition(0xEC8C, "PltWeedAut11A", FieldItemKind.PltWeedAut1)}, // 秋の雑草11A + {0xEC8D, new FieldItemDefinition(0xEC8D, "PltWeedWin13", FieldItemKind.PltWeedWin1)}, // 冬の雑草13 + {0xEC8E, new FieldItemDefinition(0xEC8E, "PltWeedWin12C", FieldItemKind.PltWeedWin1)}, // 冬の雑草12C + {0xEC8F, new FieldItemDefinition(0xEC8F, "PltWeedWin12A", FieldItemKind.PltWeedWin1)}, // 冬の雑草12A + {0xEC90, new FieldItemDefinition(0xEC90, "PltWeedWin12B", FieldItemKind.PltWeedWin1)}, // 冬の雑草12B + {0xEC91, new FieldItemDefinition(0xEC91, "PltWeedWin11A", FieldItemKind.PltWeedWin1)}, // 冬の雑草11A + {0xEC92, new FieldItemDefinition(0xEC92, "PltWeedWin11B", FieldItemKind.PltWeedWin1)}, // 冬の雑草11B + {0xEC93, new FieldItemDefinition(0xEC93, "PltWeedWin11C", FieldItemKind.PltWeedWin1)}, // 冬の雑草11C + {0xEC97, new FieldItemDefinition(0xEC97, "PltTreeCedarDecoB", FieldItemKind.PltTreeCedarDeco)}, // 飾りつき針葉樹B + {0xEC9A, new FieldItemDefinition(0xEC9A, "PltTreeCedarDecoA", FieldItemKind.PltTreeCedarDeco)}, // 飾りつき針葉樹A + {0xEC9B, new FieldItemDefinition(0xEC9B, "FenceStone", FieldItemKind.FenceStone)}, // いしのさく + {0xEC9C, new FieldItemDefinition(0xEC9C, "PltTreeMoney4", FieldItemKind.PltTreeOak)}, // 金のなるの木(成木) + {0xEC9D, new FieldItemDefinition(0xEC9D, "PltTreeMoney3", FieldItemKind.PltTreeOak)}, // 金のなるの木(成長3) + {0xEC9E, new FieldItemDefinition(0xEC9E, "PltTreeMoney2", FieldItemKind.PltTreeOak)}, // 金のなるの木(成長2) + {0xEC9F, new FieldItemDefinition(0xEC9F, "PltTreeMoney0", FieldItemKind.PltTreeOak)}, // 金のなるの木(苗) + {0xECA0, new FieldItemDefinition(0xECA0, "PltTreeMoney1", FieldItemKind.PltTreeOak)}, // 金のなるの木(成長1) + {0xECB2, new FieldItemDefinition(0xECB2, "FenceBarbedWire", FieldItemKind.FenceBarbedWire)}, // ゆうしてっせん + {0xECB6, new FieldItemDefinition(0xECB6, "FenceJapanese", FieldItemKind.FenceJapanese)}, // 和風のさく + {0xECB7, new FieldItemDefinition(0xECB7, "FenceIronAndStone", FieldItemKind.FenceIronAndStone)}, // 鉄と石の柵 + {0xECBC, new FieldItemDefinition(0xECBC, "PltTreeFruitStump1", FieldItemKind.PltTreeOak)}, // 果物の木(成長1の切り株) + {0xECBD, new FieldItemDefinition(0xECBD, "PltTreeFruitStump2", FieldItemKind.PltTreeOak)}, // 果物の木(成長2の切り株) + {0xECBE, new FieldItemDefinition(0xECBE, "PltTreeFruitStump3", FieldItemKind.PltTreeOak)}, // 果物の木(成長3の切り株) + {0xECBF, new FieldItemDefinition(0xECBF, "PltTreeFruitStump4", FieldItemKind.PltTreeOak)}, // 果物の木(成長4の切り株) + {0xECC1, new FieldItemDefinition(0xECC1, "PltFlwLily3", FieldItemKind.PltFlwLily)}, // スズラン(花) + {0xECC2, new FieldItemDefinition(0xECC2, "FenceWoodNatural", FieldItemKind.FenceWoodWhite)}, // ナチュラルな柵 + {0xECC3, new FieldItemDefinition(0xECC3, "FenceLattice3", FieldItemKind.FenceLattice)}, // ラティスナチュラル + {0xECC4, new FieldItemDefinition(0xECC4, "FenceCommune", FieldItemKind.FenceHorizontalLog)}, // コミューン島専用柵 + {0xED0C, new FieldItemDefinition(0xED0C, "FenceEasterEgg", FieldItemKind.FenceEasterEgg)}, // イースターの柵 + {0xED16, new FieldItemDefinition(0xED16, "PltTreeEasterEgg", FieldItemKind.PltTreeOak)}, // イースターのタマゴの木 + }; + } +} \ No newline at end of file diff --git a/NHSE.Parsing/GameBCSVDumper.cs b/NHSE.Parsing/GameBCSVDumper.cs index c3b555d..1d48260 100644 --- a/NHSE.Parsing/GameBCSVDumper.cs +++ b/NHSE.Parsing/GameBCSVDumper.cs @@ -41,18 +41,21 @@ void DumpB(string fn, byte[] bytes) DumpS("fish.txt", GetFishList(pathBCSV, itemNames)); DumpS("bugs.txt", GetInsectList(pathBCSV, itemNames)); - DumpS("ItemKind.txt", GetItemKindsEnum(pathBCSV)); + DumpS("ItemKind.txt", GetPossibleEnum(pathBCSV, "ItemParam.bcsv", 0xFC275E86)); + DumpS("PlantKind.txt", GetPossibleEnum(pathBCSV, "FgMainParam.bcsv", 0x48EF0398)); + DumpB("item_kind.bin", GetItemKindArray(pathBCSV)); + DumpS("plants.txt", GetPlantedNames(pathBCSV)); } - public static IEnumerable GetItemKinds(string pathBCSV, string fn = "ItemParam.bcsv") + private static IEnumerable GetPossibleEnumValues(string pathBCSV, string fn, uint key) { var path = Path.Combine(pathBCSV, fn); var data = File.ReadAllBytes(path); var bcsv = new BCSV(data); var dict = bcsv.GetFieldDictionary(); - var fType = dict[0xFC275E86]; + var fType = dict[key]; var types = new HashSet(); for (int i = 0; i < bcsv.EntryCount; i++) @@ -65,9 +68,9 @@ public static IEnumerable GetItemKinds(string pathBCSV, string fn = "Ite return types; } - private static IEnumerable GetItemKindsEnum(string pathBCSV) + private static IEnumerable GetPossibleEnum(string pathBCSV, string fn, uint key) { - var kinds = GetItemKinds(pathBCSV); + var kinds = GetPossibleEnumValues(pathBCSV, fn, key); var ordered = kinds.OrderBy(z => z); return ordered.Select(z => $"{z},"); } @@ -220,5 +223,36 @@ private static IEnumerable GetAcreNames(string pathBCSV, string fn = "Fi result.Sort(); return result; } + + private static IEnumerable GetPlantedNames(string pathBCSV, string fn = "FgMainParam.bcsv") + { + var bcsv = BCSVConverter.GetBCSV(pathBCSV, fn); + var dict = bcsv.GetFieldDictionary(); + var fType = dict[0x48EF0398]; + var fname = dict[0x87BF00E8]; + var findex = dict[0x54706054]; + var fcomment = dict[0x3F45F2BF]; + + var result = new List(); + for (int i = 0; i < bcsv.EntryCount; i++) + { + var iid = bcsv.ReadValue(i, findex); + var ival = (ushort)short.Parse(iid); + + var name = bcsv.ReadValue(i, fname).TrimEnd('\0'); + var comment = bcsv.ReadValue(i, fcomment).TrimEnd('\0'); + var type = bcsv.ReadValue(i, fType).TrimEnd('\0'); + + if (!Enum.TryParse(type, out var k)) + throw new InvalidEnumArgumentException($"{type} is not a known enum value @ index {i}. Update the enum index first."); + + var v = $"new {nameof(FieldItemDefinition)}(0x{ival:X}, \"{name}\", {nameof(FieldItemKind)}.{k})"; + var kvp = $"{{0x{ival:X}, {v}}}, // {comment}"; + result.Add(kvp); + } + + result.Sort(); + return result; + } } }