Add structure enums

This commit is contained in:
Kurt
2020-04-04 00:10:54 -07:00
parent 8f6e68feba
commit 62e514f879
10 changed files with 725 additions and 6 deletions

View File

@@ -0,0 +1,15 @@
namespace NHSE.Core
{
public enum BridgeMaterial : byte
{
BridgeStone = 0x00,
BridgeSuspension = 0x01,
BridgeJapanese = 0x02,
BridgeLog = 0x04,
BridgeRed = 0x05,
BridgeIron = 0x06,
BridgeReserved = 0x07,
BridgeWood = 0x0A,
BridgeBricks = 0x0B,
}
}

View File

@@ -0,0 +1,62 @@
namespace NHSE.Core
{
#pragma warning disable CA1027 // Mark enums with FlagsAttribute
public enum BridgeType : ushort
#pragma warning restore CA1027 // Mark enums with FlagsAttribute
{
BridgeStone03 = 0x00,
BridgeStone04 = 0x01,
BridgeStone05 = 0x02,
BridgeStoneDiagonal025 = 0x03,
BridgeStoneDiagonal030 = 0x04,
BridgeStoneDiagonal035 = 0x05,
BridgeSuspension04 = 0x06,
BridgeSuspension03 = 0x07,
BridgeSuspension05 = 0x08,
BridgeSuspensionDiagonal025 = 0x09,
BridgeSuspensionDiagonal030 = 0x0A,
BridgeSuspensionDiagonal035 = 0x0B,
BridgeJapanese04 = 0x0C,
BridgeLog04 = 0x0D,
BridgeLog03 = 0x0E,
BridgeLog05 = 0x0F,
BridgeLogDiagonal025 = 0x10,
BridgeLogDiagonal030 = 0x11,
BridgeLogDiagonal035 = 0x12,
BridgeJapanese03 = 0x13,
BridgeJapanese05 = 0x14,
BridgeJapaneseDiagonal025 = 0x15,
BridgeJapaneseDiagonal030 = 0x16,
BridgeJapaneseDiagonal035 = 0x17,
BridgeRed04 = 0x18,
BridgeIron04 = 0x19,
BridgeReserved03 = 0x1A,
BridgeReserved04 = 0x1B,
BridgeReserved05 = 0x1C,
BridgeReservedDiagonal025 = 0x1D,
BridgeReservedDiagonal030 = 0x1E,
BridgeReservedDiagonal035 = 0x1F,
BridgeRed03 = 0x20,
BridgeRed05 = 0x21,
BridgeRedDiagonal025 = 0x22,
BridgeRedDiagonal030 = 0x23,
BridgeRedDiagonal035 = 0x24,
BridgeWood04 = 0x25,
BridgeBricks04 = 0x26,
BridgeIron03 = 0x27,
BridgeIron05 = 0x28,
BridgeIronDiagonal025 = 0x29,
BridgeIronDiagonal030 = 0x2A,
BridgeIronDiagonal035 = 0x2B,
BridgeWood03 = 0x2C,
BridgeWood05 = 0x2D,
BridgeWoodDiagonal025 = 0x2E,
BridgeWoodDiagonal030 = 0x2F,
BridgeWoodDiagonal035 = 0x30,
BridgeBricks03 = 0x31,
BridgeBricks05 = 0x34,
BridgeBricksDiagonal025 = 0x35,
BridgeBricksDiagonal030 = 0x36,
BridgeBricksDiagonal035 = 0x37,
}
}

View File

@@ -12,7 +12,7 @@ public class Building : INamedObject
private const string Details = nameof(Details);
[Category(Details), Description("Type of Building")]
public ushort BuildingId { get; set; }
public BuildingType BuildingType { get; set; }
[Category(Details), Description("X Coordinate of Building")]
public ushort X { get; set; }
@@ -28,7 +28,7 @@ public class Building : INamedObject
public void Clear()
{
BuildingId = 0;
BuildingType = 0;
X = Y = Rotation = 0;
Unk08 = Unk0C = Unk10 = 0;
}
@@ -36,8 +36,6 @@ public void Clear()
public static Building[] GetArray(byte[] data) => data.GetArray<Building>(SIZE);
public static byte[] SetArray(IReadOnlyList<Building> data) => data.SetArray(SIZE);
public override string ToString() => ToString(Array.Empty<string>());
public string ToString(IReadOnlyList<string> names) =>
$"{X:000},{Y:000} - {(BuildingId >= names.Count ? $"0x{BuildingId:X2}" : names[BuildingId])}";
public string ToString(IReadOnlyList<string> names) => $"{X:000},{Y:000} - {BuildingType}";
}
}

View File

@@ -0,0 +1,37 @@
namespace NHSE.Core
{
#pragma warning disable CA1027 // Mark enums with FlagsAttribute
public enum BuildingType : ushort
#pragma warning restore CA1027 // Mark enums with FlagsAttribute
{
None = 0,
PlayerHouse1 = 1,
PlayerHouse2 = 2,
PlayerHouse3 = 3,
PlayerHouse4 = 4,
PlayerHouse5 = 5,
PlayerHouse6 = 6,
PlayerHouse7 = 7,
PlayerHouse8 = 8,
Villager1 = 9,
Villager2 = 10,
Villager3 = 11,
Villager4 = 12,
Villager5 = 13,
Villager6 = 14,
Villager7 = 15,
Villager8 = 16,
Villager9 = 17,
Villager10 = 18,
NooksCranny = 19,
ResidentCenterStructure = 20,
Museum = 21,
Airport = 22,
ResidentCenterTent = 23,
AblesSisters = 24,
Campsite = 25,
Bridge = 26,
Incline = 27,
Studio = 29,
}
}

View File

@@ -0,0 +1,259 @@
namespace NHSE.Core
{
public enum DoorKind
{
HouseDoorStandardAR = 0x00,
HouseDoorStandardAS = 0x02,
HouseDoorIronAS = 0x03,
HouseDoorIronAR = 0x04,
HouseDoorIronpartsAS = 0x05,
HouseDoorIronpartsAR = 0x06,
HouseTentPADoor = 0x07,
HouseTentNADoor = 0x08,
HouseDoorReliefAS = 0x09,
HouseDoorReliefAR = 0x0A,
HouseDoorJapaneseAS = 0x0E,
HouseDoorJapaneseAR = 0x0F,
HouseDoorWindowAS = 0x10,
HouseDoorWindowAR = 0x11,
HouseDoorIronGrillAS = 0x12,
HouseDoorIronGrillAR = 0x13,
HouseDoorChineseAS = 0x14,
HouseDoorChineseAR = 0x15,
HouseDoorSimpleAS = 0x16,
HouseDoorSimpleAR = 0x17,
_1 = 0x18,
_2 = 0x19,
HouseDoorCarvingAS = 0x1A,
HouseDoorCarvingAR = 0x1B,
HouseDoorCercleWindowAS = 0x1C,
HouseDoorCercleWindowAR = 0x1D,
HouseDoorVerticalWindowAS = 0x1E,
HouseDoorVerticalWindowAR = 0x1F,
HouseDoorLatticeAS = 0x20,
HouseDoorLatticeAR = 0x21,
HouseDoorSimplicityAS = 0x22,
HouseDoorSimplicityAR = 0x23,
_3 = 0x25,
_4 = 0x26,
HouseTentNBDoor = 0x27,
HouseDoorIronGrillBS = 0x28,
HouseDoorIronGrillCS = 0x29,
HouseDoorIronGrillDS = 0x2A,
HouseDoorIronGrillES = 0x2B,
HouseDoorIronGrillFS = 0x2C,
HouseDoorIronGrillBR = 0x2D,
HouseDoorIronGrillCR = 0x2E,
HouseDoorIronGrillDR = 0x2F,
HouseDoorIronGrillER = 0x30,
HouseDoorIronGrillFR = 0x31,
HouseDoorCarvingBS = 0x32,
HouseDoorCarvingCS = 0x33,
HouseDoorCarvingDS = 0x34,
HouseDoorCarvingES = 0x35,
HouseDoorCarvingBR = 0x36,
HouseDoorCarvingCR = 0x37,
HouseDoorCarvingDR = 0x38,
HouseDoorCarvingER = 0x39,
HouseDoorIronGrillGS = 0x3A,
HouseDoorIronGrillGR = 0x3B,
HouseDoorIronGrillHS = 0x3C,
HouseDoorIronGrillHR = 0x3D,
HouseDoorVerticalWindowBS = 0x3E,
HouseDoorVerticalWindowCS = 0x3F,
HouseDoorVerticalWindowDS = 0x40,
HouseDoorVerticalWindowES = 0x41,
HouseDoorVerticalWindowFS = 0x42,
HouseDoorVerticalWindowGS = 0x43,
HouseDoorVerticalWindowHS = 0x44,
HouseDoorVerticalWindowBR = 0x45,
HouseDoorVerticalWindowCR = 0x46,
HouseDoorVerticalWindowDR = 0x47,
HouseDoorVerticalWindowER = 0x48,
HouseDoorVerticalWindowFR = 0x49,
HouseDoorVerticalWindowGR = 0x4A,
HouseDoorVerticalWindowHR = 0x4B,
HouseDoorReliefBS = 0x4C,
HouseDoorReliefCS = 0x4D,
HouseDoorReliefDS = 0x4E,
HouseDoorReliefES = 0x4F,
HouseDoorReliefFS = 0x50,
HouseDoorReliefGS = 0x51,
HouseDoorReliefHS = 0x52,
HouseDoorReliefBR = 0x53,
HouseDoorReliefCR = 0x54,
HouseDoorReliefDR = 0x55,
HouseDoorReliefER = 0x56,
HouseDoorReliefFR = 0x57,
HouseDoorReliefGR = 0x58,
HouseDoorReliefHR = 0x59,
HouseDoorIronpartsBS = 0x5A,
HouseDoorIronpartsCS = 0x5B,
HouseDoorIronpartsDS = 0x5C,
HouseDoorIronpartsES = 0x5D,
HouseDoorIronpartsFS = 0x5E,
HouseDoorIronpartsGS = 0x5F,
HouseDoorIronpartsHS = 0x60,
HouseDoorIronpartsBR = 0x61,
HouseDoorIronpartsCR = 0x62,
HouseDoorIronpartsDR = 0x63,
HouseDoorIronpartsER = 0x64,
HouseDoorIronpartsFR = 0x65,
HouseDoorIronpartsGR = 0x66,
HouseDoorIronpartsHR = 0x67,
HouseDoorSimpleBS = 0x84,
HouseDoorSimpleCS = 0x85,
HouseDoorSimpleDS = 0x86,
HouseDoorSimpleES = 0x87,
HouseDoorSimpleFS = 0x88,
HouseDoorSimpleGS = 0x89,
HouseDoorSimpleHS = 0x8A,
HouseDoorSimpleBR = 0x8B,
HouseDoorSimpleCR = 0x8C,
HouseDoorSimpleDR = 0x8D,
HouseDoorSimpleER = 0x8E,
HouseDoorSimpleFR = 0x8F,
HouseDoorSimpleGR = 0x90,
HouseDoorSimpleHR = 0x91,
HouseDoorJapaneseBS = 0x92,
HouseDoorJapaneseCS = 0x93,
HouseDoorJapaneseDS = 0x94,
HouseDoorJapaneseES = 0x95,
HouseDoorJapaneseFS = 0x96,
HouseDoorJapaneseBR = 0x97,
HouseDoorJapaneseCR = 0x98,
HouseDoorJapaneseDR = 0x99,
HouseDoorJapaneseER = 0x9A,
HouseDoorJapaneseFR = 0x9B,
HouseDoorLatticeBS = 0x9C,
HouseDoorLatticeCS = 0x9D,
HouseDoorLatticeDS = 0x9E,
HouseDoorLatticeES = 0x9F,
HouseDoorLatticeFS = 0xA0,
HouseDoorLatticeGS = 0xA1,
HouseDoorLatticeHS = 0xA2,
HouseDoorLatticeBR = 0xA3,
HouseDoorLatticeCR = 0xA4,
HouseDoorLatticeDR = 0xA5,
HouseDoorLatticeER = 0xA6,
HouseDoorLatticeFR = 0xA7,
HouseDoorLatticeGR = 0xA8,
HouseDoorLatticeHR = 0xA9,
HouseDoorCercleWindowBS = 0xAA,
HouseDoorCercleWindowCS = 0xAB,
HouseDoorCercleWindowDS = 0xAC,
HouseDoorCercleWindowES = 0xAD,
HouseDoorCercleWindowFS = 0xAE,
HouseDoorCercleWindowGS = 0xAF,
HouseDoorCercleWindowHS = 0xB0,
HouseDoorCercleWindowBR = 0xB1,
HouseDoorCercleWindowCR = 0xB2,
HouseDoorCercleWindowDR = 0xB3,
HouseDoorCercleWindowER = 0xB4,
HouseDoorCercleWindowFR = 0xB5,
HouseDoorCercleWindowGR = 0xB6,
HouseDoorCercleWindowHR = 0xB7,
HouseDoorJapaneseGS = 0xB8,
HouseDoorJapaneseGR = 0xB9,
HouseDoorSimplicityBS = 0xBA,
HouseDoorSimplicityCS = 0xBB,
HouseDoorSimplicityDS = 0xBC,
HouseDoorSimplicityES = 0xBD,
HouseDoorSimplicityFS = 0xBE,
HouseDoorSimplicityGS = 0xBF,
HouseDoorSimplicityHS = 0xC0,
HouseDoorSimplicityBR = 0xC1,
HouseDoorSimplicityCR = 0xC2,
HouseDoorSimplicityDR = 0xC3,
HouseDoorSimplicityER = 0xC4,
HouseDoorSimplicityFR = 0xC5,
HouseDoorSimplicityGR = 0xC6,
HouseDoorSimplicityHR = 0xC7,
HouseDoorChineseBS = 0xC8,
HouseDoorChineseCS = 0xC9,
HouseDoorChineseDS = 0xCA,
HouseDoorChineseES = 0xCB,
HouseDoorChineseFS = 0xCC,
HouseDoorChineseGS = 0xCD,
HouseDoorChineseHS = 0xCE,
HouseDoorChineseBR = 0xCF,
HouseDoorChineseCR = 0xD0,
HouseDoorChineseDR = 0xD1,
HouseDoorChineseER = 0xD2,
HouseDoorChineseFR = 0xD3,
HouseDoorChineseGR = 0xD4,
HouseDoorChineseHR = 0xD5,
HouseDoorWindowBS = 0xDD,
HouseDoorWindowCS = 0xDE,
HouseDoorWindowDS = 0xDF,
HouseDoorWindowES = 0xE0,
HouseDoorWindowFS = 0xE1,
HouseDoorWindowGS = 0xE2,
HouseDoorWindowHS = 0xE3,
HouseDoorWindowBR = 0xE4,
HouseDoorWindowCR = 0xE5,
HouseDoorWindowDR = 0xE6,
HouseDoorWindowER = 0xE7,
HouseDoorWindowFR = 0xE8,
HouseDoorWindowGR = 0xE9,
HouseDoorWindowHR = 0xEA,
HouseDoorIronBS = 0xEB,
HouseDoorIronCS = 0xEC,
HouseDoorIronDS = 0xED,
HouseDoorIronES = 0xEE,
HouseDoorIronFS = 0xEF,
HouseDoorIronGS = 0xF0,
HouseDoorIronHS = 0xF1,
HouseDoorIronBR = 0xF2,
HouseDoorIronCR = 0xF3,
HouseDoorIronDR = 0xF4,
HouseDoorIronER = 0xF5,
HouseDoorIronFR = 0xF6,
HouseDoorIronGR = 0xF7,
HouseDoorIronHR = 0xF8,
HouseDoorStandardBS = 0xF9,
HouseDoorStandardCS = 0xFA,
HouseDoorStandardDS = 0xFB,
HouseDoorStandardES = 0xFC,
HouseDoorStandardFS = 0xFD,
HouseDoorStandardGS = 0xFE,
HouseDoorStandardHS = 0xFF,
HouseDoorStandardBR = 0x100,
HouseDoorStandardCR = 0x101,
HouseDoorStandardDR = 0x102,
HouseDoorStandardER = 0x103,
HouseDoorStandardFR = 0x104,
HouseDoorStandardGR = 0x105,
HouseDoorStandardHR = 0x106,
HouseDoorReliefIS = 0x107,
HouseDoorReliefIR = 0x108,
HouseDoorReliefJS = 0x109,
HouseDoorReliefJR = 0x10A,
HouseDoorCarvingFS = 0x10B,
HouseDoorCarvingFR = 0x10C,
HouseDoorCercleWindowIS = 0x10D,
HouseDoorCercleWindowIR = 0x10E,
HouseDoorCercleWindowJS = 0x10F,
HouseDoorCercleWindowJR = 0x110,
HouseDoorVerticalWindowIS = 0x111,
HouseDoorVerticalWindowIR = 0x112,
HouseDoorVerticalWindowJS = 0x113,
HouseDoorVerticalWindowJR = 0x114,
HouseDoorWindowIS = 0x115,
HouseDoorWindowIR = 0x116,
HouseDoorWindowJS = 0x117,
HouseDoorWindowJR = 0x118,
HouseDoorStandardIS = 0x119,
HouseDoorStandardIR = 0x11A,
HouseDoorStandardJS = 0x11B,
HouseDoorStandardJR = 0x11C,
HouseDoorSimplicityIS = 0x11D,
HouseDoorSimplicityIR = 0x11E,
HouseDoorSimplicityJS = 0x11F,
HouseDoorSimplicityJR = 0x120,
HouseDoorIronGrillIS = 0x121,
HouseDoorIronGrillIR = 0x122,
HouseDoorIronGrillJS = 0x123,
HouseDoorIronGrillJR = 0x124,
}
}

View File

@@ -0,0 +1,172 @@
namespace NHSE.Core
{
public enum RoofType : ushort
{
HouseRoofPA04StandardA = 0x00,
HouseRoofPA04StandardB = 0x03,
_1 = 0x04,
_2 = 0x05,
HouseRoofPA04ThatchedA = 0x06,
HouseRoofPA04StoneA = 0x07,
HouseRoofPA04WesterntileA = 0x08,
_3 = 0x09,
HouseRoofPA00StandardA = 0x0A,
HouseRoofPA00StandardB = 0x0B,
HouseRoofPA00StandardC = 0x0C,
HouseRoofPA00StandardD = 0x0D,
HouseRoofPA00StandardE = 0x0E,
HouseRoofPA00StandardF = 0x0F,
HouseRoofPA00StandardG = 0x10,
HouseRoofPA00StandardH = 0x11,
_4 = 0x12,
HouseRoofNASlateA = 0x13,
HouseRoofNAMetalA = 0x14,
HouseRoofNATileA = 0x15,
HouseRoofPA04ThatchedB = 0x17,
HouseRoofPA04ThatchedC = 0x18,
HouseRoofPA04ThatchedD = 0x19,
HouseRoofPA04ThatchedE = 0x1A,
HouseRoofNBWoodtileA = 0x1B,
HouseRoofNBThatchedA = 0x1C,
HouseRoofNBWoodpanelA = 0x1D,
HouseRoofNCJapaneseA = 0x1E,
HouseRoofNCThatchedA = 0x1F,
HouseRoofNCStoneweightA = 0x20,
_5 = 0x21,
_6 = 0x22,
HouseRoofNDStoneA = 0x23,
HouseRoofNDThatchedA = 0x24,
HouseRoofNDWoodA = 0x25,
HouseRoofPA01StandardA = 0x26,
HouseRoofPA03StandardA = 0x27,
HouseRoofNATileB = 0x28,
HouseRoofNATileC = 0x29,
HouseRoofNATileD = 0x2A,
HouseRoofNATileE = 0x2B,
HouseRoofNATileF = 0x2C,
HouseRoofNATileG = 0x2D,
HouseRoofNATileH = 0x2E,
HouseRoofPA02StandardA = 0x2F,
HouseRoofNAMetalB = 0x30,
HouseRoofNAMetalC = 0x31,
HouseRoofNAMetalD = 0x32,
HouseRoofNAMetalE = 0x33,
HouseRoofNAMetalF = 0x34,
HouseRoofNAMetalG = 0x35,
HouseRoofNAMetalH = 0x36,
HouseRoofNASlateB = 0x37,
HouseRoofNASlateC = 0x38,
HouseRoofNASlateD = 0x39,
HouseRoofNASlateE = 0x3A,
HouseRoofNASlateF = 0x3B,
HouseRoofNASlateG = 0x3C,
HouseRoofNASlateH = 0x3D,
HouseRoofNBWoodtileB = 0x3E,
HouseRoofNBWoodtileC = 0x3F,
HouseRoofNBWoodtileD = 0x40,
HouseRoofNBWoodtileE = 0x41,
HouseRoofNBWoodtileF = 0x42,
HouseRoofNBWoodtileG = 0x43,
HouseRoofNBWoodtileH = 0x44,
HouseRoofNBWoodpanelB = 0x45,
HouseRoofNBWoodpanelC = 0x46,
HouseRoofNBWoodpanelD = 0x47,
HouseRoofNBWoodpanelE = 0x48,
HouseRoofNBWoodpanelF = 0x49,
HouseRoofNBWoodpanelG = 0x4A,
HouseRoofNBWoodpanelH = 0x4B,
HouseRoofPA01StandardB = 0x4C,
HouseRoofPA01StandardC = 0x4D,
HouseRoofPA01StandardD = 0x4E,
HouseRoofPA01StandardE = 0x4F,
HouseRoofPA01StandardF = 0x50,
HouseRoofPA01StandardG = 0x51,
HouseRoofPA01StandardH = 0x52,
HouseRoofNBThatchedB = 0x53,
HouseRoofNBThatchedC = 0x54,
HouseRoofNBThatchedD = 0x55,
HouseRoofNBThatchedE = 0x56,
HouseRoofNBThatchedF = 0x57,
HouseRoofNBThatchedG = 0x58,
HouseRoofNBThatchedH = 0x59,
HouseRoofNCJapaneseB = 0x5A,
HouseRoofNCJapaneseC = 0x5B,
HouseRoofNCJapaneseD = 0x5C,
HouseRoofNCJapaneseE = 0x5D,
HouseRoofNCJapaneseF = 0x5E,
HouseRoofNCJapaneseG = 0x5F,
HouseRoofNCJapaneseH = 0x60,
HouseRoofNCStoneweightB = 0x61,
HouseRoofNCStoneweightC = 0x62,
HouseRoofNCStoneweightD = 0x63,
HouseRoofNCStoneweightE = 0x64,
HouseRoofNCStoneweightF = 0x65,
HouseRoofNDWoodB = 0x66,
HouseRoofNDWoodC = 0x67,
HouseRoofNDWoodD = 0x68,
HouseRoofNDWoodE = 0x69,
HouseRoofNDWoodF = 0x6A,
HouseRoofNDWoodG = 0x6B,
HouseRoofNDWoodH = 0x6C,
HouseRoofNDStoneB = 0x6D,
HouseRoofNDStoneC = 0x6E,
HouseRoofNDStoneD = 0x6F,
HouseRoofNDStoneE = 0x70,
HouseRoofNDStoneF = 0x71,
HouseRoofNDStoneG = 0x72,
HouseRoofNDStoneH = 0x73,
HouseRoofNCThatchedB = 0x74,
HouseRoofNCThatchedC = 0x75,
HouseRoofNCThatchedD = 0x76,
HouseRoofNCThatchedE = 0x77,
HouseRoofNCThatchedF = 0x78,
HouseRoofNDThatchedB = 0x79,
HouseRoofNDThatchedC = 0x7A,
HouseRoofNDThatchedD = 0x7B,
HouseRoofNDThatchedE = 0x7C,
HouseRoofNDThatchedF = 0x7D,
HouseRoofPA02StandardB = 0x7E,
HouseRoofPA02StandardC = 0x7F,
HouseRoofPA02StandardD = 0x80,
HouseRoofPA02StandardE = 0x81,
HouseRoofPA02StandardF = 0x82,
HouseRoofPA02StandardG = 0x83,
HouseRoofPA02StandardH = 0x84,
HouseRoofPA03StandardB = 0x85,
HouseRoofPA03StandardC = 0x86,
HouseRoofPA03StandardD = 0x87,
HouseRoofPA03StandardE = 0x88,
HouseRoofPA03StandardF = 0x89,
HouseRoofPA03StandardG = 0x8A,
HouseRoofPA03StandardH = 0x8B,
HouseRoofPA04StandardC = 0x93,
HouseRoofPA04StandardD = 0x94,
HouseRoofPA04StandardE = 0x95,
HouseRoofPA04StandardF = 0x96,
HouseRoofPA04StandardG = 0x97,
HouseRoofPA04StandardH = 0x98,
HouseRoofPA04StoneB = 0x99,
HouseRoofPA04StoneC = 0x9A,
HouseRoofPA04StoneD = 0x9B,
HouseRoofPA04StoneE = 0x9C,
HouseRoofPA04StoneF = 0x9D,
HouseRoofPA04StoneG = 0x9E,
HouseRoofPA04StoneH = 0x9F,
HouseRoofPA04WesterntileB = 0xA0,
HouseRoofPA04WesterntileC = 0xA1,
HouseRoofPA04WesterntileD = 0xA2,
HouseRoofPA04WesterntileE = 0xA3,
HouseRoofPA04WesterntileF = 0xA4,
HouseRoofPA04WesterntileG = 0xA5,
HouseRoofPA04WesterntileH = 0xA6,
HouseRoofPA04ThatchedF = 0xA7,
HouseRoofPA04ThatchedG = 0xA8,
HouseRoofPA04ThatchedH = 0xA9,
HouseRoofNAMetalI = 0xAA,
HouseRoofNBWoodtileI = 0xAB,
HouseRoofNBWoodtileJ = 0xAC,
HouseRoofNASlateI = 0xAD,
HouseRoofNDWoodI = 0xAE,
HouseRoofNDWoodJ = 0xAF,
}
}

View File

@@ -0,0 +1,15 @@
namespace NHSE.Core
{
public enum SlopeType : ushort
{
SlopeStoneStair = 0x00,
SlopeIronStair = 0x01,
SlopeWood = 0x02,
SlopeWoodStair = 0x03,
SlopeBrickStair = 0x04,
SlopeReserved = 0x05,
SlopeNatural = 0x1D,
SlopeWoodBlue = 0x1E,
SlopeIronStairBlue = 0x1F,
}
}

View File

@@ -0,0 +1,155 @@
namespace NHSE.Core
{
public enum WallType : ushort
{
HouseWallPA04StandardA = 0x00,
HouseWallPA04StandardB = 0x05,
HouseWallPA04StandardC = 0x06,
HouseTentPA = 0x07,
HouseTentNA = 0x08,
HouseWallPA04WoodframeA = 0x09,
HouseWallPA04StoneA = 0x0A,
HouseWallNForSale = 0x0B,
HouseWallNSoldOut = 0x0C,
HouseWallPA00StandardA = 0x0D,
HouseWallNAWoodsidingA = 0x0E,
HouseWallNABrickA = 0x0F,
HouseWallNAStuccoA = 0x10,
HouseWallPA04StuccoA = 0x13,
HouseWallPA04WoodframeB = 0x14,
HouseWallPA04WoodframeC = 0x15,
HouseWallPA04WoodframeD = 0x16,
HouseWallPA04WoodframeE = 0x17,
HouseWallNBStuccoA = 0x18,
HouseWallNBLogA = 0x19,
HouseWallNBStoneA = 0x1A,
HouseWallNCJapaneseA = 0x1B,
HouseWallNCOrientalA = 0x1C,
HouseWallNCWoodA = 0x1D,
HouseWallHouseMovingPA = 0x1E,
HouseWallHouseMovingNA = 0x1F,
HouseWallNDStuccoA = 0x20,
HouseWallNDSoilA = 0x21,
HouseWallNDWoodA = 0x22,
HouseWallPA01StandardA = 0x23,
HouseTentNB = 0x24,
HouseWallPA03StandardA = 0x25,
HouseWallNAStuccoB = 0x2A,
HouseWallNAStuccoC = 0x2B,
HouseWallNAStuccoD = 0x2C,
HouseWallNAStuccoE = 0x2D,
HouseWallNAStuccoF = 0x2E,
HouseWallNAStuccoG = 0x2F,
HouseWallNAStuccoH = 0x30,
HouseWallNABrickB = 0x39,
HouseWallNABrickC = 0x3A,
HouseWallNABrickD = 0x3B,
HouseWallNABrickE = 0x3C,
HouseWallNABrickF = 0x3D,
HouseWallNABrickG = 0x3E,
HouseWallNABrickH = 0x3F,
HouseWallPA02StandardA = 0x40,
HouseWallNAWoodsidingB = 0x41,
HouseWallNAWoodsidingC = 0x42,
HouseWallNAWoodsidingD = 0x43,
HouseWallNAWoodsidingE = 0x44,
HouseWallNAWoodsidingF = 0x45,
HouseWallNAWoodsidingG = 0x46,
HouseWallNAWoodsidingH = 0x47,
HouseWallNBStuccoB = 0x48,
HouseWallNBStuccoC = 0x49,
HouseWallNBStuccoD = 0x4A,
HouseWallNBStuccoE = 0x4B,
HouseWallNBStuccoF = 0x4C,
HouseWallNBStuccoG = 0x4D,
HouseWallNBStuccoH = 0x4E,
HouseWallNBStoneB = 0x4F,
HouseWallNBStoneC = 0x50,
HouseWallNBStoneD = 0x51,
HouseWallNBStoneE = 0x52,
HouseWallNBStoneF = 0x53,
HouseWallNBStoneG = 0x54,
HouseWallNBStoneH = 0x55,
HouseWallNBLogB = 0x56,
HouseWallNBLogC = 0x57,
HouseWallNBLogD = 0x58,
HouseWallNBLogE = 0x59,
HouseWallNBLogF = 0x5A,
HouseWallNBLogG = 0x5B,
HouseWallNBLogH = 0x5C,
HouseWallNCOrientalB = 0x64,
HouseWallNCOrientalC = 0x65,
HouseWallNCOrientalD = 0x66,
HouseWallNCOrientalE = 0x67,
HouseWallNCOrientalF = 0x68,
HouseWallNCOrientalG = 0x69,
HouseWallNCOrientalH = 0x6A,
HouseWallNCJapaneseB = 0x6B,
HouseWallNCJapaneseC = 0x6C,
HouseWallNCJapaneseD = 0x6D,
HouseWallNCJapaneseE = 0x6E,
HouseWallNCJapaneseF = 0x6F,
HouseWallNCJapaneseG = 0x70,
HouseWallNCJapaneseH = 0x71,
HouseWallNCWoodB = 0x72,
HouseWallNCWoodC = 0x73,
HouseWallNCWoodD = 0x74,
HouseWallNCWoodE = 0x75,
HouseWallNCWoodF = 0x76,
HouseWallNCWoodG = 0x77,
HouseWallNCWoodH = 0x78,
HouseWallNDSoilB = 0x79,
HouseWallNDSoilC = 0x7A,
HouseWallNDSoilD = 0x7B,
HouseWallNDSoilE = 0x7C,
HouseWallNDSoilF = 0x7D,
HouseWallNDSoilG = 0x7E,
HouseWallNDSoilH = 0x7F,
HouseWallNDStuccoB = 0x80,
HouseWallNDStuccoC = 0x81,
HouseWallNDStuccoD = 0x82,
HouseWallNDStuccoE = 0x83,
HouseWallNDStuccoF = 0x84,
HouseWallNDStuccoG = 0x85,
HouseWallNDStuccoH = 0x86,
HouseWallNDWoodB = 0x87,
HouseWallNDWoodC = 0x88,
HouseWallNDWoodD = 0x89,
HouseWallNDWoodE = 0x8A,
HouseWallNDWoodF = 0x8B,
HouseWallNDWoodG = 0x8C,
HouseWallNDWoodH = 0x8D,
HouseWallPA04WoodframeF = 0x8E,
HouseWallPA04WoodframeG = 0x8F,
HouseWallPA04WoodframeH = 0x90,
HouseWallPA04StoneB = 0x91,
HouseWallPA04StoneC = 0x92,
HouseWallPA04StoneD = 0x93,
HouseWallPA04StoneE = 0x94,
HouseWallPA04StoneF = 0x95,
HouseWallPA04StoneG = 0x96,
HouseWallPA04StoneH = 0x97,
HouseWallPA04StuccoB = 0x98,
HouseWallPA04StuccoC = 0x99,
HouseWallPA04StuccoD = 0x9A,
HouseWallPA04StuccoE = 0x9B,
HouseWallPA04StuccoF = 0x9C,
HouseWallPA04StuccoG = 0x9D,
HouseWallPA04StuccoH = 0x9E,
HouseWallPA04StandardD = 0x9F,
HouseWallPA04StandardE = 0xA0,
HouseWallPA04StandardF = 0xA1,
HouseWallPA04StandardG = 0xA2,
HouseWallPA04StandardH = 0xA3,
HouseWallNAMetalA = 0xA4,
HouseWallNAMetalB = 0xA5,
HouseWallNAMetalC = 0xA6,
HouseWallNAMetalD = 0xA7,
HouseWallNAMetalE = 0xA8,
HouseWallNAMetalF = 0xA9,
HouseWallNAMetalG = 0xAA,
HouseWallNAMetalH = 0xAB,
HouseWallNAWoodsidingI = 0xAC,
HouseWallNAWoodsidingJ = 0xAD,
}
}

View File

@@ -47,6 +47,12 @@ void DumpB(string fn, byte[] bytes)
DumpS("ItemKind.txt", GetPossibleEnum(pathBCSV, "ItemParam.bcsv", 0xFC275E86));
DumpS("PlantKind.txt", GetPossibleEnum(pathBCSV, "FgMainParam.bcsv", 0x48EF0398));
DumpS("TerrainKind.txt", GetNumberedEnumValues(pathBCSV, "FieldLandMakingUnitModelParam.bcsv", 0x39B5A93D, 0x54706054));
DumpS("BridgeKind.txt", GetNumberedEnumValues(pathBCSV, "StructureBridgeParam.bcsv", 0x39B5A93D, 0x54706054));
DumpS("BridgeMaterial.txt", GetNumberedEnumValues(pathBCSV, "StructureBridgeTypeParam.bcsv", 0x68CF5938, 0x54706054));
DumpS("SlopeKind.txt", GetNumberedEnumValues(pathBCSV, "StructureSlopeParam.bcsv", 0x39B5A93D, 0x54706054));
DumpS("RoofKind.txt", GetNumberedEnumValues(pathBCSV, "StructureHouseRoofParam.bcsv", 0x39B5A93D, 0x54706054));
DumpS("DoorKind.txt", GetNumberedEnumValues(pathBCSV, "StructureHouseDoorParam.bcsv", 0x39B5A93D, 0x54706054));
DumpS("WallKind.txt", GetNumberedEnumValues(pathBCSV, "StructureHouseWallParam.bcsv", 0x39B5A93D, 0x54706054));
DumpB("item_kind.bin", GetItemKindArray(pathBCSV));
DumpS("plants.txt", GetPlantedNames(pathBCSV));

View File

@@ -18,7 +18,7 @@ public void BuildingMarshal()
[Fact]
public void BuildingClear()
{
var item = new Building {BuildingId = 1, X=5, Y=7};
var item = new Building {BuildingType = BuildingType.PlayerHouse1, X=5, Y=7};
var bytes = item.ToBytesClass();
bytes.Any(z => z != 0).Should().BeTrue();