diff --git a/.github/workflows/headers.yml b/.github/workflows/headers.yml index 85dfa40..c5a49a9 100644 --- a/.github/workflows/headers.yml +++ b/.github/workflows/headers.yml @@ -21,19 +21,15 @@ jobs: - name: Run unit tests run: python -m unittest discover -v -s ./scripts/headers -p '*test.py' - - name: Run generate_headers.py script - run: python scripts/headers/bw1_decomp_gen/generate_headers.py - - name: Run analyze_headers.py script run: python scripts/headers/analyze_headers.py - - name: Upload generated headers as artifact - uses: actions/upload-artifact@v3 - with: - name: bw1_decomp_gen_headers - path: generated_headers_output/ + - name: Run generate_headers.py script + run: python scripts/headers/bw1_decomp_gen/generate_headers.py + + - run: git diff - - name: Upload re-generated database as artifact + - name: Upload generated database as artifact uses: actions/upload-artifact@v3 with: name: bw1_decomp_gen_database diff --git a/README.md b/README.md index f613cc5..2bbc778 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # bw1-decomp -[![Headers (Auto-generated)](https://img.shields.io/badge/Headers-(Autogenerated)-669ad3)](https://nightly.link/openblack/bw1-decomp/workflows/headers/main/bw1_decomp_gen_headers.zip) +[![Database (Auto-generated)](https://img.shields.io/badge/Database-(Autogenerated)-669ad3)](https://nightly.link/openblack/bw1-decomp/workflows/headers/main/bw1_decomp_gen_database.zip) * [Reverse Engineering Wiki](https://github.com/openblack/bw1-decomp/wiki) * [Black & White Patches](https://github.com/openblack/bw1-patches/tree/master/patches) diff --git a/black/Abode.h b/black/Abode.h new file mode 100644 index 0000000..848480f --- /dev/null +++ b/black/Abode.h @@ -0,0 +1,142 @@ +#ifndef BW1_DECOMP_ABODE_INCLUDED_H +#define BW1_DECOMP_ABODE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t, uintptr_t */ + +#include /* For RESOURCE_TYPE_LAST, enum TRIBE_TYPE */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ +#include "MapCoords.h" /* For struct MapCoords */ +#include "MultiMapFixed.h" /* For struct MultiMapFixed, struct MultiMapFixedVftable */ +#include "Object.h" /* For struct Object */ +#include "Villager.h" /* For struct Villager */ + +// Forward Declares + +struct Abode; +struct GAbodeInfo; +struct GPlayer; +struct GTribeInfo; +struct GameThingVftable; +struct GameThingWithPosVftable; +struct LH3DMesh; +struct LH3DSmoke; +struct LHPoint; +struct ObjectVftable; +struct Town; + +enum ABODE_EPP +{ + ABODE_EPP_LANTERN = 0x0, + ABODE_EPP_SCRIPT_HIGHLIGHT = 0x1, + _ABODE_EPP_COUNT = 0x2 +}; +static_assert(sizeof(enum ABODE_EPP) == 0x4, "Data type is of wrong size"); + +static const char* ABODE_EPP_strs[_ABODE_EPP_COUNT] = { + "ABODE_EPP_LANTERN", + "ABODE_EPP_SCRIPT_HIGHLIGHT", +}; + +struct AbodeVftable +{ + struct MultiMapFixedVftable super; /* 0x0 */ + uintptr_t MoveAbodeToPlannedAbodes; /* 0x90c */ + void (__fastcall* DeleteDependancys)(struct Abode* this); /* 0x910 */ + void (__fastcall* MakeFunctional)(struct Abode* this); + void (__fastcall* StopBeingFunctional)(struct Abode* this, const void* edx, struct GPlayer* param_1); + uintptr_t RestartBeingFunctional; + bool (__fastcall* CausesTownEmergencyIfDamaged)(struct Abode* this); /* 0x920 */ + bool (__fastcall* CanBeHiddenIn)(struct Abode* this); + struct GTribeInfo* (__fastcall* GetTribe)(struct Abode* this); +}; +static_assert(sizeof(struct AbodeVftable) == 0x92c, "Data type is of wrong size"); + +union AbodeBase +{ + struct MultiMapFixed super; + struct Object super_object; + struct GameThingWithPos super_gamethingwithpos; + struct AbodeVftable* abode_vftable; + struct ObjectVftable* object_vftable; + struct MultiMapFixedVftable* multiMapFixed_vftable; + struct GameThingVftable* gameThing_vftable; + struct GameThingWithPosVftable* gameThingWithPos_vftable; +}; +static_assert(sizeof(union AbodeBase) == 0x7c, "Data type is of wrong size"); + +struct Abode +{ + union AbodeBase base; /* 0x0 */ + uint32_t field_0x7c; + struct MapCoords drinking_water; /* 0x80 */ + struct LH3DSmoke* smoke; + struct LH3DMesh* destruction_mesh; /* 0x90 */ + uint32_t field_0x94; + struct Town* town; + struct Abode* next; + struct LHListHead__Villager villagers; /* 0xa0 */ + struct Villager* male_female_villagers[0x2]; + uint32_t field_0xb0; + uint8_t adult_count; + uint8_t field_0xb5; + uint8_t field_0xb6; + uint8_t field_0xb7; + uint8_t index; + uint8_t field_0xb9; + uint32_t resources[RESOURCE_TYPE_LAST]; +}; +static_assert(sizeof(struct Abode) == 0xc4, "Data type is of wrong size"); + +static struct AbodeVftable* __vt__5Abode = (struct AbodeVftable*)0x008a9a64; + +// Static methods + +// win1.41 00402e20 mac 103bf260 Abode::Create(MapCoords const &, GAbodeInfo const *, Town *, float, float, unsigned long, unsigned long, float, int, int) +struct Abode* __cdecl Create__5AbodeFRC9MapCoordsPC10GAbodeInfoP4TownffUlUlfii(const struct MapCoords* coords, const struct GAbodeInfo* info, struct Town* town, float y_angle, float scale, uint32_t param_6, uint32_t param_7, float food, int wood, int param_10); + +// Constructors + +// win1.41 00401350 mac 1033b330 Abode::Abode(MapCoords const &, GAbodeInfo const *, Town *, float, float, float, int) +struct Abode* __fastcall __ct__5AbodeFRC9MapCoordsPC10GAbodeInfoP4Townfffi(struct Abode* this, const void* edx, const struct MapCoords* coords, const struct GAbodeInfo* info, struct Town* town, float y_angle, float scale, float food, int wood); + +// Non-virtual methods + +// win1.41 00402bc0 mac inlined Abode::SetZero(void) +void __fastcall SetZero__5AbodeFv(struct Abode* this); +// win1.41 00403130 mac 1033b920 Abode::Init(int, unsigned long, unsigned long) +void __fastcall Init__5AbodeFiUlUl(struct Abode* this, const void* edx, int param_1, uint32_t food_amount, uint32_t wood_amount); +// win1.41 00403590 mac 103602f0 Abode::GetNewEp(ABODE_EPP, MapCoords*) +bool __fastcall GetNewEp__5AbodeF8ABODE_EPP7LHPoint(struct Abode* this, const void* edx, enum ABODE_EPP index, struct LHPoint* point); +// win1.41 00403e00 mac 10494a10 Abode::CreateAbodeSurroundingObjects(void) +void __fastcall CreateAbodeSurroundingObjects__5AbodeFv(struct Abode* this); +// win1.41 00404060 mac 100d2ca0 Abode::AddVillagerToAbode(Villager *) +void __fastcall AddVillagerToAbode__5AbodeFP8Villager(struct Abode* this, const void* edx, struct Villager* villager); +// win1.41 00404220 mac 1033b0e0 Abode::RemoveDeletedVillagerFromAbode(Villager *) +void __fastcall RemoveDeletedVillagerFromAbode__5AbodeFP8Villager(struct Abode* this, const void* edx, struct Villager* villager); +// win1.41 00404660 mac 1032c3e0 Abode::GetRoomLeftForAdults(void) +int __fastcall GetRoomLeftForAdults__5AbodeFv(struct Abode* this); +// win1.41 00404b40 mac 10329410 Abode::CalculateScoreForAddingVillagerToAbode(Villager *) +float __fastcall CalculateScoreForAddingVillagerToAbode__5AbodeFP8Villager(struct Abode* this, const void* edx, struct Villager* villager); +// win1.41 00405f40 mac 10177200 Abode::GetTribeType(void) const +enum TRIBE_TYPE __fastcall GetTribeType__5AbodeCFv(struct Abode* this); +// win1.41 00407020 mac inlined Abode::FindNearestDrinkingWater(float) +void __fastcall FindNearestDrinkingWater__5AbodeFf(struct Abode* this, const void* edx, float max_dist); +// win1.41 004072e0 mac 1000cd50 Abode::GetPosOutside(float, float, float) +struct MapCoords* __fastcall GetPosOutside__5AbodeFfff(struct Abode* this, const void* edx, struct MapCoords* coords, float param_2, float param_3, float param_4); + +// Override methods + +// win1.41 00403ee0 mac 1036edb0 Abode::InsertMapObject(void) +void __fastcall InsertMapObject__5AbodeFv(struct Abode* this); +// win1.41 00403200 mac 10576c70 Abode::CallVirtualFunctionsForCreation(const MapCoords&) +void __fastcall CallVirtualFunctionsForCreation__5AbodeFRC9MapCoords(struct Abode* this, const void* edx, const struct MapCoords* coords); +// win1.41 004047e0 mac 103c1e30 Abode::MakeFunctional(void) +void __fastcall MakeFunctional__5AbodeFv(struct Abode* this); + +DECLARE_LH_LIST_HEAD(Abode); + +#endif /* BW1_DECOMP_ABODE_INCLUDED_H */ diff --git a/black/AbodeInfo.h b/black/AbodeInfo.h new file mode 100644 index 0000000..35509bd --- /dev/null +++ b/black/AbodeInfo.h @@ -0,0 +1,76 @@ +#ifndef BW1_DECOMP_ABODE_INFO_INCLUDED_H +#define BW1_DECOMP_ABODE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include /* For enum ABODE_NUMBER, enum ABODE_TYPE, enum DYK_CATEGORY, enum TRIBE_TYPE */ + +#include "MultiMapFixedInfo.h" /* For struct GMultiMapFixedInfo */ +#include "Name.h" /* For struct Name */ + +// Forward Declares + +struct LHFile; +struct MapCoords; +struct Town; + +struct GAbodeInfo +{ + struct GMultiMapFixedInfo super; /* 0x0 */ + enum ABODE_TYPE abodeType; /* 0x120 */ + enum ABODE_NUMBER abodeNumber; + struct Name description; + uint32_t field_0x148; + uint32_t field_0x14c; + uint32_t field_0x150; + uint32_t field_0x154; + enum TRIBE_TYPE tribe_type; + uint32_t meshId; + uint32_t canBePhysicallyDamaged; /* 0x160 */ + float startLife; + uint32_t startStrength; + float startDefence; + uint32_t startInfluence; /* 0x170 */ + int maxVillagersInAbode; + int maxChildrenInAbode; + uint32_t startVillagersInAbode; + uint32_t startChildrenInAbode; /* 0x180 */ + uint32_t startFood; + uint32_t startFoodRAnd; + uint32_t startWood; + uint32_t startWoodRAnd; /* 0x190 */ + uint32_t howLongRuinLastsFor; + uint32_t potForResourceFood; + uint32_t potForResourceWood; + float percentTooCrowded; /* 0x1a0 */ + int producesMobileObject; + float maxNumMobileObjectsToProduce; + float timeEachMobileObjectTakesToProduce; + float emptyAbodeLifeReducer; /* 0x1b0 */ + int populationWhenNeeded; + float thresholdForStopBeingFunctional; + int toolTipsForBuild; + int didYouKnow; /* 0x1c0 */ + enum DYK_CATEGORY dykCategory; +}; +static_assert(sizeof(struct GAbodeInfo) == 0x1c8, "Data type is of wrong size"); + +static struct GObjectInfoVftable* __vt__10GAbodeInfo = (struct GObjectInfoVftable*)0x008a99f8; + +// Static methods + +// win1.41 00405a70 mac 101ca0c0 GAbodeInfo::GetInfoFromText(char *) +int __cdecl GetInfoFromText__10GAbodeInfoFPc(const char* text); +// win1.41 00405b30 mac 1006f680 GAbodeInfo::Find(TRIBE_TYPE, ABODE_NUMBER) +struct GAbodeInfo* __cdecl Find__10GAbodeInfoF10TRIBE_TYPE12ABODE_NUMBER(enum TRIBE_TYPE tribe_type, enum ABODE_NUMBER abode_number); + +// Non-virtual methods + +// win1.41 00404b10 mac 1015a260 GAbodeInfo::IsOkToCreateAtPos(MapCoords const &, float, float, Town *) const +bool __fastcall IsOkToCreateAtPos__10GAbodeInfoCFRC9MapCoordsffP4Town(const struct GAbodeInfo* this, const void* edx, const struct MapCoords* coords, float param_2, float param_3, struct Town* town); +// win1.41 0042e520 mac inlined GAbodeInfo::LoadBinary(LHFile *) +void __fastcall LoadBinary__10GAbodeInfoFP6LHFile(struct GAbodeInfo* this, const void* edx, struct LHFile* file); + +#endif /* BW1_DECOMP_ABODE_INFO_INCLUDED_H */ diff --git a/black/Alignment.h b/black/Alignment.h new file mode 100644 index 0000000..14f6969 --- /dev/null +++ b/black/Alignment.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_ALIGNMENT_INCLUDED_H +#define BW1_DECOMP_ALIGNMENT_INCLUDED_H + +#include /* For static_assert */ + +#include "Base.h" /* For struct Base */ + +struct GAlignment +{ + struct Base super; /* 0x0 */ + float value; + float field_0xc; +}; +static_assert(sizeof(struct GAlignment) == 0x10, "Data type is of wrong size"); + +static struct BaseVftable* __vt__10GAlignment = (struct BaseVftable*)0x008cc7f0; + +#endif /* BW1_DECOMP_ALIGNMENT_INCLUDED_H */ diff --git a/black/Animal.h b/black/Animal.h new file mode 100644 index 0000000..19717cd --- /dev/null +++ b/black/Animal.h @@ -0,0 +1,47 @@ +#ifndef BW1_DECOMP_ANIMAL_INCLUDED_H +#define BW1_DECOMP_ANIMAL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For ANIMAL_STATE_LAST_STATE */ + +#include "Living.h" /* For struct Living */ +#include "LivingAction.h" /* For struct Living__StateTableEntry */ + +struct Animal__StateTable +{ + struct Living__StateTableEntry entries[ANIMAL_STATE_LAST_STATE]; /* 0x0 */ +}; +static_assert(sizeof(struct Animal__StateTable) == 0x1dd0, "Data type is of wrong size"); + +struct Animal +{ + struct Living super; /* 0x0 */ + uint8_t field_0xe0[0x2c]; + uint8_t death_reason; /* 0x10c */ + float field_0x110; + float field_0x114; + float field_0x118; + float field_0x11c; + uint32_t field_0x120; + float field_0x124; + float field_0x128; + float field_0x12c; + float field_0x130; + float field_0x134; + float field_0x138; + float field_0x13c; + float field_0x140; + float field_0x144; +}; +static_assert(sizeof(struct Animal) == 0x148, "Data type is of wrong size"); + +static struct LivingVftable* __vt__6Animal = (struct LivingVftable*)0x008ab7cc; + +// Non-virtual methods + +// win1.41 0041abb0 mac 10087bd0 Animal::KeepFlockMemberWithinFlockArea(void) +uint32_t __fastcall KeepFlockMemberWithinFlockArea__6AnimalFv(struct Animal* this); + +#endif /* BW1_DECOMP_ANIMAL_INCLUDED_H */ diff --git a/black/AnimatedStatic.h b/black/AnimatedStatic.h new file mode 100644 index 0000000..b3255b4 --- /dev/null +++ b/black/AnimatedStatic.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_ANIMATED_STATIC_INCLUDED_H +#define BW1_DECOMP_ANIMATED_STATIC_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "Feature.h" /* For struct Feature */ + +struct AnimatedStatic +{ + struct Feature super; /* 0x0 */ + uint8_t field_0x7c[0x1c]; +}; +static_assert(sizeof(struct AnimatedStatic) == 0x98, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__14AnimatedStatic = (struct MultiMapFixedVftable*)0x008c1a10; + +DECLARE_LH_LINKED_LIST(AnimatedStatic); + +#endif /* BW1_DECOMP_ANIMATED_STATIC_INCLUDED_H */ diff --git a/black/Arena.h b/black/Arena.h new file mode 100644 index 0000000..0709595 --- /dev/null +++ b/black/Arena.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_ARENA_INCLUDED_H +#define BW1_DECOMP_ARENA_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +struct GArena +{ + struct GameThingWithPos super; /* 0x0 */ + uint8_t field_0x28[0x24]; +}; +static_assert(sizeof(struct GArena) == 0x4c, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__6GArena = (struct GameThingVftable*)0x008c2c98; + +DECLARE_LH_LIST_HEAD(GArena); + +#endif /* BW1_DECOMP_ARENA_INCLUDED_H */ diff --git a/black/Artifact.h b/black/Artifact.h new file mode 100644 index 0000000..10d755c --- /dev/null +++ b/black/Artifact.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_ARTIFACT_INCLUDED_H +#define BW1_DECOMP_ARTIFACT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "GameThing.h" /* For struct GameThing */ + +struct TownArtifact +{ + struct GameThing super; /* 0x0 */ + uint8_t field_0x14[0x2c]; +}; +static_assert(sizeof(struct TownArtifact) == 0x40, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__12TownArtifact = (struct GameThingVftable*)0x008c47d0; + +DECLARE_LH_LINKED_LIST(TownArtifact); + +#endif /* BW1_DECOMP_ARTIFACT_INCLUDED_H */ diff --git a/black/Audio.h b/black/Audio.h new file mode 100644 index 0000000..3e1ab23 --- /dev/null +++ b/black/Audio.h @@ -0,0 +1,39 @@ +#ifndef BW1_DECOMP_AUDIO_INCLUDED_H +#define BW1_DECOMP_AUDIO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum AUDIO_SFX_BANK_TYPE */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct Base; +struct LH_AudioBank; +struct LH_SamplePlayOptions; + +struct GAudio +{ + struct GameThing super; /* 0x0 */ + uint8_t field_0x14[0x394]; + struct LH_AudioBank* audio_banks[0x2]; /* 0x3a8 */ + uint8_t field_0x3b0[0x24]; +}; +static_assert(sizeof(struct GAudio) == 0x3d4, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__6GAudio = (struct GameThingVftable*)0x008c48e0; + +// Non-virtual methods + +// win1.41 00429d60 mac 100001c0 GAudio::PlaySoundEffect(Base *, unsigned long, unsigned long, unsigned long, int, int, AUDIO_SFX_BANK_TYPE) +void __fastcall PlaySoundEffect__6GAudioFP4BaseUlUlUlii19AUDIO_SFX_BANK_TYPE(struct GAudio* this, const void* edx, struct Base* param_1, uint32_t param_2, uint32_t param_3, uint32_t param_4, int param_5, int param_6, enum AUDIO_SFX_BANK_TYPE param_7); +// win1.41 00429e30 mac 10020580 GAudio::PlaySoundEffect(LH_SamplePlayOptions *) +uint32_t __fastcall PlaySoundEffect__6GAudioFP20LH_SamplePlayOptions(struct GAudio* this, const void* edx, struct LH_SamplePlayOptions* options); +// win1.41 0042a210 mac 1017e7d0 GAudio::StopPlayingSoundEffect(unsigned long, unsigned long, AUDIO_SFX_BANK_TYPE) const +void __fastcall StopPlayingSoundEffect__6GAudioCFUlUl19AUDIO_SFX_BANK_TYPE(const struct GAudio* this, const void* edx, uint32_t param_1, uint32_t param_2, enum AUDIO_SFX_BANK_TYPE type); +// win1.41 0042a330 mac 1017e410 GAudio::ReleaseLoopOnSoundEffect(Base *, unsigned long, AUDIO_SFX_BANK_TYPE) const +void __fastcall ReleaseLoopOnSoundEffect__6GAudioCFP4BaseUl19AUDIO_SFX_BANK_TYPE(struct GAudio* this, const void* edx, struct Base* param_1, uint32_t param_2, enum AUDIO_SFX_BANK_TYPE type); + +#endif /* BW1_DECOMP_AUDIO_INCLUDED_H */ diff --git a/black/BWLan.h b/black/BWLan.h new file mode 100644 index 0000000..556e196 --- /dev/null +++ b/black/BWLan.h @@ -0,0 +1,20 @@ +#ifndef BW1_DECOMP_BW_LAN_INCLUDED_H +#define BW1_DECOMP_BW_LAN_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LayerCommunication.h" /* For struct LayerCommunication */ + +struct BWLan +{ + struct LayerCommunication super; /* 0x0 */ +}; +static_assert(sizeof(struct BWLan) == 0x4, "Data type is of wrong size"); + +// Override methods + +// win1.41 00440ac0 mac 10180f20 BWLan::Connect(void) +uint32_t __fastcall Connect__5BWLanFv(struct BWLan* this); + +#endif /* BW1_DECOMP_BW_LAN_INCLUDED_H */ diff --git a/black/Ball.h b/black/Ball.h new file mode 100644 index 0000000..feeb84a --- /dev/null +++ b/black/Ball.h @@ -0,0 +1,56 @@ +#ifndef BW1_DECOMP_BALL_INCLUDED_H +#define BW1_DECOMP_BALL_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include /* For struct LHPoint */ +#include /* For DECLARE_LH_LIST_HEAD */ +#include /* For bool32_t */ + +#include "MobileObject.h" /* For struct MobileObject */ + +// Forward Declares + +struct GBallInfo; +struct MapCoords; +struct Town; + +struct Ball +{ + struct MobileObject super; /* 0x0 */ + uint32_t field_0x68; + struct LHPoint field_0x6c; + struct LHPoint field_0x78; + uint32_t field_0x84; + uint32_t field_0x88; + uint32_t field_0x8c; + bool32_t is_owned; /* 0x90 */ + uint32_t field_0x94; + uint32_t field_0x98; + uint32_t field_0x9c; + struct Town* town; /* 0xa0 */ + uint32_t field_0xa4; + uint32_t field_0xa8; + uint32_t field_0xac; + uint32_t field_0xb0; + uint32_t field_0xb4; +}; +static_assert(sizeof(struct Ball) == 0xb8, "Data type is of wrong size"); + +static struct MobileVftable* __vt__4Ball = (struct MobileVftable*)0x008c4f74; + +// Constructors + +// win1.41 004359b0 mac 100b0df0 Ball::Ball(MapCoords const &, GBallInfo const *) +struct Ball* __fastcall __ct__4BallFRC9MapCoordsPC9GBallInfo(struct Ball* this, const void* edx, const struct MapCoords* coords, const struct GBallInfo* info); + +// Non-virtual methods + +// win1.41 004360e0 mac 100b04d0 Ball::IsBallFree(void) +bool __fastcall IsBallFree__4BallFv(struct Ball* this); + +DECLARE_LH_LIST_HEAD(Ball); + +#endif /* BW1_DECOMP_BALL_INCLUDED_H */ diff --git a/black/BallInfo.h b/black/BallInfo.h new file mode 100644 index 0000000..4e9d27a --- /dev/null +++ b/black/BallInfo.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_BALL_INFO_INCLUDED_H +#define BW1_DECOMP_BALL_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "MobileObjectInfo.h" /* For struct GMobileObjectInfo */ + +struct GBallInfo +{ + struct GMobileObjectInfo super; /* 0x0 */ + uint8_t field_0x114[0x2c]; +}; +static_assert(sizeof(struct GBallInfo) == 0x140, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__9GBallInfo = (struct GBaseInfoVftable*)0x008c4f34; + +#endif /* BW1_DECOMP_BALL_INFO_INCLUDED_H */ diff --git a/black/Base.h b/black/Base.h new file mode 100644 index 0000000..9bb154b --- /dev/null +++ b/black/Base.h @@ -0,0 +1,68 @@ +#ifndef BW1_DECOMP_BASE_INCLUDED_H +#define BW1_DECOMP_BASE_INCLUDED_H + +#include /* For static_assert */ +#include /* For size_t */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct Archive; +struct Base; +struct BaseInfo; +struct LHPoint; + +struct BaseVftable +{ + void (__fastcall* Serialise)(struct Base* this, const void* edx, struct Archive* param_1); /* 0x0 */ + struct Base* (__fastcall* __dt)(struct Base* this, const void* edx, uint8_t param_1); + void (__fastcall* Delete)(struct Base* this, const void* edx, int param_1); + void (__fastcall* ToBeDeleted)(struct Base* this, const void* edx, int param_1); + uint32_t (__fastcall* Get3DSoundPos)(struct Base* this, const void* edx, struct LHPoint* pos); /* 0x10 */ + void (__fastcall* CleanUpForSerialisation)(struct Base* this); + void (__fastcall* Dump)(struct Base* this); +}; +static_assert(sizeof(struct BaseVftable) == 0x1c, "Data type is of wrong size"); + +struct Base +{ + struct BaseVftable* vftable; /* 0x0 */ + uint32_t destroyed; +}; +static_assert(sizeof(struct Base) == 0x8, "Data type is of wrong size"); + +static struct BaseVftable* __vt__4Base = (struct BaseVftable*)0x008a9a44; + +// Static methods + +// win1.41 004366f0 mac 1009ebc0 Base::operator new(unsigned long) +void* __cdecl __nw__4BaseFUl(size_t size, const char* file_name, uint32_t line); + +// Constructors + +// win1.41 007bc650 mac 100a0450 Base::Base(void) +struct Base* __fastcall __ct__4BaseFv(struct Base* this); + +// Non-virtual methods + +// win1.41 00436b20 mac 10001480 Base::SetInfo(BaseInfo*) const +void __fastcall SetInfo__4BaseCFP8BaseInfo(const struct Base* this, const void* edx, struct BaseInfo* info); + +// Override methods + +// win1.41 004011b0 mac 101228f0 Base::Serialise(Archive&) +void __fastcall Serialise__4BaseFR7Archive(struct Base* this, const void* edx, struct Archive* param_1); +// win1.41 00401210 mac 10082770 Base::~Base(void) +struct Base* __fastcall __dt__4BaseFv(struct Base* this, const void* edx, uint8_t param_1); +// win1.41 004011c0 mac 1056ecc0 Base::Delete(int) +void __fastcall Delete__4BaseFi(struct Base* this, const void* edx, int param_1); +// win1.41 004011d0 mac 1032b070 Base::ToBeDeleted(int) +void __fastcall ToBeDeleted__4BaseFi(struct Base* this, const void* edx, int param_1); +// win1.41 004011e0 mac 1032b3d0 Base::Get3DSoundPos(LHPoint*) +void __fastcall Get3DSoundPos__4BaseFP7LHPoint(struct Base* this, const void* edx, struct LHPoint* param_1); +// win1.41 004011f0 mac 1032cbf0 Base::CleanUpForSerialisation(void) +void __fastcall CleanUpForSerialisation__4BaseFv(struct Base* this); +// win1.41 00401200 mac 106fc7f0 Base::Dump(void) +void __fastcall Dump__4BaseFv(struct Base* this); + +#endif /* BW1_DECOMP_BASE_INCLUDED_H */ diff --git a/black/BaseInfo.h b/black/BaseInfo.h new file mode 100644 index 0000000..04a5c69 --- /dev/null +++ b/black/BaseInfo.h @@ -0,0 +1,87 @@ +#ifndef BW1_DECOMP_BASE_INFO_INCLUDED_H +#define BW1_DECOMP_BASE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Base.h" /* For struct Base, struct BaseVftable */ + +// Forward Declares + +struct BaseInfo; +struct GBaseInfo; + +struct GBaseInfoVftable +{ + struct BaseVftable super; /* 0x0 */ + const char* (__fastcall* GetDebugText)(const struct GBaseInfo* this); /* 0x1c */ + void (__fastcall* GetDebugColor)(struct GBaseInfo* this); /* 0x20 */ + struct GBaseInfo* (__fastcall* GetBaseInfo)(struct GBaseInfo* this, const void* edx, uint32_t* param_1); + void (__fastcall* UpdateValue)(struct GBaseInfo* this, const void* edx, float param_1, uint32_t param_2, uint32_t param_3); +}; +static_assert(sizeof(struct GBaseInfoVftable) == 0x2c, "Data type is of wrong size"); + +union GBaseInfoBase +{ + struct Base super; + struct GBaseInfoVftable* vftable; +}; +static_assert(sizeof(union GBaseInfoBase) == 0x8, "Data type is of wrong size"); + +struct GBaseInfo +{ + union GBaseInfoBase base; /* 0x0 */ + struct GBaseInfo* next; + int index; +}; +static_assert(sizeof(struct GBaseInfo) == 0x10, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__9GBaseInfo = (struct GBaseInfoVftable*)0x008c4d1c; + +// Static methods + +// win1.41 00436c30 mac 103e4630 GBaseInfo::GetInfoPtr(unsigned long) +struct GBaseInfo* __cdecl GetInfoPtr__9GBaseInfoFUl(int index); + +// Non-virtual methods + +// win1.41 00436bd0 mac 1035b720 GBaseInfo::SetInfoID(void) +void __fastcall SetInfoID__9GBaseInfoFv(struct GBaseInfo* this); + +DECLARE_LH_LIST_HEAD(GBaseInfo); + +struct BaseInfoVftable +{ + bool (__fastcall* IsClear)(const struct BaseInfo* this); /* 0x0 */ +}; +static_assert(sizeof(struct BaseInfoVftable) == 0x4, "Data type is of wrong size"); + +struct BaseInfo +{ + struct BaseInfoVftable* vftable; /* 0x0 */ + uint32_t unique_id; + uint32_t address_offset; +}; +static_assert(sizeof(struct BaseInfo) == 0xc, "Data type is of wrong size"); + +static struct BaseInfoVftable* __vt__8BaseInfo = (struct BaseInfoVftable*)0x008ea8d0; + +// Constructors + +// win1.41 inlined mac 1030cbf0 BaseInfo::BaseInfo(void) +struct BaseInfo* __fastcall __ct__8BaseInfoFv(struct BaseInfo* this); + +// Non-virtual methods + +// win1.41 00436bb0 mac 10001410 BaseInfo::Set(Base*) +void __fastcall Set__8BaseInfoFP4Base(struct BaseInfo* this, const void* edx, struct Base* base); + +// Override methods + +// win1.41 0055c770 mac 10043c50 BaseInfo::IsClear(void) const +bool __fastcall IsClear__8BaseInfoCFv(const struct BaseInfo* this); + +#endif /* BW1_DECOMP_BASE_INFO_INCLUDED_H */ diff --git a/black/Belief.h b/black/Belief.h new file mode 100644 index 0000000..bd0e4fe --- /dev/null +++ b/black/Belief.h @@ -0,0 +1,37 @@ +#ifndef BW1_DECOMP_BELIEF_INCLUDED_H +#define BW1_DECOMP_BELIEF_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For NUM_REACTION_FUNCTIONS */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct GPlayer; + +struct GBelief +{ + struct Base super; /* 0x0 */ + float belief_in_player[0x8]; + uint32_t field_0x28[0x8]; + float field_0x48[0x8]; + float belief_in_player_max[0x8]; /* 0x68 */ + uint32_t field_0x88[0x8]; + float field_0xa8[0x8]; + float field_0xc8[0x8]; + float boredom_multiplier[NUM_REACTION_FUNCTIONS]; /* 0xe8 */ + float field_0x18c[0x11]; +}; +static_assert(sizeof(struct GBelief) == 0x1d0, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 004387d0 mac 100b1700 GBelief::SetBelief(unsigned long, float) +void __fastcall SetBelief__7GBeliefFUlf(struct GBelief* this, const void* edx, int index, float value); +// win1.41 00438a00 mac 100b13e0 GBelief::SetBeliefInPlayerCap(GPlayer *, float) +void __fastcall SetBeliefInPlayerCap__7GBeliefFP7GPlayerf(struct GBelief* this, const void* edx, struct GPlayer* player, float cap); + +#endif /* BW1_DECOMP_BELIEF_INCLUDED_H */ diff --git a/black/BigForest.h b/black/BigForest.h new file mode 100644 index 0000000..43190a5 --- /dev/null +++ b/black/BigForest.h @@ -0,0 +1,47 @@ +#ifndef BW1_DECOMP_BIG_FOREST_INCLUDED_H +#define BW1_DECOMP_BIG_FOREST_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "MultiMapFixed.h" /* For struct MultiMapFixed */ + +// Forward Declares + +struct Forest; +struct GBigForestInfo; +struct GameOSFile; +struct MapCoords; + +struct BigForest +{ + struct MultiMapFixed super; /* 0x0 */ + uint32_t field_0x80; /* 0x7c */ + struct Forest* forest; /* 0x80 */ + uint32_t field_0x84; +}; +static_assert(sizeof(struct BigForest) == 0x88, "Data type is of wrong size"); + +static struct GMultiMapFixedInfoVftable* __vt__9BigForest = (struct GMultiMapFixedInfoVftable*)0x008c5904; + +// Static methods + +// win1.41 00438ec0 mac 100b3590 BigForest::Create(MapCoords const &, GBigForestInfo const *, unsigned long, float, float) +struct BigForest* __cdecl Create__9BigForestFRC9MapCoordsPC14GBigForestInfoUlff(struct MapCoords* coords, struct GBigForestInfo* info, uint32_t param_3, float param_4, float param_5); + +// Constructors + +// win1.41 00438ce0 mac 100b3a20 BigForest::BigForest(MapCoords const &, GBigForestInfo const *, unsigned long, float, float) +struct BigForest* __fastcall __ct__9BigForestFRC9MapCoordsPC14GBigForestInfoUlff(struct BigForest* this, const void* edx, const struct MapCoords* coords, const struct GBigForestInfo* info, uint32_t param_3, float param_4, float param_5); + +// Override methods + +// win1.41 004394e0 mac 100b2760 BigForest::Load(GameOSFile &) +bool __fastcall Load__9BigForestFR10GameOSFile(struct BigForest* this, const void* edx, struct GameOSFile* file); + +DECLARE_LH_LIST_HEAD(BigForest); + +#endif /* BW1_DECOMP_BIG_FOREST_INCLUDED_H */ diff --git a/black/BigForestInfo.h b/black/BigForestInfo.h new file mode 100644 index 0000000..a8c8708 --- /dev/null +++ b/black/BigForestInfo.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_BIG_FOREST_INFO_INCLUDED_H +#define BW1_DECOMP_BIG_FOREST_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "MultiMapFixedInfo.h" /* For struct GMultiMapFixedInfo */ + +struct GBigForestInfo +{ + struct GMultiMapFixedInfo super; /* 0x0 */ + uint8_t field_0x120[0x8]; +}; +static_assert(sizeof(struct GBigForestInfo) == 0x128, "Data type is of wrong size"); + +static struct GMultiMapFixedInfoVftable* __vt__14GBigForestInfo = (struct GMultiMapFixedInfoVftable*)0x008c58b8; + +#endif /* BW1_DECOMP_BIG_FOREST_INFO_INCLUDED_H */ diff --git a/black/BindableAction.h b/black/BindableAction.h new file mode 100644 index 0000000..2934a9b --- /dev/null +++ b/black/BindableAction.h @@ -0,0 +1,60 @@ +#ifndef BW1_DECOMP_BINDABLE_ACTION_INCLUDED_H +#define BW1_DECOMP_BINDABLE_ACTION_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ +#include /* For char16_t */ + +#include /* For enum LH_KEY */ + +struct ControlKey +{ + enum LH_KEY key; /* 0x0 */ + char16_t key_display_text[0x40]; + enum LH_KEY keymod; /* 0x84 */ + char16_t keymod_display_text[0x40]; +}; +static_assert(sizeof(struct ControlKey) == 0x108, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 0046efe0 mac inlined ControlKey::GetDisplayText(wchar_t*) +void __fastcall GetDisplayText__10ControlKeyFPw(struct ControlKey* this, const void* edx, char16_t* out_text); + +struct ControlMouse +{ + uint32_t code; /* 0x0 */ + char16_t display_text[0x80]; +}; +static_assert(sizeof(struct ControlMouse) == 0x104, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 0046f180 mac 101cc260 ControlMouse::GetDisplayText(wchar_t*) +void __fastcall GetDisplayText__12ControlMouseFPw(struct ControlMouse* this, const void* edx, char16_t* out_text); + +struct BindableAction +{ + char16_t name[0x80]; /* 0x0 */ + struct ControlKey key; /* 0x100 */ + struct ControlMouse mouse; /* 0x208 */ +}; +static_assert(sizeof(struct BindableAction) == 0x30c, "Data type is of wrong size"); + +// Static methods + +// win1.41 0046f3c0 mac 10090c30 BindableAction::IsKeyDown(LH_KEY) +bool __cdecl IsKeyDown__14BindableActionF6LH_KEY(enum LH_KEY key); + +// Constructors + +// win1.41 0046f1a0 mac 101cc4d0 BindableAction::BindableAction(void) +struct BindableAction* __fastcall __ct__14BindableActionFv(struct BindableAction* this); + +// Non-virtual methods + +// win1.41 0046f4c0 mac 10090b80 BindableAction::IsKeyBeingPressed(void) +bool __fastcall IsKeyBeingPressed__14BindableActionFv(struct BindableAction* this); + +#endif /* BW1_DECOMP_BINDABLE_ACTION_INCLUDED_H */ diff --git a/black/Bookmark.h b/black/Bookmark.h new file mode 100644 index 0000000..6323397 --- /dev/null +++ b/black/Bookmark.h @@ -0,0 +1,25 @@ +#ifndef BW1_DECOMP_BOOKMARK_INCLUDED_H +#define BW1_DECOMP_BOOKMARK_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t */ + +#include /* For enum CREATURE_TYPE */ + +// Forward Declares + +struct LH3DSprite; + +struct BookmarkGraphic +{ + struct LH3DSprite* sprite; /* 0x0 */ + enum CREATURE_TYPE type; +}; +static_assert(sizeof(struct BookmarkGraphic) == 0x8, "Data type is of wrong size"); + +// Static methods + +// win1.41 0043a7d0 mac 100b5760 BookmarkGraphic::Create(long, CREATURE_TYPE) +struct BookmarkGraphic* __cdecl Create__15BookmarkGraphicFl13CREATURE_TYPE(int32_t param_1, enum CREATURE_TYPE type); + +#endif /* BW1_DECOMP_BOOKMARK_INCLUDED_H */ diff --git a/black/Bubble.h b/black/Bubble.h new file mode 100644 index 0000000..b426d7f --- /dev/null +++ b/black/Bubble.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_BUBBLE_INCLUDED_H +#define BW1_DECOMP_BUBBLE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +struct Bubble +{ + uint8_t field_0x0[0x1c]; + uint32_t field_0x1c; + float field_0x20[0xc]; + uint8_t field_0x50[0x2c]; + uint32_t field_0x7c; + uint32_t field_0x80; + uint8_t field_0x84[0x10]; + uint8_t field_0x94; + uint8_t field_0x95; + uint32_t field_0x98; + uint32_t field_0x9c; + uint32_t field_0xa0; + uint32_t field_0xa4; + uint32_t field_0xa8; + uint32_t field_0xac; +}; +static_assert(sizeof(struct Bubble) == 0xb0, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_BUBBLE_INCLUDED_H */ diff --git a/black/BuildingSite.h b/black/BuildingSite.h new file mode 100644 index 0000000..e8ef7cc --- /dev/null +++ b/black/BuildingSite.h @@ -0,0 +1,81 @@ +#ifndef BW1_DECOMP_BUILDING_SITE_INCLUDED_H +#define BW1_DECOMP_BUILDING_SITE_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint32_t, uint8_t, uintptr_t */ + +#include /* For struct LHPoint */ +#include /* For DECLARE_LH_LINKED_LIST */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThing.h" /* For struct GameThing, struct GameThingVftable */ +#include "Villager.h" /* For struct Villager */ + +// Forward Declares + +struct BuildingSite; +struct MapCoords; +struct MultiMapFixed; +struct Object; +struct PlannedMultiMapFixed; +struct Pot; + +struct BuildingSiteVftable +{ + struct GameThingVftable super; /* 0x0 */ + void (__fastcall* Init)(struct BuildingSite* this); /* 0xfc */ + void (__fastcall* Process)(struct BuildingSite* this); /* 0x100 */ + uint32_t (__fastcall* GetWoodForStats)(struct BuildingSite* this); + struct Pot* (__fastcall* GetPileWood)(struct BuildingSite* this, const void* edx, struct MapCoords* coords); + void (__fastcall* SetPileWood)(struct BuildingSite* this, const void* edx, struct Pot* wood_pile); + void (__fastcall* CreatePileWood)(struct BuildingSite* this); /* 0x110 */ + uintptr_t GetResourcePosAndYAngle; + uintptr_t RemovePotFromStructure; + void (__fastcall* IsLinkedToThisBuildingSite)(struct BuildingSite* this, const void* edx, struct Pot* wood_pile); + uintptr_t GetNearestEdge; /* 0x120 */ + uintptr_t GetNextPosFromIndex; + void (__fastcall* GetRandomBuildPos)(struct BuildingSite* this, const void* edx, struct Object* param_1, int32_t* param_2); +}; +static_assert(sizeof(struct BuildingSiteVftable) == 0x12c, "Data type is of wrong size"); + +union BuildingSiteBase +{ + struct GameThing super; + struct BuildingSiteVftable* vftable; + struct GameThingVftable* gameThing_vftable; +}; +static_assert(sizeof(union BuildingSiteBase) == 0x14, "Data type is of wrong size"); + +struct BuildingSite +{ + union BuildingSiteBase base; /* 0x0 */ + struct MultiMapFixed* root_building; /* 0x14 */ + struct LHLinkedList__Villager building_worker_list; + uint8_t field_0x20[0x14]; + struct LHPoint building_positions[0x7f]; /* 0x34 */ + uint8_t field_0x628[0x14]; + uint8_t field_0x63c[0x4]; + float life; /* 0x640 */ +}; +static_assert(sizeof(struct BuildingSite) == 0x644, "Data type is of wrong size"); + +static struct BuildingSiteVftable* __vt__12BuildingSite = (struct BuildingSiteVftable*)0x008c6b6c; + +// Constructors + +// win1.41 0043b700 mac 100bd350 BuildingSite::BuildingSite(PlannedMultiMapFixed *) +struct BuildingSite* __fastcall __ct__12BuildingSiteFP20PlannedMultiMapFixed(struct BuildingSite* this, const void* edx, struct PlannedMultiMapFixed* param_1); +// win1.41 0043b7e0 mac 100bcec0 BuildingSite::BuildingSite(MultiMapFixed *) +struct BuildingSite* __fastcall __ct__12BuildingSiteFP13MultiMapFixed(struct BuildingSite* this, const void* edx, struct MultiMapFixed* param_1); + +// Non-virtual methods + +// win1.41 0043bc70 mac 1005fd40 BuildingSite::GetBuilding(void) +struct MultiMapFixed* __fastcall GetBuilding__12BuildingSiteFv(struct BuildingSite* this); +// win1.41 0043d080 mac 100b9660 BuildingSite::BuildBy(float) +void __fastcall BuildBy__12BuildingSiteFf(struct BuildingSite* this, const void* edx, float param_1); + +DECLARE_LH_LINKED_LIST(BuildingSite); +DECLARE_LH_LIST_HEAD(BuildingSite); + +#endif /* BW1_DECOMP_BUILDING_SITE_INCLUDED_H */ diff --git a/black/CDBox.h b/black/CDBox.h new file mode 100644 index 0000000..add8ec5 --- /dev/null +++ b/black/CDBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_CD_BOX_INCLUDED_H +#define BW1_DECOMP_CD_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct CDBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x24]; +}; +static_assert(sizeof(struct CDBox) == 0x34, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__5CDBox = (struct DialogBoxBaseVftable*)0x008deb04; + +#endif /* BW1_DECOMP_CD_BOX_INCLUDED_H */ diff --git a/black/Camera.h b/black/Camera.h new file mode 100644 index 0000000..094a63d --- /dev/null +++ b/black/Camera.h @@ -0,0 +1,73 @@ +#ifndef BW1_DECOMP_CAMERA_INCLUDED_H +#define BW1_DECOMP_CAMERA_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For struct LHPoint */ +#include /* For struct Zoomer, struct Zoomer3d */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +// Forward Declares + +struct CameraMode; +struct MapCoords; + +struct GCamera +{ + struct GameThingWithPos super; /* 0x0 */ + struct CameraMode* modes[0xc]; /* 0x28 */ + int mode_current_index; /* 0x58 */ + struct LHPoint pos; + float time; /* 0x68 */ + float time_delta; + uint32_t field_0x70; + uint32_t camera_dirty; + uint8_t field_0x78; + uint8_t field_0x79; + uint8_t field_0x7a; + uint8_t field_0x7b; + uint32_t field_0x7c; + uint8_t field_0x8c[0x8]; /* 0x80 */ + struct Zoomer3d camera_heading_zoomer; + struct Zoomer3d camera_origin_zoomer; /* 0x118 */ + struct Zoomer fov_zoomer; /* 0x1a8 */ +}; +static_assert(sizeof(struct GCamera) == 0x1d8, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__7GCamera = (struct GameThingWithPosVftable*)0x008c7110; + +// Static methods + +// win1.41 00441f20 mac 1019a070 GCamera::GetThingViewingDistance(GameThingWithPos *) +float __cdecl GetThingViewingDistance__7GCameraFP16GameThingWithPos(struct GameThingWithPos* target); +// win1.41 00442810 mac 10032670 GCamera::SetPointFromPointDistanceHeadingAndPitch(LHPoint *, LHPoint const &, float, float, float) +void __cdecl SetPointFromPointDistanceHeadingAndPitch__7GCameraFP7LHPointRC7LHPointfff(struct LHPoint* param_1, const struct LHPoint* point, float distance, float heading, float pitch); +// win1.41 004428d0 mac 1007dbf0 GCamera::GetHeadingAndPitchFromPoints(LHPoint const &, LHPoint const &, float *, float *) +void __cdecl GetHeadingAndPitchFromPoints__7GCameraFRC7LHPointRC7LHPointPfPf(struct LHPoint* origin, struct LHPoint* heading, float* pitch, float* yaw); + +// Constructors + +// win1.41 00441870 mac 1019a720 GCamera::Camera(MapCoords&) +struct GCamera* __fastcall __ct__7GCameraFR9MapCoords(struct GCamera* this, const void* edx, struct MapCoords* coords); + +// Non-virtual methods + +// win1.41 00441b70 mac 1019a650 GCamera::CantExitCurrentMode(void) +bool __fastcall CantExitCurrentMode__7GCameraFv(struct GCamera* this); +// win1.41 00441cd0 mac 1019a420 GCamera::SwitchToViewMode(CameraMode *) +void __fastcall SwitchToViewMode__7GCameraFP10CameraMode(struct GCamera* this, const void* edx, struct CameraMode* mode); +// win1.41 00441d40 mac 1008de30 GCamera::CheckStackedModesForValidity(void) +void __fastcall CheckStackedModesForValidity__7GCameraFv(struct GCamera* this); +// win1.41 00441f50 mac 1008f7f0 GCamera::Validate(void) +void __fastcall Validate__7GCameraFv(struct GCamera* this); +// win1.41 00441f80 mac 1002cbd0 GCamera::Update(void) +void __fastcall Update__7GCameraFv(struct GCamera* this); +// win1.41 00442ef0 mac 1002b280 GCamera::UpdateGameThingWithPosData(void) +void __fastcall UpdateGameThingWithPosData__7GCameraFv(struct GCamera* this); +// win1.41 00443680 mac 10198790 GCamera::SetCameraFov(float, float) +void __fastcall SetCameraFov__7GCameraFff(struct GCamera* this, const void* edx, float fov, float time); + +#endif /* BW1_DECOMP_CAMERA_INCLUDED_H */ diff --git a/black/CameraEditor.h b/black/CameraEditor.h new file mode 100644 index 0000000..0d94e79 --- /dev/null +++ b/black/CameraEditor.h @@ -0,0 +1,56 @@ +#ifndef BW1_DECOMP_CAMERA_EDITOR_INCLUDED_H +#define BW1_DECOMP_CAMERA_EDITOR_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint32_t, uint8_t */ + +#include /* For struct LHPoint */ +#include /* For struct Prss */ + +// Forward Declares + +struct GCameraEditor__CameraBin; +struct LH3DWay; + +struct GCameraEditor +{ + struct Prss super; /* 0x0 */ + uint8_t field_0x10[0x18]; +}; +static_assert(sizeof(struct GCameraEditor) == 0x28, "Data type is of wrong size"); + +static struct PrssVftable* __vt__13GCameraEditor = (struct PrssVftable*)0x008c763c; + +// Static methods + +// win1.41 00445050 mac 1019bdb0 GCameraEditor::FinalDraw(void) +void __cdecl FinalDraw__13GCameraEditorFv(void); +// win1.41 00445530 mac 1019b6c0 GCameraEditor::CreateSegFile(void) +void __cdecl CreateSegFile__13GCameraEditorFv(void); +// win1.41 00446450 mac 1019b070 GCameraEditor::Draw3DPart(void) +void __cdecl Draw3DPart__13GCameraEditorFv(void); +// win1.41 00446fe0 mac 1019adf0 GCameraEditor::LoadCameraFromHD(long, GCameraEditor::CameraBin &) +void __cdecl LoadCameraFromHD__13GCameraEditorFlRQ213GCameraEditor9CameraBin(int32_t param_1, struct GCameraEditor__CameraBin* param_2); + +struct Q213GCameraEditor9InfoTrack +{ + int field_0x0; + uint32_t field_0x4; + int field_0x8; + uint32_t field_0xc; + struct Q213GCameraEditor9InfoTrack* next; /* 0x10 */ + uint32_t field_0x14; + struct LHPoint field_0x18; + struct LHPoint field_0x24; + int field_0x30; + struct LH3DWay* field_0x34; + int32_t* field_0x38; +}; +static_assert(sizeof(struct Q213GCameraEditor9InfoTrack) == 0x3c, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00446450 mac 1019b070 GCameraEditor::InfoTrack::Draw(void) +void __fastcall Draw__Q213GCameraEditor9InfoTrackFv(struct Q213GCameraEditor9InfoTrack* this); + +#endif /* BW1_DECOMP_CAMERA_EDITOR_INCLUDED_H */ diff --git a/black/CameraExclusion.h b/black/CameraExclusion.h new file mode 100644 index 0000000..39da3c3 --- /dev/null +++ b/black/CameraExclusion.h @@ -0,0 +1,30 @@ +#ifndef BW1_DECOMP_CAMERA_EXCLUSION_INCLUDED_H +#define BW1_DECOMP_CAMERA_EXCLUSION_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include /* For struct LHPoint */ + +struct CameraExclusion +{ + struct CameraExclusion* next; /* 0x0 */ + struct CameraExclusion* prev; + uint32_t field_0x8; + struct LHPoint field_0xc; + float field_0x18; + float field_0x1c; + uint32_t type; /* 0x20 */ + uint32_t field_0x24; +}; +static_assert(sizeof(struct CameraExclusion) == 0x28, "Data type is of wrong size"); + +// Static methods + +// win1.41 00455d50 mac 10000050 CameraExclusion::InsideExclusion(LHPoint) +bool __stdcall InsideExclusion__15CameraExclusionF7LHPoint(struct LHPoint point); +// win1.41 00455e20 mac 1004f140 CameraExclusion::InsideInclusion(LHPoint, LHPoint, LHPoint *, LHPoint *) +bool __cdecl InsideInclusion__15CameraExclusionF7LHPoint7LHPointP7LHPointP7LHPoint(struct LHPoint param_1, struct LHPoint param_2, struct LHPoint* param_3, struct LHPoint* param_4); + +#endif /* BW1_DECOMP_CAMERA_EXCLUSION_INCLUDED_H */ diff --git a/black/CameraHelp.h b/black/CameraHelp.h new file mode 100644 index 0000000..3ce23bb --- /dev/null +++ b/black/CameraHelp.h @@ -0,0 +1,816 @@ +#ifndef BW1_DECOMP_CAMERA_HELP_INCLUDED_H +#define BW1_DECOMP_CAMERA_HELP_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +// Forward Declares + +struct LHPoint; + +enum CameraHelpReason +{ + CameraHelpReason_0x100 = 0x100, + CameraHelpReason_0x101 = 0x101, + CameraHelpReason_0x102 = 0x102, + CameraHelpReason_0x200 = 0x200, + CameraHelpReason_0x201 = 0x201, + CameraHelpReason_0x202 = 0x202, + CameraHelpReason_0x203 = 0x203, + CameraHelpReason_0x300 = 0x300, + CameraHelpReason_0x301 = 0x301, + CameraHelpReason_0x302 = 0x302, + CameraHelpReason_0x303 = 0x303, + CameraHelpReason_0x304 = 0x304, + CameraHelpReason_0x305 = 0x305, + CameraHelpReason_0x306 = 0x306, + CameraHelpReason_0x307 = 0x307, + CameraHelpReason_0x308 = 0x308, + _CameraHelpReason_COUNT = 0x309 +}; +static_assert(sizeof(enum CameraHelpReason) == 0x4, "Data type is of wrong size"); + +static const char* CameraHelpReason_strs[_CameraHelpReason_COUNT] = { + "CameraHelpReason_0x0", + "CameraHelpReason_0x1", + "CameraHelpReason_0x2", + "CameraHelpReason_0x3", + "CameraHelpReason_0x4", + "CameraHelpReason_0x5", + "CameraHelpReason_0x6", + "CameraHelpReason_0x7", + "CameraHelpReason_0x8", + "CameraHelpReason_0x9", + "CameraHelpReason_0xa", + "CameraHelpReason_0xb", + "CameraHelpReason_0xc", + "CameraHelpReason_0xd", + "CameraHelpReason_0xe", + "CameraHelpReason_0xf", + "CameraHelpReason_0x10", + "CameraHelpReason_0x11", + "CameraHelpReason_0x12", + "CameraHelpReason_0x13", + "CameraHelpReason_0x14", + "CameraHelpReason_0x15", + "CameraHelpReason_0x16", + "CameraHelpReason_0x17", + "CameraHelpReason_0x18", + "CameraHelpReason_0x19", + "CameraHelpReason_0x1a", + "CameraHelpReason_0x1b", + "CameraHelpReason_0x1c", + "CameraHelpReason_0x1d", + "CameraHelpReason_0x1e", + "CameraHelpReason_0x1f", + "CameraHelpReason_0x20", + "CameraHelpReason_0x21", + "CameraHelpReason_0x22", + "CameraHelpReason_0x23", + "CameraHelpReason_0x24", + "CameraHelpReason_0x25", + "CameraHelpReason_0x26", + "CameraHelpReason_0x27", + "CameraHelpReason_0x28", + "CameraHelpReason_0x29", + "CameraHelpReason_0x2a", + "CameraHelpReason_0x2b", + "CameraHelpReason_0x2c", + "CameraHelpReason_0x2d", + "CameraHelpReason_0x2e", + "CameraHelpReason_0x2f", + "CameraHelpReason_0x30", + "CameraHelpReason_0x31", + "CameraHelpReason_0x32", + "CameraHelpReason_0x33", + "CameraHelpReason_0x34", + "CameraHelpReason_0x35", + "CameraHelpReason_0x36", + "CameraHelpReason_0x37", + "CameraHelpReason_0x38", + "CameraHelpReason_0x39", + "CameraHelpReason_0x3a", + "CameraHelpReason_0x3b", + "CameraHelpReason_0x3c", + "CameraHelpReason_0x3d", + "CameraHelpReason_0x3e", + "CameraHelpReason_0x3f", + "CameraHelpReason_0x40", + "CameraHelpReason_0x41", + "CameraHelpReason_0x42", + "CameraHelpReason_0x43", + "CameraHelpReason_0x44", + "CameraHelpReason_0x45", + "CameraHelpReason_0x46", + "CameraHelpReason_0x47", + "CameraHelpReason_0x48", + "CameraHelpReason_0x49", + "CameraHelpReason_0x4a", + "CameraHelpReason_0x4b", + "CameraHelpReason_0x4c", + "CameraHelpReason_0x4d", + "CameraHelpReason_0x4e", + "CameraHelpReason_0x4f", + "CameraHelpReason_0x50", + "CameraHelpReason_0x51", + "CameraHelpReason_0x52", + "CameraHelpReason_0x53", + "CameraHelpReason_0x54", + "CameraHelpReason_0x55", + "CameraHelpReason_0x56", + "CameraHelpReason_0x57", + "CameraHelpReason_0x58", + "CameraHelpReason_0x59", + "CameraHelpReason_0x5a", + "CameraHelpReason_0x5b", + "CameraHelpReason_0x5c", + "CameraHelpReason_0x5d", + "CameraHelpReason_0x5e", + "CameraHelpReason_0x5f", + "CameraHelpReason_0x60", + "CameraHelpReason_0x61", + "CameraHelpReason_0x62", + "CameraHelpReason_0x63", + "CameraHelpReason_0x64", + "CameraHelpReason_0x65", + "CameraHelpReason_0x66", + "CameraHelpReason_0x67", + "CameraHelpReason_0x68", + "CameraHelpReason_0x69", + "CameraHelpReason_0x6a", + "CameraHelpReason_0x6b", + "CameraHelpReason_0x6c", + "CameraHelpReason_0x6d", + "CameraHelpReason_0x6e", + "CameraHelpReason_0x6f", + "CameraHelpReason_0x70", + "CameraHelpReason_0x71", + "CameraHelpReason_0x72", + "CameraHelpReason_0x73", + "CameraHelpReason_0x74", + "CameraHelpReason_0x75", + "CameraHelpReason_0x76", + "CameraHelpReason_0x77", + "CameraHelpReason_0x78", + "CameraHelpReason_0x79", + "CameraHelpReason_0x7a", + "CameraHelpReason_0x7b", + "CameraHelpReason_0x7c", + "CameraHelpReason_0x7d", + "CameraHelpReason_0x7e", + "CameraHelpReason_0x7f", + "CameraHelpReason_0x80", + "CameraHelpReason_0x81", + "CameraHelpReason_0x82", + "CameraHelpReason_0x83", + "CameraHelpReason_0x84", + "CameraHelpReason_0x85", + "CameraHelpReason_0x86", + "CameraHelpReason_0x87", + "CameraHelpReason_0x88", + "CameraHelpReason_0x89", + "CameraHelpReason_0x8a", + "CameraHelpReason_0x8b", + "CameraHelpReason_0x8c", + "CameraHelpReason_0x8d", + "CameraHelpReason_0x8e", + "CameraHelpReason_0x8f", + "CameraHelpReason_0x90", + "CameraHelpReason_0x91", + "CameraHelpReason_0x92", + "CameraHelpReason_0x93", + "CameraHelpReason_0x94", + "CameraHelpReason_0x95", + "CameraHelpReason_0x96", + "CameraHelpReason_0x97", + "CameraHelpReason_0x98", + "CameraHelpReason_0x99", + "CameraHelpReason_0x9a", + "CameraHelpReason_0x9b", + "CameraHelpReason_0x9c", + "CameraHelpReason_0x9d", + "CameraHelpReason_0x9e", + "CameraHelpReason_0x9f", + "CameraHelpReason_0xa0", + "CameraHelpReason_0xa1", + "CameraHelpReason_0xa2", + "CameraHelpReason_0xa3", + "CameraHelpReason_0xa4", + "CameraHelpReason_0xa5", + "CameraHelpReason_0xa6", + "CameraHelpReason_0xa7", + "CameraHelpReason_0xa8", + "CameraHelpReason_0xa9", + "CameraHelpReason_0xaa", + "CameraHelpReason_0xab", + "CameraHelpReason_0xac", + "CameraHelpReason_0xad", + "CameraHelpReason_0xae", + "CameraHelpReason_0xaf", + "CameraHelpReason_0xb0", + "CameraHelpReason_0xb1", + "CameraHelpReason_0xb2", + "CameraHelpReason_0xb3", + "CameraHelpReason_0xb4", + "CameraHelpReason_0xb5", + "CameraHelpReason_0xb6", + "CameraHelpReason_0xb7", + "CameraHelpReason_0xb8", + "CameraHelpReason_0xb9", + "CameraHelpReason_0xba", + "CameraHelpReason_0xbb", + "CameraHelpReason_0xbc", + "CameraHelpReason_0xbd", + "CameraHelpReason_0xbe", + "CameraHelpReason_0xbf", + "CameraHelpReason_0xc0", + "CameraHelpReason_0xc1", + "CameraHelpReason_0xc2", + "CameraHelpReason_0xc3", + "CameraHelpReason_0xc4", + "CameraHelpReason_0xc5", + "CameraHelpReason_0xc6", + "CameraHelpReason_0xc7", + "CameraHelpReason_0xc8", + "CameraHelpReason_0xc9", + "CameraHelpReason_0xca", + "CameraHelpReason_0xcb", + "CameraHelpReason_0xcc", + "CameraHelpReason_0xcd", + "CameraHelpReason_0xce", + "CameraHelpReason_0xcf", + "CameraHelpReason_0xd0", + "CameraHelpReason_0xd1", + "CameraHelpReason_0xd2", + "CameraHelpReason_0xd3", + "CameraHelpReason_0xd4", + "CameraHelpReason_0xd5", + "CameraHelpReason_0xd6", + "CameraHelpReason_0xd7", + "CameraHelpReason_0xd8", + "CameraHelpReason_0xd9", + "CameraHelpReason_0xda", + "CameraHelpReason_0xdb", + "CameraHelpReason_0xdc", + "CameraHelpReason_0xdd", + "CameraHelpReason_0xde", + "CameraHelpReason_0xdf", + "CameraHelpReason_0xe0", + "CameraHelpReason_0xe1", + "CameraHelpReason_0xe2", + "CameraHelpReason_0xe3", + "CameraHelpReason_0xe4", + "CameraHelpReason_0xe5", + "CameraHelpReason_0xe6", + "CameraHelpReason_0xe7", + "CameraHelpReason_0xe8", + "CameraHelpReason_0xe9", + "CameraHelpReason_0xea", + "CameraHelpReason_0xeb", + "CameraHelpReason_0xec", + "CameraHelpReason_0xed", + "CameraHelpReason_0xee", + "CameraHelpReason_0xef", + "CameraHelpReason_0xf0", + "CameraHelpReason_0xf1", + "CameraHelpReason_0xf2", + "CameraHelpReason_0xf3", + "CameraHelpReason_0xf4", + "CameraHelpReason_0xf5", + "CameraHelpReason_0xf6", + "CameraHelpReason_0xf7", + "CameraHelpReason_0xf8", + "CameraHelpReason_0xf9", + "CameraHelpReason_0xfa", + "CameraHelpReason_0xfb", + "CameraHelpReason_0xfc", + "CameraHelpReason_0xfd", + "CameraHelpReason_0xfe", + "CameraHelpReason_0xff", + "CameraHelpReason_0x100", + "CameraHelpReason_0x101", + "CameraHelpReason_0x102", + "CameraHelpReason_0x103", + "CameraHelpReason_0x104", + "CameraHelpReason_0x105", + "CameraHelpReason_0x106", + "CameraHelpReason_0x107", + "CameraHelpReason_0x108", + "CameraHelpReason_0x109", + "CameraHelpReason_0x10a", + "CameraHelpReason_0x10b", + "CameraHelpReason_0x10c", + "CameraHelpReason_0x10d", + "CameraHelpReason_0x10e", + "CameraHelpReason_0x10f", + "CameraHelpReason_0x110", + "CameraHelpReason_0x111", + "CameraHelpReason_0x112", + "CameraHelpReason_0x113", + "CameraHelpReason_0x114", + "CameraHelpReason_0x115", + "CameraHelpReason_0x116", + "CameraHelpReason_0x117", + "CameraHelpReason_0x118", + "CameraHelpReason_0x119", + "CameraHelpReason_0x11a", + "CameraHelpReason_0x11b", + "CameraHelpReason_0x11c", + "CameraHelpReason_0x11d", + "CameraHelpReason_0x11e", + "CameraHelpReason_0x11f", + "CameraHelpReason_0x120", + "CameraHelpReason_0x121", + "CameraHelpReason_0x122", + "CameraHelpReason_0x123", + "CameraHelpReason_0x124", + "CameraHelpReason_0x125", + "CameraHelpReason_0x126", + "CameraHelpReason_0x127", + "CameraHelpReason_0x128", + "CameraHelpReason_0x129", + "CameraHelpReason_0x12a", + "CameraHelpReason_0x12b", + "CameraHelpReason_0x12c", + "CameraHelpReason_0x12d", + "CameraHelpReason_0x12e", + "CameraHelpReason_0x12f", + "CameraHelpReason_0x130", + "CameraHelpReason_0x131", + "CameraHelpReason_0x132", + "CameraHelpReason_0x133", + "CameraHelpReason_0x134", + "CameraHelpReason_0x135", + "CameraHelpReason_0x136", + "CameraHelpReason_0x137", + "CameraHelpReason_0x138", + "CameraHelpReason_0x139", + "CameraHelpReason_0x13a", + "CameraHelpReason_0x13b", + "CameraHelpReason_0x13c", + "CameraHelpReason_0x13d", + "CameraHelpReason_0x13e", + "CameraHelpReason_0x13f", + "CameraHelpReason_0x140", + "CameraHelpReason_0x141", + "CameraHelpReason_0x142", + "CameraHelpReason_0x143", + "CameraHelpReason_0x144", + "CameraHelpReason_0x145", + "CameraHelpReason_0x146", + "CameraHelpReason_0x147", + "CameraHelpReason_0x148", + "CameraHelpReason_0x149", + "CameraHelpReason_0x14a", + "CameraHelpReason_0x14b", + "CameraHelpReason_0x14c", + "CameraHelpReason_0x14d", + "CameraHelpReason_0x14e", + "CameraHelpReason_0x14f", + "CameraHelpReason_0x150", + "CameraHelpReason_0x151", + "CameraHelpReason_0x152", + "CameraHelpReason_0x153", + "CameraHelpReason_0x154", + "CameraHelpReason_0x155", + "CameraHelpReason_0x156", + "CameraHelpReason_0x157", + "CameraHelpReason_0x158", + "CameraHelpReason_0x159", + "CameraHelpReason_0x15a", + "CameraHelpReason_0x15b", + "CameraHelpReason_0x15c", + "CameraHelpReason_0x15d", + "CameraHelpReason_0x15e", + "CameraHelpReason_0x15f", + "CameraHelpReason_0x160", + "CameraHelpReason_0x161", + "CameraHelpReason_0x162", + "CameraHelpReason_0x163", + "CameraHelpReason_0x164", + "CameraHelpReason_0x165", + "CameraHelpReason_0x166", + "CameraHelpReason_0x167", + "CameraHelpReason_0x168", + "CameraHelpReason_0x169", + "CameraHelpReason_0x16a", + "CameraHelpReason_0x16b", + "CameraHelpReason_0x16c", + "CameraHelpReason_0x16d", + "CameraHelpReason_0x16e", + "CameraHelpReason_0x16f", + "CameraHelpReason_0x170", + "CameraHelpReason_0x171", + "CameraHelpReason_0x172", + "CameraHelpReason_0x173", + "CameraHelpReason_0x174", + "CameraHelpReason_0x175", + "CameraHelpReason_0x176", + "CameraHelpReason_0x177", + "CameraHelpReason_0x178", + "CameraHelpReason_0x179", + "CameraHelpReason_0x17a", + "CameraHelpReason_0x17b", + "CameraHelpReason_0x17c", + "CameraHelpReason_0x17d", + "CameraHelpReason_0x17e", + "CameraHelpReason_0x17f", + "CameraHelpReason_0x180", + "CameraHelpReason_0x181", + "CameraHelpReason_0x182", + "CameraHelpReason_0x183", + "CameraHelpReason_0x184", + "CameraHelpReason_0x185", + "CameraHelpReason_0x186", + "CameraHelpReason_0x187", + "CameraHelpReason_0x188", + "CameraHelpReason_0x189", + "CameraHelpReason_0x18a", + "CameraHelpReason_0x18b", + "CameraHelpReason_0x18c", + "CameraHelpReason_0x18d", + "CameraHelpReason_0x18e", + "CameraHelpReason_0x18f", + "CameraHelpReason_0x190", + "CameraHelpReason_0x191", + "CameraHelpReason_0x192", + "CameraHelpReason_0x193", + "CameraHelpReason_0x194", + "CameraHelpReason_0x195", + "CameraHelpReason_0x196", + "CameraHelpReason_0x197", + "CameraHelpReason_0x198", + "CameraHelpReason_0x199", + "CameraHelpReason_0x19a", + "CameraHelpReason_0x19b", + "CameraHelpReason_0x19c", + "CameraHelpReason_0x19d", + "CameraHelpReason_0x19e", + "CameraHelpReason_0x19f", + "CameraHelpReason_0x1a0", + "CameraHelpReason_0x1a1", + "CameraHelpReason_0x1a2", + "CameraHelpReason_0x1a3", + "CameraHelpReason_0x1a4", + "CameraHelpReason_0x1a5", + "CameraHelpReason_0x1a6", + "CameraHelpReason_0x1a7", + "CameraHelpReason_0x1a8", + "CameraHelpReason_0x1a9", + "CameraHelpReason_0x1aa", + "CameraHelpReason_0x1ab", + "CameraHelpReason_0x1ac", + "CameraHelpReason_0x1ad", + "CameraHelpReason_0x1ae", + "CameraHelpReason_0x1af", + "CameraHelpReason_0x1b0", + "CameraHelpReason_0x1b1", + "CameraHelpReason_0x1b2", + "CameraHelpReason_0x1b3", + "CameraHelpReason_0x1b4", + "CameraHelpReason_0x1b5", + "CameraHelpReason_0x1b6", + "CameraHelpReason_0x1b7", + "CameraHelpReason_0x1b8", + "CameraHelpReason_0x1b9", + "CameraHelpReason_0x1ba", + "CameraHelpReason_0x1bb", + "CameraHelpReason_0x1bc", + "CameraHelpReason_0x1bd", + "CameraHelpReason_0x1be", + "CameraHelpReason_0x1bf", + "CameraHelpReason_0x1c0", + "CameraHelpReason_0x1c1", + "CameraHelpReason_0x1c2", + "CameraHelpReason_0x1c3", + "CameraHelpReason_0x1c4", + "CameraHelpReason_0x1c5", + "CameraHelpReason_0x1c6", + "CameraHelpReason_0x1c7", + "CameraHelpReason_0x1c8", + "CameraHelpReason_0x1c9", + "CameraHelpReason_0x1ca", + "CameraHelpReason_0x1cb", + "CameraHelpReason_0x1cc", + "CameraHelpReason_0x1cd", + "CameraHelpReason_0x1ce", + "CameraHelpReason_0x1cf", + "CameraHelpReason_0x1d0", + "CameraHelpReason_0x1d1", + "CameraHelpReason_0x1d2", + "CameraHelpReason_0x1d3", + "CameraHelpReason_0x1d4", + "CameraHelpReason_0x1d5", + "CameraHelpReason_0x1d6", + "CameraHelpReason_0x1d7", + "CameraHelpReason_0x1d8", + "CameraHelpReason_0x1d9", + "CameraHelpReason_0x1da", + "CameraHelpReason_0x1db", + "CameraHelpReason_0x1dc", + "CameraHelpReason_0x1dd", + "CameraHelpReason_0x1de", + "CameraHelpReason_0x1df", + "CameraHelpReason_0x1e0", + "CameraHelpReason_0x1e1", + "CameraHelpReason_0x1e2", + "CameraHelpReason_0x1e3", + "CameraHelpReason_0x1e4", + "CameraHelpReason_0x1e5", + "CameraHelpReason_0x1e6", + "CameraHelpReason_0x1e7", + "CameraHelpReason_0x1e8", + "CameraHelpReason_0x1e9", + "CameraHelpReason_0x1ea", + "CameraHelpReason_0x1eb", + "CameraHelpReason_0x1ec", + "CameraHelpReason_0x1ed", + "CameraHelpReason_0x1ee", + "CameraHelpReason_0x1ef", + "CameraHelpReason_0x1f0", + "CameraHelpReason_0x1f1", + "CameraHelpReason_0x1f2", + "CameraHelpReason_0x1f3", + "CameraHelpReason_0x1f4", + "CameraHelpReason_0x1f5", + "CameraHelpReason_0x1f6", + "CameraHelpReason_0x1f7", + "CameraHelpReason_0x1f8", + "CameraHelpReason_0x1f9", + "CameraHelpReason_0x1fa", + "CameraHelpReason_0x1fb", + "CameraHelpReason_0x1fc", + "CameraHelpReason_0x1fd", + "CameraHelpReason_0x1fe", + "CameraHelpReason_0x1ff", + "CameraHelpReason_0x200", + "CameraHelpReason_0x201", + "CameraHelpReason_0x202", + "CameraHelpReason_0x203", + "CameraHelpReason_0x204", + "CameraHelpReason_0x205", + "CameraHelpReason_0x206", + "CameraHelpReason_0x207", + "CameraHelpReason_0x208", + "CameraHelpReason_0x209", + "CameraHelpReason_0x20a", + "CameraHelpReason_0x20b", + "CameraHelpReason_0x20c", + "CameraHelpReason_0x20d", + "CameraHelpReason_0x20e", + "CameraHelpReason_0x20f", + "CameraHelpReason_0x210", + "CameraHelpReason_0x211", + "CameraHelpReason_0x212", + "CameraHelpReason_0x213", + "CameraHelpReason_0x214", + "CameraHelpReason_0x215", + "CameraHelpReason_0x216", + "CameraHelpReason_0x217", + "CameraHelpReason_0x218", + "CameraHelpReason_0x219", + "CameraHelpReason_0x21a", + "CameraHelpReason_0x21b", + "CameraHelpReason_0x21c", + "CameraHelpReason_0x21d", + "CameraHelpReason_0x21e", + "CameraHelpReason_0x21f", + "CameraHelpReason_0x220", + "CameraHelpReason_0x221", + "CameraHelpReason_0x222", + "CameraHelpReason_0x223", + "CameraHelpReason_0x224", + "CameraHelpReason_0x225", + "CameraHelpReason_0x226", + "CameraHelpReason_0x227", + "CameraHelpReason_0x228", + "CameraHelpReason_0x229", + "CameraHelpReason_0x22a", + "CameraHelpReason_0x22b", + "CameraHelpReason_0x22c", + "CameraHelpReason_0x22d", + "CameraHelpReason_0x22e", + "CameraHelpReason_0x22f", + "CameraHelpReason_0x230", + "CameraHelpReason_0x231", + "CameraHelpReason_0x232", + "CameraHelpReason_0x233", + "CameraHelpReason_0x234", + "CameraHelpReason_0x235", + "CameraHelpReason_0x236", + "CameraHelpReason_0x237", + "CameraHelpReason_0x238", + "CameraHelpReason_0x239", + "CameraHelpReason_0x23a", + "CameraHelpReason_0x23b", + "CameraHelpReason_0x23c", + "CameraHelpReason_0x23d", + "CameraHelpReason_0x23e", + "CameraHelpReason_0x23f", + "CameraHelpReason_0x240", + "CameraHelpReason_0x241", + "CameraHelpReason_0x242", + "CameraHelpReason_0x243", + "CameraHelpReason_0x244", + "CameraHelpReason_0x245", + "CameraHelpReason_0x246", + "CameraHelpReason_0x247", + "CameraHelpReason_0x248", + "CameraHelpReason_0x249", + "CameraHelpReason_0x24a", + "CameraHelpReason_0x24b", + "CameraHelpReason_0x24c", + "CameraHelpReason_0x24d", + "CameraHelpReason_0x24e", + "CameraHelpReason_0x24f", + "CameraHelpReason_0x250", + "CameraHelpReason_0x251", + "CameraHelpReason_0x252", + "CameraHelpReason_0x253", + "CameraHelpReason_0x254", + "CameraHelpReason_0x255", + "CameraHelpReason_0x256", + "CameraHelpReason_0x257", + "CameraHelpReason_0x258", + "CameraHelpReason_0x259", + "CameraHelpReason_0x25a", + "CameraHelpReason_0x25b", + "CameraHelpReason_0x25c", + "CameraHelpReason_0x25d", + "CameraHelpReason_0x25e", + "CameraHelpReason_0x25f", + "CameraHelpReason_0x260", + "CameraHelpReason_0x261", + "CameraHelpReason_0x262", + "CameraHelpReason_0x263", + "CameraHelpReason_0x264", + "CameraHelpReason_0x265", + "CameraHelpReason_0x266", + "CameraHelpReason_0x267", + "CameraHelpReason_0x268", + "CameraHelpReason_0x269", + "CameraHelpReason_0x26a", + "CameraHelpReason_0x26b", + "CameraHelpReason_0x26c", + "CameraHelpReason_0x26d", + "CameraHelpReason_0x26e", + "CameraHelpReason_0x26f", + "CameraHelpReason_0x270", + "CameraHelpReason_0x271", + "CameraHelpReason_0x272", + "CameraHelpReason_0x273", + "CameraHelpReason_0x274", + "CameraHelpReason_0x275", + "CameraHelpReason_0x276", + "CameraHelpReason_0x277", + "CameraHelpReason_0x278", + "CameraHelpReason_0x279", + "CameraHelpReason_0x27a", + "CameraHelpReason_0x27b", + "CameraHelpReason_0x27c", + "CameraHelpReason_0x27d", + "CameraHelpReason_0x27e", + "CameraHelpReason_0x27f", + "CameraHelpReason_0x280", + "CameraHelpReason_0x281", + "CameraHelpReason_0x282", + "CameraHelpReason_0x283", + "CameraHelpReason_0x284", + "CameraHelpReason_0x285", + "CameraHelpReason_0x286", + "CameraHelpReason_0x287", + "CameraHelpReason_0x288", + "CameraHelpReason_0x289", + "CameraHelpReason_0x28a", + "CameraHelpReason_0x28b", + "CameraHelpReason_0x28c", + "CameraHelpReason_0x28d", + "CameraHelpReason_0x28e", + "CameraHelpReason_0x28f", + "CameraHelpReason_0x290", + "CameraHelpReason_0x291", + "CameraHelpReason_0x292", + "CameraHelpReason_0x293", + "CameraHelpReason_0x294", + "CameraHelpReason_0x295", + "CameraHelpReason_0x296", + "CameraHelpReason_0x297", + "CameraHelpReason_0x298", + "CameraHelpReason_0x299", + "CameraHelpReason_0x29a", + "CameraHelpReason_0x29b", + "CameraHelpReason_0x29c", + "CameraHelpReason_0x29d", + "CameraHelpReason_0x29e", + "CameraHelpReason_0x29f", + "CameraHelpReason_0x2a0", + "CameraHelpReason_0x2a1", + "CameraHelpReason_0x2a2", + "CameraHelpReason_0x2a3", + "CameraHelpReason_0x2a4", + "CameraHelpReason_0x2a5", + "CameraHelpReason_0x2a6", + "CameraHelpReason_0x2a7", + "CameraHelpReason_0x2a8", + "CameraHelpReason_0x2a9", + "CameraHelpReason_0x2aa", + "CameraHelpReason_0x2ab", + "CameraHelpReason_0x2ac", + "CameraHelpReason_0x2ad", + "CameraHelpReason_0x2ae", + "CameraHelpReason_0x2af", + "CameraHelpReason_0x2b0", + "CameraHelpReason_0x2b1", + "CameraHelpReason_0x2b2", + "CameraHelpReason_0x2b3", + "CameraHelpReason_0x2b4", + "CameraHelpReason_0x2b5", + "CameraHelpReason_0x2b6", + "CameraHelpReason_0x2b7", + "CameraHelpReason_0x2b8", + "CameraHelpReason_0x2b9", + "CameraHelpReason_0x2ba", + "CameraHelpReason_0x2bb", + "CameraHelpReason_0x2bc", + "CameraHelpReason_0x2bd", + "CameraHelpReason_0x2be", + "CameraHelpReason_0x2bf", + "CameraHelpReason_0x2c0", + "CameraHelpReason_0x2c1", + "CameraHelpReason_0x2c2", + "CameraHelpReason_0x2c3", + "CameraHelpReason_0x2c4", + "CameraHelpReason_0x2c5", + "CameraHelpReason_0x2c6", + "CameraHelpReason_0x2c7", + "CameraHelpReason_0x2c8", + "CameraHelpReason_0x2c9", + "CameraHelpReason_0x2ca", + "CameraHelpReason_0x2cb", + "CameraHelpReason_0x2cc", + "CameraHelpReason_0x2cd", + "CameraHelpReason_0x2ce", + "CameraHelpReason_0x2cf", + "CameraHelpReason_0x2d0", + "CameraHelpReason_0x2d1", + "CameraHelpReason_0x2d2", + "CameraHelpReason_0x2d3", + "CameraHelpReason_0x2d4", + "CameraHelpReason_0x2d5", + "CameraHelpReason_0x2d6", + "CameraHelpReason_0x2d7", + "CameraHelpReason_0x2d8", + "CameraHelpReason_0x2d9", + "CameraHelpReason_0x2da", + "CameraHelpReason_0x2db", + "CameraHelpReason_0x2dc", + "CameraHelpReason_0x2dd", + "CameraHelpReason_0x2de", + "CameraHelpReason_0x2df", + "CameraHelpReason_0x2e0", + "CameraHelpReason_0x2e1", + "CameraHelpReason_0x2e2", + "CameraHelpReason_0x2e3", + "CameraHelpReason_0x2e4", + "CameraHelpReason_0x2e5", + "CameraHelpReason_0x2e6", + "CameraHelpReason_0x2e7", + "CameraHelpReason_0x2e8", + "CameraHelpReason_0x2e9", + "CameraHelpReason_0x2ea", + "CameraHelpReason_0x2eb", + "CameraHelpReason_0x2ec", + "CameraHelpReason_0x2ed", + "CameraHelpReason_0x2ee", + "CameraHelpReason_0x2ef", + "CameraHelpReason_0x2f0", + "CameraHelpReason_0x2f1", + "CameraHelpReason_0x2f2", + "CameraHelpReason_0x2f3", + "CameraHelpReason_0x2f4", + "CameraHelpReason_0x2f5", + "CameraHelpReason_0x2f6", + "CameraHelpReason_0x2f7", + "CameraHelpReason_0x2f8", + "CameraHelpReason_0x2f9", + "CameraHelpReason_0x2fa", + "CameraHelpReason_0x2fb", + "CameraHelpReason_0x2fc", + "CameraHelpReason_0x2fd", + "CameraHelpReason_0x2fe", + "CameraHelpReason_0x2ff", + "CameraHelpReason_0x300", + "CameraHelpReason_0x301", + "CameraHelpReason_0x302", + "CameraHelpReason_0x303", + "CameraHelpReason_0x304", + "CameraHelpReason_0x305", + "CameraHelpReason_0x306", + "CameraHelpReason_0x307", + "CameraHelpReason_0x308", +}; + +// win1.41 00449140 mac 100018f0 CameraHelp::CameraHelpCallback(CameraHelpReason, LHPoint &, unsigned long) +void __cdecl CameraHelpCallback__10CameraHelpF16CameraHelpReasonR7LHPointUl(enum CameraHelpReason reason, struct LHPoint* point, uint32_t param_3); + +#endif /* BW1_DECOMP_CAMERA_HELP_INCLUDED_H */ diff --git a/black/CameraMode.h b/black/CameraMode.h new file mode 100644 index 0000000..a4446ca --- /dev/null +++ b/black/CameraMode.h @@ -0,0 +1,88 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint16_t, uint32_t */ + +// Forward Declares + +struct CameraMode; +struct GCamera; +struct GameOSFile; + +enum CAMERA_MODE_HAND_STATUS +{ + CAMERA_MODE_HAND_STATUS_NORMAL = 0x0, + CAMERA_MODE_HAND_STATUS_ZOOMING = 0x1, + CAMERA_MODE_HAND_STATUS_TILT_ON = 0x2, + CAMERA_MODE_HAND_STATUS_GRABBING_LAND = 0x3, + CAMERA_MODE_HAND_STATUS_PANNING = 0x4, + CAMERA_MODE_HAND_STATUS_TILTING = 0x5, + CAMERA_MODE_HAND_STATUS_0x6 = 0x6, + CAMERA_MODE_HAND_STATUS_0x7 = 0x7, + CAMERA_MODE_HAND_STATUS_0x8 = 0x8, + _CAMERA_MODE_HAND_STATUS_COUNT = 0x9 +}; +static_assert(sizeof(enum CAMERA_MODE_HAND_STATUS) == 0x4, "Data type is of wrong size"); + +static const char* CAMERA_MODE_HAND_STATUS_strs[_CAMERA_MODE_HAND_STATUS_COUNT] = { + "CAMERA_MODE_HAND_STATUS_NORMAL", + "CAMERA_MODE_HAND_STATUS_ZOOMING", + "CAMERA_MODE_HAND_STATUS_TILT_ON", + "CAMERA_MODE_HAND_STATUS_GRABBING_LAND", + "CAMERA_MODE_HAND_STATUS_PANNING", + "CAMERA_MODE_HAND_STATUS_TILTING", + "CAMERA_MODE_HAND_STATUS_0x6", + "CAMERA_MODE_HAND_STATUS_0x7", + "CAMERA_MODE_HAND_STATUS_0x8", +}; + +enum CAMERA_MODE_MOUSE_STATUS +{ + CAMERA_MODE_MOUSE_STATUS_NONE = 0x0, + CAMERA_MODE_MOUSE_STATUS_LEFT = 0x1, + CAMERA_MODE_MOUSE_STATUS_MIDDLE = 0x2, + _CAMERA_MODE_MOUSE_STATUS_COUNT = 0x3 +}; +static_assert(sizeof(enum CAMERA_MODE_MOUSE_STATUS) == 0x4, "Data type is of wrong size"); + +static const char* CAMERA_MODE_MOUSE_STATUS_strs[_CAMERA_MODE_MOUSE_STATUS_COUNT] = { + "CAMERA_MODE_MOUSE_STATUS_NONE", + "CAMERA_MODE_MOUSE_STATUS_LEFT", + "CAMERA_MODE_MOUSE_STATUS_MIDDLE", +}; + +struct CameraModeVftable +{ + struct CameraMode* (__fastcall* __dt)(struct CameraMode* this, const void* edx, uint32_t param_2); /* 0x0 */ + bool (__fastcall* CanPlayerGestureWhenCameraMoving)(struct CameraMode* this); + void (__fastcall* Update)(struct CameraMode* this); + void (__fastcall* Validate)(struct CameraMode* this); + void (__fastcall* Restart)(struct CameraMode* this); /* 0x10 */ + bool (__fastcall* IsStillValid)(struct CameraMode* this); + void (__fastcall* Cleanup)(struct CameraMode* this); + bool (__fastcall* CanExist)(struct CameraMode* this); + bool (__fastcall* MouseIsLocked)(struct CameraMode* this); /* 0x20 */ + uint32_t GetMousePos; + void (__fastcall* ProcessKeyMovement)(struct CameraMode* this, const void* edx, uint16_t param_2); + void (__fastcall* ProcessMouseMovement)(struct CameraMode* this); + void (__fastcall* Delete)(struct CameraMode* this); /* 0x30 */ + bool (__fastcall* Arrived)(struct CameraMode* this); + uint32_t (__fastcall* GetSaveID)(struct CameraMode* this); + void (__fastcall* Load)(struct CameraMode* this, const void* edx, struct GameOSFile* param_2); + void (__fastcall* Save)(struct CameraMode* this, const void* edx, struct GameOSFile* param_2); /* 0x40 */ + const char* (__fastcall* GetDebugName)(struct CameraMode* this); +}; +static_assert(sizeof(struct CameraModeVftable) == 0x48, "Data type is of wrong size"); + +struct CameraMode +{ + struct CameraModeVftable* vftable; /* 0x0 */ + struct GCamera* camera; +}; +static_assert(sizeof(struct CameraMode) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__10CameraMode = (struct CameraModeVftable*)0x008c76e0; + +#endif /* BW1_DECOMP_CAMERA_MODE_INCLUDED_H */ diff --git a/black/CameraModeCitadel.h b/black/CameraModeCitadel.h new file mode 100644 index 0000000..e02ac0e --- /dev/null +++ b/black/CameraModeCitadel.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_CITADEL_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_CITADEL_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraMode.h" /* For struct CameraMode */ + +struct CameraModeCitadel +{ + struct CameraMode super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModeCitadel) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__17CameraModeCitadel = (struct CameraModeVftable*)0x008c7694; + +#endif /* BW1_DECOMP_CAMERA_MODE_CITADEL_INCLUDED_H */ diff --git a/black/CameraModeCtrInteract.h b/black/CameraModeCtrInteract.h new file mode 100644 index 0000000..659de15 --- /dev/null +++ b/black/CameraModeCtrInteract.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_CTR_INTERACT_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_CTR_INTERACT_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraMode.h" /* For struct CameraMode */ + +struct CameraModeCtrInteract +{ + struct CameraMode super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModeCtrInteract) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__21CameraModeCtrInteract = (struct CameraModeVftable*)0x008c7740; + +#endif /* BW1_DECOMP_CAMERA_MODE_CTR_INTERACT_INCLUDED_H */ diff --git a/black/CameraModeDance.h b/black/CameraModeDance.h new file mode 100644 index 0000000..88d2c3f --- /dev/null +++ b/black/CameraModeDance.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_DANCE_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_DANCE_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraMode.h" /* For struct CameraMode */ + +struct CameraModeDance +{ + struct CameraMode super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModeDance) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__15CameraModeDance = (struct CameraModeVftable*)0x008c77a0; + +#endif /* BW1_DECOMP_CAMERA_MODE_DANCE_INCLUDED_H */ diff --git a/black/CameraModeFlyAndClick.h b/black/CameraModeFlyAndClick.h new file mode 100644 index 0000000..5aa5f54 --- /dev/null +++ b/black/CameraModeFlyAndClick.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_FLY_AND_CLICK_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_FLY_AND_CLICK_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraMode.h" /* For struct CameraMode */ + +struct CameraModeFlyAndClick +{ + struct CameraMode super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModeFlyAndClick) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__21CameraModeFlyAndClick = (struct CameraModeVftable*)0x008c7814; + +#endif /* BW1_DECOMP_CAMERA_MODE_FLY_AND_CLICK_INCLUDED_H */ diff --git a/black/CameraModeFollow.h b/black/CameraModeFollow.h new file mode 100644 index 0000000..4b6b778 --- /dev/null +++ b/black/CameraModeFollow.h @@ -0,0 +1,43 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_FOLLOW_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_FOLLOW_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint8_t */ + +#include "CameraMode.h" /* For struct CameraMode */ + +// Forward Declares + +struct GCamera; +struct GameThingWithPos; + +struct CameraModeFollow +{ + struct CameraMode super; /* 0x0 */ + struct GameThingWithPos* target; + float pitch; + float yaw; /* 0x10 */ + float viewing_distance; + float field_0x18; + int field_0x1c; + int field_0x20; + uint8_t field_0x24[0x18]; + int32_t field_0x3c; + int32_t field_0x40; + int32_t field_0x44; +}; +static_assert(sizeof(struct CameraModeFollow) == 0x48, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__16CameraModeFollow = (struct CameraModeVftable*)0x008c7884; + +// Constructors + +// win1.41 0044b800 mac 101a00c0 CameraModeFollow::CameraModeFollow(GCamera *, GameThingWithPos *, float, int, int) +struct CameraModeFollow* __fastcall __ct__16CameraModeFollowFP7GCameraP16GameThingWithPosfii(struct CameraModeFollow* this, const void* edx, struct GCamera* camera, struct GameThingWithPos* target, float param_3, int param_4, int param_5); + +// Non-virtual methods + +// win1.41 0044ba00 mac 1019ff80 CameraModeFollow::Set(GameThingWithPos *) +void __fastcall Set__16CameraModeFollowFP16GameThingWithPos(struct CameraModeFollow* this, const void* edx, struct GameThingWithPos* target); + +#endif /* BW1_DECOMP_CAMERA_MODE_FOLLOW_INCLUDED_H */ diff --git a/black/CameraModeFollowHeading.h b/black/CameraModeFollowHeading.h new file mode 100644 index 0000000..b41d6c9 --- /dev/null +++ b/black/CameraModeFollowHeading.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_FOLLOW_HEADING_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_FOLLOW_HEADING_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraMode.h" /* For struct CameraMode */ + +struct CameraModeFollowHeading +{ + struct CameraMode super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModeFollowHeading) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__23CameraModeFollowHeading = (struct CameraModeVftable*)0x008c7904; + +#endif /* BW1_DECOMP_CAMERA_MODE_FOLLOW_HEADING_INCLUDED_H */ diff --git a/black/CameraModeFree.h b/black/CameraModeFree.h new file mode 100644 index 0000000..6fb5169 --- /dev/null +++ b/black/CameraModeFree.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_FREE_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_FREE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "CameraMode.h" /* For struct CameraMode */ + +struct CameraModeFree +{ + struct CameraMode super; /* 0x0 */ + float field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; +}; +static_assert(sizeof(struct CameraModeFree) == 0x18, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__14CameraModeFree = (struct CameraModeVftable*)0x008c7958; + +#endif /* BW1_DECOMP_CAMERA_MODE_FREE_INCLUDED_H */ diff --git a/black/CameraModeNew.h b/black/CameraModeNew.h new file mode 100644 index 0000000..a5a5a2e --- /dev/null +++ b/black/CameraModeNew.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_NEW_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_NEW_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraMode.h" /* For struct CameraMode */ + +struct CameraModeNew +{ + struct CameraMode super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModeNew) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__13CameraModeNew = (struct CameraModeVftable*)0x008c7ab4; + +#endif /* BW1_DECOMP_CAMERA_MODE_NEW_INCLUDED_H */ diff --git a/black/CameraModeNew1.h b/black/CameraModeNew1.h new file mode 100644 index 0000000..85067e2 --- /dev/null +++ b/black/CameraModeNew1.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_NEW1_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_NEW1_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraModeNew.h" /* For struct CameraModeNew */ + +struct CameraModeNew1 +{ + struct CameraModeNew super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModeNew1) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__14CameraModeNew1 = (struct CameraModeVftable*)0x008c7a58; + +#endif /* BW1_DECOMP_CAMERA_MODE_NEW1_INCLUDED_H */ diff --git a/black/CameraModeNew2.h b/black/CameraModeNew2.h new file mode 100644 index 0000000..b87d5bd --- /dev/null +++ b/black/CameraModeNew2.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_NEW2_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_NEW2_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraModeNew.h" /* For struct CameraModeNew */ + +struct CameraModeNew2 +{ + struct CameraModeNew super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModeNew2) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__14CameraModeNew2 = (struct CameraModeVftable*)0x008c7b58; + +#endif /* BW1_DECOMP_CAMERA_MODE_NEW2_INCLUDED_H */ diff --git a/black/CameraModeNew3.h b/black/CameraModeNew3.h new file mode 100644 index 0000000..cdd11cb --- /dev/null +++ b/black/CameraModeNew3.h @@ -0,0 +1,183 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_NEW3_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_NEW3_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For struct LHCoord */ +#include /* For struct LHMatrix */ +#include /* For struct LHPoint, struct Point2D */ +#include /* For struct Zoomer, struct Zoomer3d */ +#include /* For bool32_t */ + +#include "CameraMode.h" /* For enum CAMERA_MODE_HAND_STATUS, enum CAMERA_MODE_MOUSE_STATUS, struct CameraMode, struct CameraModeVftable */ + +// Forward Declares + +struct CameraExclusion; +struct GArena; +struct GCamera; + +enum CameraModeNew3_fight_status_t +{ + CameraModeNew3_fight_status_t_0x0 = 0x0, + CameraModeNew3_fight_status_t_0x1 = 0x1, + CameraModeNew3_fight_status_t_0x2 = 0x2, + _CameraModeNew3_fight_status_t_COUNT = 0x3 +}; +static_assert(sizeof(enum CameraModeNew3_fight_status_t) == 0x4, "Data type is of wrong size"); + +static const char* CameraModeNew3_fight_status_t_strs[_CameraModeNew3_fight_status_t_COUNT] = { + "CameraModeNew3_fight_status_t_0x0", + "CameraModeNew3_fight_status_t_0x1", + "CameraModeNew3_fight_status_t_0x2", +}; + +struct CameraModeNew3Vftable +{ + struct CameraModeVftable super; /* 0x0 */ + void (__fastcall* Initialise)(struct CameraMode* this); /* 0x48 */ + void (__fastcall* Reinitialise)(struct CameraMode* this, const void* edx, bool param_2); + void (__fastcall* FlyToPosFoc)(struct CameraMode* this, const void* edx, struct LHPoint* param_2, struct LHPoint* param_3, float param_4); /* 0x50 */ + void (__fastcall* SetupVia)(struct CameraMode* this, const void* edx, const struct LHPoint* param_2, const struct LHPoint* param_3, const struct LHPoint* param_4, float param_5); + uint32_t (__fastcall* GetCameraFeatures)(struct CameraMode* this); + void (__fastcall* ForceRotateAboutPoint)(struct CameraMode* this, const void* edx, struct LHPoint* point); +}; +static_assert(sizeof(struct CameraModeNew3Vftable) == 0x60, "Data type is of wrong size"); + +struct CameraModeNew3 +{ + struct CameraMode super; /* 0x0 */ + uint32_t field_0x8; + struct LHPoint origin; + struct LHPoint heading; /* 0x18 */ + struct LHPoint field_0x24; + struct LHPoint field_0x30; + uint32_t field_0x3c; + uint32_t field_0x40; + bool32_t has_fight; + struct GArena* arena; + uint8_t field_0x4c; + uint8_t field_0x4d; + uint8_t field_0x4e; + uint8_t field_0x4f; + float yaw_0; /* 0x50 */ + float pitch_0; + float fight_distance; + int fight_time_left; + int time_in_arena; /* 0x60 */ + enum CameraModeNew3_fight_status_t fight_status; + struct LHPoint field_0x68; + float field_0x74; + float elapsed_time; + struct LHPoint rotate_point; + bool rotate_around_point; /* 0x88 */ + enum CAMERA_MODE_MOUSE_STATUS mouse_buttons; + uint32_t tricon_0x90; + uint32_t tricon_0x94; + struct Point2D from_screen_centre; + struct Point2D from_screen_centre_abs; /* 0xa0 */ + struct LHCoord mouse_delta; + struct LHCoord mouse_pos_current; /* 0xb0 */ + struct LHCoord rotate_around_mouse_pos; + struct LHCoord mouse_pos_1; /* 0xc0 */ + bool screen_centre_hit; + struct LHPoint mouse_hit_point; + struct LHPoint last_grab_mouse_hit_point; /* 0xd8 */ + float yaw_1; /* 0xe4 */ + float pitch_1; + float perp_distance_0xec; + struct LHPoint screen_centre_hit_point; /* 0xf0 */ + float distance_0xfc; + uint8_t field_0x100; + uint8_t field_0x101; + uint8_t field_0x102; + uint8_t field_0x103; + struct LHPoint field_0x104; + struct LHPoint field_0x110; + struct LHPoint field_0x11c; + int field_0x128; + struct LHPoint heading_0x12c; + struct LHPoint field_0x138; + bool hand_hit; /* 0x144 */ + uint8_t field_0x145; + uint8_t field_0x146; + uint8_t field_0x147; + bool hit_0x148; + struct LHPoint field_0x14c; + double field_0x158; + struct LHPoint field_0x160; + struct LHPoint field_0x16c; + struct LHMatrix field_0x178; + float distance_0x1a8; + enum CAMERA_MODE_HAND_STATUS hand_status; + struct LHCoord field_0x1b0; + struct Point2D field_0x1b8; + float length_0x1c0; + float vertical_distance; + struct LHPoint fallback_origin; + struct LHPoint fallback_heading; /* 0x1d4 */ + struct LHPoint field_0x1e0; + struct LHPoint origin_0x1ec; + struct LHPoint field_0x1f8; + struct LHPoint heading_0x204; + struct Zoomer field_0x210; + struct Zoomer3d field_0x240; + bool field_0x2d0; + uint8_t field_0x2d1; + uint8_t field_0x2d2; + uint8_t field_0x2d3; + struct LHCoord mouse_pos_previous; + struct LHCoord field_0x2dc; + float heading_distance; /* 0x2e4 */ + float idle_time; + int field_0x2ec; + int field_0x2f0; + struct CameraExclusion* camera_exclusion; + uint32_t field_0x2f8; + uint32_t field_0x2fc; +}; +static_assert(sizeof(struct CameraModeNew3) == 0x300, "Data type is of wrong size"); + +static struct CameraModeNew3Vftable* __vt__14CameraModeNew3 = (struct CameraModeNew3Vftable*)0x008c7bfc; + +// Static methods + +// win1.41 00458db0 mac 1007c250 CameraModeNew3::CalcPerpDistance(LHPoint &, LHPoint &, LHPoint &) +float __stdcall CalcPerpDistance__14CameraModeNew3FR7LHPointR7LHPointR7LHPoint(struct LHPoint* param_1, struct LHPoint* param_2, struct LHPoint* param_3); +// win1.41 00458f40 mac 10062a70 CameraModeNew3::FindBestAngle(float, float, LHPoint &, float &, float *) +float __cdecl FindBestAngle__14CameraModeNew3FffR7LHPointRfPf(float param_1, float param_2, float* param_3, float* param_4, float* param_5); + +// Constructors + +// win1.41 004572e0 mac 101a6040 CameraModeNew3::CameraModeNew3(GCamera *) +struct CameraModeNew3* __fastcall __ct__14CameraModeNew3FP7GCamera(struct CameraModeNew3* this, const void* edx, struct GCamera* camera); + +// Non-virtual methods + +// win1.41 00459230 mac 10025a60 CameraModeNew3::UpdateTricons(void) +void __fastcall UpdateTricons__14CameraModeNew3Fv(struct CameraModeNew3* this); +// win1.41 00459610 mac 101a4670 CameraModeNew3::UpdateClickParams(LHPoint &, LHPoint &, bool) +void __fastcall UpdateClickParams__14CameraModeNew3FR7LHPointR7LHPointb(struct CameraModeNew3* this, const void* edx, const struct LHPoint* param_1, const struct LHPoint* param_2, bool param_3); +// win1.41 00459c30 mac 10037970 CameraModeNew3:: +float __fastcall GetAltitude__14CameraModeNew3FR7LHPoint(struct CameraModeNew3* this, const void* edx, struct LHPoint* param_1); +// win1.41 00459d20 mac 101a4380 CameraModeNew3::SetAltitudeAndNormal(LHPoint &, LHPoint &) +void __fastcall SetAltitudeAndNormal__14CameraModeNew3FR7LHPointR7LHPoint(struct CameraModeNew3* this, const void* edx, struct LHPoint* param_1, struct LHPoint* normal); +// win1.41 00459f10 mac 1007e670 CameraModeNew3::DragFocusOntoLand(LHPoint &, LHPoint &) +void __fastcall DragFocusOntoLand__14CameraModeNew3FR7LHPointR7LHPoint(struct CameraModeNew3* this, const void* edx, struct LHPoint* param_1, struct LHPoint* param_2); +// win1.41 0045a080 mac 101a3db0 CameraModeNew3::UpdateStrafe(LHPoint &, LHPoint &, float &, float &, float, unsigned long) +bool __fastcall UpdateStrafe__14CameraModeNew3FR7LHPointR7LHPointRfRffUl(struct CameraModeNew3* this, const void* edx, struct LHPoint* param_1, struct LHPoint* param_2, float* param_3, float* param_4, float param_5, uint32_t param_6); +// win1.41 0045a390 mac 100098e0 CameraModeNew3::WantToQuitFight(LHPoint, LHPoint, float) +bool __fastcall WantToQuitFight__14CameraModeNew3F7LHPoint7LHPointf(struct CameraModeNew3* this, const void* edx, struct LHPoint param_1, struct LHPoint param_2, float param_3); +// win1.41 0045a4d0 mac 101a3910 CameraModeNew3::StartFight(GArena *) +void __fastcall StartFight__14CameraModeNew3FP6GArena(struct CameraModeNew3* this, const void* edx, struct GArena* arena); +// win1.41 0045a830 mac inlined CameraModeNew3::EndFightNow(int) +void __fastcall EndFightNow__14CameraModeNew3Fi(struct CameraModeNew3* this, const void* edx, int param_1); + +// Override methods + +// win1.41 0045a960 mac 1003a4f0 CameraModeNew3::Update(void) +void __fastcall Update__14CameraModeNew3Fv(struct CameraModeNew3* this); + +#endif /* BW1_DECOMP_CAMERA_MODE_NEW3_INCLUDED_H */ diff --git a/black/CameraModePath.h b/black/CameraModePath.h new file mode 100644 index 0000000..8b1d6d9 --- /dev/null +++ b/black/CameraModePath.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_PATH_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_PATH_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraMode.h" /* For struct CameraMode */ + +struct CameraModePath +{ + struct CameraMode super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModePath) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__14CameraModePath = (struct CameraModeVftable*)0x008c7d10; + +#endif /* BW1_DECOMP_CAMERA_MODE_PATH_INCLUDED_H */ diff --git a/black/CameraModeTwoObjects.h b/black/CameraModeTwoObjects.h new file mode 100644 index 0000000..8870c47 --- /dev/null +++ b/black/CameraModeTwoObjects.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CAMERA_MODE_TWO_OBJECTS_INCLUDED_H +#define BW1_DECOMP_CAMERA_MODE_TWO_OBJECTS_INCLUDED_H + +#include /* For static_assert */ + +#include "CameraMode.h" /* For struct CameraMode */ + +struct CameraModeTwoObjects +{ + struct CameraMode super; /* 0x0 */ +}; +static_assert(sizeof(struct CameraModeTwoObjects) == 0x8, "Data type is of wrong size"); + +static struct CameraModeVftable* __vt__20CameraModeTwoObjects = (struct CameraModeVftable*)0x008c7dd0; + +#endif /* BW1_DECOMP_CAMERA_MODE_TWO_OBJECTS_INCLUDED_H */ diff --git a/black/ChallengeRoom.h b/black/ChallengeRoom.h new file mode 100644 index 0000000..805f9b1 --- /dev/null +++ b/black/ChallengeRoom.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_CHALLENGE_ROOM_INCLUDED_H +#define BW1_DECOMP_CHALLENGE_ROOM_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include "PictureRoom.h" /* For struct PictureRoomBase */ + +struct ChallengeRoom +{ + struct PictureRoomBase super; /* 0x0 */ +}; +static_assert(sizeof(struct ChallengeRoom) == 0x160, "Data type is of wrong size"); + +static struct TempleRoomVftable* __vt__13ChallengeRoom = (struct TempleRoomVftable*)0x0099ead8; + +// Static methods + +// win1.41 00784b30 mac 101abfe0 ChallengeRoom::CreateChallengeFiles(char*) +bool __stdcall CreateChallengeFiles__13ChallengeRoomFPc(void); + +// Constructors + +// win1.41 00781a60 mac 101b4180 ChallengeRoom::ChallengeRoom(void) +struct ChallengeRoom* __fastcall __ct__13ChallengeRoomFv(struct ChallengeRoom* this); + +#endif /* BW1_DECOMP_CHALLENGE_ROOM_INCLUDED_H */ diff --git a/black/ChannelBox.h b/black/ChannelBox.h new file mode 100644 index 0000000..1e576af --- /dev/null +++ b/black/ChannelBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_CHANNEL_BOX_INCLUDED_H +#define BW1_DECOMP_CHANNEL_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct ChannelBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0xac4]; +}; +static_assert(sizeof(struct ChannelBox) == 0xad4, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__10ChannelBox = (struct DialogBoxBaseVftable*)0x008dea3c; + +#endif /* BW1_DECOMP_CHANNEL_BOX_INCLUDED_H */ diff --git a/black/Citadel.h b/black/Citadel.h new file mode 100644 index 0000000..102d6fc --- /dev/null +++ b/black/Citadel.h @@ -0,0 +1,60 @@ +#ifndef BW1_DECOMP_CITADEL_INCLUDED_H +#define BW1_DECOMP_CITADEL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "CitadelPart.h" /* For struct CitadelPart */ +#include "Container.h" /* For struct Container */ + +// Forward Declares + +struct CitadelHeart; +struct GCitadelHeartInfo; +struct GTribeInfo; +struct LH3DMesh; +struct Living; +struct MapCoords; +struct Town; +struct WorshipSite; + +struct Citadel +{ + struct Container super; /* 0x0 */ + struct CitadelHeart* heart; /* 0x30 */ + struct WorshipSite* worship_sites[0x6]; + struct LHListHead__CitadelPart part_list; /* 0x4c */ + uint32_t field_0x54; + uint32_t field_0x58; + uint32_t field_0x5c; + uint32_t field_0x60; + uint32_t field_0x64; + uint32_t field_0x68; + float influence; + uint32_t field_0x70; + uint32_t field_0x74; + uint32_t field_0x78; + struct Living* living; +}; +static_assert(sizeof(struct Citadel) == 0x80, "Data type is of wrong size"); + +static struct ContainerVftable* __vt__7Citadel = (struct ContainerVftable*)0x008c7e68; + +// Static methods + +// win1.41 00463240 mac 101b9230 Citadel::CreateCitadel(MapCoords const &, GCitadelHeartInfo const *, unsigned char, float, float) +struct Citadel* __cdecl CreateCitadel__7CitadelFRC9MapCoordsPC17GCitadelHeartInfoUcff(struct MapCoords* coords, struct GCitadelHeartInfo* info, uint8_t param_3, float param_4, float param_5); + +// Non-virtual methods + +// win1.41 00463130 mac 101b9680 Citadel::AddTown(Town*) +void* __fastcall AddTown__7CitadelFP4Town(struct Citadel* this, const void* edx, struct Town* town); +// win1.41 00463220 mac 101b9420 Citadel::FindOrCreateWorshipSite(GTribeInfo const *) +struct WorshipSite* __fastcall FindOrCreateWorshipSite__7CitadelFPC10GTribeInfo(struct Citadel* this, const void* edx, struct GTribeInfo* tribe_info); + +// win1.41 004699c0 mac 101c4740 CPController::Init(LH3DMesh*) +void __cdecl Init__12CPControllerFP8LH3DMesh(struct LH3DMesh* mesh); +// win1.41 00469990 mac 101c4ca0 CPController::Init(void) +void __stdcall Init__12CPControllerFv(void); + +#endif /* BW1_DECOMP_CITADEL_INCLUDED_H */ diff --git a/black/CitadelHeart.h b/black/CitadelHeart.h new file mode 100644 index 0000000..c3c735b --- /dev/null +++ b/black/CitadelHeart.h @@ -0,0 +1,112 @@ +#ifndef BW1_DECOMP_CITADEL_HEART_INCLUDED_H +#define BW1_DECOMP_CITADEL_HEART_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For LEASH_TYPE_LAST */ + +#include "CitadelPart.h" /* For struct CitadelPart */ +#include "Object.h" /* For struct Object */ + +// Forward Declares + +struct Citadel; +struct GCitadelHeartInfo; +struct GTribeInfo; +struct GWorshipSiteInfo; +struct GameOSFile; +struct GameThing; +struct LH3DObject; +struct LH3DSprite; +struct MapCoords; +struct TempleLeash; +struct WorshipSite; + +struct LeashObj +{ + struct Object super; /* 0x0 */ + int field_0x54; + struct TempleLeash* temple_leash; + struct LH3DObject* object; + float field_0x60; + float field_0x64; + float field_0x68; + uint32_t field_0x6c; + struct LH3DSprite* sprite; /* 0x70 */ + float field_0x74; +}; +static_assert(sizeof(struct LeashObj) == 0x78, "Data type is of wrong size"); + +struct TempleLeash +{ + int field_0x0; + struct LeashObj* leashes[LEASH_TYPE_LAST]; +}; +static_assert(sizeof(struct TempleLeash) == 0x10, "Data type is of wrong size"); + +// Constructors + +// win1.41 00464650 mac 101c1350 TempleLeash::TempleLeash(LH3DObject *, unsigned long) +struct TempleLeash* __fastcall __ct__11TempleLeashFP10LH3DObjectUl(struct TempleLeash* this, const void* edx, struct LH3DObject* param_1, uint32_t param_2); + +struct CitadelHeart +{ + struct CitadelPart super; /* 0x0 */ + uint32_t field_0x8c; + uint32_t field_0x90; + struct GameThing* field_0x94; + struct GameThing* field_0x98; + uint32_t field_0x9c; + uint32_t field_0xa0; + int field_0xa4; + uint32_t field_0xa8; + struct GameThing* field_0xac; + struct GameThing* field_0xb0; + uint32_t field_0xb4; + uint8_t field_0xb8; + float field_0xbc; + struct GameThing* field_0xc0; + uint32_t field_0xc4; + uint32_t field_0xc8; + struct GameThing* field_0xcc; + float field_0xd0; + uint32_t field_0xd4; + uint32_t field_0xd8; + struct GameThing* field_0xdc; + uint32_t field_0xe0; + struct TempleLeash* leashes; +}; +static_assert(sizeof(struct CitadelHeart) == 0xe8, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__12CitadelHeart = (struct MultiMapFixedVftable*)0x008c8d00; + +// Static methods + +// win1.41 00464e20 mac 101c0960 CitadelHeart::Create(MapCoords const &, GCitadelHeartInfo const *, Citadel *, float, float, float, int) +struct CitadelHeart* __cdecl Create__12CitadelHeartFRC9MapCoordsPC17GCitadelHeartInfoP7Citadelfffi(struct MapCoords* coords, struct GCitadelHeartInfo* info, struct Citadel* citadel, float param_4, float param_5, float param_6, int param_7); + +// Constructors + +// win1.41 inlined mac inlined CitadelHeart::CitadelHeart(void) +struct CitadelHeart* __fastcall __ct__12CitadelHeartFv(struct CitadelHeart* this); +// win1.41 004649b0 mac 101c0f90 CitadelHeart::__ct(MapCoords const &, GCitadelHeartInfo const *, Citadel *, float, float, float, int) +struct CitadelHeart* __fastcall __ct__12CitadelHeartFRC9MapCoordsPC17GCitadelHeartInfoP7Citadelfffi(struct CitadelHeart* this, const void* edx, struct MapCoords* coords, struct GCitadelHeartInfo* info, struct Citadel* citadel, float param_4, float param_5, float param_6, int param_7); + +// Non-virtual methods + +// win1.41 00464950 mac 101c1180 CitadelHeart::CreateLeashes(void) +void __fastcall CreateLeashes__12CitadelHeartFv(struct CitadelHeart* this); +// win1.41 00464da0 mac 101c0af0 CitadelHeart::SetToZero(void) +void __fastcall SetToZero__12CitadelHeartFv(struct CitadelHeart* this); +// win1.41 00465110 mac 101c03b0 CitadelHeart::CreateBuiltWorshipSite(MapCoords const &, GWorshipSiteInfo const *, Citadel *, GTribeInfo const *) +struct WorshipSite* __fastcall CreateBuiltWorshipSite__12CitadelHeartFRC9MapCoordsPC16GWorshipSiteInfoP7CitadelPC10GTribeInfo(struct CitadelHeart* this, const void* edx, const struct MapCoords* coords, const struct GWorshipSiteInfo* info, const struct Citadel* citadel, const struct GTribeInfo* tribe_info); + +// Override methods + +// win1.41 004657f0 mac 101bf6e0 CitadelHeart::Load(GameOSFile &) +uint32_t __fastcall Load__12CitadelHeartFR10GameOSFile(struct CitadelHeart* this, const void* edx, struct GameOSFile* file); +// win1.41 004675a0 mac 101be430 CitadelHeart::CallVirtualFunctionsForCreation(MapCoords const &) +void __fastcall CallVirtualFunctionsForCreation__12CitadelHeartFRC9MapCoords(struct CitadelHeart* this, const void* edx, const struct MapCoords* coords); + +#endif /* BW1_DECOMP_CITADEL_HEART_INCLUDED_H */ diff --git a/black/CitadelHeartInfo.h b/black/CitadelHeartInfo.h new file mode 100644 index 0000000..8ead328 --- /dev/null +++ b/black/CitadelHeartInfo.h @@ -0,0 +1,24 @@ +#ifndef BW1_DECOMP_CITADEL_HEART_INFO_INCLUDED_H +#define BW1_DECOMP_CITADEL_HEART_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "CitadelPartInfo.h" /* For struct GCitadelPartInfo */ + +struct GCitadelHeartInfo +{ + struct GCitadelPartInfo super; /* 0x0 */ + uint32_t field_0x134; + uint32_t field_0x138; + uint32_t field_0x13c; + float field_0x140; + float field_0x144; + float field_0x148; + float field_0x14c; + float field_0x150; + float field_0x154; +}; +static_assert(sizeof(struct GCitadelHeartInfo) == 0x158, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_CITADEL_HEART_INFO_INCLUDED_H */ diff --git a/black/CitadelPart.h b/black/CitadelPart.h new file mode 100644 index 0000000..d432a0e --- /dev/null +++ b/black/CitadelPart.h @@ -0,0 +1,45 @@ +#ifndef BW1_DECOMP_CITADEL_PART_INCLUDED_H +#define BW1_DECOMP_CITADEL_PART_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "MultiMapFixed.h" /* For struct MultiMapFixed */ + +// Forward Declares + +struct Citadel; +struct GCitadelPartInfo; +struct GameOSFile; +struct GameThing; +struct MapCoords; + +struct CitadelPart +{ + struct MultiMapFixed super; /* 0x0 */ + float field_0x7c; + struct Citadel* citadel; /* 0x80 */ + struct CitadelPart* next; + struct GameThing* game_thing_0x88; +}; +static_assert(sizeof(struct CitadelPart) == 0x8c, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__11CitadelPart = (struct MultiMapFixedVftable*)0x008cab00; + +// Constructors + +// win1.41 inlined mac 1030de40 CitadelPart::CitadelPart(void) +struct CitadelPart* __fastcall __ct__11CitadelPartFv(struct CitadelPart* this); +// win1.41 004693f0 mac 101c35b0 CitadelPart::CitadelPart(MapCoords const &, GCitadelPartInfo const *, Citadel *, float, float, float, int) +struct CitadelPart* __fastcall __ct__11CitadelPartFRC9MapCoordsPC16GCitadelPartInfoP7Citadelfffi(struct CitadelPart* this, const void* edx, struct MapCoords* coords, struct GCitadelPartInfo* info, struct Citadel* citadel, float y_angle, float scale, float param_6, int param_7); + +// Override methods + +// win1.41 004698b0 mac 101c2780 CitadelPart::Load(GameOSFile &) +uint32_t __fastcall Load__11CitadelPartFR10GameOSFile(struct CitadelPart* this, const void* edx, struct GameOSFile* file); + +DECLARE_LH_LIST_HEAD(CitadelPart); + +#endif /* BW1_DECOMP_CITADEL_PART_INCLUDED_H */ diff --git a/black/CitadelPartInfo.h b/black/CitadelPartInfo.h new file mode 100644 index 0000000..55f26b8 --- /dev/null +++ b/black/CitadelPartInfo.h @@ -0,0 +1,20 @@ +#ifndef BW1_DECOMP_CITADEL_PART_INFO_INCLUDED_H +#define BW1_DECOMP_CITADEL_PART_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "MultiMapFixedInfo.h" /* For struct GMultiMapFixedInfo */ + +struct GCitadelPartInfo +{ + struct GMultiMapFixedInfo super; /* 0x0 */ + uint32_t field_0x120; + uint32_t field_0x124; + float life; + uint32_t field_0x12c; + float field_0x130; +}; +static_assert(sizeof(struct GCitadelPartInfo) == 0x134, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_CITADEL_PART_INFO_INCLUDED_H */ diff --git a/black/Climate.h b/black/Climate.h new file mode 100644 index 0000000..6c7d0e2 --- /dev/null +++ b/black/Climate.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_CLIMATE_INCLUDED_H +#define BW1_DECOMP_CLIMATE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "GameThing.h" /* For struct GameThing */ + +struct GClimate +{ + struct GameThing super; /* 0x0 */ + uint8_t field_0x14[0x74]; +}; +static_assert(sizeof(struct GClimate) == 0x88, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__8GClimate = (struct GameThingVftable*)0x008f9f9c; + +DECLARE_LH_LINKED_LIST(GClimate); + +#endif /* BW1_DECOMP_CLIMATE_INCLUDED_H */ diff --git a/black/Collide.h b/black/Collide.h new file mode 100644 index 0000000..94492df --- /dev/null +++ b/black/Collide.h @@ -0,0 +1,216 @@ +#ifndef BW1_DECOMP_COLLIDE_INCLUDED_H +#define BW1_DECOMP_COLLIDE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int16_t, uint32_t, uint8_t */ + +#include /* For struct LHPoint, struct Point2D */ +#include /* For bool32_t */ + +// Forward Declares + +struct Game3DObject; +struct LH3DObject; +struct MapCell; +struct MapCoords; +struct MobileWallHug; +struct NewCollide; +struct Object; +struct Q210NewCollide3Obj; + +enum ObjectCircleIteratorDirection +{ + OBJECT_CIRCLE_ITERATOR_DIRECTION_SAME = 0x0, + OBJECT_CIRCLE_ITERATOR_DIRECTION_RIGHT = 0x1, + OBJECT_CIRCLE_ITERATOR_DIRECTION_LEFT = 0x2, + OBJECT_CIRCLE_ITERATOR_DIRECTION_DOWN = 0x3, + OBJECT_CIRCLE_ITERATOR_DIRECTION_UP = 0x4, + OBJECT_CIRCLE_ITERATOR_DIRECTION_UP_LEFT = 0x5, + OBJECT_CIRCLE_ITERATOR_DIRECTION_DOWN_LEFT = 0x6, + OBJECT_CIRCLE_ITERATOR_DIRECTION_UP_RIGHT = 0x7, + OBJECT_CIRCLE_ITERATOR_DIRECTION_DOWN_RIGHT = 0x8, + OBJECT_CIRCLE_ITERATOR_DIRECTION_NONE = 0x9, + _ObjectCircleIteratorDirection_COUNT = 0xa +}; +static_assert(sizeof(enum ObjectCircleIteratorDirection) == 0x4, "Data type is of wrong size"); + +static const char* ObjectCircleIteratorDirection_strs[_ObjectCircleIteratorDirection_COUNT] = { + "OBJECT_CIRCLE_ITERATOR_DIRECTION_SAME", + "OBJECT_CIRCLE_ITERATOR_DIRECTION_RIGHT", + "OBJECT_CIRCLE_ITERATOR_DIRECTION_LEFT", + "OBJECT_CIRCLE_ITERATOR_DIRECTION_DOWN", + "OBJECT_CIRCLE_ITERATOR_DIRECTION_UP", + "OBJECT_CIRCLE_ITERATOR_DIRECTION_UP_LEFT", + "OBJECT_CIRCLE_ITERATOR_DIRECTION_DOWN_LEFT", + "OBJECT_CIRCLE_ITERATOR_DIRECTION_UP_RIGHT", + "OBJECT_CIRCLE_ITERATOR_DIRECTION_DOWN_RIGHT", + "OBJECT_CIRCLE_ITERATOR_DIRECTION_NONE", +}; + +struct Point2DCompare +{ + struct Point2D point; /* 0x0 */ + bool result; +}; +static_assert(sizeof(struct Point2DCompare) == 0xc, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 0060f740 mac inlined Point2DCompare<0>::operator=(const Point2DCompare<0>*) +struct Point2DCompare* __fastcall __as__17Point2DCompare_0_(struct Point2DCompare* this, const void* edx, struct Point2DCompare* other); +// win1.41 0060f720 mac inlined Point2DCompare<1>::operator=(const Point2DCompare<1>*) +struct Point2DCompare* __fastcall __as__17Point2DCompare_1_(struct Point2DCompare* this, const void* edx, struct Point2DCompare* other); +// win1.41 006101f0 mac inlined Point2DCompare<0>::operator<(const Point2DCompare<0>*) +bool __fastcall __lt__17Point2DCompare_FRC17Point2DCompare_0_(struct Point2DCompare* this, const void* edx, struct Point2DCompare* other); +// win1.41 00610180 mac inlined Point2DCompare<1>::operator<(const Point2DCompare<1>*) +bool __fastcall __lt__17Point2DCompare_FRC17Point2DCompare_1_(struct Point2DCompare* this, const void* edx, struct Point2DCompare* other); +// win1.41 00610230 mac inlined Point2DCompare<0>::Resolve() +void __fastcall Resolve__Point2DCompare_0_(struct Point2DCompare* this); +// win1.41 006101c0 mac inlined Point2DCompare<1>::Resolve() +void __fastcall Resolve__Point2DCompare_1_(struct Point2DCompare* this); + +struct IntersectIntervalCircle +{ + struct Point2DCompare compares[0x2]; /* 0x0 */ + float field_0x18; + float field_0x1c; + float field_0x20; + bool field_0x24; + struct Q210NewCollide3Obj* obj; +}; +static_assert(sizeof(struct IntersectIntervalCircle) == 0x2c, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 006169f0 mac inlined IntersectIntervalCircle<0>::Resolve(void) +void __fastcall Resolve__26IntersectIntervalCircle_0_Fv(struct IntersectIntervalCircle* this); +// win1.41 006169f0 mac inlined IntersectIntervalCircle<1>::Resolve(void) +void __fastcall Resolve__26IntersectIntervalCircle_1_Fv(struct IntersectIntervalCircle* this); + +struct CircleHugInfo +{ + struct Q210NewCollide3Obj* obj; /* 0x0 */ + uint8_t turns_to_obj; + uint8_t field_0x5; + int16_t field_0x6; +}; +static_assert(sizeof(struct CircleHugInfo) == 0x8, "Data type is of wrong size"); + +// Constructors + +// win1.41 0060a640 mac 103c45d0 CircleHugInfo::CircleHugInfo(void) +struct CircleHugInfo* __fastcall __ct__13CircleHugInfoFv(struct CircleHugInfo* this); + +// Non-virtual methods + +// win1.41 0060a660 mac 103c4590 CircleHugInfo::GetObjectPtr(void) +struct Q210NewCollide3Obj* __fastcall GetObjectPtr__13CircleHugInfoFv(struct CircleHugInfo* this); +// win1.41 0060a770 mac 100260e0 CircleHugInfo::SetObjectPtr(NewCollide::Obj*, MobileWallHug*, bool) +void __fastcall SetObjectPtr__13CircleHugInfoFPQ210NewCollide3ObjP13MobileWallHugb(struct CircleHugInfo* this, const void* edx, struct Q210NewCollide3Obj* param_2, struct MobileWallHug* param_3, bool param_4); + +struct Q210NewCollide4List +{ + uint32_t size; /* 0x0 */ + enum ObjectCircleIteratorDirection direction; + struct Q210NewCollide3Obj** objs; +}; +static_assert(sizeof(struct Q210NewCollide4List) == 0xc, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 inlined mac inlined NewCollide::List::Collide(NewCollide::List) +bool __fastcall Collide__Q210NewCollide4ListFPQ210NewCollide4List(const struct Q210NewCollide4List* this, const void* edx, const struct Q210NewCollide4List* other); + +struct ObjectCircleIterator +{ + enum ObjectCircleIteratorDirection direction; /* 0x0 */ + struct NewCollide* collide_data; + struct Q210NewCollide3Obj* collide_obj; + struct Object* obj; +}; +static_assert(sizeof(struct ObjectCircleIterator) == 0x10, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 006159a0 mac 1005f630 ObjectCircleIterator::operator NewCollide::Obj +struct Q210NewCollide3Obj* __fastcall __opPQ210NewCollide3Obj__20ObjectCircleIteratorFv(struct ObjectCircleIterator* this); +// win1.41 0060d0a0 mac 100644a0 ObjectCircleIterator::Init(int, MapCoords const &) +void __fastcall Init__20ObjectCircleIteratorFiRC9MapCoords(struct ObjectCircleIterator* this, const void* edx, enum ObjectCircleIteratorDirection direction, const struct MapCoords* coords); +// win1.41 0060d280 mac 100649d0 ObjectCircleIterator::Init(Object *, MapCoords const &) +void __fastcall Init__20ObjectCircleIteratorFP6ObjectRC9MapCoords(struct ObjectCircleIterator* this, const void* edx, struct Object* obj, const struct MapCoords* coords); + +struct Q210NewCollide3Obj +{ + struct LHPoint position; /* 0x0 */ + float radius; + float r2; /* 0x10 */ + float angle; + struct LHPoint bounding_box; + struct Q210NewCollide4List* iterator_list; /* 0x24 */ +}; +static_assert(sizeof(struct Q210NewCollide3Obj) == 0x28, "Data type is of wrong size"); + +// Constructors + +// win1.41 0082ad90 mac 1061bfd4 NewCollide::Obj::Obj(float, LHPoint*) +struct Q210NewCollide3Obj* __fastcall __ct__Q210NewCollide3ObjFfP7LHPoint(struct Q210NewCollide3Obj* this, const void* edx, float radius, struct LHPoint* position); +// win1.41 0082add0 mac 100d9da0 NewCollide::Obj::Obj(LHPoint*,float,float,float) +struct Q210NewCollide3Obj* __fastcall __ct__Q210NewCollide3ObjFP7LHPointfff(struct Q210NewCollide3Obj* this, const void* edx, struct LHPoint* position, float bb_x, float bb_z, float angle); + +// Non-virtual methods + +// win1.41 00828f40 mac 100befb0 NewCollide::Obj::CreateList(void) +void __fastcall CreateList__Q210NewCollide3ObjFv(struct Q210NewCollide3Obj* this); +// win1.41 inlined mac inlined NewCollide::Obj::Collide(NewCollide::List) +bool __fastcall Collide__Q210NewCollide3ObjFPQ210NewCollide4List(const struct Q210NewCollide3Obj* this, const void* edx, const struct Q210NewCollide4List* other); +// win1.41 00829140 mac 1061b32c NewCollide::Obj::Collide(float, NewCollide::Obj*) +bool32_t __fastcall Collide__Q210NewCollide3ObjFPQ210NewCollide3Obj(const struct Q210NewCollide3Obj* this, const void* edx, const struct Q210NewCollide3Obj* other); +// win1.41 0082ae60 mac 1061b344 NewCollide::Obj::~Obj(void) +void __fastcall __dt__Q210NewCollide3ObjFv(struct Q210NewCollide3Obj* this); + +struct NewCollide +{ + struct Q210NewCollide3Obj* obj; /* 0x0 */ +}; +static_assert(sizeof(struct NewCollide) == 0x4, "Data type is of wrong size"); + +// Constructors + +// win1.41 00829390 mac 1061bfd4 NewCollide::NewCollide(LH3DObject*) +struct NewCollide* __fastcall __ct__10NewCollideFP10LH3DObject(struct NewCollide* this, const void* edx, struct LH3DObject* obj); + +// Non-virtual methods + +// win1.41 0082aea0 mac 1061b35c NewCollide::~NewCollide(void) +void __fastcall __dt__10NewCollideFv(struct NewCollide* this); + +struct NewCollideDescriptor +{ + uint32_t count; /* 0x0 */ + int min_x; + int max_x; + int min_z; + int max_z; /* 0x10 */ + int current_x; + int current_z; + int array_index; + uint8_t* array; /* 0x20 */ +}; +static_assert(sizeof(struct NewCollideDescriptor) == 0x24, "Data type is of wrong size"); + +// Constructors + +// win1.41 0046a860 mac 101c5420 NewCollideDescriptor::NewCollideDescriptor(Object*) +struct NewCollideDescriptor* __fastcall __ct__20NewCollideDescriptorFP6Object(struct NewCollideDescriptor* this, const void* edx, struct Object* obj); + +// Non-virtual methods + +// win1.41 0046aaf0 mac 101c5310 NewCollideDescriptor::~NewCollideDescriptor(void) +void __fastcall __dt__20NewCollideDescriptorFv(struct NewCollideDescriptor* this); +// win1.41 0046ab10 mac 101c4f70 NewCollideDescriptor::Init(Game3DObject*) +void __fastcall Init__20NewCollideDescriptorFP12Game3DObject(struct NewCollideDescriptor* this, const void* edx, struct Game3DObject* obj); +// win1.41 0046ad80 mac 101c4db0 NewCollideDescriptor::GetNext(void) +struct MapCell* __fastcall GetNext__20NewCollideDescriptorFv(struct NewCollideDescriptor* this); + +#endif /* BW1_DECOMP_COLLIDE_INCLUDED_H */ diff --git a/black/Config.h b/black/Config.h new file mode 100644 index 0000000..5577ce1 --- /dev/null +++ b/black/Config.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_CONFIG_INCLUDED_H +#define BW1_DECOMP_CONFIG_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For struct LHOSFile */ + +struct Config +{ + struct LHOSFile file; /* 0x0 */ + uint8_t field_0x8[0x104]; + int field_0x10c; +}; +static_assert(sizeof(struct Config) == 0x110, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 0046b1f0 mac 100bf310 Config::Process(void) +void __fastcall Process__6ConfigFv(struct Config* this); +// win1.41 0046b290 mac 100befa0 Config::ProcessOneGameTurn(void) +void __fastcall ProcessOneGameTurn__6ConfigFv(struct Config* this); + +// win1.41 0046b0b0 mac 100bf450 ConfigGetFPS(void) +int __cdecl ConfigGetFPS__Fv(void); + +#endif /* BW1_DECOMP_CONFIG_INCLUDED_H */ diff --git a/black/Container.h b/black/Container.h new file mode 100644 index 0000000..977e1c8 --- /dev/null +++ b/black/Container.h @@ -0,0 +1,36 @@ +#ifndef BW1_DECOMP_CONTAINER_INCLUDED_H +#define BW1_DECOMP_CONTAINER_INCLUDED_H + +#include /* For static_assert */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos, struct GameThingWithPosVftable */ + +// Forward Declares + +struct GContainerInfo; +struct GPlayer; + +struct ContainerVftable +{ + struct GameThingWithPosVftable super; /* 0x0 */ +}; +static_assert(sizeof(struct ContainerVftable) == 0x500, "Data type is of wrong size"); + +union ContainerBase +{ + struct GameThingWithPos super; + struct ContainerVftable* vftable; +}; +static_assert(sizeof(union ContainerBase) == 0x28, "Data type is of wrong size"); + +struct Container +{ + union ContainerBase base; /* 0x0 */ + struct GContainerInfo* info; /* 0x28 */ + struct GPlayer* owner; +}; +static_assert(sizeof(struct Container) == 0x30, "Data type is of wrong size"); + +static struct ContainerVftable* __vt__9Container = (struct ContainerVftable*)0x008cb980; + +#endif /* BW1_DECOMP_CONTAINER_INCLUDED_H */ diff --git a/black/ContainerInfo.h b/black/ContainerInfo.h new file mode 100644 index 0000000..978f597 --- /dev/null +++ b/black/ContainerInfo.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_CONTAINER_INFO_INCLUDED_H +#define BW1_DECOMP_CONTAINER_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +struct GContainerInfo +{ + struct GBaseInfo super; /* 0x0 */ + uint32_t field_0x10; + uint8_t field_0x14[0xfc]; + uint32_t field_0x110; + uint8_t field_0x114[0x2c]; + float field_0x140; + float field_0x144; +}; +static_assert(sizeof(struct GContainerInfo) == 0x148, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_CONTAINER_INFO_INCLUDED_H */ diff --git a/black/ControlHand.h b/black/ControlHand.h new file mode 100644 index 0000000..eb74ffb --- /dev/null +++ b/black/ControlHand.h @@ -0,0 +1,247 @@ +#ifndef BW1_DECOMP_CONTROL_HAND_INCLUDED_H +#define BW1_DECOMP_CONTROL_HAND_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For struct LHPoint */ + +#include "Morphable.h" /* For struct Morphable */ + +// Forward Declares + +struct GInterfaceStatus; +struct HandFX; +struct HandState; +struct HandStateCamera; +struct HandStateCitadel; +struct HandStateCreature; +struct HandStateGrain; +struct HandStateHolding; +struct HandStateInvisible; +struct HandStateMultiPickUp; +struct HandStateNormal; +struct HandStatePlayAnim; +struct HandStateTotem; +struct HandStateTug; +struct LHMatrix; + +struct ControlHandUpdateInfo +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct ControlHandUpdateInfo) == 0x1, "Data type is of wrong size"); + +struct CHand__State__Named +{ + struct HandStateInvisible* invisible; /* 0x0 */ + struct HandStateNormal* normal; + struct HandStateCamera* camera; + struct HandStateTug* tug; + struct HandStateHolding* holding; /* 0x10 */ + struct HandStateTotem* totem; + struct HandStateMultiPickUp* multi_pick_up; + struct HandStateCreature* creature; + struct HandStateGrain* grain; /* 0x20 */ + struct HandStatePlayAnim* play_anim; + struct HandStateCitadel* citadel; +}; +static_assert(sizeof(struct CHand__State__Named) == 0x2c, "Data type is of wrong size"); + +union CHand__State +{ + struct CHand__State__Named named; + struct HandState* raw[0xb]; +}; +static_assert(sizeof(union CHand__State) == 0x2c, "Data type is of wrong size"); + +struct CHand +{ + struct Morphable super; /* 0x0 */ + float field_0x4834; + float max_distance_from_user; + int field_0x483c; + uint32_t field_0x4840; + uint32_t field_0x4844; + uint32_t field_0x4848; + int field_0x484c; + struct GInterfaceStatus* interface_status; /* 0x4850 */ + float field_0x4854; + uint8_t field_0x4858; + uint8_t field_0x4859; + uint8_t field_0x485a; + uint8_t field_0x485b; + uint32_t field_0x485c; + uint32_t field_0x4860; + uint32_t field_0x4864; + uint8_t field_0x4868; + uint8_t field_0x4869; + uint8_t field_0x486a; + uint8_t field_0x486b; + uint32_t field_0x486c; + uint32_t field_0x4870; + uint8_t field_0x4874; + uint8_t field_0x4875; + uint8_t field_0x4876; + uint8_t field_0x4877; + uint32_t current_state; + union CHand__State hand_states; + uint8_t field_0x48a8; + uint8_t field_0x48a9; + uint8_t field_0x48aa; + uint8_t field_0x48ab; + uint8_t field_0x48ac; + uint8_t field_0x48ad; + uint8_t field_0x48ae; + uint8_t field_0x48af; + uint8_t field_0x48b0; + uint8_t field_0x48b1; + uint8_t field_0x48b2; + uint8_t field_0x48b3; + uint32_t field_0x48b4; + float field_0x48b8; + float field_0x48bc; + uint8_t field_0x48c0; + uint8_t field_0x48c1; + uint8_t field_0x48c2; + uint8_t field_0x48c3; + uint8_t field_0x48c4; + uint8_t field_0x48c5; + uint8_t field_0x48c6; + uint8_t field_0x48c7; + uint8_t field_0x48c8; + uint8_t field_0x48c9; + uint8_t field_0x48ca; + uint8_t field_0x48cb; + uint8_t field_0x48cc; + uint8_t field_0x48cd; + uint8_t field_0x48ce; + uint8_t field_0x48cf; + uint8_t field_0x48d0; + uint8_t field_0x48d1; + uint8_t field_0x48d2; + uint8_t field_0x48d3; + struct LHPoint point_0x48d4; + struct LHPoint point_0x48e0; + struct LHPoint point_0x48ec; + uint32_t field_0x48f8; + uint32_t field_0x48fc; + uint32_t field_0x4900; + uint32_t field_0x4904; + uint32_t field_0x4908; + uint32_t field_0x490c; + uint8_t field_0x4910; + uint8_t field_0x4911; + uint8_t field_0x4912; + uint8_t field_0x4913; + uint8_t field_0x4914; + uint8_t field_0x4915; + uint8_t field_0x4916; + uint8_t field_0x4917; + uint32_t field_0x4918; + uint8_t field_0x491c; + uint8_t field_0x491d; + uint8_t field_0x491e; + uint8_t field_0x491f; + uint8_t field_0x4920; + uint8_t field_0x4921; + uint8_t field_0x4922; + uint8_t field_0x4923; + uint8_t field_0x4924; + uint8_t field_0x4925; + uint8_t field_0x4926; + uint8_t field_0x4927; + uint8_t field_0x4928; + uint8_t field_0x4929; + uint8_t field_0x492a; + uint8_t field_0x492b; + uint8_t field_0x492c; + uint8_t field_0x492d; + uint8_t field_0x492e; + uint8_t field_0x492f; + uint8_t field_0x4930; + uint8_t field_0x4931; + uint8_t field_0x4932; + uint8_t field_0x4933; + uint8_t field_0x4934; + uint8_t field_0x4935; + uint8_t field_0x4936; + uint8_t field_0x4937; + uint8_t field_0x4938; + uint8_t field_0x4939; + uint8_t field_0x493a; + uint8_t field_0x493b; + uint8_t field_0x493c; + uint8_t field_0x493d; + uint8_t field_0x493e; + uint8_t field_0x493f; + uint8_t field_0x4940; + uint8_t field_0x4941; + uint8_t field_0x4942; + uint8_t field_0x4943; + uint8_t field_0x4944; + uint8_t field_0x4945; + uint8_t field_0x4946; + uint8_t field_0x4947; + struct HandFX* hand_fx; + int* field_0x494c; + int field_0x4950; + uint8_t field_0x4954; + uint8_t field_0x4955; + uint8_t field_0x4956; + uint8_t field_0x4957; + uint32_t field_0x4958; + uint32_t field_0x495c; + uint32_t field_0x4960; + struct LHPoint point_0x4964; + uint32_t field_0x4970; + uint32_t field_0x4974; + uint32_t field_0x4978; + uint32_t field_0x497c; + uint32_t field_0x4980; + uint32_t field_0x4984; + float field_0x4988; + uint32_t field_0x498c; + uint8_t field_0x4990; + uint8_t field_0x4991; + uint8_t field_0x4992; + uint8_t field_0x4993; + uint32_t field_0x4994; + uint32_t field_0x4998; + uint32_t field_0x499c; + uint32_t field_0x49a0; + uint32_t field_0x49a4; + uint32_t field_0x49a8; + struct LHMatrix* matrix_0x49ac; + float field_0x49b0; + uint32_t field_0x49b4; + uint32_t field_0x49b8; + uint32_t field_0x49bc; + uint32_t field_0x49c0; +}; +static_assert(sizeof(struct CHand) == 0x49c4, "Data type is of wrong size"); + +static struct MorphableVftable* __vt__5CHand = (struct MorphableVftable*)0x008cbecc; + +// Constructors + +// win1.41 0046ba80 mac 101c8e00 CHand::CHand(LHPoint, GInterfaceStatus *) +struct CHand* __fastcall __ct__5CHandF7LHPointP16GInterfaceStatus(struct CHand* this, const void* edx, struct LHPoint point, struct GInterfaceStatus* status); + +// Non-virtual methods + +// win1.41 0046c260 mac 101c86d0 CHand::ToggleLeftRight(void) +void __fastcall ToggleLeftRight__5CHandFv(struct CHand* this); +// win1.41 0046d2c0 mac 101c76b0 CHand::LoadBinary(char *, int) +uint32_t __fastcall LoadBinary_5CHandFPci(struct CHand* this, const void* edx, char* filename, int param_1); +// win1.41 0046ddd0 mac 101c6b10 CHand::ThrowObject(void) +void __fastcall ThrowObject__5CHandFv(struct CHand* this); +// win1.41 0046e4e0 mac 10081dd0 CHand::GameTurnUpdate() +void __fastcall GameTurnUpdate__5CHandFv(struct CHand* this); + +// Override methods + +// win1.41 0046c4a0 mac 101c85f0 CHand::SetSize(float) +void __fastcall SetSize__5CHandFf(struct CHand* this, const void* edx, float size); + +#endif /* BW1_DECOMP_CONTROL_HAND_INCLUDED_H */ diff --git a/black/ControlMap.h b/black/ControlMap.h new file mode 100644 index 0000000..dc155ea --- /dev/null +++ b/black/ControlMap.h @@ -0,0 +1,40 @@ +#ifndef BW1_DECOMP_CONTROL_MAP_INCLUDED_H +#define BW1_DECOMP_CONTROL_MAP_INCLUDED_H + +#include /* For static_assert */ +#include /* For char16_t */ + +#include /* For enum LH_KEY */ +#include /* For bool32_t */ + +#include "BindableAction.h" /* For struct BindableAction */ + +struct ControlMap +{ + struct BindableAction bindable_actions[0x21]; /* 0x0 */ + bool32_t bindable_action_states[0x21]; /* 0x648c */ + bool32_t field2_0x6510; + bool32_t field3_0x6514; + bool32_t field4_0x6518; + bool32_t field5_0x651c; + bool32_t field6_0x6520; + bool32_t field7_0x6524; + bool32_t field7_0x6528; + bool32_t field9_0x652c; + bool32_t field10_0x6530; +}; +static_assert(sizeof(struct ControlMap) == 0x6534, "Data type is of wrong size"); + +// Constructors + +// win1.41 0046f6c0 mac 101cbaa0 ControlMap::ControlMap(void) +struct ControlMap* __fastcall __ct__10ControlMapFv(struct ControlMap* this); + +// Non-virtual methods + +// win1.41 00470910 mac 101caba0 ControlMap::GetText(ulong, wchar_t*) +void __fastcall GetText__10ControlMapFUlPw(struct ControlMap* this, const void* edx, enum LH_KEY key, char16_t* out_text); +// win1.41 00470ab0 mac 10090ab0 ControlMap::ProcessActionsPerformed(void) +void __fastcall ProcessActionsPerformed__10ControlMapFv(struct ControlMap* this); + +#endif /* BW1_DECOMP_CONTROL_MAP_INCLUDED_H */ diff --git a/black/Cow.h b/black/Cow.h new file mode 100644 index 0000000..922cbdb --- /dev/null +++ b/black/Cow.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_COW_INCLUDED_H +#define BW1_DECOMP_COW_INCLUDED_H + +#include /* For static_assert */ + +#include "Animal.h" /* For struct Animal */ + +struct Cow +{ + struct Animal super; /* 0x0 */ +}; +static_assert(sizeof(struct Cow) == 0x148, "Data type is of wrong size"); + +static struct LivingVftable* __vt__3Cow = (struct LivingVftable*)0x008ad05c; + +#endif /* BW1_DECOMP_COW_INCLUDED_H */ diff --git a/black/Creature.h b/black/Creature.h new file mode 100644 index 0000000..2eb1a21 --- /dev/null +++ b/black/Creature.h @@ -0,0 +1,225 @@ +#ifndef BW1_DECOMP_CREATURE_INCLUDED_H +#define BW1_DECOMP_CREATURE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ +#include /* For char16_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "CreatureHelp.h" /* For struct CreatureHelpStackEntry, struct CreatureHelpState */ +#include "CreatureSubAction.h" /* For struct CreatureSubActionAgenda */ +#include "Living.h" /* For struct Living */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct BookmarkGraphic; +struct Bubble; +struct CreatureMental; +struct CreaturePhysical; +struct CreatureReceiveSpell; +struct Dance; +struct GAlignment; +struct GArena; +struct GCreatureInfo; +struct GParticleContainer; +struct GPlayer; +struct LH3DCreature; +struct LH3DSmoke; + +struct CreatureEmotionsForMusic +{ + uint32_t field_0x0; + uint32_t field_0x4; +}; +static_assert(sizeof(struct CreatureEmotionsForMusic) == 0x8, "Data type is of wrong size"); + +struct Creature +{ + struct Living super; /* 0x0 */ + char16_t name[0x40]; /* 0xe0 */ + struct CreaturePhysical* physical; /* 0x160 */ + struct CreatureMental* mind; + struct GAlignment* alignment; + uint32_t field_0x16c; + uint32_t field_0x170; + uint32_t field_0x174; + uint32_t field_0x178; + uint32_t field_0x17c; + uint32_t field_0x180; + uint32_t field_0x184; + struct CreatureHelpState help_state; + struct LHLinkedList__CreatureHelpStackEntry help_stack_entries[0x2a]; /* 0x220 */ + struct CreatureReceiveSpell* receive_spell; /* 0x370 */ + float field_0x374; + float field_0x378; + uint8_t field_0x37c; + uint8_t field_0x37d; + uint8_t field_0x37e; + uint8_t field_0x37f; + uint32_t field_0x380; + uint32_t field_0x384; + struct CreatureEmotionsForMusic emotions_for_music; + uint32_t field_0x390[0xe]; + uint32_t field_0x3c8; + uint32_t field_0x3cc; + struct Creature* next; /* 0x3d0 */ + uint32_t field_0x3d4; + struct MapCoords field_0x3d8; + uint32_t field_0x3e4; + uint32_t field_0x3e8; + struct MapCoords field_0x3ec; + uint8_t field_0x3f8; + uint8_t field_0x3f9; + uint8_t field_0x3fa; + uint8_t field_0x3fb; + float field_0x3fc; + float field_0x400; + uint8_t field_0x404; + uint8_t field_0x405; + uint8_t field_0x406; + uint8_t field_0x407; + struct CreatureSubActionAgenda sub_action_agenda; + int field_0x1058; + uint32_t field_0x105c; + uint32_t field_0x1060; + uint32_t field_0x1064; + uint32_t field_0x1068; + uint32_t field_0x106c; + struct GPlayer* owner; /* 0x1070 */ + struct Dance* dance; + uint32_t field_0x1078; + struct GParticleContainer* particle_container_0x107c; + struct GParticleContainer* particle_container_0x1080; + uint32_t field_0x1084; + uint32_t field_0x1088; + uint32_t field_0x108c; + uint32_t field_0x1090; + uint32_t field_0x1094; + uint32_t field_0x1098; + struct LH3DSmoke* smoke; + struct GArena* arena; /* 0x10a0 */ + uint32_t field_0x10a4; + uint32_t field_0x10a8; + uint32_t field_0x10ac; + uint32_t field_0x10b0; + uint32_t field_0x10b4; + uint32_t field_0x10b8; + uint32_t field_0x10bc; + uint32_t field_0x10c0; + uint8_t field_0x10c4[0x8]; + uint32_t field_0x10cc; + uint32_t field_0x10d0; + uint32_t field_0x10d4; + uint8_t field_0x10d8[0x10]; + uint32_t field_0x10e8; + uint32_t field_0x10ec; + uint32_t field_0x10f0; + uint32_t field_0x10f4; + uint32_t field_0x10f8; + uint32_t field_0x10fc; + uint32_t field_0x1100; + uint32_t field_0x1104; + uint32_t field_0x1108; + uint32_t field_0x110c; + int field_0x1110; + uint32_t field_0x1114; + uint32_t field_0x1118; + uint32_t field_0x111c; + uint32_t field_0x1120; + int game_turn; + uint8_t field_0x1128[0x28]; + uint32_t field_0x1150; + uint32_t field_0x1154; + uint32_t field_0x1158; + uint32_t field_0x115c; + uint32_t field_0x1160; + struct MapCoords field_0x1164; + uint32_t field_0x1170[0x8]; + uint32_t field_0x1190; + uint8_t field_0x1194[0x14]; + struct MapCoords field_0x11a8; + uint32_t field_0x11b4; + uint32_t field_0x11b8; + uint32_t field_0x11bc; + uint32_t field_0x11c0; + uint32_t field_0x11c4; + uint32_t field_0x11c8; + struct MapCoords field_0x11cc; + uint8_t field_0x11d8[0xc]; + struct GParticleContainer* particle_container_0x11e4; + uint32_t field_0x11e8; + struct BookmarkGraphic* bookmark_graphic; + uint8_t field_0x11f0; + uint8_t field_0x11f1; + uint8_t field_0x11f2; + uint8_t field_0x11f3; + uint32_t field_0x11f4; + uint32_t field_0x11f8; + uint32_t field_0x11fc; + struct MapCoords field_0x1200; + uint32_t field_0x120c; + uint32_t field_0x1210; + struct MapCoords field_0x1214; + uint32_t field_0x1220; + uint32_t field_0x1224; + uint8_t field_0x1228[0x40]; + int field_0x1268; + uint32_t field_0x126c; + uint32_t field_0x1270; + uint32_t field_0x1274; + uint32_t field_0x1278; + struct Bubble* bubble; + uint32_t field_0x1280; + uint32_t field_0x1284; + uint32_t field_0x1288; + uint8_t field_0x128c[0x8]; + uint32_t field_0x1294; + uint32_t field_0x1298; + int field_0x129c; + uint32_t field_0x12a0; + uint32_t field_0x12a4; + uint32_t field_0x12a8; + uint8_t field_0x12ac; + uint8_t field_0x12ad; + uint8_t field_0x12ae; + uint8_t field_0x12af; + uint32_t field_0x12b0; + uint32_t field_0x12b4; + uint32_t field_0x12b8; + uint32_t field_0x12bc; + uint32_t field_0x12c0; + uint32_t field_0x12c4; +}; +static_assert(sizeof(struct Creature) == 0x12c8, "Data type is of wrong size"); + +static struct LivingVftable* __vt__8Creature = (struct LivingVftable*)0x008cc810; + +// Static methods + +// win1.41 00474a20 mac 101dfc60 Creature::Create(MapCoords const &, CreatureInfo const *, GPlayer *) +struct Creature* __cdecl Create__8CreatureFRC9MapCoordsPC12CreatureInfoP7GPlayer(const struct MapCoords* coords, const struct GCreatureInfo* info, struct GPlayer* player); +// win1.41 00474b50 mac 101dfb90 Creature::CreateCreature(MapCoords const &, CreatureInfo const *, GPlayer *) +struct Creature* __cdecl CreateCreature__8CreatureFRC9MapCoordsPC12CreatureInfoP7GPlayer(const struct MapCoords* coords, const struct GCreatureInfo* info, struct GPlayer* player); + +// Constructors + +// win1.41 00474690 mac 101dfe30 Creature::Creature(void) +struct Creature* __fastcall __ct__8CreatureFv(struct Creature* this); + +// Non-virtual methods + +// win1.41 00477850 mac 101daef0 Creature::GetCreature3D(void) +struct LH3DCreature* __fastcall GetCreature3D__8CreatureFv(struct Creature* this); +// win1.41 004f8b80 mac 1028a7b0 Creature::ProcessSpells(void) +void __fastcall ProcessSpells__8CreatureFv(struct Creature* this); + +// Override methods + +// win1.41 00472dc0 mac 101e16f0 Creature::ProcessState(void) +uint32_t __fastcall ProcessState__8CreatureFv(struct Creature* this); + +DECLARE_LH_LINKED_LIST(Creature); + +#endif /* BW1_DECOMP_CREATURE_INCLUDED_H */ diff --git a/black/CreatureAction.h b/black/CreatureAction.h new file mode 100644 index 0000000..cda0416 --- /dev/null +++ b/black/CreatureAction.h @@ -0,0 +1,64 @@ +#ifndef BW1_DECOMP_CREATURE_ACTION_INCLUDED_H +#define BW1_DECOMP_CREATURE_ACTION_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For NUM_CREATURE_ACTIONS */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct CreatureContext; + +struct CreatureActionContextStart +{ + uint32_t field_0x0; + struct CreatureActionContext* field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; +}; +static_assert(sizeof(struct CreatureActionContextStart) == 0x14, "Data type is of wrong size"); + +struct CreatureActionContext +{ + struct CreatureActionContextStart start; /* 0x0 */ + float field_0x14; +}; +static_assert(sizeof(struct CreatureActionContext) == 0x18, "Data type is of wrong size"); + +// Constructors + +// win1.41 004c3960 mac 10230320 CreatureActionContext::CreatureActionContext(CreatureContext &, float) +struct CreatureActionContext* __fastcall __ct__21CreatureActionContextFR15CreatureContextf(struct CreatureActionContext* this, const void* edx, struct CreatureContext* context, float param_2); + +struct PreviousActionContextStack +{ + uint32_t indexes[0x2][0x148]; /* 0x0 */ + struct CreatureActionContext stack[0x148][0xa]; /* 0xa40 */ +}; +static_assert(sizeof(struct PreviousActionContextStack) == 0x13dc0, "Data type is of wrong size"); + +struct CreatureActionOpinions +{ + uint32_t entries[NUM_CREATURE_ACTIONS]; /* 0x0 */ +}; +static_assert(sizeof(struct CreatureActionOpinions) == 0x520, "Data type is of wrong size"); + +// Constructors + +// win1.41 004c3930 mac 102303a0 CreatureActionOpinions::CreatureActionOpinions(CreatureInfo const *) +struct CreatureActionOpinions* __fastcall __ct__22CreatureActionOpinionsFPC12CreatureInfo(struct CreatureActionOpinions* this); + +struct CreaturePreviousActions +{ + struct Base super; /* 0x0 */ + float field_0x8[NUM_CREATURE_ACTIONS]; +}; +static_assert(sizeof(struct CreaturePreviousActions) == 0x528, "Data type is of wrong size"); + +static struct BaseVftable* __vt__23CreaturePreviousActions = (struct BaseVftable*)0x008d154c; + +#endif /* BW1_DECOMP_CREATURE_ACTION_INCLUDED_H */ diff --git a/black/CreatureActionsKnownAbout.h b/black/CreatureActionsKnownAbout.h new file mode 100644 index 0000000..3146973 --- /dev/null +++ b/black/CreatureActionsKnownAbout.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CREATURE_ACTIONS_KNOWN_ABOUT_INCLUDED_H +#define BW1_DECOMP_CREATURE_ACTIONS_KNOWN_ABOUT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Base.h" /* For struct Base */ + +struct CreatureActionsKnownAbout +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8[0x2][0x2]; +}; +static_assert(sizeof(struct CreatureActionsKnownAbout) == 0x18, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_CREATURE_ACTIONS_KNOWN_ABOUT_INCLUDED_H */ diff --git a/black/CreatureAgenda.h b/black/CreatureAgenda.h new file mode 100644 index 0000000..e7e6c94 --- /dev/null +++ b/black/CreatureAgenda.h @@ -0,0 +1,70 @@ +#ifndef BW1_DECOMP_CREATURE_AGENDA_INCLUDED_H +#define BW1_DECOMP_CREATURE_AGENDA_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ +#include "CreatureCommandState.h" /* For struct CreatureCommandState */ +#include "CreatureMimic.h" /* For struct CreatureMimicState */ +#include "CreaturePlan.h" /* For struct CreaturePlan, struct CreaturePlanState */ +#include "CreatureSubAction.h" /* For struct CreatureSubActionAgenda */ + +// Forward Declares + +struct Creature; +struct CreatureBelief; +struct CreatureInfo; + +struct CreatureAgenda +{ + struct Base super; /* 0x0 */ + struct CreaturePlanState plan_state; + struct CreaturePlan plans[0x2]; /* 0x838 */ + struct CreatureSubActionAgenda sub_action_agenda; /* 0x898 */ + struct CreatureCommandState command_state; /* 0x14e8 */ + struct Creature* creature; /* 0x1514 */ + uint32_t field_0x1518; + uint32_t field_0x151c; + struct CreatureMimicState mimic_state; /* 0x1520 */ + uint32_t field_0x155c; + struct CreatureBelief* belief; /* 0x1560 */ + uint32_t field_0x1564; + uint32_t field_0x1568; + uint32_t field_0x156c; + uint32_t field_0x1570; + uint32_t field_0x1574; + uint32_t field_0x1578; + uint32_t field_0x157c; + uint32_t field_0x1580; + uint32_t field_0x1584; + uint32_t field_0x1588; + uint8_t field_0x158c[0x520]; + uint32_t field_0x1aac; + uint32_t field_0x1ab0; + uint8_t field_0x1ab4[0xc]; + uint32_t field_0x1ac0; + uint32_t field_0x1ac4; + uint32_t field_0x1ac8; + int32_t field_0x1acc; + uint32_t field_0x1ad0; + uint32_t field_0x1ad4; + uint32_t field_0x1ad8; + uint32_t field_0x1adc; + uint32_t field_0x1ae0; + uint32_t field_0x1ae4; + uint32_t field_0x1ae8; + uint32_t field_0x1aec; + uint32_t field_0x1af0; + uint32_t field_0x1af4; +}; +static_assert(sizeof(struct CreatureAgenda) == 0x1af8, "Data type is of wrong size"); + +static struct BaseVftable* __vt__14CreatureAgenda = (struct BaseVftable*)0x008cf950; + +// Constructors + +// win1.41 004d34b0 mac 102471c0 CreatureAgenda::CreatureAgenda(Creature *, CreatureInfo const *) +struct CreatureAgenda* __fastcall __ct__14CreatureAgendaFP8CreaturePC12CreatureInfo(struct CreatureAgenda* this, const void* edx, struct CreatureInfo* info); + +#endif /* BW1_DECOMP_CREATURE_AGENDA_INCLUDED_H */ diff --git a/black/CreatureAttitudeToPlayer.h b/black/CreatureAttitudeToPlayer.h new file mode 100644 index 0000000..115e50d --- /dev/null +++ b/black/CreatureAttitudeToPlayer.h @@ -0,0 +1,67 @@ +#ifndef BW1_DECOMP_CREATURE_ATTITUDE_TO_PLAYER_INCLUDED_H +#define BW1_DECOMP_CREATURE_ATTITUDE_TO_PLAYER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum DETECTED_PLAYER_ACTION */ +#include /* For enum MAGIC_TYPE */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct GameThingWithPos; + +struct CreaturePerceivedPlayerDesires_field_0x15c +{ + uint8_t field_0x0[0x20]; +}; +static_assert(sizeof(struct CreaturePerceivedPlayerDesires_field_0x15c) == 0x20, "Data type is of wrong size"); + +struct CreaturePerceivedPlayerDesires +{ + uint32_t field_0x0[0x28]; + uint32_t field_0xa0[0x11]; + uint8_t field_0xe4[0x78]; + struct CreaturePerceivedPlayerDesires_field_0x15c field_0x15c[0x28]; + uint8_t field_0x65c[0xf00]; + struct CreaturePerceivedPlayerDesires_field_0x15c field_0x155c[0x11]; +}; +static_assert(sizeof(struct CreaturePerceivedPlayerDesires) == 0x177c, "Data type is of wrong size"); + +struct CreatureAttitudeToPlayer_field_0x1da4 +{ + enum DETECTED_PLAYER_ACTION detected_action; /* 0x0 */ + struct GameThingWithPos* game_thing; + uint32_t field_0x8; + enum MAGIC_TYPE magic_type; +}; +static_assert(sizeof(struct CreatureAttitudeToPlayer_field_0x1da4) == 0x10, "Data type is of wrong size"); + +struct CreatureAttitudeToPlayer +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + float field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + uint32_t field_0x38; + uint32_t field_0x3c; + struct CreaturePerceivedPlayerDesires field_0x40; + uint8_t field_0x17bc[0x5e8]; + struct CreatureAttitudeToPlayer_field_0x1da4 field_0x1da4; +}; +static_assert(sizeof(struct CreatureAttitudeToPlayer) == 0x1db4, "Data type is of wrong size"); + +static struct BaseVftable* __vt__24CreatureAttitudeToPlayer = (struct BaseVftable*)0x008cf3dc; + +#endif /* BW1_DECOMP_CREATURE_ATTITUDE_TO_PLAYER_INCLUDED_H */ diff --git a/black/CreatureCommandState.h b/black/CreatureCommandState.h new file mode 100644 index 0000000..454949c --- /dev/null +++ b/black/CreatureCommandState.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_CREATURE_COMMAND_STATE_INCLUDED_H +#define BW1_DECOMP_CREATURE_COMMAND_STATE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct CreatureCommandState +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0x14]; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + int field_0x28; +}; +static_assert(sizeof(struct CreatureCommandState) == 0x2c, "Data type is of wrong size"); + +static struct BaseVftable* __vt__20CreatureCommandState = (struct BaseVftable*)0x008cf970; + +#endif /* BW1_DECOMP_CREATURE_COMMAND_STATE_INCLUDED_H */ diff --git a/black/CreatureContext.h b/black/CreatureContext.h new file mode 100644 index 0000000..429ca9b --- /dev/null +++ b/black/CreatureContext.h @@ -0,0 +1,40 @@ +#ifndef BW1_DECOMP_CREATURE_CONTEXT_INCLUDED_H +#define BW1_DECOMP_CREATURE_CONTEXT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum CREATURE_DESIRE_SOURCE */ + +#include "Base.h" /* For struct Base */ +#include "CreatureAction.h" /* For struct CreatureActionContextStart */ +#include "CreaturePlan.h" /* For struct CreaturePlan */ + +// Forward Declares + +struct Creature; + +struct CreatureContext +{ + struct Base super; /* 0x0 */ + struct CreaturePlan plan; + uint8_t field_0x38[0xc]; + int field_0x44; + uint8_t field_0x48[0xc]; + uint32_t field_0x54; + enum CREATURE_DESIRE_SOURCE desire_source; + struct CreatureActionContextStart field_0x5c; +}; +static_assert(sizeof(struct CreatureContext) == 0x70, "Data type is of wrong size"); + +struct PreviousContextStack +{ + struct Creature* creature; /* 0x0 */ + uint8_t field_0x4[0x1c]; + uint32_t field_0x20; + uint32_t field_0x24; + struct CreatureContext contexts[0x5]; +}; +static_assert(sizeof(struct PreviousContextStack) == 0x258, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_CREATURE_CONTEXT_INCLUDED_H */ diff --git a/black/CreatureDatabase.h b/black/CreatureDatabase.h new file mode 100644 index 0000000..9a2c8d2 --- /dev/null +++ b/black/CreatureDatabase.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_CREATURE_DATABASE_INCLUDED_H +#define BW1_DECOMP_CREATURE_DATABASE_INCLUDED_H + +#include /* For static_assert */ + +#include "MultiplayerDatabase.h" /* For struct MultiplayerDatabase */ + +struct CreatureDatabase +{ + struct MultiplayerDatabase super; /* 0x0 */ +}; +static_assert(sizeof(struct CreatureDatabase) == 0x10, "Data type is of wrong size"); + +static struct MultiplayerDatabaseVftable* __vt__16CreatureDatabase = (struct MultiplayerDatabaseVftable*)0x00930a00; + +// Constructors + +// win1.41 006336b0 mac 10109d30 CreatureDatabase::CreatureDatabase(void) +struct CreatureDatabase* __fastcall __ct__16CreatureDatabaseFv(struct CreatureDatabase* this); + +#endif /* BW1_DECOMP_CREATURE_DATABASE_INCLUDED_H */ diff --git a/black/CreatureExplorationMap.h b/black/CreatureExplorationMap.h new file mode 100644 index 0000000..3621199 --- /dev/null +++ b/black/CreatureExplorationMap.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_CREATURE_EXPLORATION_MAP_INCLUDED_H +#define BW1_DECOMP_CREATURE_EXPLORATION_MAP_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint32_t */ + +#include "Base.h" /* For struct Base */ +#include "MapCoords.h" /* For struct MapCoords */ + +struct CreatureExplorationMap +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + struct MapCoords coords; + uint16_t field_0x18[0x40][0x40]; +}; +static_assert(sizeof(struct CreatureExplorationMap) == 0x2018, "Data type is of wrong size"); + +static struct BaseVftable* __vt__22CreatureExplorationMap = (struct BaseVftable*)0x008d00e0; + +#endif /* BW1_DECOMP_CREATURE_EXPLORATION_MAP_INCLUDED_H */ diff --git a/black/CreatureFace.h b/black/CreatureFace.h new file mode 100644 index 0000000..b8f80c0 --- /dev/null +++ b/black/CreatureFace.h @@ -0,0 +1,15 @@ +#ifndef BW1_DECOMP_CREATURE_FACE_INCLUDED_H +#define BW1_DECOMP_CREATURE_FACE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +struct CreatureFaceState +{ + int field_0x0; + float field_0x4; + uint32_t field_0xc; +}; +static_assert(sizeof(struct CreatureFaceState) == 0xc, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_CREATURE_FACE_INCLUDED_H */ diff --git a/black/CreatureHelp.h b/black/CreatureHelp.h new file mode 100644 index 0000000..07c1c5a --- /dev/null +++ b/black/CreatureHelp.h @@ -0,0 +1,59 @@ +#ifndef BW1_DECOMP_CREATURE_HELP_INCLUDED_H +#define BW1_DECOMP_CREATURE_HELP_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For DECLARE_GJ_VECTOR */ +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct GameThingWithPos; + +struct CreatureHelpState__field_0x88 +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct CreatureHelpState__field_0x88) == 0x1, "Data type is of wrong size"); + +DECLARE_GJ_VECTOR(CreatureHelpState__field_0x88); + +struct CreatureHelpState +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10[0xc]; + uint32_t field_0x40[0xc]; + uint32_t field_0x70[0x6]; + struct GJVector__CreatureHelpState__field_0x88 field_0x88; +}; +static_assert(sizeof(struct CreatureHelpState) == 0x98, "Data type is of wrong size"); + +// Constructors + +// win1.41 004c9c30 mac 1023b830 CreatureHelpState::CreatureHelpState(void) +struct CreatureHelpState* __fastcall __ct__17CreatureHelpStateFv(struct CreatureHelpState* this); + +struct CreatureHelpStackEntry +{ + uint32_t field_0x0; + struct GameThingWithPos* thing; + struct MapCoords coords; + uint32_t field_0x14; + uint32_t field_0x18; +}; +static_assert(sizeof(struct CreatureHelpStackEntry) == 0x1c, "Data type is of wrong size"); + +// Constructors + +// win1.41 004ca6f0 mac 102389e0 CreatureHelpStackEntry::__ct(unsigned long, GameThingWithPos *, MapCoords const &) +struct CreatureHelpStackEntry* __fastcall __ct__22CreatureHelpStackEntryFUlP16GameThingWithPosRC9MapCoords(struct CreatureHelpStackEntry* this, const void* edx, uint32_t param_2, struct GameThingWithPos* thing, const struct MapCoords* coord); + +DECLARE_LH_LINKED_LIST(CreatureHelpStackEntry); + +#endif /* BW1_DECOMP_CREATURE_HELP_INCLUDED_H */ diff --git a/black/CreatureInfo.h b/black/CreatureInfo.h new file mode 100644 index 0000000..16a26ff --- /dev/null +++ b/black/CreatureInfo.h @@ -0,0 +1,34 @@ +#ifndef BW1_DECOMP_CREATURE_INFO_INCLUDED_H +#define BW1_DECOMP_CREATURE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LivingInfo.h" /* For struct GLivingInfo */ + +struct CreatureInfo +{ + struct GLivingInfo super; /* 0x0 */ + uint32_t creature_type; /* 0x1f4 */ + float field_0x1f8[0x4]; + uint32_t field_0x208; + float field_0x20c; + uint32_t field_0x210; + float field_0x214[0x15]; + uint32_t field_0x268; + uint32_t field_0x26c; + uint32_t field_0x270; + uint32_t field_0x274; + float field_0x278[0x3]; + uint32_t field_0x284; + float field_0x288[0x8]; + uint32_t field_0x2a8; + float field_0x2ac[0x26]; + uint32_t field_0x344; + float field_0x348[0x13]; +}; +static_assert(sizeof(struct CreatureInfo) == 0x394, "Data type is of wrong size"); + +static struct GObjectInfoVftable* __vt__12CreatureInfo = (struct GObjectInfoVftable*)0x008cc758; + +#endif /* BW1_DECOMP_CREATURE_INFO_INCLUDED_H */ diff --git a/black/CreatureLearning.h b/black/CreatureLearning.h new file mode 100644 index 0000000..04372ac --- /dev/null +++ b/black/CreatureLearning.h @@ -0,0 +1,52 @@ +#ifndef BW1_DECOMP_CREATURE_LEARNING_INCLUDED_H +#define BW1_DECOMP_CREATURE_LEARNING_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For NUM_CREATURE_ACTIONS */ + +#include "Base.h" /* For struct Base */ +#include "CreatureAction.h" /* For struct PreviousActionContextStack */ +#include "CreatureContext.h" /* For struct PreviousContextStack */ +#include "CreaturePreviousLesson.h" /* For struct CreaturePreviousLesson */ + +// Forward Declares + +struct Creature; + +struct CreatureLearning +{ + struct Base super; /* 0x0 */ + struct PreviousContextStack previous_context_stack; + struct PreviousActionContextStack previous_action_context_stack; /* 0x260 */ + struct CreaturePreviousLesson previous_lesson; /* 0x14020 */ + uint32_t field_0x1522c; + uint32_t field_0x15230[0x6]; + uint32_t field_0x15248[0x6]; + uint32_t field_0x15260[0x2a]; + uint32_t field_0x15308[0x2a]; + uint32_t field_0x153b0[NUM_CREATURE_ACTIONS]; + uint32_t field_0x158d0[0x2d]; + uint32_t field_0x15984[0x2d]; + uint32_t field_0x15a38[0x2d]; + uint32_t field_0x15aec; + uint32_t field_0x15af0; + uint32_t field_0x15af4; + uint32_t field_0x15af8[0x2][0x28]; + uint32_t field_0x15c38; + uint32_t field_0x15c3c; + uint32_t field_0x15c40[NUM_CREATURE_ACTIONS]; + struct Creature* field_0x16160; + uint32_t field_0x16164; +}; +static_assert(sizeof(struct CreatureLearning) == 0x16168, "Data type is of wrong size"); + +static struct BaseVftable* __vt__16CreatureLearning = (struct BaseVftable*)0x008d0410; + +// Constructors + +// win1.41 004e0290 mac 10265060 CreatureLearning::CreatureLearning(Creature *) +struct CreatureLearning* __fastcall __ct__16CreatureLearningFP8Creature(struct CreatureLearning* this, const void* edx, struct Creature* creature); + +#endif /* BW1_DECOMP_CREATURE_LEARNING_INCLUDED_H */ diff --git a/black/CreatureLessonChooser.h b/black/CreatureLessonChooser.h new file mode 100644 index 0000000..8ad3339 --- /dev/null +++ b/black/CreatureLessonChooser.h @@ -0,0 +1,19 @@ +#ifndef BW1_DECOMP_CREATURE_LESSON_CHOOSER_INCLUDED_H +#define BW1_DECOMP_CREATURE_LESSON_CHOOSER_INCLUDED_H + +#include /* For static_assert */ + +enum LESSON_TYPE +{ + LESSON_TYPE_0x0 = 0x0, + LESSON_TYPE_0x1 = 0x1, + _LESSON_TYPE_COUNT = 0x2 +}; +static_assert(sizeof(enum LESSON_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* LESSON_TYPE_strs[_LESSON_TYPE_COUNT] = { + "LESSON_TYPE_0x0", + "LESSON_TYPE_0x1", +}; + +#endif /* BW1_DECOMP_CREATURE_LESSON_CHOOSER_INCLUDED_H */ diff --git a/black/CreatureLook.h b/black/CreatureLook.h new file mode 100644 index 0000000..a0666c1 --- /dev/null +++ b/black/CreatureLook.h @@ -0,0 +1,26 @@ +#ifndef BW1_DECOMP_CREATURE_LOOK_INCLUDED_H +#define BW1_DECOMP_CREATURE_LOOK_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "MapCoords.h" /* For struct MapCoords */ + +struct CreatureLookState +{ + uint32_t field_0x0; + uint32_t field_0x4; + struct MapCoords coords; + uint32_t game_turn; /* 0x14 */ + float field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; +}; +static_assert(sizeof(struct CreatureLookState) == 0x38, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_CREATURE_LOOK_INCLUDED_H */ diff --git a/black/CreatureMental.h b/black/CreatureMental.h new file mode 100644 index 0000000..b851ded --- /dev/null +++ b/black/CreatureMental.h @@ -0,0 +1,82 @@ +#ifndef BW1_DECOMP_CREATURE_MENTAL_INCLUDED_H +#define BW1_DECOMP_CREATURE_MENTAL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ +#include "CreatureAction.h" /* For struct CreatureActionOpinions, struct CreaturePreviousActions */ +#include "CreatureActionsKnownAbout.h" /* For struct CreatureActionsKnownAbout */ +#include "CreatureAgenda.h" /* For struct CreatureAgenda */ +#include "CreatureAttitudeToPlayer.h" /* For struct CreatureAttitudeToPlayer */ +#include "CreatureExplorationMap.h" /* For struct CreatureExplorationMap */ +#include "CreatureFace.h" /* For struct CreatureFaceState */ +#include "CreatureLearning.h" /* For struct CreatureLearning */ +#include "CreatureLook.h" /* For struct CreatureLookState */ +#include "CreatureMentalAttributeTest.h" /* For struct DecisionTreeCollection */ +#include "CreatureMentalBeliefs.h" /* For struct CreatureBeliefs */ +#include "CreatureMentalDebug.h" /* For struct CreatureMentalDebug */ +#include "CreatureMentalDesire.h" /* For struct CreatureDesires */ +#include "CreatureObjectsInspected.h" /* For struct CreatureObjectsInspected */ +#include "CreatureVisionState.h" /* For struct CreatureVisionState */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct Creature; + +struct CreatureInnatePersonality +{ + float field_0x0; + float field_0x4; + float field_0x8; + float field_0xc; + float field_0x10; + float field_0x14; + float field_0x18[0x3]; +}; +static_assert(sizeof(struct CreatureInnatePersonality) == 0x24, "Data type is of wrong size"); + +struct CreatureMental +{ + struct Base super; /* 0x0 */ + struct CreatureDesires desires; + struct CreatureAgenda agenda; /* 0x710 */ + struct CreatureBeliefs beliefs; /* 0x2208 */ + struct DecisionTreeCollection decision_tree_collection; /* 0x2478 */ + struct CreatureActionOpinions action_opinions; /* 0x25b8 */ + struct CreatureLearning learning; /* 0x2ad8 */ + struct CreatureAttitudeToPlayer attitude_to_player; /* 0x18c40 */ + uint32_t field_0x1a9f4; + uint32_t field_0x1a9f8; + struct CreatureActionsKnownAbout actions_known_about; + struct CreatureInnatePersonality innate_personality; /* 0x1aa14 */ + struct CreatureVisionState vision_state; /* 0x1aa38 */ + struct CreatureExplorationMap exploration_map; /* 0x1aa80 */ + uint8_t field_0x1ca98[0x400]; + struct CreaturePreviousActions previous_actions; /* 0x1ce98 */ + struct CreatureLookState look_state; /* 0x1d3c0 */ + uint8_t field_0x1d3f8[0x14]; + struct CreatureFaceState face_state; /* 0x1d40c */ + struct CreatureObjectsInspected objects_inspected; /* 0x1d418 */ + uint32_t field_0x1d480; + uint32_t field_0x1d484; + uint32_t field_0x1d488; + struct MapCoords field_0x1d48c[0x1e][0x28]; + struct CreatureMentalDebug debug; /* 0x20ccc */ + struct Creature* creature; /* 0x20d18 */ + int field_0x20d1c; + uint32_t field_0x20d20; + uint32_t field_0x20d24; + uint32_t field_0x20d28; + uint32_t field_0x20d2c; + uint32_t field_0x20d230; /* 0x20d30 */ + uint32_t field_0x20d234; + uint32_t field_0x20d238; + uint32_t field_0x20d23c; +}; +static_assert(sizeof(struct CreatureMental) == 0x20d40, "Data type is of wrong size"); + +static struct BaseVftable* __vt__14CreatureMental = (struct BaseVftable*)0x008cf8ac; + +#endif /* BW1_DECOMP_CREATURE_MENTAL_INCLUDED_H */ diff --git a/black/CreatureMentalAttributeTest.h b/black/CreatureMentalAttributeTest.h new file mode 100644 index 0000000..f8f1091 --- /dev/null +++ b/black/CreatureMentalAttributeTest.h @@ -0,0 +1,107 @@ +#ifndef BW1_DECOMP_CREATURE_MENTAL_ATTRIBUTE_TEST_INCLUDED_H +#define BW1_DECOMP_CREATURE_MENTAL_ATTRIBUTE_TEST_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum ATTRIBUTE_TYPE, enum CREATURE_ACTION */ +#include /* For enum CREATURE_DESIRES */ +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "CreatureLessonChooser.h" /* For _LESSON_TYPE_COUNT */ + +enum DECISION_TREE_TYPE +{ + DECISION_TREE_TYPE_0x0 = 0x0, + _DECISION_TREE_TYPE_COUNT = 0x1 +}; +static_assert(sizeof(enum DECISION_TREE_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* DECISION_TREE_TYPE_strs[_DECISION_TREE_TYPE_COUNT] = { + "DECISION_TREE_TYPE_0x0", +}; + +struct CreatureLearningEpisode +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct CreatureLearningEpisode) == 0x1, "Data type is of wrong size"); + +DECLARE_LH_LINKED_LIST(CreatureLearningEpisode); + +struct AttributeTest +{ + struct LHLinkedList__CreatureLearningEpisode episodes; /* 0x0 */ + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + enum ATTRIBUTE_TYPE attribute_stack[0x18]; + uint32_t field_0x7c; + uint32_t field_0x80; + uint32_t field_0x84; + uint32_t field_0x88; + uint32_t field_0x8c; + uint32_t field_0x90; +}; +static_assert(sizeof(struct AttributeTest) == 0x94, "Data type is of wrong size"); + +// Constructors + +// win1.41 004d4c20 mac 1024fa20 AttributeTest::AttributeTest(DECISION_TREE_TYPE, CREATURE_DESIRES, CREATURE_ACTION) +struct AttributeTest* __fastcall __ct__13AttributeTestF18DECISION_TREE_TYPE16CREATURE_DESIRES15CREATURE_ACTION(struct AttributeTest* this, const void* edx, enum DECISION_TREE_TYPE tree_type, enum CREATURE_DESIRES desire, enum CREATURE_ACTION action); + +DECLARE_LH_LINKED_LIST(AttributeTest); + +struct DecisionTreeNode +{ + struct AttributeTest* tests[0x2]; /* 0x0 */ +}; +static_assert(sizeof(struct DecisionTreeNode) == 0x8, "Data type is of wrong size"); + +struct DecisionTree +{ + struct DecisionTreeNode root; /* 0x0 */ +}; +static_assert(sizeof(struct DecisionTree) == 0x8, "Data type is of wrong size"); + +// Constructors + +// win1.41 004d4380 mac 102506c0 DecisionTree::DecisionTree(DECISION_TREE_TYPE, CREATURE_DESIRES, CREATURE_ACTION) +struct DecisionTree* __fastcall __ct__12DecisionTreeF18DECISION_TREE_TYPE16CREATURE_DESIRES15CREATURE_ACTION(struct DecisionTree* this, const void* edx, enum DECISION_TREE_TYPE tree_type, enum CREATURE_DESIRES desire, enum CREATURE_ACTION action); + +struct DecisionTreeAgenda +{ + enum DECISION_TREE_TYPE tree_type; /* 0x0 */ + enum CREATURE_DESIRES creature_desires; + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + struct DecisionTree trees[0x2]; +}; +static_assert(sizeof(struct DecisionTreeAgenda) == 0x24, "Data type is of wrong size"); + +// Constructors + +// win1.41 004d43f0 mac 102505c0 DecisionTreeAgenda::DecisionTreeAgenda(DECISION_TREE_TYPE, CREATURE_DESIRES) +struct DecisionTreeAgenda* __fastcall __ct__18DecisionTreeAgendaF18DECISION_TREE_TYPE16CREATURE_DESIRES(struct DecisionTreeAgenda* this, const void* edx, enum DECISION_TREE_TYPE tree_type, enum CREATURE_DESIRES desire); + +struct DecisionTreeAgendas +{ + struct DecisionTreeAgenda* contents[0x28]; /* 0x0 */ +}; +static_assert(sizeof(struct DecisionTreeAgendas) == 0xa0, "Data type is of wrong size"); + +struct DecisionTreeCollection +{ + struct DecisionTreeAgendas agendas[_LESSON_TYPE_COUNT]; /* 0x0 */ +}; +static_assert(sizeof(struct DecisionTreeCollection) == 0x140, "Data type is of wrong size"); + +// Constructors + +// win1.41 004d7220 mac 1024c150 DecisionTreeCollection::DecisionTreeCollection(void) +struct DecisionTreeCollection* __fastcall __ct__22DecisionTreeCollectionFv(struct DecisionTreeCollection* this); + +#endif /* BW1_DECOMP_CREATURE_MENTAL_ATTRIBUTE_TEST_INCLUDED_H */ diff --git a/black/CreatureMentalBelief.h b/black/CreatureMentalBelief.h new file mode 100644 index 0000000..8475826 --- /dev/null +++ b/black/CreatureMentalBelief.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_CREATURE_MENTAL_BELIEF_INCLUDED_H +#define BW1_DECOMP_CREATURE_MENTAL_BELIEF_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct CreatureBelief +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0x44]; +}; +static_assert(sizeof(struct CreatureBelief) == 0x4c, "Data type is of wrong size"); + +static struct BaseVftable* __vt__14CreatureBelief = (struct BaseVftable*)0x008cfe10; + +#endif /* BW1_DECOMP_CREATURE_MENTAL_BELIEF_INCLUDED_H */ diff --git a/black/CreatureMentalBeliefs.h b/black/CreatureMentalBeliefs.h new file mode 100644 index 0000000..65b118e --- /dev/null +++ b/black/CreatureMentalBeliefs.h @@ -0,0 +1,48 @@ +#ifndef BW1_DECOMP_CREATURE_MENTAL_BELIEFS_INCLUDED_H +#define BW1_DECOMP_CREATURE_MENTAL_BELIEFS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct CreatureBeliefList +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; +}; +static_assert(sizeof(struct CreatureBeliefList) == 0x14, "Data type is of wrong size"); + +static struct BaseVftable* __vt__18CreatureBeliefList = (struct BaseVftable*)0x008cf90c; + +struct AllocatedBeliefList +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; +}; +static_assert(sizeof(struct AllocatedBeliefList) == 0x18, "Data type is of wrong size"); + +static struct BaseVftable* __vt__19AllocatedBeliefList = (struct BaseVftable*)0x008cfe58; + +struct CreatureBeliefs +{ + struct Base super; /* 0x0 */ + struct CreatureBeliefList lists[0x2]; + struct AllocatedBeliefList allocated_list; /* 0x30 */ + uint8_t field_0x48[0x228]; +}; +static_assert(sizeof(struct CreatureBeliefs) == 0x270, "Data type is of wrong size"); + +static struct BaseVftable* __vt__15CreatureBeliefs = (struct BaseVftable*)0x008cf8ec; + +// Non-virtual methods + +// win1.41 004d8ea0 mac 10250c70 CreatureBeliefs::Initialise(void) +void __fastcall Initialise__15CreatureBeliefsFv(struct CreatureBeliefs* this); + +#endif /* BW1_DECOMP_CREATURE_MENTAL_BELIEFS_INCLUDED_H */ diff --git a/black/CreatureMentalDebug.h b/black/CreatureMentalDebug.h new file mode 100644 index 0000000..2df797d --- /dev/null +++ b/black/CreatureMentalDebug.h @@ -0,0 +1,29 @@ +#ifndef BW1_DECOMP_CREATURE_MENTAL_DEBUG_INCLUDED_H +#define BW1_DECOMP_CREATURE_MENTAL_DEBUG_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct CreatureMentalDebug +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; + uint8_t field_0x2c[0x10]; + uint32_t field_0x3c; + uint8_t field_0x40[0xc]; +}; +static_assert(sizeof(struct CreatureMentalDebug) == 0x4c, "Data type is of wrong size"); + +static struct BaseVftable* __vt__19CreatureMentalDebug = (struct BaseVftable*)0x008cf8cc; + +#endif /* BW1_DECOMP_CREATURE_MENTAL_DEBUG_INCLUDED_H */ diff --git a/black/CreatureMentalDesire.h b/black/CreatureMentalDesire.h new file mode 100644 index 0000000..f280fd9 --- /dev/null +++ b/black/CreatureMentalDesire.h @@ -0,0 +1,46 @@ +#ifndef BW1_DECOMP_CREATURE_MENTAL_DESIRE_INCLUDED_H +#define BW1_DECOMP_CREATURE_MENTAL_DESIRE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Base.h" /* For struct Base */ +#include "CreatureMentalDesireSource.h" /* For struct CreatureDesireSource */ + +// Forward Declares + +struct Creature; +struct CreatureInfo; + +struct CreatureDesires +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8[0x28]; + float field_0xa8[0x28]; + uint32_t field_0x148[0x28]; + uint32_t field_0x1e8[0x28]; + uint32_t field_0x288[0x28]; + struct LHLinkedList__CreatureDesireSource source_lists[0x28]; /* 0x328 */ + uint32_t field_0x468[0x28]; + uint32_t field_0x508[0x28]; + uint32_t field_0x5a8[0x28]; + struct Creature* creature; /* 0x648 */ + struct CreatureInfo* creature_info; + uint32_t field_0x650; + uint32_t field_0x654; + uint32_t field_0x658[0x28]; + uint32_t field_0x6f8; + uint32_t field_0x6fc; + uint32_t field_0x700; + uint32_t field_0x704; +}; +static_assert(sizeof(struct CreatureDesires) == 0x708, "Data type is of wrong size"); + +static struct BaseVftable* __vt__15CreatureDesires = (struct BaseVftable*)0x008cff9c; + +// Constructors + +// win1.41 004dbff0 mac 1025b030 CreatureDesires::__ct(Creature *, CreatureInfo const *) +struct CreatureDesires* __fastcall __ct__15CreatureDesiresFP8CreaturePC12CreatureInfo(struct CreatureDesires* this, const void* edx, struct Creature* creature, const struct CreatureInfo* info); + +#endif /* BW1_DECOMP_CREATURE_MENTAL_DESIRE_INCLUDED_H */ diff --git a/black/CreatureMentalDesireSource.h b/black/CreatureMentalDesireSource.h new file mode 100644 index 0000000..d602684 --- /dev/null +++ b/black/CreatureMentalDesireSource.h @@ -0,0 +1,29 @@ +#ifndef BW1_DECOMP_CREATURE_MENTAL_DESIRE_SOURCE_INCLUDED_H +#define BW1_DECOMP_CREATURE_MENTAL_DESIRE_SOURCE_INCLUDED_H + +#include /* For static_assert */ + +#include /* For enum CREATURE_DESIRE_SOURCE */ +#include /* For DECLARE_LH_LINKED_LIST */ + +// Forward Declares + +struct Creature; + +struct CreatureDesireSource +{ + float value; /* 0x0 */ + float field_0x4; + float field_0x8; + enum CREATURE_DESIRE_SOURCE type; +}; +static_assert(sizeof(struct CreatureDesireSource) == 0x10, "Data type is of wrong size"); + +// Constructors + +// win1.41 004de150 mac 1025dac0 CreatureDesireSource::CreatureDesireSource(CREATURE_DESIRE_SOURCE, Creature* ) +struct CreatureDesireSource* __fastcall __ct__20CreatureDesireSourceF22CREATURE_DESIRE_SOURCEP8Creature(struct CreatureDesireSource* this, const void* edx, enum CREATURE_DESIRE_SOURCE type, struct Creature* creature); + +DECLARE_LH_LINKED_LIST(CreatureDesireSource); + +#endif /* BW1_DECOMP_CREATURE_MENTAL_DESIRE_SOURCE_INCLUDED_H */ diff --git a/black/CreatureMimic.h b/black/CreatureMimic.h new file mode 100644 index 0000000..4ca0e92 --- /dev/null +++ b/black/CreatureMimic.h @@ -0,0 +1,41 @@ +#ifndef BW1_DECOMP_CREATURE_MIMIC_INCLUDED_H +#define BW1_DECOMP_CREATURE_MIMIC_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For enum DETECTED_PLAYER_ACTION */ +#include /* For enum MAGIC_TYPE */ + +#include "Base.h" /* For struct Base */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct GameThingWithPos; + +struct CreatureMimicState +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + uint32_t field_0xc; + enum DETECTED_PLAYER_ACTION detected_player_action; /* 0x10 */ + enum MAGIC_TYPE magic_type; + struct GameThingWithPos* game_thing; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + struct MapCoords coords; /* 0x30 */ +}; +static_assert(sizeof(struct CreatureMimicState) == 0x3c, "Data type is of wrong size"); + +static struct BaseVftable* __vt__18CreatureMimicState = (struct BaseVftable*)0x008d05f0; + +// Constructors + +// win1.41 004e9d20 mac 1026fe50 CreatureMimicState::CreatureMimicState(void) +void __fastcall __ct__18CreatureMimicStateFv(struct CreatureMimicState* this); + +#endif /* BW1_DECOMP_CREATURE_MIMIC_INCLUDED_H */ diff --git a/black/CreatureMorph.h b/black/CreatureMorph.h new file mode 100644 index 0000000..d26e732 --- /dev/null +++ b/black/CreatureMorph.h @@ -0,0 +1,3841 @@ +#ifndef BW1_DECOMP_CREATURE_MORPH_INCLUDED_H +#define BW1_DECOMP_CREATURE_MORPH_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint32_t, uint8_t */ + +#include "Morphable.h" /* For struct Morphable */ + +// Forward Declares + +struct CAnim; +struct Creature; +struct LHMatrix; +struct LHPoint; +struct RPFollow; + +struct LH3DCreature_field_0x5184 +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct LH3DCreature_field_0x5184) == 0x1, "Data type is of wrong size"); + +struct LH3DCreature +{ + struct Morphable super; /* 0x0 */ + struct Creature* creature; /* 0x4834 */ + float field_0x4838; + float required_speed; + float field_0x4840; + uint32_t field_0x4844; + float speed_modifier_0x4848; + uint8_t field_0x484c; + uint8_t field_0x484d; + uint8_t field_0x484e; + uint8_t field_0x484f; + uint8_t field_0x4850; + uint8_t field_0x4851; + uint8_t field_0x4852; + uint8_t field_0x4853; + uint8_t field_0x4854; + uint8_t field_0x4855; + uint8_t field_0x4856; + uint8_t field_0x4857; + uint8_t field_0x4858; + uint8_t field_0x4859; + uint8_t field_0x485a; + uint8_t field_0x485b; + uint32_t field_0x485c; + uint32_t field_0x4860; + uint32_t field_0x4864; + uint32_t field_0x4868; + uint32_t field_0x486c; + uint8_t field_0x4870; + uint8_t field_0x4871; + uint8_t field_0x4872; + uint8_t field_0x4873; + uint8_t field_0x4874; + uint8_t field_0x4875; + uint8_t field_0x4876; + uint8_t field_0x4877; + uint8_t field_0x4878; + uint8_t field_0x4879; + uint8_t field_0x487a; + uint8_t field_0x487b; + uint8_t field_0x487c; + uint8_t field_0x487d; + uint8_t field_0x487e; + uint8_t field_0x487f; + uint8_t field_0x4880; + uint8_t field_0x4881; + uint8_t field_0x4882; + uint8_t field_0x4883; + uint8_t field_0x4884; + uint8_t field_0x4885; + uint8_t field_0x4886; + uint8_t field_0x4887; + uint8_t field_0x4888; + uint8_t field_0x4889; + uint8_t field_0x488a; + uint8_t field_0x488b; + uint8_t field_0x488c; + uint8_t field_0x488d; + uint8_t field_0x488e; + uint8_t field_0x488f; + uint8_t field_0x4890; + uint8_t field_0x4891; + uint8_t field_0x4892; + uint8_t field_0x4893; + uint8_t field_0x4894; + uint8_t field_0x4895; + uint8_t field_0x4896; + uint8_t field_0x4897; + uint8_t field_0x4898; + uint8_t field_0x4899; + uint8_t field_0x489a; + uint8_t field_0x489b; + uint8_t field_0x489c; + uint8_t field_0x489d; + uint8_t field_0x489e; + uint8_t field_0x489f; + uint8_t field_0x48a0; + uint8_t field_0x48a1; + uint8_t field_0x48a2; + uint8_t field_0x48a3; + uint8_t field_0x48a4; + uint8_t field_0x48a5; + uint8_t field_0x48a6; + uint8_t field_0x48a7; + uint8_t field_0x48a8; + uint8_t field_0x48a9; + uint8_t field_0x48aa; + uint8_t field_0x48ab; + uint8_t field_0x48ac; + uint8_t field_0x48ad; + uint8_t field_0x48ae; + uint8_t field_0x48af; + uint8_t field_0x48b0; + uint8_t field_0x48b1; + uint8_t field_0x48b2; + uint8_t field_0x48b3; + int field_0x48b4; + uint8_t field_0x48b8; + uint8_t field_0x48b9; + uint8_t field_0x48ba; + uint8_t field_0x48bb; + uint8_t field_0x48bc; + uint8_t field_0x48bd; + uint8_t field_0x48be; + uint8_t field_0x48bf; + float field_0x48c0; + float field_0x48c4; + float field_0x48c8; + uint8_t field_0x48cc; + uint8_t field_0x48cd; + uint8_t field_0x48ce; + uint8_t field_0x48cf; + uint8_t field_0x48d0; + uint8_t field_0x48d1; + uint8_t field_0x48d2; + uint8_t field_0x48d3; + float field_0x48d4; + uint8_t field_0x48d8; + uint8_t field_0x48d9; + uint8_t field_0x48da; + uint8_t field_0x48db; + uint8_t field_0x48dc; + uint8_t field_0x48dd; + uint8_t field_0x48de; + uint8_t field_0x48df; + uint8_t field_0x48e0; + uint8_t field_0x48e1; + uint8_t field_0x48e2; + uint8_t field_0x48e3; + float field_0x48e4; + uint8_t field_0x48e8; + uint8_t field_0x48e9; + uint8_t field_0x48ea; + uint8_t field_0x48eb; + uint8_t field_0x48ec; + uint8_t field_0x48ed; + uint8_t field_0x48ee; + uint8_t field_0x48ef; + uint8_t field_0x48f0; + uint8_t field_0x48f1; + uint8_t field_0x48f2; + uint8_t field_0x48f3; + float field_0x48f4; + uint8_t field_0x48f8; + uint8_t field_0x48f9; + uint8_t field_0x48fa; + uint8_t field_0x48fb; + uint8_t field_0x48fc; + uint8_t field_0x48fd; + uint8_t field_0x48fe; + uint8_t field_0x48ff; + uint8_t field_0x4900; + uint8_t field_0x4901; + uint8_t field_0x4902; + uint8_t field_0x4903; + uint8_t field_0x4904; + uint8_t field_0x4905; + uint8_t field_0x4906; + uint8_t field_0x4907; + uint8_t field_0x4908; + uint8_t field_0x4909; + uint8_t field_0x490a; + uint8_t field_0x490b; + uint8_t field_0x490c; + uint8_t field_0x490d; + uint8_t field_0x490e; + uint8_t field_0x490f; + uint8_t field_0x4910; + uint8_t field_0x4911; + uint8_t field_0x4912; + uint8_t field_0x4913; + uint8_t field_0x4914; + uint8_t field_0x4915; + uint8_t field_0x4916; + uint8_t field_0x4917; + uint8_t field_0x4918; + uint8_t field_0x4919; + uint8_t field_0x491a; + uint8_t field_0x491b; + uint8_t field_0x491c; + uint8_t field_0x491d; + uint8_t field_0x491e; + uint8_t field_0x491f; + uint8_t field_0x4920; + uint8_t field_0x4921; + uint8_t field_0x4922; + uint8_t field_0x4923; + uint8_t field_0x4924; + uint8_t field_0x4925; + uint8_t field_0x4926; + uint8_t field_0x4927; + uint8_t field_0x4928; + uint8_t field_0x4929; + uint8_t field_0x492a; + uint8_t field_0x492b; + uint8_t field_0x492c; + uint8_t field_0x492d; + uint8_t field_0x492e; + uint8_t field_0x492f; + uint8_t field_0x4930; + uint8_t field_0x4931; + uint8_t field_0x4932; + uint8_t field_0x4933; + uint8_t field_0x4934; + uint8_t field_0x4935; + uint8_t field_0x4936; + uint8_t field_0x4937; + uint8_t field_0x4938; + uint8_t field_0x4939; + uint8_t field_0x493a; + uint8_t field_0x493b; + uint8_t field_0x493c; + uint8_t field_0x493d; + uint8_t field_0x493e; + uint8_t field_0x493f; + uint8_t field_0x4940; + uint8_t field_0x4941; + uint8_t field_0x4942; + uint8_t field_0x4943; + uint8_t field_0x4944; + uint8_t field_0x4945; + uint8_t field_0x4946; + uint8_t field_0x4947; + uint8_t field_0x4948; + uint8_t field_0x4949; + uint8_t field_0x494a; + uint8_t field_0x494b; + uint8_t field_0x494c; + uint8_t field_0x494d; + uint8_t field_0x494e; + uint8_t field_0x494f; + uint8_t field_0x4950; + uint8_t field_0x4951; + uint8_t field_0x4952; + uint8_t field_0x4953; + uint8_t field_0x4954; + uint8_t field_0x4955; + uint8_t field_0x4956; + uint8_t field_0x4957; + uint8_t field_0x4958; + uint8_t field_0x4959; + uint8_t field_0x495a; + uint8_t field_0x495b; + uint8_t field_0x495c; + uint8_t field_0x495d; + uint8_t field_0x495e; + uint8_t field_0x495f; + uint8_t field_0x4960; + uint8_t field_0x4961; + uint8_t field_0x4962; + uint8_t field_0x4963; + uint8_t field_0x4964; + uint8_t field_0x4965; + uint8_t field_0x4966; + uint8_t field_0x4967; + uint8_t field_0x4968; + uint8_t field_0x4969; + uint8_t field_0x496a; + uint8_t field_0x496b; + uint8_t field_0x496c; + uint8_t field_0x496d; + uint8_t field_0x496e; + uint8_t field_0x496f; + uint8_t field_0x4970; + uint8_t field_0x4971; + uint8_t field_0x4972; + uint8_t field_0x4973; + uint8_t field_0x4974; + uint8_t field_0x4975; + uint8_t field_0x4976; + uint8_t field_0x4977; + uint8_t field_0x4978; + uint8_t field_0x4979; + uint8_t field_0x497a; + uint8_t field_0x497b; + uint8_t field_0x497c; + uint8_t field_0x497d; + uint8_t field_0x497e; + uint8_t field_0x497f; + uint8_t field_0x4980; + uint8_t field_0x4981; + uint8_t field_0x4982; + uint8_t field_0x4983; + uint8_t field_0x4984; + uint8_t field_0x4985; + uint8_t field_0x4986; + uint8_t field_0x4987; + uint8_t field_0x4988; + uint8_t field_0x4989; + uint8_t field_0x498a; + uint8_t field_0x498b; + uint8_t field_0x498c; + uint8_t field_0x498d; + uint8_t field_0x498e; + uint8_t field_0x498f; + float field_0x4990; + int field_0x4994; + uint8_t field_0x4998; + uint8_t field_0x4999; + uint8_t field_0x499a; + uint8_t field_0x499b; + uint8_t field_0x499c; + uint8_t field_0x499d; + uint8_t field_0x499e; + uint8_t field_0x499f; + uint32_t field_0x49a0; + uint8_t field_0x49a4; + uint8_t field_0x49a5; + uint8_t field_0x49a6; + uint8_t field_0x49a7; + float field_0x49a8; + int field_0x49ac; + uint32_t field_0x49b0; + uint8_t field_0x49b4; + uint8_t field_0x49b5; + uint8_t field_0x49b6; + uint8_t field_0x49b7; + uint32_t field_0x49b8; + uint8_t field_0x49bc; + uint8_t field_0x49bd; + uint8_t field_0x49be; + uint8_t field_0x49bf; + uint8_t field_0x49c0; + uint8_t field_0x49c1; + uint8_t field_0x49c2; + uint8_t field_0x49c3; + uint8_t field_0x49c4; + uint8_t field_0x49c5; + uint8_t field_0x49c6; + uint8_t field_0x49c7; + uint8_t field_0x49c8; + uint8_t field_0x49c9; + uint8_t field_0x49ca; + uint8_t field_0x49cb; + uint8_t field_0x49cc; + uint8_t field_0x49cd; + uint8_t field_0x49ce; + uint8_t field_0x49cf; + uint8_t field_0x49d0; + uint8_t field_0x49d1; + uint8_t field_0x49d2; + uint8_t field_0x49d3; + uint8_t field_0x49d4; + uint8_t field_0x49d5; + uint8_t field_0x49d6; + uint8_t field_0x49d7; + uint8_t field_0x49d8; + uint8_t field_0x49d9; + uint8_t field_0x49da; + uint8_t field_0x49db; + uint8_t field_0x49dc; + uint8_t field_0x49dd; + uint8_t field_0x49de; + uint8_t field_0x49df; + uint8_t field_0x49e0; + uint8_t field_0x49e1; + uint8_t field_0x49e2; + uint8_t field_0x49e3; + uint8_t field_0x49e4; + uint8_t field_0x49e5; + uint8_t field_0x49e6; + uint8_t field_0x49e7; + uint8_t field_0x49e8; + uint8_t field_0x49e9; + uint8_t field_0x49ea; + uint8_t field_0x49eb; + uint8_t field_0x49ec; + uint8_t field_0x49ed; + uint8_t field_0x49ee; + uint8_t field_0x49ef; + uint8_t field_0x49f0; + uint8_t field_0x49f1; + uint8_t field_0x49f2; + uint8_t field_0x49f3; + uint8_t field_0x49f4; + uint8_t field_0x49f5; + uint8_t field_0x49f6; + uint8_t field_0x49f7; + uint8_t field_0x49f8; + uint8_t field_0x49f9; + uint8_t field_0x49fa; + uint8_t field_0x49fb; + uint8_t field_0x49fc; + uint8_t field_0x49fd; + uint8_t field_0x49fe; + uint8_t field_0x49ff; + uint8_t field_0x4a00; + uint8_t field_0x4a01; + uint8_t field_0x4a02; + uint8_t field_0x4a03; + uint8_t field_0x4a04; + uint8_t field_0x4a05; + uint8_t field_0x4a06; + uint8_t field_0x4a07; + uint8_t field_0x4a08; + uint8_t field_0x4a09; + uint8_t field_0x4a0a; + uint8_t field_0x4a0b; + uint8_t field_0x4a0c; + uint8_t field_0x4a0d; + uint8_t field_0x4a0e; + uint8_t field_0x4a0f; + uint8_t field_0x4a10; + uint8_t field_0x4a11; + uint8_t field_0x4a12; + uint8_t field_0x4a13; + uint8_t field_0x4a14; + uint8_t field_0x4a15; + uint8_t field_0x4a16; + uint8_t field_0x4a17; + uint8_t field_0x4a18; + uint8_t field_0x4a19; + uint8_t field_0x4a1a; + uint8_t field_0x4a1b; + uint8_t field_0x4a1c; + uint8_t field_0x4a1d; + uint8_t field_0x4a1e; + uint8_t field_0x4a1f; + uint8_t field_0x4a20; + uint8_t field_0x4a21; + uint8_t field_0x4a22; + uint8_t field_0x4a23; + uint8_t field_0x4a24; + uint8_t field_0x4a25; + uint8_t field_0x4a26; + uint8_t field_0x4a27; + uint8_t field_0x4a28; + uint8_t field_0x4a29; + uint8_t field_0x4a2a; + uint8_t field_0x4a2b; + uint8_t field_0x4a2c; + uint8_t field_0x4a2d; + uint8_t field_0x4a2e; + uint8_t field_0x4a2f; + uint8_t field_0x4a30; + uint8_t field_0x4a31; + uint8_t field_0x4a32; + uint8_t field_0x4a33; + uint8_t field_0x4a34; + uint8_t field_0x4a35; + uint8_t field_0x4a36; + uint8_t field_0x4a37; + uint8_t field_0x4a38; + uint8_t field_0x4a39; + uint8_t field_0x4a3a; + uint8_t field_0x4a3b; + uint8_t field_0x4a3c; + uint8_t field_0x4a3d; + uint8_t field_0x4a3e; + uint8_t field_0x4a3f; + uint8_t field_0x4a40; + uint8_t field_0x4a41; + uint8_t field_0x4a42; + uint8_t field_0x4a43; + uint8_t field_0x4a44; + uint8_t field_0x4a45; + uint8_t field_0x4a46; + uint8_t field_0x4a47; + uint8_t field_0x4a48; + uint8_t field_0x4a49; + uint8_t field_0x4a4a; + uint8_t field_0x4a4b; + uint8_t field_0x4a4c; + uint8_t field_0x4a4d; + uint8_t field_0x4a4e; + uint8_t field_0x4a4f; + uint8_t field_0x4a50; + uint8_t field_0x4a51; + uint8_t field_0x4a52; + uint8_t field_0x4a53; + uint8_t field_0x4a54; + uint8_t field_0x4a55; + uint8_t field_0x4a56; + uint8_t field_0x4a57; + uint8_t field_0x4a58; + uint8_t field_0x4a59; + uint8_t field_0x4a5a; + uint8_t field_0x4a5b; + uint8_t field_0x4a5c; + uint8_t field_0x4a5d; + uint8_t field_0x4a5e; + uint8_t field_0x4a5f; + uint8_t field_0x4a60; + uint8_t field_0x4a61; + uint8_t field_0x4a62; + uint8_t field_0x4a63; + uint8_t field_0x4a64; + uint8_t field_0x4a65; + uint8_t field_0x4a66; + uint8_t field_0x4a67; + uint8_t field_0x4a68; + uint8_t field_0x4a69; + uint8_t field_0x4a6a; + uint8_t field_0x4a6b; + uint8_t field_0x4a6c; + uint8_t field_0x4a6d; + uint8_t field_0x4a6e; + uint8_t field_0x4a6f; + uint8_t field_0x4a70; + uint8_t field_0x4a71; + uint8_t field_0x4a72; + uint8_t field_0x4a73; + uint8_t field_0x4a74; + uint8_t field_0x4a75; + uint8_t field_0x4a76; + uint8_t field_0x4a77; + uint8_t field_0x4a78; + uint8_t field_0x4a79; + uint8_t field_0x4a7a; + uint8_t field_0x4a7b; + uint8_t field_0x4a7c; + uint8_t field_0x4a7d; + uint8_t field_0x4a7e; + uint8_t field_0x4a7f; + uint8_t field_0x4a80; + uint8_t field_0x4a81; + uint8_t field_0x4a82; + uint8_t field_0x4a83; + uint8_t field_0x4a84; + uint8_t field_0x4a85; + uint8_t field_0x4a86; + uint8_t field_0x4a87; + uint8_t field_0x4a88; + uint8_t field_0x4a89; + uint8_t field_0x4a8a; + uint8_t field_0x4a8b; + uint8_t field_0x4a8c; + uint8_t field_0x4a8d; + uint8_t field_0x4a8e; + uint8_t field_0x4a8f; + uint8_t field_0x4a90; + uint8_t field_0x4a91; + uint8_t field_0x4a92; + uint8_t field_0x4a93; + uint8_t field_0x4a94; + uint8_t field_0x4a95; + uint8_t field_0x4a96; + uint8_t field_0x4a97; + uint8_t field_0x4a98; + uint8_t field_0x4a99; + uint8_t field_0x4a9a; + uint8_t field_0x4a9b; + uint8_t field_0x4a9c; + uint8_t field_0x4a9d; + uint8_t field_0x4a9e; + uint8_t field_0x4a9f; + uint8_t field_0x4aa0; + uint8_t field_0x4aa1; + uint8_t field_0x4aa2; + uint8_t field_0x4aa3; + uint8_t field_0x4aa4; + uint8_t field_0x4aa5; + uint8_t field_0x4aa6; + uint8_t field_0x4aa7; + float field_0x4aa8; + float field_0x4aac; + uint8_t field_0x4ab0; + uint8_t field_0x4ab1; + uint8_t field_0x4ab2; + uint8_t field_0x4ab3; + uint8_t field_0x4ab4; + uint8_t field_0x4ab5; + uint8_t field_0x4ab6; + uint8_t field_0x4ab7; + uint8_t field_0x4ab8; + uint8_t field_0x4ab9; + uint8_t field_0x4aba; + uint8_t field_0x4abb; + uint8_t field_0x4abc; + uint8_t field_0x4abd; + uint8_t field_0x4abe; + uint8_t field_0x4abf; + uint8_t field_0x4ac0; + uint8_t field_0x4ac1; + uint8_t field_0x4ac2; + uint8_t field_0x4ac3; + uint8_t field_0x4ac4; + uint8_t field_0x4ac5; + uint8_t field_0x4ac6; + uint8_t field_0x4ac7; + uint8_t field_0x4ac8; + uint8_t field_0x4ac9; + uint8_t field_0x4aca; + uint8_t field_0x4acb; + uint8_t field_0x4acc; + uint8_t field_0x4acd; + uint8_t field_0x4ace; + uint8_t field_0x4acf; + uint8_t field_0x4ad0; + uint8_t field_0x4ad1; + uint8_t field_0x4ad2; + uint8_t field_0x4ad3; + uint8_t field_0x4ad4; + uint8_t field_0x4ad5; + uint8_t field_0x4ad6; + uint8_t field_0x4ad7; + uint8_t field_0x4ad8; + uint8_t field_0x4ad9; + uint8_t field_0x4ada; + uint8_t field_0x4adb; + uint8_t field_0x4adc; + uint8_t field_0x4add; + uint8_t field_0x4ade; + uint8_t field_0x4adf; + uint8_t field_0x4ae0; + uint8_t field_0x4ae1; + uint8_t field_0x4ae2; + uint8_t field_0x4ae3; + uint8_t field_0x4ae4; + uint8_t field_0x4ae5; + uint8_t field_0x4ae6; + uint8_t field_0x4ae7; + uint8_t field_0x4ae8; + uint8_t field_0x4ae9; + uint8_t field_0x4aea; + uint8_t field_0x4aeb; + uint8_t field_0x4aec; + uint8_t field_0x4aed; + uint8_t field_0x4aee; + uint8_t field_0x4aef; + uint8_t field_0x4af0; + uint8_t field_0x4af1; + uint8_t field_0x4af2; + uint8_t field_0x4af3; + uint8_t field_0x4af4; + uint8_t field_0x4af5; + uint8_t field_0x4af6; + uint8_t field_0x4af7; + uint8_t field_0x4af8; + uint8_t field_0x4af9; + uint8_t field_0x4afa; + uint8_t field_0x4afb; + uint8_t field_0x4afc; + uint8_t field_0x4afd; + uint8_t field_0x4afe; + uint8_t field_0x4aff; + uint8_t field_0x4b00; + uint8_t field_0x4b01; + uint8_t field_0x4b02; + uint8_t field_0x4b03; + uint8_t field_0x4b04; + uint8_t field_0x4b05; + uint8_t field_0x4b06; + uint8_t field_0x4b07; + uint8_t field_0x4b08; + uint8_t field_0x4b09; + uint8_t field_0x4b0a; + uint8_t field_0x4b0b; + uint8_t field_0x4b0c; + uint8_t field_0x4b0d; + uint8_t field_0x4b0e; + uint8_t field_0x4b0f; + uint8_t field_0x4b10; + uint8_t field_0x4b11; + uint8_t field_0x4b12; + uint8_t field_0x4b13; + uint8_t field_0x4b14; + uint8_t field_0x4b15; + uint8_t field_0x4b16; + uint8_t field_0x4b17; + uint8_t field_0x4b18; + uint8_t field_0x4b19; + uint8_t field_0x4b1a; + uint8_t field_0x4b1b; + uint8_t field_0x4b1c; + uint8_t field_0x4b1d; + uint8_t field_0x4b1e; + uint8_t field_0x4b1f; + uint8_t field_0x4b20; + uint8_t field_0x4b21; + uint8_t field_0x4b22; + uint8_t field_0x4b23; + uint8_t field_0x4b24; + uint8_t field_0x4b25; + uint8_t field_0x4b26; + uint8_t field_0x4b27; + uint8_t field_0x4b28; + uint8_t field_0x4b29; + uint8_t field_0x4b2a; + uint8_t field_0x4b2b; + uint8_t field_0x4b2c; + uint8_t field_0x4b2d; + uint8_t field_0x4b2e; + uint8_t field_0x4b2f; + uint8_t field_0x4b30; + uint8_t field_0x4b31; + uint8_t field_0x4b32; + uint8_t field_0x4b33; + uint8_t field_0x4b34; + uint8_t field_0x4b35; + uint8_t field_0x4b36; + uint8_t field_0x4b37; + uint8_t field_0x4b38; + uint8_t field_0x4b39; + uint8_t field_0x4b3a; + uint8_t field_0x4b3b; + uint8_t field_0x4b3c; + uint8_t field_0x4b3d; + uint8_t field_0x4b3e; + uint8_t field_0x4b3f; + uint8_t field_0x4b40; + uint8_t field_0x4b41; + uint8_t field_0x4b42; + uint8_t field_0x4b43; + uint8_t field_0x4b44; + uint8_t field_0x4b45; + uint8_t field_0x4b46; + uint8_t field_0x4b47; + uint8_t field_0x4b48; + uint8_t field_0x4b49; + uint8_t field_0x4b4a; + uint8_t field_0x4b4b; + uint8_t field_0x4b4c; + uint8_t field_0x4b4d; + uint8_t field_0x4b4e; + uint8_t field_0x4b4f; + uint8_t field_0x4b50; + uint8_t field_0x4b51; + uint8_t field_0x4b52; + uint8_t field_0x4b53; + uint8_t field_0x4b54; + uint8_t field_0x4b55; + uint8_t field_0x4b56; + uint8_t field_0x4b57; + uint8_t field_0x4b58; + uint8_t field_0x4b59; + uint8_t field_0x4b5a; + uint8_t field_0x4b5b; + uint8_t field_0x4b5c; + uint8_t field_0x4b5d; + uint8_t field_0x4b5e; + uint8_t field_0x4b5f; + uint8_t field_0x4b60; + uint8_t field_0x4b61; + uint8_t field_0x4b62; + uint8_t field_0x4b63; + uint8_t field_0x4b64; + uint8_t field_0x4b65; + uint8_t field_0x4b66; + uint8_t field_0x4b67; + uint8_t field_0x4b68; + uint8_t field_0x4b69; + uint8_t field_0x4b6a; + uint8_t field_0x4b6b; + uint8_t field_0x4b6c; + uint8_t field_0x4b6d; + uint8_t field_0x4b6e; + uint8_t field_0x4b6f; + uint8_t field_0x4b70; + uint8_t field_0x4b71; + uint8_t field_0x4b72; + uint8_t field_0x4b73; + uint8_t field_0x4b74; + uint8_t field_0x4b75; + uint8_t field_0x4b76; + uint8_t field_0x4b77; + uint8_t field_0x4b78; + uint8_t field_0x4b79; + uint8_t field_0x4b7a; + uint8_t field_0x4b7b; + uint8_t field_0x4b7c; + uint8_t field_0x4b7d; + uint8_t field_0x4b7e; + uint8_t field_0x4b7f; + uint8_t field_0x4b80; + uint8_t field_0x4b81; + uint8_t field_0x4b82; + uint8_t field_0x4b83; + uint8_t field_0x4b84; + uint8_t field_0x4b85; + uint8_t field_0x4b86; + uint8_t field_0x4b87; + uint8_t field_0x4b88; + uint8_t field_0x4b89; + uint8_t field_0x4b8a; + uint8_t field_0x4b8b; + uint8_t field_0x4b8c; + uint8_t field_0x4b8d; + uint8_t field_0x4b8e; + uint8_t field_0x4b8f; + uint8_t field_0x4b90; + uint8_t field_0x4b91; + uint8_t field_0x4b92; + uint8_t field_0x4b93; + uint8_t field_0x4b94; + uint8_t field_0x4b95; + uint8_t field_0x4b96; + uint8_t field_0x4b97; + uint8_t field_0x4b98; + uint8_t field_0x4b99; + uint8_t field_0x4b9a; + uint8_t field_0x4b9b; + uint8_t field_0x4b9c; + uint8_t field_0x4b9d; + uint8_t field_0x4b9e; + uint8_t field_0x4b9f; + uint8_t field_0x4ba0; + uint8_t field_0x4ba1; + uint8_t field_0x4ba2; + uint8_t field_0x4ba3; + uint8_t field_0x4ba4; + uint8_t field_0x4ba5; + uint8_t field_0x4ba6; + uint8_t field_0x4ba7; + uint8_t field_0x4ba8; + uint8_t field_0x4ba9; + uint8_t field_0x4baa; + uint8_t field_0x4bab; + uint8_t field_0x4bac; + uint8_t field_0x4bad; + uint8_t field_0x4bae; + uint8_t field_0x4baf; + uint8_t field_0x4bb0; + uint8_t field_0x4bb1; + uint8_t field_0x4bb2; + uint8_t field_0x4bb3; + uint8_t field_0x4bb4; + uint8_t field_0x4bb5; + uint8_t field_0x4bb6; + uint8_t field_0x4bb7; + uint8_t field_0x4bb8; + uint8_t field_0x4bb9; + uint8_t field_0x4bba; + uint8_t field_0x4bbb; + uint8_t field_0x4bbc; + uint8_t field_0x4bbd; + uint8_t field_0x4bbe; + uint8_t field_0x4bbf; + uint8_t field_0x4bc0; + uint8_t field_0x4bc1; + uint8_t field_0x4bc2; + uint8_t field_0x4bc3; + uint8_t field_0x4bc4; + uint8_t field_0x4bc5; + uint8_t field_0x4bc6; + uint8_t field_0x4bc7; + uint8_t field_0x4bc8; + uint8_t field_0x4bc9; + uint8_t field_0x4bca; + uint8_t field_0x4bcb; + uint8_t field_0x4bcc; + uint8_t field_0x4bcd; + uint8_t field_0x4bce; + uint8_t field_0x4bcf; + uint8_t field_0x4bd0; + uint8_t field_0x4bd1; + uint8_t field_0x4bd2; + uint8_t field_0x4bd3; + uint8_t field_0x4bd4; + uint8_t field_0x4bd5; + uint8_t field_0x4bd6; + uint8_t field_0x4bd7; + uint8_t field_0x4bd8; + uint8_t field_0x4bd9; + uint8_t field_0x4bda; + uint8_t field_0x4bdb; + uint8_t field_0x4bdc; + uint8_t field_0x4bdd; + uint8_t field_0x4bde; + uint8_t field_0x4bdf; + uint8_t field_0x4be0; + uint8_t field_0x4be1; + uint8_t field_0x4be2; + uint8_t field_0x4be3; + uint8_t field_0x4be4; + uint8_t field_0x4be5; + uint8_t field_0x4be6; + uint8_t field_0x4be7; + uint8_t field_0x4be8; + uint8_t field_0x4be9; + uint8_t field_0x4bea; + uint8_t field_0x4beb; + uint8_t field_0x4bec; + uint8_t field_0x4bed; + uint8_t field_0x4bee; + uint8_t field_0x4bef; + uint8_t field_0x4bf0; + uint8_t field_0x4bf1; + uint8_t field_0x4bf2; + uint8_t field_0x4bf3; + uint8_t field_0x4bf4; + uint8_t field_0x4bf5; + uint8_t field_0x4bf6; + uint8_t field_0x4bf7; + uint8_t field_0x4bf8; + uint8_t field_0x4bf9; + uint8_t field_0x4bfa; + uint8_t field_0x4bfb; + uint8_t field_0x4bfc; + uint8_t field_0x4bfd; + uint8_t field_0x4bfe; + uint8_t field_0x4bff; + uint8_t field_0x4c00; + uint8_t field_0x4c01; + uint8_t field_0x4c02; + uint8_t field_0x4c03; + uint8_t field_0x4c04; + uint8_t field_0x4c05; + uint8_t field_0x4c06; + uint8_t field_0x4c07; + uint8_t field_0x4c08; + uint8_t field_0x4c09; + uint8_t field_0x4c0a; + uint8_t field_0x4c0b; + uint8_t field_0x4c0c; + uint8_t field_0x4c0d; + uint8_t field_0x4c0e; + uint8_t field_0x4c0f; + uint8_t field_0x4c10; + uint8_t field_0x4c11; + uint8_t field_0x4c12; + uint8_t field_0x4c13; + uint8_t field_0x4c14; + uint8_t field_0x4c15; + uint8_t field_0x4c16; + uint8_t field_0x4c17; + uint8_t field_0x4c18; + uint8_t field_0x4c19; + uint8_t field_0x4c1a; + uint8_t field_0x4c1b; + uint8_t field_0x4c1c; + uint8_t field_0x4c1d; + uint8_t field_0x4c1e; + uint8_t field_0x4c1f; + uint8_t field_0x4c20; + uint8_t field_0x4c21; + uint8_t field_0x4c22; + uint8_t field_0x4c23; + uint8_t field_0x4c24; + uint8_t field_0x4c25; + uint8_t field_0x4c26; + uint8_t field_0x4c27; + uint8_t field_0x4c28; + uint8_t field_0x4c29; + uint8_t field_0x4c2a; + uint8_t field_0x4c2b; + uint8_t field_0x4c2c; + uint8_t field_0x4c2d; + uint8_t field_0x4c2e; + uint8_t field_0x4c2f; + uint8_t field_0x4c30; + uint8_t field_0x4c31; + uint8_t field_0x4c32; + uint8_t field_0x4c33; + uint8_t field_0x4c34; + uint8_t field_0x4c35; + uint8_t field_0x4c36; + uint8_t field_0x4c37; + uint8_t field_0x4c38; + uint8_t field_0x4c39; + uint8_t field_0x4c3a; + uint8_t field_0x4c3b; + uint8_t field_0x4c3c; + uint8_t field_0x4c3d; + uint8_t field_0x4c3e; + uint8_t field_0x4c3f; + uint8_t field_0x4c40; + uint8_t field_0x4c41; + uint8_t field_0x4c42; + uint8_t field_0x4c43; + uint8_t field_0x4c44; + uint8_t field_0x4c45; + uint8_t field_0x4c46; + uint8_t field_0x4c47; + uint8_t field_0x4c48; + uint8_t field_0x4c49; + uint8_t field_0x4c4a; + uint8_t field_0x4c4b; + uint8_t field_0x4c4c; + uint8_t field_0x4c4d; + uint8_t field_0x4c4e; + uint8_t field_0x4c4f; + uint8_t field_0x4c50; + uint8_t field_0x4c51; + uint8_t field_0x4c52; + uint8_t field_0x4c53; + uint8_t field_0x4c54; + uint8_t field_0x4c55; + uint8_t field_0x4c56; + uint8_t field_0x4c57; + uint8_t field_0x4c58; + uint8_t field_0x4c59; + uint8_t field_0x4c5a; + uint8_t field_0x4c5b; + uint8_t field_0x4c5c; + uint8_t field_0x4c5d; + uint8_t field_0x4c5e; + uint8_t field_0x4c5f; + uint8_t field_0x4c60; + uint8_t field_0x4c61; + uint8_t field_0x4c62; + uint8_t field_0x4c63; + uint8_t field_0x4c64; + uint8_t field_0x4c65; + uint8_t field_0x4c66; + uint8_t field_0x4c67; + uint8_t field_0x4c68; + uint8_t field_0x4c69; + uint8_t field_0x4c6a; + uint8_t field_0x4c6b; + uint8_t field_0x4c6c; + uint8_t field_0x4c6d; + uint8_t field_0x4c6e; + uint8_t field_0x4c6f; + uint8_t field_0x4c70; + uint8_t field_0x4c71; + uint8_t field_0x4c72; + uint8_t field_0x4c73; + uint8_t field_0x4c74; + uint8_t field_0x4c75; + uint8_t field_0x4c76; + uint8_t field_0x4c77; + uint8_t field_0x4c78; + uint8_t field_0x4c79; + uint8_t field_0x4c7a; + uint8_t field_0x4c7b; + uint8_t field_0x4c7c; + uint8_t field_0x4c7d; + uint8_t field_0x4c7e; + uint8_t field_0x4c7f; + uint8_t field_0x4c80; + uint8_t field_0x4c81; + uint8_t field_0x4c82; + uint8_t field_0x4c83; + uint8_t field_0x4c84; + uint8_t field_0x4c85; + uint8_t field_0x4c86; + uint8_t field_0x4c87; + uint8_t field_0x4c88; + uint8_t field_0x4c89; + uint8_t field_0x4c8a; + uint8_t field_0x4c8b; + uint8_t field_0x4c8c; + uint8_t field_0x4c8d; + uint8_t field_0x4c8e; + uint8_t field_0x4c8f; + uint8_t field_0x4c90; + uint8_t field_0x4c91; + uint8_t field_0x4c92; + uint8_t field_0x4c93; + uint8_t field_0x4c94; + uint8_t field_0x4c95; + uint8_t field_0x4c96; + uint8_t field_0x4c97; + uint8_t field_0x4c98; + uint8_t field_0x4c99; + uint8_t field_0x4c9a; + uint8_t field_0x4c9b; + uint8_t field_0x4c9c; + uint8_t field_0x4c9d; + uint8_t field_0x4c9e; + uint8_t field_0x4c9f; + uint8_t field_0x4ca0; + uint8_t field_0x4ca1; + uint8_t field_0x4ca2; + uint8_t field_0x4ca3; + uint8_t field_0x4ca4; + uint8_t field_0x4ca5; + uint8_t field_0x4ca6; + uint8_t field_0x4ca7; + uint8_t field_0x4ca8; + uint8_t field_0x4ca9; + uint8_t field_0x4caa; + uint8_t field_0x4cab; + uint8_t field_0x4cac; + uint8_t field_0x4cad; + uint8_t field_0x4cae; + uint8_t field_0x4caf; + uint8_t field_0x4cb0; + uint8_t field_0x4cb1; + uint8_t field_0x4cb2; + uint8_t field_0x4cb3; + uint8_t field_0x4cb4; + uint8_t field_0x4cb5; + uint8_t field_0x4cb6; + uint8_t field_0x4cb7; + uint8_t field_0x4cb8; + uint8_t field_0x4cb9; + uint8_t field_0x4cba; + uint8_t field_0x4cbb; + uint8_t field_0x4cbc; + uint8_t field_0x4cbd; + uint8_t field_0x4cbe; + uint8_t field_0x4cbf; + uint8_t field_0x4cc0; + uint8_t field_0x4cc1; + uint8_t field_0x4cc2; + uint8_t field_0x4cc3; + uint8_t field_0x4cc4; + uint8_t field_0x4cc5; + uint8_t field_0x4cc6; + uint8_t field_0x4cc7; + uint8_t field_0x4cc8; + uint8_t field_0x4cc9; + uint8_t field_0x4cca; + uint8_t field_0x4ccb; + uint8_t field_0x4ccc; + uint8_t field_0x4ccd; + uint8_t field_0x4cce; + uint8_t field_0x4ccf; + uint8_t field_0x4cd0; + uint8_t field_0x4cd1; + uint8_t field_0x4cd2; + uint8_t field_0x4cd3; + uint8_t field_0x4cd4; + uint8_t field_0x4cd5; + uint8_t field_0x4cd6; + uint8_t field_0x4cd7; + uint8_t field_0x4cd8; + uint8_t field_0x4cd9; + uint8_t field_0x4cda; + uint8_t field_0x4cdb; + uint8_t field_0x4cdc; + uint8_t field_0x4cdd; + uint8_t field_0x4cde; + uint8_t field_0x4cdf; + uint8_t field_0x4ce0; + uint8_t field_0x4ce1; + uint8_t field_0x4ce2; + uint8_t field_0x4ce3; + uint8_t field_0x4ce4; + uint8_t field_0x4ce5; + uint8_t field_0x4ce6; + uint8_t field_0x4ce7; + uint8_t field_0x4ce8; + uint8_t field_0x4ce9; + uint8_t field_0x4cea; + uint8_t field_0x4ceb; + uint8_t field_0x4cec; + uint8_t field_0x4ced; + uint8_t field_0x4cee; + uint8_t field_0x4cef; + uint8_t field_0x4cf0; + uint8_t field_0x4cf1; + uint8_t field_0x4cf2; + uint8_t field_0x4cf3; + uint8_t field_0x4cf4; + uint8_t field_0x4cf5; + uint8_t field_0x4cf6; + uint8_t field_0x4cf7; + uint8_t field_0x4cf8; + uint8_t field_0x4cf9; + uint8_t field_0x4cfa; + uint8_t field_0x4cfb; + uint8_t field_0x4cfc; + uint8_t field_0x4cfd; + uint8_t field_0x4cfe; + uint8_t field_0x4cff; + uint8_t field_0x4d00; + uint8_t field_0x4d01; + uint8_t field_0x4d02; + uint8_t field_0x4d03; + uint8_t field_0x4d04; + uint8_t field_0x4d05; + uint8_t field_0x4d06; + uint8_t field_0x4d07; + uint8_t field_0x4d08; + uint8_t field_0x4d09; + uint8_t field_0x4d0a; + uint8_t field_0x4d0b; + uint8_t field_0x4d0c; + uint8_t field_0x4d0d; + uint8_t field_0x4d0e; + uint8_t field_0x4d0f; + uint8_t field_0x4d10; + uint8_t field_0x4d11; + uint8_t field_0x4d12; + uint8_t field_0x4d13; + uint8_t field_0x4d14; + uint8_t field_0x4d15; + uint8_t field_0x4d16; + uint8_t field_0x4d17; + uint8_t field_0x4d18; + uint8_t field_0x4d19; + uint8_t field_0x4d1a; + uint8_t field_0x4d1b; + uint8_t field_0x4d1c; + uint8_t field_0x4d1d; + uint8_t field_0x4d1e; + uint8_t field_0x4d1f; + uint8_t field_0x4d20; + uint8_t field_0x4d21; + uint8_t field_0x4d22; + uint8_t field_0x4d23; + uint8_t field_0x4d24; + uint8_t field_0x4d25; + uint8_t field_0x4d26; + uint8_t field_0x4d27; + uint8_t field_0x4d28; + uint8_t field_0x4d29; + uint8_t field_0x4d2a; + uint8_t field_0x4d2b; + uint8_t field_0x4d2c; + uint8_t field_0x4d2d; + uint8_t field_0x4d2e; + uint8_t field_0x4d2f; + uint8_t field_0x4d30; + uint8_t field_0x4d31; + uint8_t field_0x4d32; + uint8_t field_0x4d33; + uint8_t field_0x4d34; + uint8_t field_0x4d35; + uint8_t field_0x4d36; + uint8_t field_0x4d37; + uint8_t field_0x4d38; + uint8_t field_0x4d39; + uint8_t field_0x4d3a; + uint8_t field_0x4d3b; + uint8_t field_0x4d3c; + uint8_t field_0x4d3d; + uint8_t field_0x4d3e; + uint8_t field_0x4d3f; + uint8_t field_0x4d40; + uint8_t field_0x4d41; + uint8_t field_0x4d42; + uint8_t field_0x4d43; + uint8_t field_0x4d44; + uint8_t field_0x4d45; + uint8_t field_0x4d46; + uint8_t field_0x4d47; + uint8_t field_0x4d48; + uint8_t field_0x4d49; + uint8_t field_0x4d4a; + uint8_t field_0x4d4b; + uint8_t field_0x4d4c; + uint8_t field_0x4d4d; + uint8_t field_0x4d4e; + uint8_t field_0x4d4f; + uint8_t field_0x4d50; + uint8_t field_0x4d51; + uint8_t field_0x4d52; + uint8_t field_0x4d53; + uint8_t field_0x4d54; + uint8_t field_0x4d55; + uint8_t field_0x4d56; + uint8_t field_0x4d57; + uint8_t field_0x4d58; + uint8_t field_0x4d59; + uint8_t field_0x4d5a; + uint8_t field_0x4d5b; + uint8_t field_0x4d5c; + uint8_t field_0x4d5d; + uint8_t field_0x4d5e; + uint8_t field_0x4d5f; + uint8_t field_0x4d60; + uint8_t field_0x4d61; + uint8_t field_0x4d62; + uint8_t field_0x4d63; + uint8_t field_0x4d64; + uint8_t field_0x4d65; + uint8_t field_0x4d66; + uint8_t field_0x4d67; + uint8_t field_0x4d68; + uint8_t field_0x4d69; + uint8_t field_0x4d6a; + uint8_t field_0x4d6b; + uint8_t field_0x4d6c; + uint8_t field_0x4d6d; + uint8_t field_0x4d6e; + uint8_t field_0x4d6f; + uint8_t field_0x4d70; + uint8_t field_0x4d71; + uint8_t field_0x4d72; + uint8_t field_0x4d73; + uint8_t field_0x4d74; + uint8_t field_0x4d75; + uint8_t field_0x4d76; + uint8_t field_0x4d77; + uint8_t field_0x4d78; + uint8_t field_0x4d79; + uint8_t field_0x4d7a; + uint8_t field_0x4d7b; + uint8_t field_0x4d7c; + uint8_t field_0x4d7d; + uint8_t field_0x4d7e; + uint8_t field_0x4d7f; + uint8_t field_0x4d80; + uint8_t field_0x4d81; + uint8_t field_0x4d82; + uint8_t field_0x4d83; + uint8_t field_0x4d84; + uint8_t field_0x4d85; + uint8_t field_0x4d86; + uint8_t field_0x4d87; + uint8_t field_0x4d88; + uint8_t field_0x4d89; + uint8_t field_0x4d8a; + uint8_t field_0x4d8b; + uint8_t field_0x4d8c; + uint8_t field_0x4d8d; + uint8_t field_0x4d8e; + uint8_t field_0x4d8f; + uint8_t field_0x4d90; + uint8_t field_0x4d91; + uint8_t field_0x4d92; + uint8_t field_0x4d93; + uint8_t field_0x4d94; + uint8_t field_0x4d95; + uint8_t field_0x4d96; + uint8_t field_0x4d97; + uint8_t field_0x4d98; + uint8_t field_0x4d99; + uint8_t field_0x4d9a; + uint8_t field_0x4d9b; + uint8_t field_0x4d9c; + uint8_t field_0x4d9d; + uint8_t field_0x4d9e; + uint8_t field_0x4d9f; + uint8_t field_0x4da0; + uint8_t field_0x4da1; + uint8_t field_0x4da2; + uint8_t field_0x4da3; + uint8_t field_0x4da4; + uint8_t field_0x4da5; + uint8_t field_0x4da6; + uint8_t field_0x4da7; + uint8_t field_0x4da8; + uint8_t field_0x4da9; + uint8_t field_0x4daa; + uint8_t field_0x4dab; + uint8_t field_0x4dac; + uint8_t field_0x4dad; + uint8_t field_0x4dae; + uint8_t field_0x4daf; + uint8_t field_0x4db0; + uint8_t field_0x4db1; + uint8_t field_0x4db2; + uint8_t field_0x4db3; + uint8_t field_0x4db4; + uint8_t field_0x4db5; + uint8_t field_0x4db6; + uint8_t field_0x4db7; + uint8_t field_0x4db8; + uint8_t field_0x4db9; + uint8_t field_0x4dba; + uint8_t field_0x4dbb; + uint8_t field_0x4dbc; + uint8_t field_0x4dbd; + uint8_t field_0x4dbe; + uint8_t field_0x4dbf; + uint8_t field_0x4dc0; + uint8_t field_0x4dc1; + uint8_t field_0x4dc2; + uint8_t field_0x4dc3; + uint8_t field_0x4dc4; + uint8_t field_0x4dc5; + uint8_t field_0x4dc6; + uint8_t field_0x4dc7; + uint8_t field_0x4dc8; + uint8_t field_0x4dc9; + uint8_t field_0x4dca; + uint8_t field_0x4dcb; + uint8_t field_0x4dcc; + uint8_t field_0x4dcd; + uint8_t field_0x4dce; + uint8_t field_0x4dcf; + uint8_t field_0x4dd0; + uint8_t field_0x4dd1; + uint8_t field_0x4dd2; + uint8_t field_0x4dd3; + uint8_t field_0x4dd4; + uint8_t field_0x4dd5; + uint8_t field_0x4dd6; + uint8_t field_0x4dd7; + uint8_t field_0x4dd8; + uint8_t field_0x4dd9; + uint8_t field_0x4dda; + uint8_t field_0x4ddb; + uint8_t field_0x4ddc; + uint8_t field_0x4ddd; + uint8_t field_0x4dde; + uint8_t field_0x4ddf; + uint8_t field_0x4de0; + uint8_t field_0x4de1; + uint8_t field_0x4de2; + uint8_t field_0x4de3; + uint8_t field_0x4de4; + uint8_t field_0x4de5; + uint8_t field_0x4de6; + uint8_t field_0x4de7; + uint8_t field_0x4de8; + uint8_t field_0x4de9; + uint8_t field_0x4dea; + uint8_t field_0x4deb; + uint8_t field_0x4dec; + uint8_t field_0x4ded; + uint8_t field_0x4dee; + uint8_t field_0x4def; + uint8_t field_0x4df0; + uint8_t field_0x4df1; + uint8_t field_0x4df2; + uint8_t field_0x4df3; + uint8_t field_0x4df4; + uint8_t field_0x4df5; + uint8_t field_0x4df6; + uint8_t field_0x4df7; + uint8_t field_0x4df8; + uint8_t field_0x4df9; + uint8_t field_0x4dfa; + uint8_t field_0x4dfb; + uint8_t field_0x4dfc; + uint8_t field_0x4dfd; + uint8_t field_0x4dfe; + uint8_t field_0x4dff; + uint8_t field_0x4e00; + uint8_t field_0x4e01; + uint8_t field_0x4e02; + uint8_t field_0x4e03; + uint8_t field_0x4e04; + uint8_t field_0x4e05; + uint8_t field_0x4e06; + uint8_t field_0x4e07; + uint8_t field_0x4e08; + uint8_t field_0x4e09; + uint8_t field_0x4e0a; + uint8_t field_0x4e0b; + uint8_t field_0x4e0c; + uint8_t field_0x4e0d; + uint8_t field_0x4e0e; + uint8_t field_0x4e0f; + uint8_t field_0x4e10; + uint8_t field_0x4e11; + uint8_t field_0x4e12; + uint8_t field_0x4e13; + uint8_t field_0x4e14; + uint8_t field_0x4e15; + uint8_t field_0x4e16; + uint8_t field_0x4e17; + uint8_t field_0x4e18; + uint8_t field_0x4e19; + uint8_t field_0x4e1a; + uint8_t field_0x4e1b; + uint8_t field_0x4e1c; + uint8_t field_0x4e1d; + uint8_t field_0x4e1e; + uint8_t field_0x4e1f; + uint8_t field_0x4e20; + uint8_t field_0x4e21; + uint8_t field_0x4e22; + uint8_t field_0x4e23; + uint8_t field_0x4e24; + uint8_t field_0x4e25; + uint8_t field_0x4e26; + uint8_t field_0x4e27; + uint8_t field_0x4e28; + uint8_t field_0x4e29; + uint8_t field_0x4e2a; + uint8_t field_0x4e2b; + uint8_t field_0x4e2c; + uint8_t field_0x4e2d; + uint8_t field_0x4e2e; + uint8_t field_0x4e2f; + uint8_t field_0x4e30; + uint8_t field_0x4e31; + uint8_t field_0x4e32; + uint8_t field_0x4e33; + uint8_t field_0x4e34; + uint8_t field_0x4e35; + uint8_t field_0x4e36; + uint8_t field_0x4e37; + uint8_t field_0x4e38; + uint8_t field_0x4e39; + uint8_t field_0x4e3a; + uint8_t field_0x4e3b; + uint8_t field_0x4e3c; + uint8_t field_0x4e3d; + uint8_t field_0x4e3e; + uint8_t field_0x4e3f; + uint8_t field_0x4e40; + uint8_t field_0x4e41; + uint8_t field_0x4e42; + uint8_t field_0x4e43; + uint8_t field_0x4e44; + uint8_t field_0x4e45; + uint8_t field_0x4e46; + uint8_t field_0x4e47; + uint8_t field_0x4e48; + uint8_t field_0x4e49; + uint8_t field_0x4e4a; + uint8_t field_0x4e4b; + uint8_t field_0x4e4c; + uint8_t field_0x4e4d; + uint8_t field_0x4e4e; + uint8_t field_0x4e4f; + uint8_t field_0x4e50; + uint8_t field_0x4e51; + uint8_t field_0x4e52; + uint8_t field_0x4e53; + uint8_t field_0x4e54; + uint8_t field_0x4e55; + uint8_t field_0x4e56; + uint8_t field_0x4e57; + uint8_t field_0x4e58; + uint8_t field_0x4e59; + uint8_t field_0x4e5a; + uint8_t field_0x4e5b; + uint8_t field_0x4e5c; + uint8_t field_0x4e5d; + uint8_t field_0x4e5e; + uint8_t field_0x4e5f; + uint8_t field_0x4e60; + uint8_t field_0x4e61; + uint8_t field_0x4e62; + uint8_t field_0x4e63; + uint8_t field_0x4e64; + uint8_t field_0x4e65; + uint8_t field_0x4e66; + uint8_t field_0x4e67; + uint8_t field_0x4e68; + uint8_t field_0x4e69; + uint8_t field_0x4e6a; + uint8_t field_0x4e6b; + uint8_t field_0x4e6c; + uint8_t field_0x4e6d; + uint8_t field_0x4e6e; + uint8_t field_0x4e6f; + uint8_t field_0x4e70; + uint8_t field_0x4e71; + uint8_t field_0x4e72; + uint8_t field_0x4e73; + uint8_t field_0x4e74; + uint8_t field_0x4e75; + uint8_t field_0x4e76; + uint8_t field_0x4e77; + uint8_t field_0x4e78; + uint8_t field_0x4e79; + uint8_t field_0x4e7a; + uint8_t field_0x4e7b; + uint8_t field_0x4e7c; + uint8_t field_0x4e7d; + uint8_t field_0x4e7e; + uint8_t field_0x4e7f; + uint8_t field_0x4e80; + uint8_t field_0x4e81; + uint8_t field_0x4e82; + uint8_t field_0x4e83; + uint8_t field_0x4e84; + uint8_t field_0x4e85; + uint8_t field_0x4e86; + uint8_t field_0x4e87; + uint8_t field_0x4e88; + uint8_t field_0x4e89; + uint8_t field_0x4e8a; + uint8_t field_0x4e8b; + uint8_t field_0x4e8c; + uint8_t field_0x4e8d; + uint8_t field_0x4e8e; + uint8_t field_0x4e8f; + uint8_t field_0x4e90; + uint8_t field_0x4e91; + uint8_t field_0x4e92; + uint8_t field_0x4e93; + uint8_t field_0x4e94; + uint8_t field_0x4e95; + uint8_t field_0x4e96; + uint8_t field_0x4e97; + uint8_t field_0x4e98; + uint8_t field_0x4e99; + uint8_t field_0x4e9a; + uint8_t field_0x4e9b; + uint8_t field_0x4e9c; + uint8_t field_0x4e9d; + uint8_t field_0x4e9e; + uint8_t field_0x4e9f; + uint8_t field_0x4ea0; + uint8_t field_0x4ea1; + uint8_t field_0x4ea2; + uint8_t field_0x4ea3; + uint8_t field_0x4ea4; + uint8_t field_0x4ea5; + uint8_t field_0x4ea6; + uint8_t field_0x4ea7; + uint8_t field_0x4ea8; + uint8_t field_0x4ea9; + uint8_t field_0x4eaa; + uint8_t field_0x4eab; + uint8_t field_0x4eac; + uint8_t field_0x4ead; + uint8_t field_0x4eae; + uint8_t field_0x4eaf; + uint8_t field_0x4eb0; + uint8_t field_0x4eb1; + uint8_t field_0x4eb2; + uint8_t field_0x4eb3; + uint8_t field_0x4eb4; + uint8_t field_0x4eb5; + uint8_t field_0x4eb6; + uint8_t field_0x4eb7; + uint8_t field_0x4eb8; + uint8_t field_0x4eb9; + uint8_t field_0x4eba; + uint8_t field_0x4ebb; + uint8_t field_0x4ebc; + uint8_t field_0x4ebd; + uint8_t field_0x4ebe; + uint8_t field_0x4ebf; + uint8_t field_0x4ec0; + uint8_t field_0x4ec1; + uint8_t field_0x4ec2; + uint8_t field_0x4ec3; + uint8_t field_0x4ec4; + uint8_t field_0x4ec5; + uint8_t field_0x4ec6; + uint8_t field_0x4ec7; + uint8_t field_0x4ec8; + uint8_t field_0x4ec9; + uint8_t field_0x4eca; + uint8_t field_0x4ecb; + uint8_t field_0x4ecc; + uint8_t field_0x4ecd; + uint8_t field_0x4ece; + uint8_t field_0x4ecf; + uint8_t field_0x4ed0; + uint8_t field_0x4ed1; + uint8_t field_0x4ed2; + uint8_t field_0x4ed3; + uint8_t field_0x4ed4; + uint8_t field_0x4ed5; + uint8_t field_0x4ed6; + uint8_t field_0x4ed7; + uint8_t field_0x4ed8; + uint8_t field_0x4ed9; + uint8_t field_0x4eda; + uint8_t field_0x4edb; + uint8_t field_0x4edc; + uint8_t field_0x4edd; + uint8_t field_0x4ede; + uint8_t field_0x4edf; + uint8_t field_0x4ee0; + uint8_t field_0x4ee1; + uint8_t field_0x4ee2; + uint8_t field_0x4ee3; + uint8_t field_0x4ee4; + uint8_t field_0x4ee5; + uint8_t field_0x4ee6; + uint8_t field_0x4ee7; + uint8_t field_0x4ee8; + uint8_t field_0x4ee9; + uint8_t field_0x4eea; + uint8_t field_0x4eeb; + uint8_t field_0x4eec; + uint8_t field_0x4eed; + uint8_t field_0x4eee; + uint8_t field_0x4eef; + uint8_t field_0x4ef0; + uint8_t field_0x4ef1; + uint8_t field_0x4ef2; + uint8_t field_0x4ef3; + uint8_t field_0x4ef4; + uint8_t field_0x4ef5; + uint8_t field_0x4ef6; + uint8_t field_0x4ef7; + uint8_t field_0x4ef8; + uint8_t field_0x4ef9; + uint8_t field_0x4efa; + uint8_t field_0x4efb; + uint8_t field_0x4efc; + uint8_t field_0x4efd; + uint8_t field_0x4efe; + uint8_t field_0x4eff; + uint8_t field_0x4f00; + uint8_t field_0x4f01; + uint8_t field_0x4f02; + uint8_t field_0x4f03; + uint8_t field_0x4f04; + uint8_t field_0x4f05; + uint8_t field_0x4f06; + uint8_t field_0x4f07; + uint8_t field_0x4f08; + uint8_t field_0x4f09; + uint8_t field_0x4f0a; + uint8_t field_0x4f0b; + uint8_t field_0x4f0c; + uint8_t field_0x4f0d; + uint8_t field_0x4f0e; + uint8_t field_0x4f0f; + uint8_t field_0x4f10; + uint8_t field_0x4f11; + uint8_t field_0x4f12; + uint8_t field_0x4f13; + uint8_t field_0x4f14; + uint8_t field_0x4f15; + uint8_t field_0x4f16; + uint8_t field_0x4f17; + uint8_t field_0x4f18; + uint8_t field_0x4f19; + uint8_t field_0x4f1a; + uint8_t field_0x4f1b; + uint8_t field_0x4f1c; + uint8_t field_0x4f1d; + uint8_t field_0x4f1e; + uint8_t field_0x4f1f; + uint8_t field_0x4f20; + uint8_t field_0x4f21; + uint8_t field_0x4f22; + uint8_t field_0x4f23; + uint8_t field_0x4f24; + uint8_t field_0x4f25; + uint8_t field_0x4f26; + uint8_t field_0x4f27; + uint8_t field_0x4f28; + uint8_t field_0x4f29; + uint8_t field_0x4f2a; + uint8_t field_0x4f2b; + uint8_t field_0x4f2c; + uint8_t field_0x4f2d; + uint8_t field_0x4f2e; + uint8_t field_0x4f2f; + uint8_t field_0x4f30; + uint8_t field_0x4f31; + uint8_t field_0x4f32; + uint8_t field_0x4f33; + uint8_t field_0x4f34; + uint8_t field_0x4f35; + uint8_t field_0x4f36; + uint8_t field_0x4f37; + uint8_t field_0x4f38; + uint8_t field_0x4f39; + uint8_t field_0x4f3a; + uint8_t field_0x4f3b; + uint8_t field_0x4f3c; + uint8_t field_0x4f3d; + uint8_t field_0x4f3e; + uint8_t field_0x4f3f; + uint8_t field_0x4f40; + uint8_t field_0x4f41; + uint8_t field_0x4f42; + uint8_t field_0x4f43; + uint8_t field_0x4f44; + uint8_t field_0x4f45; + uint8_t field_0x4f46; + uint8_t field_0x4f47; + uint8_t field_0x4f48; + uint8_t field_0x4f49; + uint8_t field_0x4f4a; + uint8_t field_0x4f4b; + uint8_t field_0x4f4c; + uint8_t field_0x4f4d; + uint8_t field_0x4f4e; + uint8_t field_0x4f4f; + uint8_t field_0x4f50; + uint8_t field_0x4f51; + uint8_t field_0x4f52; + uint8_t field_0x4f53; + uint8_t field_0x4f54; + uint8_t field_0x4f55; + uint8_t field_0x4f56; + uint8_t field_0x4f57; + uint8_t field_0x4f58; + uint8_t field_0x4f59; + uint8_t field_0x4f5a; + uint8_t field_0x4f5b; + uint8_t field_0x4f5c; + uint8_t field_0x4f5d; + uint8_t field_0x4f5e; + uint8_t field_0x4f5f; + uint8_t field_0x4f60; + uint8_t field_0x4f61; + uint8_t field_0x4f62; + uint8_t field_0x4f63; + uint8_t field_0x4f64; + uint8_t field_0x4f65; + uint8_t field_0x4f66; + uint8_t field_0x4f67; + uint8_t field_0x4f68; + uint8_t field_0x4f69; + uint8_t field_0x4f6a; + uint8_t field_0x4f6b; + uint8_t field_0x4f6c; + uint8_t field_0x4f6d; + uint8_t field_0x4f6e; + uint8_t field_0x4f6f; + uint8_t field_0x4f70; + uint8_t field_0x4f71; + uint8_t field_0x4f72; + uint8_t field_0x4f73; + uint8_t field_0x4f74; + uint8_t field_0x4f75; + uint8_t field_0x4f76; + uint8_t field_0x4f77; + uint8_t field_0x4f78; + uint8_t field_0x4f79; + uint8_t field_0x4f7a; + uint8_t field_0x4f7b; + uint8_t field_0x4f7c; + uint8_t field_0x4f7d; + uint8_t field_0x4f7e; + uint8_t field_0x4f7f; + uint8_t field_0x4f80; + uint8_t field_0x4f81; + uint8_t field_0x4f82; + uint8_t field_0x4f83; + uint8_t field_0x4f84; + uint8_t field_0x4f85; + uint8_t field_0x4f86; + uint8_t field_0x4f87; + uint8_t field_0x4f88; + uint8_t field_0x4f89; + uint8_t field_0x4f8a; + uint8_t field_0x4f8b; + uint8_t field_0x4f8c; + uint8_t field_0x4f8d; + uint8_t field_0x4f8e; + uint8_t field_0x4f8f; + uint8_t field_0x4f90; + uint8_t field_0x4f91; + uint8_t field_0x4f92; + uint8_t field_0x4f93; + uint8_t field_0x4f94; + uint8_t field_0x4f95; + uint8_t field_0x4f96; + uint8_t field_0x4f97; + uint8_t field_0x4f98; + uint8_t field_0x4f99; + uint8_t field_0x4f9a; + uint8_t field_0x4f9b; + uint8_t field_0x4f9c; + uint8_t field_0x4f9d; + uint8_t field_0x4f9e; + uint8_t field_0x4f9f; + uint8_t field_0x4fa0; + uint8_t field_0x4fa1; + uint8_t field_0x4fa2; + uint8_t field_0x4fa3; + uint8_t field_0x4fa4; + uint8_t field_0x4fa5; + uint8_t field_0x4fa6; + uint8_t field_0x4fa7; + uint8_t field_0x4fa8; + uint8_t field_0x4fa9; + uint8_t field_0x4faa; + uint8_t field_0x4fab; + uint8_t field_0x4fac; + uint8_t field_0x4fad; + uint8_t field_0x4fae; + uint8_t field_0x4faf; + uint8_t field_0x4fb0; + uint8_t field_0x4fb1; + uint8_t field_0x4fb2; + uint8_t field_0x4fb3; + uint8_t field_0x4fb4; + uint8_t field_0x4fb5; + uint8_t field_0x4fb6; + uint8_t field_0x4fb7; + uint8_t field_0x4fb8; + uint8_t field_0x4fb9; + uint8_t field_0x4fba; + uint8_t field_0x4fbb; + uint8_t field_0x4fbc; + uint8_t field_0x4fbd; + uint8_t field_0x4fbe; + uint8_t field_0x4fbf; + uint8_t field_0x4fc0; + uint8_t field_0x4fc1; + uint8_t field_0x4fc2; + uint8_t field_0x4fc3; + uint8_t field_0x4fc4; + uint8_t field_0x4fc5; + uint8_t field_0x4fc6; + uint8_t field_0x4fc7; + uint8_t field_0x4fc8; + uint8_t field_0x4fc9; + uint8_t field_0x4fca; + uint8_t field_0x4fcb; + uint8_t field_0x4fcc; + uint8_t field_0x4fcd; + uint8_t field_0x4fce; + uint8_t field_0x4fcf; + uint8_t field_0x4fd0; + uint8_t field_0x4fd1; + uint8_t field_0x4fd2; + uint8_t field_0x4fd3; + uint8_t field_0x4fd4; + uint8_t field_0x4fd5; + uint8_t field_0x4fd6; + uint8_t field_0x4fd7; + uint8_t field_0x4fd8; + uint8_t field_0x4fd9; + uint8_t field_0x4fda; + uint8_t field_0x4fdb; + uint8_t field_0x4fdc; + uint8_t field_0x4fdd; + uint8_t field_0x4fde; + uint8_t field_0x4fdf; + uint8_t field_0x4fe0; + uint8_t field_0x4fe1; + uint8_t field_0x4fe2; + uint8_t field_0x4fe3; + uint8_t field_0x4fe4; + uint8_t field_0x4fe5; + uint8_t field_0x4fe6; + uint8_t field_0x4fe7; + uint8_t field_0x4fe8; + uint8_t field_0x4fe9; + uint8_t field_0x4fea; + uint8_t field_0x4feb; + uint8_t field_0x4fec; + uint8_t field_0x4fed; + uint8_t field_0x4fee; + uint8_t field_0x4fef; + uint8_t field_0x4ff0; + uint8_t field_0x4ff1; + uint8_t field_0x4ff2; + uint8_t field_0x4ff3; + uint8_t field_0x4ff4; + uint8_t field_0x4ff5; + uint8_t field_0x4ff6; + uint8_t field_0x4ff7; + uint8_t field_0x4ff8; + uint8_t field_0x4ff9; + uint8_t field_0x4ffa; + uint8_t field_0x4ffb; + uint8_t field_0x4ffc; + uint8_t field_0x4ffd; + uint8_t field_0x4ffe; + uint8_t field_0x4fff; + uint8_t field_0x5000; + uint8_t field_0x5001; + uint8_t field_0x5002; + uint8_t field_0x5003; + uint8_t field_0x5004; + uint8_t field_0x5005; + uint8_t field_0x5006; + uint8_t field_0x5007; + uint8_t field_0x5008; + uint8_t field_0x5009; + uint8_t field_0x500a; + uint8_t field_0x500b; + uint8_t field_0x500c; + uint8_t field_0x500d; + uint8_t field_0x500e; + uint8_t field_0x500f; + uint8_t field_0x5010; + uint8_t field_0x5011; + uint8_t field_0x5012; + uint8_t field_0x5013; + uint8_t field_0x5014; + uint8_t field_0x5015; + uint8_t field_0x5016; + uint8_t field_0x5017; + uint8_t field_0x5018; + uint8_t field_0x5019; + uint8_t field_0x501a; + uint8_t field_0x501b; + uint8_t field_0x501c; + uint8_t field_0x501d; + uint8_t field_0x501e; + uint8_t field_0x501f; + uint8_t field_0x5020; + uint8_t field_0x5021; + uint8_t field_0x5022; + uint8_t field_0x5023; + uint8_t field_0x5024; + uint8_t field_0x5025; + uint8_t field_0x5026; + uint8_t field_0x5027; + uint8_t field_0x5028; + uint8_t field_0x5029; + uint8_t field_0x502a; + uint8_t field_0x502b; + uint8_t field_0x502c; + uint8_t field_0x502d; + uint8_t field_0x502e; + uint8_t field_0x502f; + uint8_t field_0x5030; + uint8_t field_0x5031; + uint8_t field_0x5032; + uint8_t field_0x5033; + uint8_t field_0x5034; + uint8_t field_0x5035; + uint8_t field_0x5036; + uint8_t field_0x5037; + uint8_t field_0x5038; + uint8_t field_0x5039; + uint8_t field_0x503a; + uint8_t field_0x503b; + uint8_t field_0x503c; + uint8_t field_0x503d; + uint8_t field_0x503e; + uint8_t field_0x503f; + uint8_t field_0x5040; + uint8_t field_0x5041; + uint8_t field_0x5042; + uint8_t field_0x5043; + uint8_t field_0x5044; + uint8_t field_0x5045; + uint8_t field_0x5046; + uint8_t field_0x5047; + uint8_t field_0x5048; + uint8_t field_0x5049; + uint8_t field_0x504a; + uint8_t field_0x504b; + uint8_t field_0x504c; + uint8_t field_0x504d; + uint8_t field_0x504e; + uint8_t field_0x504f; + uint8_t field_0x5050; + uint8_t field_0x5051; + uint8_t field_0x5052; + uint8_t field_0x5053; + uint8_t field_0x5054; + uint8_t field_0x5055; + uint8_t field_0x5056; + uint8_t field_0x5057; + uint8_t field_0x5058; + uint8_t field_0x5059; + uint8_t field_0x505a; + uint8_t field_0x505b; + uint8_t field_0x505c; + uint8_t field_0x505d; + uint8_t field_0x505e; + uint8_t field_0x505f; + uint8_t field_0x5060; + uint8_t field_0x5061; + uint8_t field_0x5062; + uint8_t field_0x5063; + uint8_t field_0x5064; + uint8_t field_0x5065; + uint8_t field_0x5066; + uint8_t field_0x5067; + uint8_t field_0x5068; + uint8_t field_0x5069; + uint8_t field_0x506a; + uint8_t field_0x506b; + uint8_t field_0x506c; + uint8_t field_0x506d; + uint8_t field_0x506e; + uint8_t field_0x506f; + uint8_t field_0x5070; + uint8_t field_0x5071; + uint8_t field_0x5072; + uint8_t field_0x5073; + uint8_t field_0x5074; + uint8_t field_0x5075; + uint8_t field_0x5076; + uint8_t field_0x5077; + uint8_t field_0x5078; + uint8_t field_0x5079; + uint8_t field_0x507a; + uint8_t field_0x507b; + uint8_t field_0x507c; + uint8_t field_0x507d; + uint8_t field_0x507e; + uint8_t field_0x507f; + uint8_t field_0x5080; + uint8_t field_0x5081; + uint8_t field_0x5082; + uint8_t field_0x5083; + uint8_t field_0x5084; + uint8_t field_0x5085; + uint8_t field_0x5086; + uint8_t field_0x5087; + uint8_t field_0x5088; + uint8_t field_0x5089; + uint8_t field_0x508a; + uint8_t field_0x508b; + uint8_t field_0x508c; + uint8_t field_0x508d; + uint8_t field_0x508e; + uint8_t field_0x508f; + uint8_t field_0x5090; + uint8_t field_0x5091; + uint8_t field_0x5092; + uint8_t field_0x5093; + uint8_t field_0x5094; + uint8_t field_0x5095; + uint8_t field_0x5096; + uint8_t field_0x5097; + uint8_t field_0x5098; + uint8_t field_0x5099; + uint8_t field_0x509a; + uint8_t field_0x509b; + uint8_t field_0x509c; + uint8_t field_0x509d; + uint8_t field_0x509e; + uint8_t field_0x509f; + uint8_t field_0x50a0; + uint8_t field_0x50a1; + uint8_t field_0x50a2; + uint8_t field_0x50a3; + uint8_t field_0x50a4; + uint8_t field_0x50a5; + uint8_t field_0x50a6; + uint8_t field_0x50a7; + uint8_t field_0x50a8; + uint8_t field_0x50a9; + uint8_t field_0x50aa; + uint8_t field_0x50ab; + uint8_t field_0x50ac; + uint8_t field_0x50ad; + uint8_t field_0x50ae; + uint8_t field_0x50af; + uint8_t field_0x50b0; + uint8_t field_0x50b1; + uint8_t field_0x50b2; + uint8_t field_0x50b3; + uint8_t field_0x50b4; + uint8_t field_0x50b5; + uint8_t field_0x50b6; + uint8_t field_0x50b7; + uint8_t field_0x50b8; + uint8_t field_0x50b9; + uint8_t field_0x50ba; + uint8_t field_0x50bb; + uint8_t field_0x50bc; + uint8_t field_0x50bd; + uint8_t field_0x50be; + uint8_t field_0x50bf; + uint8_t field_0x50c0; + uint8_t field_0x50c1; + uint8_t field_0x50c2; + uint8_t field_0x50c3; + uint8_t field_0x50c4; + uint8_t field_0x50c5; + uint8_t field_0x50c6; + uint8_t field_0x50c7; + uint8_t field_0x50c8; + uint8_t field_0x50c9; + uint8_t field_0x50ca; + uint8_t field_0x50cb; + uint8_t field_0x50cc; + uint8_t field_0x50cd; + uint8_t field_0x50ce; + uint8_t field_0x50cf; + uint8_t field_0x50d0; + uint8_t field_0x50d1; + uint8_t field_0x50d2; + uint8_t field_0x50d3; + uint8_t field_0x50d4; + uint8_t field_0x50d5; + uint8_t field_0x50d6; + uint8_t field_0x50d7; + uint8_t field_0x50d8; + uint8_t field_0x50d9; + uint8_t field_0x50da; + uint8_t field_0x50db; + uint8_t field_0x50dc; + uint8_t field_0x50dd; + uint8_t field_0x50de; + uint8_t field_0x50df; + uint8_t field_0x50e0; + uint8_t field_0x50e1; + uint8_t field_0x50e2; + uint8_t field_0x50e3; + uint8_t field_0x50e4; + uint8_t field_0x50e5; + uint8_t field_0x50e6; + uint8_t field_0x50e7; + uint8_t field_0x50e8; + uint8_t field_0x50e9; + uint8_t field_0x50ea; + uint8_t field_0x50eb; + uint8_t field_0x50ec; + uint8_t field_0x50ed; + uint8_t field_0x50ee; + uint8_t field_0x50ef; + uint8_t field_0x50f0; + uint8_t field_0x50f1; + uint8_t field_0x50f2; + uint8_t field_0x50f3; + uint8_t field_0x50f4; + uint8_t field_0x50f5; + uint8_t field_0x50f6; + uint8_t field_0x50f7; + uint8_t field_0x50f8; + uint8_t field_0x50f9; + uint8_t field_0x50fa; + uint8_t field_0x50fb; + uint8_t field_0x50fc; + uint8_t field_0x50fd; + uint8_t field_0x50fe; + uint8_t field_0x50ff; + uint8_t field_0x5100; + uint8_t field_0x5101; + uint8_t field_0x5102; + uint8_t field_0x5103; + uint8_t field_0x5104; + uint8_t field_0x5105; + uint8_t field_0x5106; + uint8_t field_0x5107; + uint8_t field_0x5108; + uint8_t field_0x5109; + uint8_t field_0x510a; + uint8_t field_0x510b; + uint8_t field_0x510c; + uint8_t field_0x510d; + uint8_t field_0x510e; + uint8_t field_0x510f; + uint8_t field_0x5110; + uint8_t field_0x5111; + uint8_t field_0x5112; + uint8_t field_0x5113; + uint8_t field_0x5114; + uint8_t field_0x5115; + uint8_t field_0x5116; + uint8_t field_0x5117; + uint8_t field_0x5118; + uint8_t field_0x5119; + uint8_t field_0x511a; + uint8_t field_0x511b; + uint8_t field_0x511c; + uint8_t field_0x511d; + uint8_t field_0x511e; + uint8_t field_0x511f; + uint8_t field_0x5120; + uint8_t field_0x5121; + uint8_t field_0x5122; + uint8_t field_0x5123; + uint8_t field_0x5124; + uint8_t field_0x5125; + uint8_t field_0x5126; + uint8_t field_0x5127; + uint8_t field_0x5128; + uint8_t field_0x5129; + uint8_t field_0x512a; + uint8_t field_0x512b; + uint8_t field_0x512c; + uint8_t field_0x512d; + uint8_t field_0x512e; + uint8_t field_0x512f; + uint8_t field_0x5130; + uint8_t field_0x5131; + uint8_t field_0x5132; + uint8_t field_0x5133; + uint8_t field_0x5134; + uint8_t field_0x5135; + uint8_t field_0x5136; + uint8_t field_0x5137; + uint8_t field_0x5138; + uint8_t field_0x5139; + uint8_t field_0x513a; + uint8_t field_0x513b; + uint8_t field_0x513c; + uint8_t field_0x513d; + uint8_t field_0x513e; + uint8_t field_0x513f; + uint8_t field_0x5140; + uint8_t field_0x5141; + uint8_t field_0x5142; + uint8_t field_0x5143; + uint8_t field_0x5144; + uint8_t field_0x5145; + uint8_t field_0x5146; + uint8_t field_0x5147; + uint8_t field_0x5148; + uint8_t field_0x5149; + uint8_t field_0x514a; + uint8_t field_0x514b; + uint8_t field_0x514c; + uint8_t field_0x514d; + uint8_t field_0x514e; + uint8_t field_0x514f; + uint8_t field_0x5150; + uint8_t field_0x5151; + uint8_t field_0x5152; + uint8_t field_0x5153; + uint8_t field_0x5154; + uint8_t field_0x5155; + uint8_t field_0x5156; + uint8_t field_0x5157; + uint8_t field_0x5158; + uint8_t field_0x5159; + uint8_t field_0x515a; + uint8_t field_0x515b; + uint8_t field_0x515c; + uint8_t field_0x515d; + uint8_t field_0x515e; + uint8_t field_0x515f; + uint8_t field_0x5160; + uint8_t field_0x5161; + uint8_t field_0x5162; + uint8_t field_0x5163; + uint8_t field_0x5164; + uint8_t field_0x5165; + uint8_t field_0x5166; + uint8_t field_0x5167; + uint8_t field_0x5168; + uint8_t field_0x5169; + uint8_t field_0x516a; + uint8_t field_0x516b; + uint8_t field_0x516c; + uint8_t field_0x516d; + uint8_t field_0x516e; + uint8_t field_0x516f; + uint8_t field_0x5170; + uint8_t field_0x5171; + uint8_t field_0x5172; + uint8_t field_0x5173; + uint8_t field_0x5174; + uint8_t field_0x5175; + uint8_t field_0x5176; + uint8_t field_0x5177; + uint8_t field_0x5178; + uint8_t field_0x5179; + uint8_t field_0x517a; + uint8_t field_0x517b; + struct LHMatrix* field_0x517c; + uint8_t field_0x5180; + uint8_t field_0x5181; + uint8_t field_0x5182; + uint8_t field_0x5183; + struct LH3DCreature_field_0x5184* field_0x5184; + uint8_t field_0x5188; + uint8_t field_0x5189; + uint8_t field_0x518a; + uint8_t field_0x518b; + uint8_t field_0x518c; + uint8_t field_0x518d; + uint8_t field_0x518e; + uint8_t field_0x518f; + uint32_t field_0x5190; + uint8_t field_0x5194; + uint8_t field_0x5195; + uint8_t field_0x5196; + uint8_t field_0x5197; + struct RPFollow* rp_follow; + uint32_t field_0x519c; + uint8_t field_0x51a0; + uint8_t field_0x51a1; + uint8_t field_0x51a2; + uint8_t field_0x51a3; + uint8_t field_0x51a4; + uint8_t field_0x51a5; + uint8_t field_0x51a6; + uint8_t field_0x51a7; + uint8_t field_0x51a8; + uint8_t field_0x51a9; + uint8_t field_0x51aa; + uint8_t field_0x51ab; + uint8_t field_0x51ac; + uint8_t field_0x51ad; + uint8_t field_0x51ae; + uint8_t field_0x51af; + uint8_t field_0x51b0; + uint8_t field_0x51b1; + uint8_t field_0x51b2; + uint8_t field_0x51b3; + uint32_t field_0x51b4; + uint32_t field_0x51b8; + uint8_t field_0x51bc; + uint8_t field_0x51bd; + uint8_t field_0x51be; + uint8_t field_0x51bf; + uint32_t field_0x51c0; + uint32_t field_0x51c4; + int32_t right_hand_bone_index; + long field_0x51cc; + long field_0x51d0; + long field_0x51d4; + uint32_t field_0x51d8; + uint8_t field_0x51dc; + uint8_t field_0x51dd; + uint8_t field_0x51de; + uint8_t field_0x51df; + uint8_t field_0x51e0; + uint8_t field_0x51e1; + uint8_t field_0x51e2; + uint8_t field_0x51e3; + uint8_t field_0x51e4; + uint8_t field_0x51e5; + uint8_t field_0x51e6; + uint8_t field_0x51e7; + uint8_t field_0x51e8; + uint8_t field_0x51e9; + uint8_t field_0x51ea; + uint8_t field_0x51eb; + uint8_t field_0x51ec; + uint8_t field_0x51ed; + uint8_t field_0x51ee; + uint8_t field_0x51ef; + int32_t* field_0x51f0; + uint8_t field_0x51f4; + uint8_t field_0x51f5; + uint8_t field_0x51f6; + uint8_t field_0x51f7; + uint8_t field_0x51f8; + uint8_t field_0x51f9; + uint8_t field_0x51fa; + uint8_t field_0x51fb; + uint8_t field_0x51fc; + uint8_t field_0x51fd; + uint8_t field_0x51fe; + uint8_t field_0x51ff; + uint8_t field_0x5200; + uint8_t field_0x5201; + uint8_t field_0x5202; + uint8_t field_0x5203; + uint8_t field_0x5204; + uint8_t field_0x5205; + uint8_t field_0x5206; + uint8_t field_0x5207; + uint8_t field_0x5208; + uint8_t field_0x5209; + uint8_t field_0x520a; + uint8_t field_0x520b; + uint8_t field_0x520c; + uint8_t field_0x520d; + uint8_t field_0x520e; + uint8_t field_0x520f; + uint8_t field_0x5210; + uint8_t field_0x5211; + uint8_t field_0x5212; + uint8_t field_0x5213; + uint8_t field_0x5214; + uint8_t field_0x5215; + uint8_t field_0x5216; + uint8_t field_0x5217; + uint8_t field_0x5218; + uint8_t field_0x5219; + uint8_t field_0x521a; + uint8_t field_0x521b; + int field_0x521c; + struct CAnim* anim_0x5220; + uint8_t field_0x5224; + uint8_t field_0x5225; + uint8_t field_0x5226; + uint8_t field_0x5227; + float field_0x5228; + uint32_t field_0x522c; + uint8_t field_0x5230; + uint8_t field_0x5231; + uint8_t field_0x5232; + uint8_t field_0x5233; + uint8_t field_0x5234; + uint8_t field_0x5235; + uint8_t field_0x5236; + uint8_t field_0x5237; + uint32_t field_0x5238; + uint32_t field_0x523c; + uint8_t field_0x5240; + uint8_t field_0x5241; + uint8_t field_0x5242; + uint8_t field_0x5243; + uint8_t field_0x5244; + uint8_t field_0x5245; + uint8_t field_0x5246; + uint8_t field_0x5247; + uint8_t field_0x5248; + uint8_t field_0x5249; + uint8_t field_0x524a; + uint8_t field_0x524b; + uint8_t field_0x524c; + uint8_t field_0x524d; + uint8_t field_0x524e; + uint8_t field_0x524f; + uint8_t field_0x5250; + uint8_t field_0x5251; + uint8_t field_0x5252; + uint8_t field_0x5253; + uint8_t field_0x5254; + uint8_t field_0x5255; + uint8_t field_0x5256; + uint8_t field_0x5257; + uint8_t field_0x5258; + uint8_t field_0x5259; + uint8_t field_0x525a; + uint8_t field_0x525b; + uint8_t field_0x525c; + uint8_t field_0x525d; + uint8_t field_0x525e; + uint8_t field_0x525f; + uint8_t field_0x5260; + uint8_t field_0x5261; + uint8_t field_0x5262; + uint8_t field_0x5263; + uint8_t field_0x5264; + uint8_t field_0x5265; + uint8_t field_0x5266; + uint8_t field_0x5267; + uint8_t field_0x5268; + uint8_t field_0x5269; + uint8_t field_0x526a; + uint8_t field_0x526b; + uint8_t field_0x526c; + uint8_t field_0x526d; + uint8_t field_0x526e; + uint8_t field_0x526f; + int safe_buffer_selector; /* 0x5270 */ + uint32_t field_0x5274; + uint8_t* safe_buffer_0; + uint32_t field_0x527c; + uint8_t* safe_buffer_1; /* 0x5280 */ + uint8_t field_0x5284; + uint8_t field_0x5285; + uint8_t field_0x5286; + uint8_t field_0x5287; + uint32_t field_0x5288; + int field_0x528c; + uint8_t field_0x5290; + uint8_t field_0x5291; + uint8_t field_0x5292; + uint8_t field_0x5293; + uint8_t field_0x5294; + uint8_t field_0x5295; + uint8_t field_0x5296; + uint8_t field_0x5297; + uint8_t field_0x5298; + uint8_t field_0x5299; + uint8_t field_0x529a; + uint8_t field_0x529b; + uint8_t field_0x529c; + uint8_t field_0x529d; + uint8_t field_0x529e; + uint8_t field_0x529f; + uint8_t field_0x52a0; + uint8_t field_0x52a1; + uint8_t field_0x52a2; + uint8_t field_0x52a3; + uint8_t field_0x52a4; + uint8_t field_0x52a5; + uint8_t field_0x52a6; + uint8_t field_0x52a7; + uint8_t field_0x52a8; + uint8_t field_0x52a9; + uint8_t field_0x52aa; + uint8_t field_0x52ab; + uint8_t field_0x52ac; + uint8_t field_0x52ad; + uint8_t field_0x52ae; + uint8_t field_0x52af; + uint8_t field_0x52b0; + uint8_t field_0x52b1; + uint8_t field_0x52b2; + uint8_t field_0x52b3; + uint8_t field_0x52b4; + uint8_t field_0x52b5; + uint8_t field_0x52b6; + uint8_t field_0x52b7; + uint8_t field_0x52b8; + uint8_t field_0x52b9; + uint8_t field_0x52ba; + uint8_t field_0x52bb; + uint8_t field_0x52bc; + uint8_t field_0x52bd; + uint8_t field_0x52be; + uint8_t field_0x52bf; + uint8_t field_0x52c0; + uint8_t field_0x52c1; + uint8_t field_0x52c2; + uint8_t field_0x52c3; + uint8_t field_0x52c4; + uint8_t field_0x52c5; + uint8_t field_0x52c6; + uint8_t field_0x52c7; + uint8_t field_0x52c8; + uint8_t field_0x52c9; + uint8_t field_0x52ca; + uint8_t field_0x52cb; + uint8_t field_0x52cc; + uint8_t field_0x52cd; + uint8_t field_0x52ce; + uint8_t field_0x52cf; + uint8_t field_0x52d0; + uint8_t field_0x52d1; + uint8_t field_0x52d2; + uint8_t field_0x52d3; + uint8_t field_0x52d4; + uint8_t field_0x52d5; + uint8_t field_0x52d6; + uint8_t field_0x52d7; + uint8_t field_0x52d8; + uint8_t field_0x52d9; + uint8_t field_0x52da; + uint8_t field_0x52db; + uint8_t field_0x52dc; + uint8_t field_0x52dd; + uint8_t field_0x52de; + uint8_t field_0x52df; + uint8_t field_0x52e0; + uint8_t field_0x52e1; + uint8_t field_0x52e2; + uint8_t field_0x52e3; + uint8_t field_0x52e4; + uint8_t field_0x52e5; + uint8_t field_0x52e6; + uint8_t field_0x52e7; + uint8_t field_0x52e8; + uint8_t field_0x52e9; + uint8_t field_0x52ea; + uint8_t field_0x52eb; + uint8_t field_0x52ec; + uint8_t field_0x52ed; + uint8_t field_0x52ee; + uint8_t field_0x52ef; + uint8_t field_0x52f0; + uint8_t field_0x52f1; + uint8_t field_0x52f2; + uint8_t field_0x52f3; + uint8_t field_0x52f4; + uint8_t field_0x52f5; + uint8_t field_0x52f6; + uint8_t field_0x52f7; + uint8_t field_0x52f8; + uint8_t field_0x52f9; + uint8_t field_0x52fa; + uint8_t field_0x52fb; + uint8_t field_0x52fc; + uint8_t field_0x52fd; + uint8_t field_0x52fe; + uint8_t field_0x52ff; + uint8_t field_0x5300; + uint8_t field_0x5301; + uint8_t field_0x5302; + uint8_t field_0x5303; + uint8_t field_0x5304; + uint8_t field_0x5305; + uint8_t field_0x5306; + uint8_t field_0x5307; + uint8_t field_0x5308; + uint8_t field_0x5309; + uint8_t field_0x530a; + uint8_t field_0x530b; + uint8_t field_0x530c; + uint8_t field_0x530d; + uint8_t field_0x530e; + uint8_t field_0x530f; + uint8_t field_0x5310; + uint8_t field_0x5311; + uint8_t field_0x5312; + uint8_t field_0x5313; + uint8_t field_0x5314; + uint8_t field_0x5315; + uint8_t field_0x5316; + uint8_t field_0x5317; + uint8_t field_0x5318; + uint8_t field_0x5319; + uint8_t field_0x531a; + uint8_t field_0x531b; + uint8_t field_0x531c; + uint8_t field_0x531d; + uint8_t field_0x531e; + uint8_t field_0x531f; + uint8_t field_0x5320; + uint8_t field_0x5321; + uint8_t field_0x5322; + uint8_t field_0x5323; + uint8_t field_0x5324; + uint8_t field_0x5325; + uint8_t field_0x5326; + uint8_t field_0x5327; + uint8_t field_0x5328; + uint8_t field_0x5329; + uint8_t field_0x532a; + uint8_t field_0x532b; + uint8_t field_0x532c; + uint8_t field_0x532d; + uint8_t field_0x532e; + uint8_t field_0x532f; + uint8_t field_0x5330; + uint8_t field_0x5331; + uint8_t field_0x5332; + uint8_t field_0x5333; + uint8_t field_0x5334; + uint8_t field_0x5335; + uint8_t field_0x5336; + uint8_t field_0x5337; + uint8_t field_0x5338; + uint8_t field_0x5339; + uint8_t field_0x533a; + uint8_t field_0x533b; + uint8_t field_0x533c; + uint8_t field_0x533d; + uint8_t field_0x533e; + uint8_t field_0x533f; + uint8_t field_0x5340; + uint8_t field_0x5341; + uint8_t field_0x5342; + uint8_t field_0x5343; + uint8_t field_0x5344; + uint8_t field_0x5345; + uint8_t field_0x5346; + uint8_t field_0x5347; + uint8_t field_0x5348; + uint8_t field_0x5349; + uint8_t field_0x534a; + uint8_t field_0x534b; + uint8_t field_0x534c; + uint8_t field_0x534d; + uint8_t field_0x534e; + uint8_t field_0x534f; + uint8_t field_0x5350; + uint8_t field_0x5351; + uint8_t field_0x5352; + uint8_t field_0x5353; + uint8_t field_0x5354; + uint8_t field_0x5355; + uint8_t field_0x5356; + uint8_t field_0x5357; + uint8_t field_0x5358; + uint8_t field_0x5359; + uint8_t field_0x535a; + uint8_t field_0x535b; + uint8_t field_0x535c; + uint8_t field_0x535d; + uint8_t field_0x535e; + uint8_t field_0x535f; + uint8_t field_0x5360; + uint8_t field_0x5361; + uint8_t field_0x5362; + uint8_t field_0x5363; + uint8_t field_0x5364; + uint8_t field_0x5365; + uint8_t field_0x5366; + uint8_t field_0x5367; + uint8_t field_0x5368; + uint8_t field_0x5369; + uint8_t field_0x536a; + uint8_t field_0x536b; + uint8_t field_0x536c; + uint8_t field_0x536d; + uint8_t field_0x536e; + uint8_t field_0x536f; + uint8_t field_0x5370; + uint8_t field_0x5371; + uint8_t field_0x5372; + uint8_t field_0x5373; + uint8_t field_0x5374; + uint8_t field_0x5375; + uint8_t field_0x5376; + uint8_t field_0x5377; + uint8_t field_0x5378; + uint8_t field_0x5379; + uint8_t field_0x537a; + uint8_t field_0x537b; + uint8_t field_0x537c; + uint8_t field_0x537d; + uint8_t field_0x537e; + uint8_t field_0x537f; + uint8_t field_0x5380; + uint8_t field_0x5381; + uint8_t field_0x5382; + uint8_t field_0x5383; + uint8_t field_0x5384; + uint8_t field_0x5385; + uint8_t field_0x5386; + uint8_t field_0x5387; + uint8_t field_0x5388; + uint8_t field_0x5389; + uint8_t field_0x538a; + uint8_t field_0x538b; + uint8_t field_0x538c; + uint8_t field_0x538d; + uint8_t field_0x538e; + uint8_t field_0x538f; + uint8_t field_0x5390; + uint8_t field_0x5391; + uint8_t field_0x5392; + uint8_t field_0x5393; + uint8_t field_0x5394; + uint8_t field_0x5395; + uint8_t field_0x5396; + uint8_t field_0x5397; + uint8_t field_0x5398; + uint8_t field_0x5399; + uint8_t field_0x539a; + uint8_t field_0x539b; + uint8_t field_0x539c; + uint8_t field_0x539d; + uint8_t field_0x539e; + uint8_t field_0x539f; + uint8_t field_0x53a0; + uint8_t field_0x53a1; + uint8_t field_0x53a2; + uint8_t field_0x53a3; + uint8_t field_0x53a4; + uint8_t field_0x53a5; + uint8_t field_0x53a6; + uint8_t field_0x53a7; + uint8_t field_0x53a8; + uint8_t field_0x53a9; + uint8_t field_0x53aa; + uint8_t field_0x53ab; + uint8_t field_0x53ac; + uint8_t field_0x53ad; + uint8_t field_0x53ae; + uint8_t field_0x53af; + uint8_t field_0x53b0; + uint8_t field_0x53b1; + uint8_t field_0x53b2; + uint8_t field_0x53b3; + uint8_t field_0x53b4; + uint8_t field_0x53b5; + uint8_t field_0x53b6; + uint8_t field_0x53b7; + uint8_t field_0x53b8; + uint8_t field_0x53b9; + uint8_t field_0x53ba; + uint8_t field_0x53bb; + uint8_t field_0x53bc; + uint8_t field_0x53bd; + uint8_t field_0x53be; + uint8_t field_0x53bf; + uint8_t field_0x53c0; + uint8_t field_0x53c1; + uint8_t field_0x53c2; + uint8_t field_0x53c3; + uint8_t field_0x53c4; + uint8_t field_0x53c5; + uint8_t field_0x53c6; + uint8_t field_0x53c7; + uint8_t field_0x53c8; + uint8_t field_0x53c9; + uint8_t field_0x53ca; + uint8_t field_0x53cb; + uint8_t field_0x53cc; + uint8_t field_0x53cd; + uint8_t field_0x53ce; + uint8_t field_0x53cf; + uint8_t field_0x53d0; + uint8_t field_0x53d1; + uint8_t field_0x53d2; + uint8_t field_0x53d3; + uint8_t field_0x53d4; + uint8_t field_0x53d5; + uint8_t field_0x53d6; + uint8_t field_0x53d7; + uint8_t field_0x53d8; + uint8_t field_0x53d9; + uint8_t field_0x53da; + uint8_t field_0x53db; + uint8_t field_0x53dc; + uint8_t field_0x53dd; + uint8_t field_0x53de; + uint8_t field_0x53df; + uint8_t field_0x53e0; + uint8_t field_0x53e1; + uint8_t field_0x53e2; + uint8_t field_0x53e3; + uint8_t field_0x53e4; + uint8_t field_0x53e5; + uint8_t field_0x53e6; + uint8_t field_0x53e7; + uint8_t field_0x53e8; + uint8_t field_0x53e9; + uint8_t field_0x53ea; + uint8_t field_0x53eb; + uint8_t field_0x53ec; + uint8_t field_0x53ed; + uint8_t field_0x53ee; + uint8_t field_0x53ef; + uint8_t field_0x53f0; + uint8_t field_0x53f1; + uint8_t field_0x53f2; + uint8_t field_0x53f3; + uint8_t field_0x53f4; + uint8_t field_0x53f5; + uint8_t field_0x53f6; + uint8_t field_0x53f7; + uint8_t field_0x53f8; + uint8_t field_0x53f9; + uint8_t field_0x53fa; + uint8_t field_0x53fb; + uint8_t field_0x53fc; + uint8_t field_0x53fd; + uint8_t field_0x53fe; + uint8_t field_0x53ff; + uint8_t field_0x5400; + uint8_t field_0x5401; + uint8_t field_0x5402; + uint8_t field_0x5403; + uint8_t field_0x5404; + uint8_t field_0x5405; + uint8_t field_0x5406; + uint8_t field_0x5407; + uint8_t field_0x5408; + uint8_t field_0x5409; + uint8_t field_0x540a; + uint8_t field_0x540b; + uint8_t field_0x540c; + uint8_t field_0x540d; + uint8_t field_0x540e; + uint8_t field_0x540f; + uint8_t field_0x5410; + uint8_t field_0x5411; + uint8_t field_0x5412; + uint8_t field_0x5413; + uint8_t field_0x5414; + uint8_t field_0x5415; + uint8_t field_0x5416; + uint8_t field_0x5417; + uint8_t field_0x5418; + uint8_t field_0x5419; + uint8_t field_0x541a; + uint8_t field_0x541b; + uint8_t field_0x541c; + uint8_t field_0x541d; + uint8_t field_0x541e; + uint8_t field_0x541f; + uint8_t field_0x5420; + uint8_t field_0x5421; + uint8_t field_0x5422; + uint8_t field_0x5423; + uint8_t field_0x5424; + uint8_t field_0x5425; + uint8_t field_0x5426; + uint8_t field_0x5427; + uint8_t field_0x5428; + uint8_t field_0x5429; + uint8_t field_0x542a; + uint8_t field_0x542b; + uint8_t field_0x542c; + uint8_t field_0x542d; + uint8_t field_0x542e; + uint8_t field_0x542f; + uint8_t field_0x5430; + uint8_t field_0x5431; + uint8_t field_0x5432; + uint8_t field_0x5433; + uint8_t field_0x5434; + uint8_t field_0x5435; + uint8_t field_0x5436; + uint8_t field_0x5437; + uint8_t field_0x5438; + uint8_t field_0x5439; + uint8_t field_0x543a; + uint8_t field_0x543b; + uint8_t field_0x543c; + uint8_t field_0x543d; + uint8_t field_0x543e; + uint8_t field_0x543f; + uint8_t field_0x5440; + uint8_t field_0x5441; + uint8_t field_0x5442; + uint8_t field_0x5443; + uint8_t field_0x5444; + uint8_t field_0x5445; + uint8_t field_0x5446; + uint8_t field_0x5447; + uint8_t field_0x5448; + uint8_t field_0x5449; + uint8_t field_0x544a; + uint8_t field_0x544b; + uint8_t field_0x544c; + uint8_t field_0x544d; + uint8_t field_0x544e; + uint8_t field_0x544f; + uint8_t field_0x5450; + uint8_t field_0x5451; + uint8_t field_0x5452; + uint8_t field_0x5453; + uint8_t field_0x5454; + uint8_t field_0x5455; + uint8_t field_0x5456; + uint8_t field_0x5457; + uint8_t field_0x5458; + uint8_t field_0x5459; + uint8_t field_0x545a; + uint8_t field_0x545b; + uint8_t field_0x545c; + uint8_t field_0x545d; + uint8_t field_0x545e; + uint8_t field_0x545f; + uint32_t field_0x5460; + float field_0x5464; + uint8_t field_0x5468; + uint8_t field_0x5469; + uint8_t field_0x546a; + uint8_t field_0x546b; + uint32_t field_0x546c; + uint8_t field_0x5470; + uint8_t field_0x5471; + uint8_t field_0x5472; + uint8_t field_0x5473; + float field_0x5474; + uint8_t field_0x5478; + uint8_t field_0x5479; + uint8_t field_0x547a; + uint8_t field_0x547b; + uint8_t field_0x547c; + uint8_t field_0x547d; + uint8_t field_0x547e; + uint8_t field_0x547f; + uint8_t field_0x5480; + uint8_t field_0x5481; + uint8_t field_0x5482; + uint8_t field_0x5483; + uint8_t field_0x5484; + uint8_t field_0x5485; + uint8_t field_0x5486; + uint8_t field_0x5487; + uint8_t field_0x5488; + uint8_t field_0x5489; + uint8_t field_0x548a; + uint8_t field_0x548b; + uint8_t field_0x548c; + uint8_t field_0x548d; + uint8_t field_0x548e; + uint8_t field_0x548f; + uint8_t field_0x5490; + uint8_t field_0x5491; + uint8_t field_0x5492; + uint8_t field_0x5493; + uint8_t field_0x5494; + uint8_t field_0x5495; + uint8_t field_0x5496; + uint8_t field_0x5497; + uint8_t field_0x5498; + uint8_t field_0x5499; + uint8_t field_0x549a; + uint8_t field_0x549b; + uint8_t field_0x549c; + uint8_t field_0x549d; + uint8_t field_0x549e; + uint8_t field_0x549f; + uint8_t field_0x54a0; + uint8_t field_0x54a1; + uint8_t field_0x54a2; + uint8_t field_0x54a3; + uint8_t field_0x54a4; + uint8_t field_0x54a5; + uint8_t field_0x54a6; + uint8_t field_0x54a7; + uint8_t field_0x54a8; + uint8_t field_0x54a9; + uint8_t field_0x54aa; + uint8_t field_0x54ab; + uint8_t field_0x54ac; + uint8_t field_0x54ad; + uint8_t field_0x54ae; + uint8_t field_0x54af; + uint8_t field_0x54b0; + uint8_t field_0x54b1; + uint8_t field_0x54b2; + uint8_t field_0x54b3; + uint8_t field_0x54b4; + uint8_t field_0x54b5; + uint8_t field_0x54b6; + uint8_t field_0x54b7; + uint8_t field_0x54b8; + uint8_t field_0x54b9; + uint8_t field_0x54ba; + uint8_t field_0x54bb; + uint8_t field_0x54bc; + uint8_t field_0x54bd; + uint8_t field_0x54be; + uint8_t field_0x54bf; + uint8_t field_0x54c0; + uint8_t field_0x54c1; + uint8_t field_0x54c2; + uint8_t field_0x54c3; + uint8_t field_0x54c4; + uint8_t field_0x54c5; + uint8_t field_0x54c6; + uint8_t field_0x54c7; + uint8_t field_0x54c8; + uint8_t field_0x54c9; + uint8_t field_0x54ca; + uint8_t field_0x54cb; + uint8_t field_0x54cc; + uint8_t field_0x54cd; + uint8_t field_0x54ce; + uint8_t field_0x54cf; + uint8_t field_0x54d0; + uint8_t field_0x54d1; + uint8_t field_0x54d2; + uint8_t field_0x54d3; + uint8_t field_0x54d4; + uint8_t field_0x54d5; + uint8_t field_0x54d6; + uint8_t field_0x54d7; + uint8_t field_0x54d8; + uint8_t field_0x54d9; + uint8_t field_0x54da; + uint8_t field_0x54db; + uint8_t field_0x54dc; + uint8_t field_0x54dd; + uint8_t field_0x54de; + uint8_t field_0x54df; + uint8_t field_0x54e0; + uint8_t field_0x54e1; + uint8_t field_0x54e2; + uint8_t field_0x54e3; + uint8_t field_0x54e4; + uint8_t field_0x54e5; + uint8_t field_0x54e6; + uint8_t field_0x54e7; + uint8_t field_0x54e8; + uint8_t field_0x54e9; + uint8_t field_0x54ea; + uint8_t field_0x54eb; + uint8_t field_0x54ec; + uint8_t field_0x54ed; + uint8_t field_0x54ee; + uint8_t field_0x54ef; + uint8_t field_0x54f0; + uint8_t field_0x54f1; + uint8_t field_0x54f2; + uint8_t field_0x54f3; + uint8_t field_0x54f4; + uint8_t field_0x54f5; + uint8_t field_0x54f6; + uint8_t field_0x54f7; + uint8_t field_0x54f8; + uint8_t field_0x54f9; + uint8_t field_0x54fa; + uint8_t field_0x54fb; + uint8_t field_0x54fc; + uint8_t field_0x54fd; + uint8_t field_0x54fe; + uint8_t field_0x54ff; + uint8_t field_0x5500; + uint8_t field_0x5501; + uint8_t field_0x5502; + uint8_t field_0x5503; + uint8_t field_0x5504; + uint8_t field_0x5505; + uint8_t field_0x5506; + uint8_t field_0x5507; + uint8_t field_0x5508; + uint8_t field_0x5509; + uint8_t field_0x550a; + uint8_t field_0x550b; + uint8_t field_0x550c; + uint8_t field_0x550d; + uint8_t field_0x550e; + uint8_t field_0x550f; + uint8_t field_0x5510; + uint8_t field_0x5511; + uint8_t field_0x5512; + uint8_t field_0x5513; + uint8_t field_0x5514; + uint8_t field_0x5515; + uint8_t field_0x5516; + uint8_t field_0x5517; + uint8_t field_0x5518; + uint8_t field_0x5519; + uint8_t field_0x551a; + uint8_t field_0x551b; + uint8_t field_0x551c; + uint8_t field_0x551d; + uint8_t field_0x551e; + uint8_t field_0x551f; + uint8_t field_0x5520; + uint8_t field_0x5521; + uint8_t field_0x5522; + uint8_t field_0x5523; + uint8_t field_0x5524; + uint8_t field_0x5525; + uint8_t field_0x5526; + uint8_t field_0x5527; + uint8_t field_0x5528; + uint8_t field_0x5529; + uint8_t field_0x552a; + uint8_t field_0x552b; + uint8_t field_0x552c; + uint8_t field_0x552d; + uint8_t field_0x552e; + uint8_t field_0x552f; + uint8_t field_0x5530; + uint8_t field_0x5531; + uint8_t field_0x5532; + uint8_t field_0x5533; + uint8_t field_0x5534; + uint8_t field_0x5535; + uint8_t field_0x5536; + uint8_t field_0x5537; + uint8_t field_0x5538; + uint8_t field_0x5539; + uint8_t field_0x553a; + uint8_t field_0x553b; + uint8_t field_0x553c; + uint8_t field_0x553d; + uint8_t field_0x553e; + uint8_t field_0x553f; + uint8_t field_0x5540; + uint8_t field_0x5541; + uint8_t field_0x5542; + uint8_t field_0x5543; + uint8_t field_0x5544; + uint8_t field_0x5545; + uint8_t field_0x5546; + uint8_t field_0x5547; + uint8_t field_0x5548; + uint8_t field_0x5549; + uint8_t field_0x554a; + uint8_t field_0x554b; + uint8_t field_0x554c; + uint8_t field_0x554d; + uint8_t field_0x554e; + uint8_t field_0x554f; + uint8_t field_0x5550; + uint8_t field_0x5551; + uint8_t field_0x5552; + uint8_t field_0x5553; + uint8_t field_0x5554; + uint8_t field_0x5555; + uint8_t field_0x5556; + uint8_t field_0x5557; + uint8_t field_0x5558; + uint8_t field_0x5559; + uint8_t field_0x555a; + uint8_t field_0x555b; + uint8_t field_0x555c; + uint8_t field_0x555d; + uint8_t field_0x555e; + uint8_t field_0x555f; + uint8_t field_0x5560; + uint8_t field_0x5561; + uint8_t field_0x5562; + uint8_t field_0x5563; + uint8_t field_0x5564; + uint8_t field_0x5565; + uint8_t field_0x5566; + uint8_t field_0x5567; + uint8_t field_0x5568; + uint8_t field_0x5569; + uint8_t field_0x556a; + uint8_t field_0x556b; + uint8_t field_0x556c; + uint8_t field_0x556d; + uint8_t field_0x556e; + uint8_t field_0x556f; + uint8_t field_0x5570; + uint8_t field_0x5571; + uint8_t field_0x5572; + uint8_t field_0x5573; + uint8_t field_0x5574; + uint8_t field_0x5575; + uint8_t field_0x5576; + uint8_t field_0x5577; + uint8_t field_0x5578; + uint8_t field_0x5579; + uint8_t field_0x557a; + uint8_t field_0x557b; + uint8_t field_0x557c; + uint8_t field_0x557d; + uint8_t field_0x557e; + uint8_t field_0x557f; + uint8_t field_0x5580; + uint8_t field_0x5581; + uint8_t field_0x5582; + uint8_t field_0x5583; + uint8_t field_0x5584; + uint8_t field_0x5585; + uint8_t field_0x5586; + uint8_t field_0x5587; + uint8_t field_0x5588; + uint8_t field_0x5589; + uint8_t field_0x558a; + uint8_t field_0x558b; + uint8_t field_0x558c; + uint8_t field_0x558d; + uint8_t field_0x558e; + uint8_t field_0x558f; + uint8_t field_0x5590; + uint8_t field_0x5591; + uint8_t field_0x5592; + uint8_t field_0x5593; + uint8_t field_0x5594; + uint8_t field_0x5595; + uint8_t field_0x5596; + uint8_t field_0x5597; + uint8_t field_0x5598; + uint8_t field_0x5599; + uint8_t field_0x559a; + uint8_t field_0x559b; + uint8_t field_0x559c; + uint8_t field_0x559d; + uint8_t field_0x559e; + uint8_t field_0x559f; + uint8_t field_0x55a0; + uint8_t field_0x55a1; + uint8_t field_0x55a2; + uint8_t field_0x55a3; + uint8_t field_0x55a4; + uint8_t field_0x55a5; + uint8_t field_0x55a6; + uint8_t field_0x55a7; + uint8_t field_0x55a8; + uint8_t field_0x55a9; + uint8_t field_0x55aa; + uint8_t field_0x55ab; + uint8_t field_0x55ac; + uint8_t field_0x55ad; + uint8_t field_0x55ae; + uint8_t field_0x55af; + uint8_t field_0x55b0; + uint8_t field_0x55b1; + uint8_t field_0x55b2; + uint8_t field_0x55b3; + uint8_t field_0x55b4; + uint8_t field_0x55b5; + uint8_t field_0x55b6; + uint8_t field_0x55b7; + uint8_t field_0x55b8; + uint8_t field_0x55b9; + uint8_t field_0x55ba; + uint8_t field_0x55bb; + uint8_t field_0x55bc; + uint8_t field_0x55bd; + uint8_t field_0x55be; + uint8_t field_0x55bf; + uint8_t field_0x55c0; + uint8_t field_0x55c1; + uint8_t field_0x55c2; + uint8_t field_0x55c3; + uint8_t field_0x55c4; + uint8_t field_0x55c5; + uint8_t field_0x55c6; + uint8_t field_0x55c7; + uint8_t field_0x55c8; + uint8_t field_0x55c9; + uint8_t field_0x55ca; + uint8_t field_0x55cb; + uint8_t field_0x55cc; + uint8_t field_0x55cd; + uint8_t field_0x55ce; + uint8_t field_0x55cf; + uint8_t field_0x55d0; + uint8_t field_0x55d1; + uint8_t field_0x55d2; + uint8_t field_0x55d3; + uint8_t field_0x55d4; + uint8_t field_0x55d5; + uint8_t field_0x55d6; + uint8_t field_0x55d7; + uint8_t field_0x55d8; + uint8_t field_0x55d9; + uint8_t field_0x55da; + uint8_t field_0x55db; + uint8_t field_0x55dc; + uint8_t field_0x55dd; + uint8_t field_0x55de; + uint8_t field_0x55df; + uint8_t field_0x55e0; + uint8_t field_0x55e1; + uint8_t field_0x55e2; + uint8_t field_0x55e3; + uint8_t field_0x55e4; + uint8_t field_0x55e5; + uint8_t field_0x55e6; + uint8_t field_0x55e7; + uint8_t field_0x55e8; + uint8_t field_0x55e9; + uint8_t field_0x55ea; + uint8_t field_0x55eb; + uint8_t field_0x55ec; + uint8_t field_0x55ed; + uint8_t field_0x55ee; + uint8_t field_0x55ef; + uint8_t field_0x55f0; + uint8_t field_0x55f1; + uint8_t field_0x55f2; + uint8_t field_0x55f3; + uint8_t field_0x55f4; + uint8_t field_0x55f5; + uint8_t field_0x55f6; + uint8_t field_0x55f7; + uint8_t field_0x55f8; + uint8_t field_0x55f9; + uint8_t field_0x55fa; + uint8_t field_0x55fb; + uint8_t field_0x55fc; + uint8_t field_0x55fd; + uint8_t field_0x55fe; + uint8_t field_0x55ff; + uint8_t field_0x5600; + uint8_t field_0x5601; + uint8_t field_0x5602; + uint8_t field_0x5603; + uint8_t field_0x5604; + uint8_t field_0x5605; + uint8_t field_0x5606; + uint8_t field_0x5607; + uint8_t field_0x5608; + uint8_t field_0x5609; + uint8_t field_0x560a; + uint8_t field_0x560b; + uint8_t field_0x560c; + uint8_t field_0x560d; + uint8_t field_0x560e; + uint8_t field_0x560f; + uint8_t field_0x5610; + uint8_t field_0x5611; + uint8_t field_0x5612; + uint8_t field_0x5613; + uint8_t field_0x5614; + uint8_t field_0x5615; + uint8_t field_0x5616; + uint8_t field_0x5617; + uint8_t field_0x5618; + uint8_t field_0x5619; + uint8_t field_0x561a; + uint8_t field_0x561b; + uint8_t field_0x561c; + uint8_t field_0x561d; + uint8_t field_0x561e; + uint8_t field_0x561f; + uint8_t field_0x5620; + uint8_t field_0x5621; + uint8_t field_0x5622; + uint8_t field_0x5623; + uint8_t field_0x5624; + uint8_t field_0x5625; + uint8_t field_0x5626; + uint8_t field_0x5627; + uint8_t field_0x5628; + uint8_t field_0x5629; + uint8_t field_0x562a; + uint8_t field_0x562b; + uint8_t field_0x562c; + uint8_t field_0x562d; + uint8_t field_0x562e; + uint8_t field_0x562f; + uint8_t field_0x5630; + uint8_t field_0x5631; + uint8_t field_0x5632; + uint8_t field_0x5633; + uint8_t field_0x5634; + uint8_t field_0x5635; + uint8_t field_0x5636; + uint8_t field_0x5637; + uint8_t field_0x5638; + uint8_t field_0x5639; + uint8_t field_0x563a; + uint8_t field_0x563b; + uint8_t field_0x563c; + uint8_t field_0x563d; + uint8_t field_0x563e; + uint8_t field_0x563f; + uint8_t field_0x5640; + uint8_t field_0x5641; + uint8_t field_0x5642; + uint8_t field_0x5643; + uint8_t field_0x5644; + uint8_t field_0x5645; + uint8_t field_0x5646; + uint8_t field_0x5647; + uint8_t field_0x5648; + uint8_t field_0x5649; + uint8_t field_0x564a; + uint8_t field_0x564b; + uint8_t field_0x564c; + uint8_t field_0x564d; + uint8_t field_0x564e; + uint8_t field_0x564f; + uint8_t field_0x5650; + uint8_t field_0x5651; + uint8_t field_0x5652; + uint8_t field_0x5653; + uint8_t field_0x5654; + uint8_t field_0x5655; + uint8_t field_0x5656; + uint8_t field_0x5657; + uint8_t field_0x5658; + uint8_t field_0x5659; + uint8_t field_0x565a; + uint8_t field_0x565b; + uint8_t field_0x565c; + uint8_t field_0x565d; + uint8_t field_0x565e; + uint8_t field_0x565f; + uint8_t field_0x5660; + uint8_t field_0x5661; + uint8_t field_0x5662; + uint8_t field_0x5663; + uint8_t field_0x5664; + uint8_t field_0x5665; + uint8_t field_0x5666; + uint8_t field_0x5667; + uint8_t field_0x5668; + uint8_t field_0x5669; + uint8_t field_0x566a; + uint8_t field_0x566b; + uint8_t field_0x566c; + uint8_t field_0x566d; + uint8_t field_0x566e; + uint8_t field_0x566f; + uint8_t field_0x5670; + uint8_t field_0x5671; + uint8_t field_0x5672; + uint8_t field_0x5673; + uint8_t field_0x5674; + uint8_t field_0x5675; + uint8_t field_0x5676; + uint8_t field_0x5677; + uint8_t field_0x5678; + uint8_t field_0x5679; + uint8_t field_0x567a; + uint8_t field_0x567b; + uint8_t field_0x567c; + uint8_t field_0x567d; + uint8_t field_0x567e; + uint8_t field_0x567f; + uint8_t field_0x5680; + uint8_t field_0x5681; + uint8_t field_0x5682; + uint8_t field_0x5683; + uint8_t field_0x5684; + uint8_t field_0x5685; + uint8_t field_0x5686; + uint8_t field_0x5687; + uint8_t field_0x5688; + uint8_t field_0x5689; + uint8_t field_0x568a; + uint8_t field_0x568b; + uint8_t field_0x568c; + uint8_t field_0x568d; + uint8_t field_0x568e; + uint8_t field_0x568f; + uint8_t field_0x5690; + uint8_t field_0x5691; + uint8_t field_0x5692; + uint8_t field_0x5693; + uint8_t field_0x5694; + uint8_t field_0x5695; + uint8_t field_0x5696; + uint8_t field_0x5697; + uint8_t field_0x5698; + uint8_t field_0x5699; + uint8_t field_0x569a; + uint8_t field_0x569b; + uint8_t field_0x569c; + uint8_t field_0x569d; + uint8_t field_0x569e; + uint8_t field_0x569f; + uint8_t field_0x56a0; + uint8_t field_0x56a1; + uint8_t field_0x56a2; + uint8_t field_0x56a3; + uint8_t field_0x56a4; + uint8_t field_0x56a5; + uint8_t field_0x56a6; + uint8_t field_0x56a7; + uint8_t field_0x56a8; + uint8_t field_0x56a9; + uint8_t field_0x56aa; + uint8_t field_0x56ab; + uint8_t field_0x56ac; + uint8_t field_0x56ad; + uint8_t field_0x56ae; + uint8_t field_0x56af; + uint8_t field_0x56b0; + uint8_t field_0x56b1; + uint8_t field_0x56b2; + uint8_t field_0x56b3; + uint8_t field_0x56b4; + uint8_t field_0x56b5; + uint8_t field_0x56b6; + uint8_t field_0x56b7; + uint8_t field_0x56b8; + uint8_t field_0x56b9; + uint8_t field_0x56ba; + uint8_t field_0x56bb; + uint8_t field_0x56bc; + uint8_t field_0x56bd; + uint8_t field_0x56be; + uint8_t field_0x56bf; + uint8_t field_0x56c0; + uint8_t field_0x56c1; + uint8_t field_0x56c2; + uint8_t field_0x56c3; + uint8_t field_0x56c4; + uint8_t field_0x56c5; + uint8_t field_0x56c6; + uint8_t field_0x56c7; + uint8_t field_0x56c8; + uint8_t field_0x56c9; + uint8_t field_0x56ca; + uint8_t field_0x56cb; + uint8_t field_0x56cc; + uint8_t field_0x56cd; + uint8_t field_0x56ce; + uint8_t field_0x56cf; + uint8_t field_0x56d0; + uint8_t field_0x56d1; + uint8_t field_0x56d2; + uint8_t field_0x56d3; + uint8_t field_0x56d4; + uint8_t field_0x56d5; + uint8_t field_0x56d6; + uint8_t field_0x56d7; + uint8_t field_0x56d8; + uint8_t field_0x56d9; + uint8_t field_0x56da; + uint8_t field_0x56db; + uint8_t field_0x56dc; + uint8_t field_0x56dd; + uint8_t field_0x56de; + uint8_t field_0x56df; + uint8_t field_0x56e0; + uint8_t field_0x56e1; + uint8_t field_0x56e2; + uint8_t field_0x56e3; + uint8_t field_0x56e4; + uint8_t field_0x56e5; + uint8_t field_0x56e6; + uint8_t field_0x56e7; + uint8_t field_0x56e8; + uint8_t field_0x56e9; + uint8_t field_0x56ea; + uint8_t field_0x56eb; + uint8_t field_0x56ec; + uint8_t field_0x56ed; + uint8_t field_0x56ee; + uint8_t field_0x56ef; + uint8_t field_0x56f0; + uint8_t field_0x56f1; + uint8_t field_0x56f2; + uint8_t field_0x56f3; + uint8_t field_0x56f4; + uint8_t field_0x56f5; + uint8_t field_0x56f6; + uint8_t field_0x56f7; + uint8_t field_0x56f8; + uint8_t field_0x56f9; + uint8_t field_0x56fa; + uint8_t field_0x56fb; + uint8_t field_0x56fc; + uint8_t field_0x56fd; + uint8_t field_0x56fe; + uint8_t field_0x56ff; + uint8_t field_0x5700; + uint8_t field_0x5701; + uint8_t field_0x5702; + uint8_t field_0x5703; + uint8_t field_0x5704; + uint8_t field_0x5705; + uint8_t field_0x5706; + uint8_t field_0x5707; + uint8_t field_0x5708; + uint8_t field_0x5709; + uint8_t field_0x570a; + uint8_t field_0x570b; + uint8_t field_0x570c; + uint8_t field_0x570d; + uint8_t field_0x570e; + uint8_t field_0x570f; + uint8_t field_0x5710; + uint8_t field_0x5711; + uint8_t field_0x5712; + uint8_t field_0x5713; + uint8_t field_0x5714; + uint8_t field_0x5715; + uint8_t field_0x5716; + uint8_t field_0x5717; + uint8_t field_0x5718; + uint8_t field_0x5719; + uint8_t field_0x571a; + uint8_t field_0x571b; + uint32_t field_0x571c; + uint8_t field_0x5720; + uint8_t field_0x5721; + uint8_t field_0x5722; + uint8_t field_0x5723; + uint8_t field_0x5724; + uint8_t field_0x5725; + uint8_t field_0x5726; + uint8_t field_0x5727; + uint8_t field_0x5728; + uint8_t field_0x5729; + uint8_t field_0x572a; + uint8_t field_0x572b; + uint8_t field_0x572c; + uint8_t field_0x572d; + uint8_t field_0x572e; + uint8_t field_0x572f; + uint8_t field_0x5730; + uint8_t field_0x5731; + uint8_t field_0x5732; + uint8_t field_0x5733; + uint8_t field_0x5734; + uint8_t field_0x5735; + uint8_t field_0x5736; + uint8_t field_0x5737; + uint8_t field_0x5738; + uint8_t field_0x5739; + uint8_t field_0x573a; + uint8_t field_0x573b; + uint8_t field_0x573c; + uint8_t field_0x573d; + uint8_t field_0x573e; + uint8_t field_0x573f; + uint8_t field_0x5740; + uint8_t field_0x5741; + uint8_t field_0x5742; + uint8_t field_0x5743; + uint8_t field_0x5744; + uint8_t field_0x5745; + uint8_t field_0x5746; + uint8_t field_0x5747; + uint8_t field_0x5748; + uint8_t field_0x5749; + uint8_t field_0x574a; + uint8_t field_0x574b; + uint8_t field_0x574c; + uint8_t field_0x574d; + uint8_t field_0x574e; + uint8_t field_0x574f; + uint8_t field_0x5750; + uint8_t field_0x5751; + uint8_t field_0x5752; + uint8_t field_0x5753; + uint8_t field_0x5754; + uint8_t field_0x5755; + uint8_t field_0x5756; + uint8_t field_0x5757; + uint8_t field_0x5758; + uint8_t field_0x5759; + uint8_t field_0x575a; + uint8_t field_0x575b; + uint8_t field_0x575c; + uint8_t field_0x575d; + uint8_t field_0x575e; + uint8_t field_0x575f; + uint8_t field_0x5760; + uint8_t field_0x5761; + uint8_t field_0x5762; + uint8_t field_0x5763; + uint8_t field_0x5764; + uint8_t field_0x5765; + uint8_t field_0x5766; + uint8_t field_0x5767; + uint8_t field_0x5768; + uint8_t field_0x5769; + uint8_t field_0x576a; + uint8_t field_0x576b; + uint8_t field_0x576c; + uint8_t field_0x576d; + uint8_t field_0x576e; + uint8_t field_0x576f; + uint8_t field_0x5770; + uint8_t field_0x5771; + uint8_t field_0x5772; + uint8_t field_0x5773; + uint8_t field_0x5774; + uint8_t field_0x5775; + uint8_t field_0x5776; + uint8_t field_0x5777; + uint8_t field_0x5778; + uint8_t field_0x5779; + uint8_t field_0x577a; + uint8_t field_0x577b; + uint8_t field_0x577c; + uint8_t field_0x577d; + uint8_t field_0x577e; + uint8_t field_0x577f; + uint8_t field_0x5780; + uint8_t field_0x5781; + uint8_t field_0x5782; + uint8_t field_0x5783; + uint8_t field_0x5784; + uint8_t field_0x5785; + uint8_t field_0x5786; + uint8_t field_0x5787; + uint8_t field_0x5788; + uint8_t field_0x5789; + uint8_t field_0x578a; + uint8_t field_0x578b; + uint8_t field_0x578c; + uint8_t field_0x578d; + uint8_t field_0x578e; + uint8_t field_0x578f; + uint8_t field_0x5790; + uint8_t field_0x5791; + uint8_t field_0x5792; + uint8_t field_0x5793; + uint8_t field_0x5794; + uint8_t field_0x5795; + uint8_t field_0x5796; + uint8_t field_0x5797; + uint8_t field_0x5798; + uint8_t field_0x5799; + uint8_t field_0x579a; + uint8_t field_0x579b; + uint8_t field_0x579c; + uint8_t field_0x579d; + uint8_t field_0x579e; + uint8_t field_0x579f; + uint32_t field_0x57a0; + uint8_t field_0x57a4; + uint8_t field_0x57a5; + uint8_t field_0x57a6; + uint8_t field_0x57a7; + uint8_t field_0x57a8; + uint8_t field_0x57a9; + uint8_t field_0x57aa; + uint8_t field_0x57ab; + uint8_t field_0x57ac; + uint8_t field_0x57ad; + uint8_t field_0x57ae; + uint8_t field_0x57af; + uint8_t field_0x57b0; + uint8_t field_0x57b1; + uint8_t field_0x57b2; + uint8_t field_0x57b3; + uint32_t field_0x57b4; +}; +static_assert(sizeof(struct LH3DCreature) == 0x57b8, "Data type is of wrong size"); + +// Static methods + +// win1.41 0047f1f0 mac 101fc320 LH3DCreature::FollowerCallbackFunction(int, int) +void __cdecl FollowerCallbackFunction__12LH3DCreatureFii(int param_1, int param_2); +// win1.41 0047f260 mac 101fc1b0 LH3DCreature::FollowerCallbackPrepareAnims(int, float, float) +void __cdecl FollowerCallbackPrepareAnims__12LH3DCreatureFiff(struct Creature* param_1, float param_2, float param_3); +// win1.41 0047f280 mac 101fc130 LH3DCreature::FollowerCallbackGetStopDist(int) +float __cdecl FollowerCallbackGetStopDist__12LH3DCreatureFi(struct Creature* param_1); + +// Constructors + +// win1.41 0047f770 mac 101fb470 LH3DCreature::LH3DCreature(Creature *, LHPoint const &, void *) +struct LH3DCreature* __fastcall __ct__12LH3DCreatureFP8CreatureRC7LHPointPv(struct LH3DCreature* this, const void* edx, struct Creature* creature, struct LHPoint* pos, void* param_3); + +// Non-virtual methods + +// win1.41 004813f0 mac 101f8ba0 LH3DCreature::GetBonePos(long) +struct LHPoint* __fastcall GetBonePos__12LH3DCreatureFl(struct LH3DCreature* this, const void* edx, int index); +// win1.41 004842b0 mac 101f4ce0 LH3DCreature::GetSafeBuffer(void) +uint8_t* __fastcall GetSafeBuffer__12LH3DCreatureFv(struct LH3DCreature* this); + +// Override methods + +// win1.41 004eac90 mac 10274660 LH3DCreature::LoadBase(char *) +uint32_t __fastcall LoadBase__12LH3DCreatureFPc(struct LH3DCreature* this, const void* edx, const char* path); + +#endif /* BW1_DECOMP_CREATURE_MORPH_INCLUDED_H */ diff --git a/black/CreatureObjectsInspected.h b/black/CreatureObjectsInspected.h new file mode 100644 index 0000000..faf9e33 --- /dev/null +++ b/black/CreatureObjectsInspected.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_CREATURE_OBJECTS_INSPECTED_INCLUDED_H +#define BW1_DECOMP_CREATURE_OBJECTS_INSPECTED_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Base.h" /* For struct Base */ + +struct CreatureObjectsInspected +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8[0x18]; +}; +static_assert(sizeof(struct CreatureObjectsInspected) == 0x68, "Data type is of wrong size"); + +static struct BaseVftable* __vt__24CreatureObjectsInspected = (struct BaseVftable*)0x008d0548; + +#endif /* BW1_DECOMP_CREATURE_OBJECTS_INSPECTED_INCLUDED_H */ diff --git a/black/CreaturePhysical.h b/black/CreaturePhysical.h new file mode 100644 index 0000000..60a7010 --- /dev/null +++ b/black/CreaturePhysical.h @@ -0,0 +1,65 @@ +#ifndef BW1_DECOMP_CREATURE_PHYSICAL_INCLUDED_H +#define BW1_DECOMP_CREATURE_PHYSICAL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct Creature; +struct CreatureInfo; +struct LH3DCreature; +struct MapCoords; + +struct CreatureDamageMap +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + uint32_t field_0xc; +}; +static_assert(sizeof(struct CreatureDamageMap) == 0x10, "Data type is of wrong size"); + +static struct BaseVftable* __vt__17CreatureDamageMap = (struct BaseVftable*)0x008d14f0; + +struct CreaturePhysical +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + float strength; + uint32_t field_0x10; + float field_0x14; + float field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint16_t field_0x24; + uint8_t field_0x26; + uint8_t field_0x27; + uint32_t field_0x28; + uint32_t field_0x2c; + float field_0x30; + uint32_t field_0x34; + uint32_t field_0x38; + float field_0x3c; + uint32_t field_0x40; + uint32_t field_0x44; + float field_0x48; + uint32_t field_0x4c; + uint32_t field_0x50; + struct Creature* creature; + struct LH3DCreature* creature_3d; + struct CreatureDamageMap damage_map; + uint8_t* field_0x6c; + uint32_t field_0x70; +}; +static_assert(sizeof(struct CreaturePhysical) == 0x74, "Data type is of wrong size"); + +static struct BaseVftable* __vt__16CreaturePhysical = (struct BaseVftable*)0x008d14d0; + +// Constructors + +// win1.41 004ef2c0 mac 102767c0 CreaturePhysical::CreaturePhysical(MapCoords const &, unsigned short, CreatureInfo const *, Creature *) +struct CreaturePhysical* __fastcall __ct__16CreaturePhysicalFRC9MapCoordsUsPC12CreatureInfoP8Creature(struct CreaturePhysical* this, const void* edx, const struct MapCoords* coords, uint16_t param_2, const struct CreatureInfo* info, struct Creature* creature); + +#endif /* BW1_DECOMP_CREATURE_PHYSICAL_INCLUDED_H */ diff --git a/black/CreaturePlan.h b/black/CreaturePlan.h new file mode 100644 index 0000000..3878d90 --- /dev/null +++ b/black/CreaturePlan.h @@ -0,0 +1,59 @@ +#ifndef BW1_DECOMP_CREATURE_PLAN_INCLUDED_H +#define BW1_DECOMP_CREATURE_PLAN_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For enum CREATURE_ACTION */ +#include /* For enum CREATURE_DESIRES */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct Creature; +struct CreatureBelief; +struct CreatureMental; + +struct CreaturePlan +{ + struct Base super; /* 0x0 */ + enum CREATURE_DESIRES creature_desire; + struct CreatureBelief* field_0xc; + struct CreatureBelief* field_0x10; + struct CreatureBelief* field_0x14; + enum CREATURE_ACTION creature_action; + float field_0x1c; + float field_0x20; + float field_0x24; + float field_0x28; + float field_0x2c; +}; +static_assert(sizeof(struct CreaturePlan) == 0x30, "Data type is of wrong size"); + +static struct BaseVftable* __vt__12CreaturePlan = (struct BaseVftable*)0x008cc7cc; + +struct CreaturePlanState +{ + struct CreaturePlan plans[0x28]; /* 0x0 */ + uint32_t field_0x780; + uint32_t field_0x784; + enum CREATURE_DESIRES desires[0x28]; + uint32_t field_0x788; /* 0x828 */ + int desire_count; +}; +static_assert(sizeof(struct CreaturePlanState) == 0x830, "Data type is of wrong size"); + +// Constructors + +// win1.41 004f1380 mac 10278510 CreaturePlanState::CreaturePlanState(void) +struct CreaturePlanState* __fastcall __ct__17CreaturePlanStateFv(struct CreaturePlanState* this); + +// Non-virtual methods + +// win1.41 004f13e0 mac 10278490 CreaturePlanState::Initialise(CreatureMental *) +void __fastcall Initialise__17CreaturePlanStateFP14CreatureMental(struct CreaturePlanState* this, const void* edx, struct CreatureMental* mental); +// win1.41 004f1480 mac 10278340 CreaturePlanState::SetupRemainingGoalsToPlanFor(Creature *) +void __fastcall SetupRemainingGoalsToPlanFor__17CreaturePlanStateFP8Creature(struct CreaturePlanState* this, const void* edx, struct Creature* creature); + +#endif /* BW1_DECOMP_CREATURE_PLAN_INCLUDED_H */ diff --git a/black/CreaturePreviousLesson.h b/black/CreaturePreviousLesson.h new file mode 100644 index 0000000..88fa955 --- /dev/null +++ b/black/CreaturePreviousLesson.h @@ -0,0 +1,19 @@ +#ifndef BW1_DECOMP_CREATURE_PREVIOUS_LESSON_INCLUDED_H +#define BW1_DECOMP_CREATURE_PREVIOUS_LESSON_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct CreaturePreviousLesson +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + uint8_t field_0xc[0x1200]; +}; +static_assert(sizeof(struct CreaturePreviousLesson) == 0x120c, "Data type is of wrong size"); + +static struct BaseVftable* __vt__22CreaturePreviousLesson = (struct BaseVftable*)0x008d0430; + +#endif /* BW1_DECOMP_CREATURE_PREVIOUS_LESSON_INCLUDED_H */ diff --git a/black/CreatureReceiveSpell.h b/black/CreatureReceiveSpell.h new file mode 100644 index 0000000..cc69e54 --- /dev/null +++ b/black/CreatureReceiveSpell.h @@ -0,0 +1,54 @@ +#ifndef BW1_DECOMP_CREATURE_RECEIVE_SPELL_INCLUDED_H +#define BW1_DECOMP_CREATURE_RECEIVE_SPELL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For struct LHPoint */ +#include /* For DECLARE_GJ_VECTOR */ + +// Forward Declares + +struct Creature; + +struct CreatureReceiveSpell__QueueData +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct CreatureReceiveSpell__QueueData) == 0x1, "Data type is of wrong size"); + +DECLARE_GJ_VECTOR(CreatureReceiveSpell__QueueData); + +struct CreatureReceiveSpell__TPerSpellData +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; +}; +static_assert(sizeof(struct CreatureReceiveSpell__TPerSpellData) == 0x18, "Data type is of wrong size"); + +struct CreatureReceiveSpell +{ + struct Creature* creature; /* 0x0 */ + struct CreatureReceiveSpell__TPerSpellData data[0x10]; + struct GJVector__CreatureReceiveSpell__QueueData queue_data; /* 0x184 */ + uint8_t field_0x194[0x8]; + struct LHPoint field_0x19c; + struct LHPoint field_0x1a8; + struct LHPoint field_0x1b4; + struct LHPoint field_0x1c0; + float field_0x1cc; + uint32_t field_0x1d0; + uint8_t field_0x1d4; +}; +static_assert(sizeof(struct CreatureReceiveSpell) == 0x1d8, "Data type is of wrong size"); + +// Constructors + +// win1.41 004f5240 mac 102802a0 CreatureReceiveSpell::CreatureReceiveSpell(Creature *) +struct CreatureReceiveSpell* __fastcall __ct__20CreatureReceiveSpellFP8Creature(struct CreatureReceiveSpell* this, const void* edx, struct Creature* creature); + +#endif /* BW1_DECOMP_CREATURE_RECEIVE_SPELL_INCLUDED_H */ diff --git a/black/CreatureRoom.h b/black/CreatureRoom.h new file mode 100644 index 0000000..cfa8cec --- /dev/null +++ b/black/CreatureRoom.h @@ -0,0 +1,30 @@ +#ifndef BW1_DECOMP_CREATURE_ROOM_INCLUDED_H +#define BW1_DECOMP_CREATURE_ROOM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "TempleRoom.h" /* For struct TempleRoom */ + +struct CreatureRoom +{ + struct TempleRoom super; /* 0x0 */ + uint8_t field_0xec[0x380]; + uint32_t field_0x46c; + uint8_t field_0x470[0x68]; +}; +static_assert(sizeof(struct CreatureRoom) == 0x4d8, "Data type is of wrong size"); + +static struct TempleRoomVftable* __vt__12CreatureRoom = (struct TempleRoomVftable*)0x0099eb30; + +// Constructors + +// win1.41 007865e0 mac 10287800 CreatureRoom::CreatureRoom(void) +struct CreatureRoom* __fastcall __ct__12CreatureRoomFv(struct CreatureRoom* this); + +// Non-virtual methods + +// win1.41 007878e0 mac 10284d70 CreatureRoom::InitEngine(void) +void __fastcall InitEngine__12CreatureRoomFv(struct CreatureRoom* this); + +#endif /* BW1_DECOMP_CREATURE_ROOM_INCLUDED_H */ diff --git a/black/CreatureRoomCamera.h b/black/CreatureRoomCamera.h new file mode 100644 index 0000000..f680253 --- /dev/null +++ b/black/CreatureRoomCamera.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_CREATURE_ROOM_CAMERA_INCLUDED_H +#define BW1_DECOMP_CREATURE_ROOM_CAMERA_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "InnerCamera.h" /* For struct InnerCamera */ + +struct CreatureRoomCamera +{ + struct InnerCamera super; /* 0x0 */ + uint8_t field_0x46c[0x58]; +}; +static_assert(sizeof(struct CreatureRoomCamera) == 0x4c4, "Data type is of wrong size"); + +static struct InnerCameraVftable* __vt__18CreatureRoomCamera = (struct InnerCameraVftable*)0x0099eb8c; + +#endif /* BW1_DECOMP_CREATURE_ROOM_CAMERA_INCLUDED_H */ diff --git a/black/CreatureSubAction.h b/black/CreatureSubAction.h new file mode 100644 index 0000000..f77f472 --- /dev/null +++ b/black/CreatureSubAction.h @@ -0,0 +1,67 @@ +#ifndef BW1_DECOMP_CREATURE_SUB_ACTION_INCLUDED_H +#define BW1_DECOMP_CREATURE_SUB_ACTION_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For struct LHPoint */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct Creature; + +struct CreatureSubAction +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0x4]; + uint32_t field_0xc; + uint8_t field_0x10[0x4]; + struct LHPoint field_0x14; + uint8_t field_0x20[0xc]; + uint32_t field_0x2c; + uint8_t field_0x30[0x30]; +}; +static_assert(sizeof(struct CreatureSubAction) == 0x60, "Data type is of wrong size"); + +static struct BaseVftable* __vt__17CreatureSubAction = (struct BaseVftable*)0x008cd374; + +// Constructors + +// win1.41 00473db0 mac 101e0720 CreatureSubAction::CreatureSubAction(void) +void __fastcall __ct__17CreatureSubActionFv(struct CreatureSubAction* this); + +struct CreatureSubActionAgenda +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + int field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + struct CreatureSubAction sub_actions[0x20]; + struct Creature* creature; /* 0xc28 */ + uint32_t field_0xc2c; + uint32_t field_0xc30; + uint32_t field_0xc34; + uint32_t field_0xc38; + uint32_t field_0xc3c; + uint32_t field_0xc40; + uint32_t field_0xc44; + uint32_t field_0xc48; + uint32_t field_0xc4c; +}; +static_assert(sizeof(struct CreatureSubActionAgenda) == 0xc50, "Data type is of wrong size"); + +static struct BaseVftable* __vt__23CreatureSubActionAgenda = (struct BaseVftable*)0x008cd354; + +// Constructors + +// win1.41 004ff1b0 mac 1028cea0 CreatureSubActionAgenda::CreatureSubActionAgenda(Creature*) +void __fastcall __ct__23CreatureSubActionAgendaFP8Creature(struct CreatureSubActionAgenda* this, const void* edx, struct Creature* creature); + +#endif /* BW1_DECOMP_CREATURE_SUB_ACTION_INCLUDED_H */ diff --git a/black/CreatureVisionState.h b/black/CreatureVisionState.h new file mode 100644 index 0000000..ade0b52 --- /dev/null +++ b/black/CreatureVisionState.h @@ -0,0 +1,43 @@ +#ifndef BW1_DECOMP_CREATURE_VISION_STATE_INCLUDED_H +#define BW1_DECOMP_CREATURE_VISION_STATE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Base.h" /* For struct Base */ +#include "MapCoords.h" /* For struct MapCoords */ + +struct CreatureInterestingThingToLookAt +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; + struct MapCoords coords; + uint32_t field_0x18; + uint32_t field_0x1c; +}; +static_assert(sizeof(struct CreatureInterestingThingToLookAt) == 0x20, "Data type is of wrong size"); + +// Constructors + +// win1.41 004d1b90 mac 10242e40 CreatureInterestingThingToLookAt::CreatureInterestingThingToLookAt(void) +struct CreatureInterestingThingToLookAt* __fastcall __ct__32CreatureInterestingThingToLookAtFv(struct CreatureInterestingThingToLookAt* this); + +struct CreatureVisionState +{ + struct Base super; /* 0x0 */ + struct CreatureInterestingThingToLookAt thing_to_look_at; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + uint32_t field_0x38; + uint32_t field_0x3c; + uint32_t field_0x40; + uint32_t field_0x44; +}; +static_assert(sizeof(struct CreatureVisionState) == 0x48, "Data type is of wrong size"); + +static struct BaseVftable* __vt__19CreatureVisionState = (struct BaseVftable*)0x008cf880; + +#endif /* BW1_DECOMP_CREATURE_VISION_STATE_INCLUDED_H */ diff --git a/black/Creche.h b/black/Creche.h new file mode 100644 index 0000000..6f3079e --- /dev/null +++ b/black/Creche.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_CRECHE_INCLUDED_H +#define BW1_DECOMP_CRECHE_INCLUDED_H + +#include /* For static_assert */ + +#include "Abode.h" /* For struct Abode */ + +struct Creche +{ + struct Abode super; /* 0x0 */ +}; +static_assert(sizeof(struct Creche) == 0xc4, "Data type is of wrong size"); + +static struct AbodeVftable* __vt__6Creche = (struct AbodeVftable*)0x008d16c4; + +#endif /* BW1_DECOMP_CRECHE_INCLUDED_H */ diff --git a/black/Dance.h b/black/Dance.h new file mode 100644 index 0000000..661d2bb --- /dev/null +++ b/black/Dance.h @@ -0,0 +1,34 @@ +#ifndef BW1_DECOMP_DANCE_INCLUDED_H +#define BW1_DECOMP_DANCE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GroupBehaviour.h" /* For struct GroupBehaviour */ + +// Forward Declares + +struct GDanceInfo; +struct GameThingWithPos; +struct MapCoords; +struct Town; + +struct Dance +{ + struct GroupBehaviour super; /* 0x0 */ + uint8_t field_0xe8[0x44]; +}; +static_assert(sizeof(struct Dance) == 0x12c, "Data type is of wrong size"); + +static struct GroupBehaviourVftable* __vt__5Dance = (struct GroupBehaviourVftable*)0x008d3968; + +// Constructors + +// win1.41 0050b6a0 mac 102aa620 Dance::Dance(MapCoords const &, GDanceInfo const *, GameThingWithPos *, unsigned long, int, Town *) +struct Dance* __fastcall __ct__5DanceFRC9MapCoordsPC10GDanceInfoP16GameThingWithPosUliP4Town(struct Dance* this, const void* edx, const struct MapCoords* param_1, struct GDanceInfo* info, const struct GameThingWithPos* param_3, uint32_t param_4, int param_5, struct Town* town); + +DECLARE_LH_LIST_HEAD(Dance); + +#endif /* BW1_DECOMP_DANCE_INCLUDED_H */ diff --git a/black/DanceGroup.h b/black/DanceGroup.h new file mode 100644 index 0000000..908a605 --- /dev/null +++ b/black/DanceGroup.h @@ -0,0 +1,37 @@ +#ifndef BW1_DECOMP_DANCE_GROUP_INCLUDED_H +#define BW1_DECOMP_DANCE_GROUP_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct GroupBehaviour; + +enum DANCE_GROUP_ACTION_TYPE +{ + DANCE_GROUP_ACTION_TYPE_0 = 0x0, + _DANCE_GROUP_ACTION_TYPE_COUNT = 0x1 +}; +static_assert(sizeof(enum DANCE_GROUP_ACTION_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* DANCE_GROUP_ACTION_TYPE_strs[_DANCE_GROUP_ACTION_TYPE_COUNT] = { + "DANCE_GROUP_ACTION_TYPE_0", +}; + +struct DanceGroup +{ + struct GameThing super; /* 0x0 */ + uint8_t field_0x14[0x4]; + struct GroupBehaviour* behaviour; + uint8_t field_0x1c[0x40]; + uint32_t field_0x5c; + uint8_t field_0x60[0x11c]; +}; +static_assert(sizeof(struct DanceGroup) == 0x17c, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__10DanceGroup = (struct GameThingVftable*)0x008d44d0; + +#endif /* BW1_DECOMP_DANCE_GROUP_INCLUDED_H */ diff --git a/black/DanceInfo.h b/black/DanceInfo.h new file mode 100644 index 0000000..1a2c434 --- /dev/null +++ b/black/DanceInfo.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_DANCE_INFO_INCLUDED_H +#define BW1_DECOMP_DANCE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +struct GDanceInfo +{ + struct GBaseInfo super; /* 0x0 */ + uint8_t field_0x10[0xa0]; +}; +static_assert(sizeof(struct GDanceInfo) == 0xb0, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__10GDanceInfo = (struct GBaseInfoVftable*)0x008d3938; + +#endif /* BW1_DECOMP_DANCE_INFO_INCLUDED_H */ diff --git a/black/DanceKey.h b/black/DanceKey.h new file mode 100644 index 0000000..0ebb1d7 --- /dev/null +++ b/black/DanceKey.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_DANCE_KEY_INCLUDED_H +#define BW1_DECOMP_DANCE_KEY_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint8_t */ + +#include "DanceGroup.h" /* For enum DANCE_GROUP_ACTION_TYPE */ +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct DanceGroupActionArgument; + +struct DanceKeyFrame +{ + struct GameThing super; /* 0x0 */ + uint8_t field_0x14[0x10]; +}; +static_assert(sizeof(struct DanceKeyFrame) == 0x24, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__13DanceKeyFrame = (struct GameThingVftable*)0x008d46f0; + +// Constructors + +// win1.41 0050eb60 mac 102ae450 DanceKeyFrame::DanceKeyFrame(long, LHDynamicStack
    &, DANCE_GROUP_ACTION_TYPE, DanceGroupActionArgument const &) +struct DanceKeyFrame* __fastcall __ct__13DanceKeyFrameFlR18LHDynamicStack_Ul_23DANCE_GROUP_ACTION_TYPERC24DanceGroupActionArgument(struct DanceKeyFrame* this, const void* edx, int32_t param_1, struct LHDynamicStack__Ul stack, enum DANCE_GROUP_ACTION_TYPE action_type, const struct DanceGroupActionArgument* arguments); + +#endif /* BW1_DECOMP_DANCE_KEY_INCLUDED_H */ diff --git a/black/DancePathInfo.h b/black/DancePathInfo.h new file mode 100644 index 0000000..e8e279a --- /dev/null +++ b/black/DancePathInfo.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_DANCE_PATH_INFO_INCLUDED_H +#define BW1_DECOMP_DANCE_PATH_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "GameThing.h" /* For struct GameThing */ + +struct DancePathInfo +{ + struct GameThing super; /* 0x0 */ + uint8_t field_0x14; + uint8_t field_0x15[0x3]; + uint8_t (*field_0x18)[0xc]; + uint32_t field_0x1c; +}; +static_assert(sizeof(struct DancePathInfo) == 0x20, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__13DancePathInfo = (struct GameThingVftable*)0x00900914; + +#endif /* BW1_DECOMP_DANCE_PATH_INFO_INCLUDED_H */ diff --git a/black/Data.h b/black/Data.h new file mode 100644 index 0000000..973a795 --- /dev/null +++ b/black/Data.h @@ -0,0 +1,39 @@ +#ifndef BW1_DECOMP_DATA_INCLUDED_H +#define BW1_DECOMP_DATA_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Base.h" /* For struct Base */ + +struct GData +{ + struct Base super; /* 0x0 */ + uint32_t rand_seed; + uint32_t field_0xc; + uint32_t game_turn; /* 0x10 */ + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; +}; +static_assert(sizeof(struct GData) == 0x28, "Data type is of wrong size"); + +static struct BaseVftable* __vt__5GData = (struct BaseVftable*)0x008d6034; + +// Constructors + +// win1.41 00510500 mac 100c0a70 GData::GData(void) +struct GData* __fastcall __ct__5GDataFv(struct GData* this); + +// Non-virtual methods + +// win1.41 00510650 mac 1002adb0 GData::Rand(long) +uint32_t __fastcall Rand__5GDataFl(struct GData* this, const void* edx, uint32_t max, const char* src_file, uint32_t src_line); +// win1.41 00510750 mac 100c08f0 GData::Reset(void) +void __fastcall Reset__5GDataFv(struct GData* this); +// win1.41 006de530 mac inlined GData::Rand(float) +float __fastcall Rand__5GDataFf(struct GData* this, const void* edx, float scale, const char* src_file, uint32_t src_line); + +#endif /* BW1_DECOMP_DATA_INCLUDED_H */ diff --git a/black/DataPath.h b/black/DataPath.h new file mode 100644 index 0000000..ffcbb5b --- /dev/null +++ b/black/DataPath.h @@ -0,0 +1,33 @@ +#ifndef BW1_DECOMP_DATA_PATH_INCLUDED_H +#define BW1_DECOMP_DATA_PATH_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint32_t */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct ScriptedCamera; + +struct DataPath +{ + struct GameThing super; /* 0x0 */ + struct ScriptedCamera* scripted_camera; /* 0x14 */ + int32_t track_no; + float field_0x1c; + uint32_t field_0x20; + float field_0x24; + float field_0x28; + float field_0x2c; +}; +static_assert(sizeof(struct DataPath) == 0x30, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__8DataPath = (struct GameThingVftable*)0x0092b41c; + +// Constructors + +// win1.41 005ef040 mac 1037d350 DataPath::DataPath(void) +struct DataPath* __fastcall __ct__8DataPathFv(struct DataPath* this); + +#endif /* BW1_DECOMP_DATA_PATH_INCLUDED_H */ diff --git a/black/DeadTree.h b/black/DeadTree.h new file mode 100644 index 0000000..3059401 --- /dev/null +++ b/black/DeadTree.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_DEAD_TREE_INCLUDED_H +#define BW1_DECOMP_DEAD_TREE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Rock.h" /* For struct Rock */ + +struct DeadTree +{ + struct Rock super; /* 0x0 */ + uint8_t field_0x94[0xc]; +}; +static_assert(sizeof(struct DeadTree) == 0xa0, "Data type is of wrong size"); + +static struct RockVftable* __vt__8DeadTree = (struct RockVftable*)0x008d6064; + +#endif /* BW1_DECOMP_DEAD_TREE_INCLUDED_H */ diff --git a/black/Debug.h b/black/Debug.h new file mode 100644 index 0000000..2e0ee74 --- /dev/null +++ b/black/Debug.h @@ -0,0 +1,52 @@ +#ifndef BW1_DECOMP_DEBUG_INCLUDED_H +#define BW1_DECOMP_DEBUG_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint32_t, uint8_t */ + +#include /* For struct LHTimer */ + +struct GDebug +{ + struct LHTimer field_0x0; + uint32_t field_0x110; + uint32_t field_0x114; + uint32_t field_0x118; + uint32_t field_0x11c; + uint32_t field_0x120; + uint32_t field_0x124; + uint32_t field_0x128; + uint32_t field_0x12c; + uint32_t field_0x130; + uint32_t field_0x134; + uint32_t field_0x138; + uint32_t field_0x13c; + uint32_t field_0x140; + uint32_t field_0x144; + uint32_t field_0x148; + uint32_t field_0x14c; + uint32_t field_0x150; + uint32_t field_0x154; + uint32_t field_0x158; + uint32_t field_0x15c; + uint8_t field_0x160[0x2d040]; + uint32_t field_0x2d1a0; + uint8_t field_0x2d1a4[0xe0]; + int field_0x2d284; + uint32_t field_0x2d288; + uint32_t field_0x2d28c; + uint32_t field_0x2d290; + uint32_t field_0x2d294; + uint32_t field_0x2d298; + uint32_t field_0x2d29c; + uint32_t field_0x2d2a0; + uint32_t field_0x2d2a4; +}; +static_assert(sizeof(struct GDebug) == 0x2d2a8, "Data type is of wrong size"); + +// Static methods + +// win1.41 00511da0 mac 1002c710 GDebug::SetMessage(unsigned short, char *,...) +void __cdecl SetMessage__6GDebugFUsPce(struct GDebug* debug, uint16_t param_2, char* fmt, ... ); + +#endif /* BW1_DECOMP_DEBUG_INCLUDED_H */ diff --git a/black/DialogBoxBase.h b/black/DialogBoxBase.h new file mode 100644 index 0000000..bc2fa2d --- /dev/null +++ b/black/DialogBoxBase.h @@ -0,0 +1,68 @@ +#ifndef BW1_DECOMP_DIALOG_BOX_BASE_INCLUDED_H +#define BW1_DECOMP_DIALOG_BOX_BASE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct DialogBoxBase; +struct SetupBox; + +struct DialogBoxBaseVftable +{ + void (__fastcall* Init)(struct DialogBoxBase* this, const void* edx, uint32_t param_1, uint32_t param_2, void (__stdcall* param_3)(int param_1, struct SetupBox * param_2, struct SetupControl * param_3, int param_4, int param_5)); /* 0x0 */ + void (__fastcall* Destroy)(struct DialogBoxBase* this); + void (__fastcall* InitSubDialogs)(struct DialogBoxBase* this); + void (__fastcall* Show)(struct DialogBoxBase* this); + void (__fastcall* CloseNotification)(struct DialogBoxBase* this); /* 0x10 */ + bool (__fastcall* WantsKeyControl)(struct DialogBoxBase* this); + bool (__fastcall* WantsMouseControl)(struct DialogBoxBase* this); + bool (__fastcall* CanESCOut)(struct DialogBoxBase* this); + void (__fastcall* InitControls)(struct DialogBoxBase* this); /* 0x20 */ +}; +static_assert(sizeof(struct DialogBoxBaseVftable) == 0x24, "Data type is of wrong size"); + +struct DialogBoxBase +{ + struct DialogBoxBaseVftable* vftable; /* 0x0 */ + struct SetupBox* setup_box; + uint8_t field_0x8; + uint8_t field_0x9; + uint8_t field_0xa; + uint8_t field_0xb; + struct DialogBoxBase* next; +}; +static_assert(sizeof(struct DialogBoxBase) == 0x10, "Data type is of wrong size"); + +// Static methods + +// win1.41 005136e0 mac 102b1ff0 DialogBoxBase::HideAll(void) +void __stdcall HideAll__13DialogBoxBaseFv(void); + +// Constructors + +// win1.41 005133a0 mac 102b2750 DialogBoxBase::DialogBoxBase(void) +struct DialogBoxBase* __fastcall __ct__13DialogBoxBaseFv(struct DialogBoxBase* this); + +// Override methods + +// win1.41 00513400 mac 102b24c0 DialogBoxBase::Init(unsigned long, unsigned long, void (*)(int, SetupBox *, SetupControl *, int, int)) +void __fastcall Init__13DialogBoxBaseFUlUlPFiP8SetupBoxP12SetupControlii_v(struct DialogBoxBase* this, const void* edx, uint32_t param_1, uint32_t param_2, void (__stdcall* param_3)(int param_1, struct SetupBox * param_2, struct SetupControl * param_3, int param_4, int param_5)); +// win1.41 00513590 mac 102b23a0 DialogBoxBase::Destroy(void) +void __fastcall Destroy__13DialogBoxBaseFv(struct DialogBoxBase* this); +// win1.41 005127d0 mac 100fd590 DialogBoxBase::InitSubDialogs(void) +void __fastcall InitSubDialogs__13DialogBoxBaseFv(struct DialogBoxBase* this); +// win1.41 005135f0 mac 102b22e0 DialogBoxBase::Show(void) +void __fastcall Show__13DialogBoxBaseFv(struct DialogBoxBase* this); +// win1.41 005127e0 mac 100fd5d0 DialogBoxBase::CloseNotification(void) +bool __fastcall CloseNotification__13DialogBoxBaseFv(struct DialogBoxBase* this); +// win1.41 005127f0 mac 10504080 DialogBoxBase::WantsKeyControl(void) +bool __fastcall WantsKeyControl__13DialogBoxBaseFv(struct DialogBoxBase* this); +// win1.41 00512800 mac 100fd610 DialogBoxBase::WantsMouseControl(void) +bool __fastcall WantsMouseControl__13DialogBoxBaseFv(struct DialogBoxBase* this); +// win1.41 00512810 mac 103c4090 DialogBoxBase::CanESCOut(void) +void __fastcall CanESCOut__13DialogBoxBaseFv(struct DialogBoxBase* this); + +#endif /* BW1_DECOMP_DIALOG_BOX_BASE_INCLUDED_H */ diff --git a/black/DialogBoxImmersion.h b/black/DialogBoxImmersion.h new file mode 100644 index 0000000..e118d3a --- /dev/null +++ b/black/DialogBoxImmersion.h @@ -0,0 +1,36 @@ +#ifndef BW1_DECOMP_DIALOG_BOX_IMMERSION_INCLUDED_H +#define BW1_DECOMP_DIALOG_BOX_IMMERSION_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +// Forward Declares + +struct SetupBigButton; +struct SetupButton; +struct SetupStaticText; + +struct DialogBoxImmersion +{ + struct DialogBoxBase super; /* 0x0 */ + struct SetupStaticText* field_0x10; + struct SetupStaticText* field_0x14; + struct SetupBigButton* field_0x18; + struct SetupBigButton* field_0x1c; + struct SetupButton* field_0x20; + struct SetupBigButton* field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; +}; +static_assert(sizeof(struct DialogBoxImmersion) == 0x30, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__18DialogBoxImmersion = (struct DialogBoxBaseVftable*)0x008d8644; + +// Constructors + +// win1.41 005149d0 mac inlined DialogBoxImmersion::DialogBoxImmersion(void) +struct DialogBoxImmersion* __fastcall __ct__18DialogBoxImmersion(struct DialogBoxImmersion* this); + +#endif /* BW1_DECOMP_DIALOG_BOX_IMMERSION_INCLUDED_H */ diff --git a/black/DialogBoxKeyBinding.h b/black/DialogBoxKeyBinding.h new file mode 100644 index 0000000..ca41d13 --- /dev/null +++ b/black/DialogBoxKeyBinding.h @@ -0,0 +1,40 @@ +#ifndef BW1_DECOMP_DIALOG_BOX_KEY_BINDING_INCLUDED_H +#define BW1_DECOMP_DIALOG_BOX_KEY_BINDING_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +// Forward Declares + +struct SetupList; + +struct DialogBoxKeyBinding +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10; + uint8_t field_0x11; + uint8_t field_0x12; + uint8_t field_0x13; + uint8_t field_0x14; + uint8_t field_0x15; + uint8_t field_0x16; + uint8_t field_0x17; + struct SetupList* list; +}; +static_assert(sizeof(struct DialogBoxKeyBinding) == 0x1c, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__19DialogBoxKeyBinding = (struct DialogBoxBaseVftable*)0x008d85a0; + +// Constructors + +// win1.41 005127b0 mac 102b1e90 DialogBoxKeyBinding::DialogBoxKeyBinding(void) +struct DialogBoxKeyBinding* __fastcall __ct__19DialogBoxKeyBindingFv(struct DialogBoxKeyBinding* this); + +// Override methods + +// win1.41 00512bd0 mac 102b1750 DialogBoxKeyBinding::InitControls(void) +void __fastcall InitControls__19DialogBoxKeyBindingFv(struct DialogBoxKeyBinding* this); + +#endif /* BW1_DECOMP_DIALOG_BOX_KEY_BINDING_INCLUDED_H */ diff --git a/black/DialogBoxOptions.h b/black/DialogBoxOptions.h new file mode 100644 index 0000000..9f80261 --- /dev/null +++ b/black/DialogBoxOptions.h @@ -0,0 +1,53 @@ +#ifndef BW1_DECOMP_DIALOG_BOX_OPTIONS_INCLUDED_H +#define BW1_DECOMP_DIALOG_BOX_OPTIONS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +// Forward Declares + +struct DialogBoxImmersion; +struct MiniDialogBoxOptions; +struct SetupBigButton; +struct SetupButton; +struct SetupCheckBox; +struct SetupSlider; + +struct DialogBoxOptions +{ + struct DialogBoxBase super; /* 0x0 */ + struct SetupButton* field_0x10; + struct SetupBigButton* field_0x14; + struct SetupBigButton* field_0x18; + struct SetupButton* field_0x1c; + struct SetupBigButton* field_0x20; + struct SetupBigButton* field_0x24; + struct SetupBigButton* field_0x28; + struct SetupBigButton* field_0x2c; + struct SetupBigButton* field_0x30; + struct SetupCheckBox* field_0x34; + struct SetupCheckBox* field_0x38; + struct SetupCheckBox* field_0x3c; + struct SetupSlider* field_0x40; + struct SetupBigButton* field_0x44; + int field_0x48; + int field_0x4c; + int field_0x50; + uint32_t* field_0x54; + uint32_t field_0x58; + uint32_t field_0x5c; + struct MiniDialogBoxOptions* mini; /* 0x60 */ + struct DialogBoxImmersion* immersion; +}; +static_assert(sizeof(struct DialogBoxOptions) == 0x68, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__16DialogBoxOptions = (struct DialogBoxBaseVftable*)0x008d861c; + +// Constructors + +// win1.41 00513810 mac 102b5740 DialogBoxOptions::DialogBoxOptions(void) +struct DialogBoxOptions* __fastcall __ct__16DialogBoxOptionsFv(struct DialogBoxOptions* this); + +#endif /* BW1_DECOMP_DIALOG_BOX_OPTIONS_INCLUDED_H */ diff --git a/black/DialogBoxSaveMessage.h b/black/DialogBoxSaveMessage.h new file mode 100644 index 0000000..562e9b9 --- /dev/null +++ b/black/DialogBoxSaveMessage.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_DIALOG_BOX_SAVE_MESSAGE_INCLUDED_H +#define BW1_DECOMP_DIALOG_BOX_SAVE_MESSAGE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct DialogBoxSaveMessage +{ + struct DialogBoxBase super; /* 0x0 */ + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; +}; +static_assert(sizeof(struct DialogBoxSaveMessage) == 0x24, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__20DialogBoxSaveMessage = (struct DialogBoxBaseVftable*)0x008d8698; + +// Constructors + +// win1.41 00515990 mac 102b6020 DialogBoxSaveMessage::DialogBoxSaveMessage(void) +struct DialogBoxSaveMessage* __fastcall __ct__20DialogBoxSaveMessageFv(struct DialogBoxSaveMessage* this); + +#endif /* BW1_DECOMP_DIALOG_BOX_SAVE_MESSAGE_INCLUDED_H */ diff --git a/black/DrawingObject.h b/black/DrawingObject.h new file mode 100644 index 0000000..1c8528b --- /dev/null +++ b/black/DrawingObject.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_DRAWING_OBJECT_INCLUDED_H +#define BW1_DECOMP_DRAWING_OBJECT_INCLUDED_H + +#include /* For static_assert */ + +// Forward Declares + +struct DrawingObject; + +struct DrawingObjectVftable +{ + void (__fastcall* DummyThereIsNoDrawingObjectVftableItsPureVirtualButCRequiresAValue)(struct DrawingObject* this); /* 0x0 */ +}; +static_assert(sizeof(struct DrawingObjectVftable) == 0x4, "Data type is of wrong size"); + +struct DrawingObject +{ + struct DrawingObjectVftable* vftable; /* 0x0 */ +}; +static_assert(sizeof(struct DrawingObject) == 0x4, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_DRAWING_OBJECT_INCLUDED_H */ diff --git a/black/EarthQuake.h b/black/EarthQuake.h new file mode 100644 index 0000000..eab72d3 --- /dev/null +++ b/black/EarthQuake.h @@ -0,0 +1,17 @@ +#ifndef BW1_DECOMP_EARTH_QUAKE_INCLUDED_H +#define BW1_DECOMP_EARTH_QUAKE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +struct EarthQuake +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct EarthQuake) == 0x1, "Data type is of wrong size"); + +DECLARE_LH_LIST_HEAD(EarthQuake); + +#endif /* BW1_DECOMP_EARTH_QUAKE_INCLUDED_H */ diff --git a/black/EditorIconBase.h b/black/EditorIconBase.h new file mode 100644 index 0000000..c9d9d8d --- /dev/null +++ b/black/EditorIconBase.h @@ -0,0 +1,12 @@ +#ifndef BW1_DECOMP_EDITOR_ICON_BASE_INCLUDED_H +#define BW1_DECOMP_EDITOR_ICON_BASE_INCLUDED_H + +// Forward Declares + +struct LH3DColor; +struct LHRegion; + +// win1.41 00520fe0 mac 102b7380 EditorIconBase::DrawOutlineBox +void __cdecl DrawOutlineBox__14EditorIconBaseFP8LHRegionP9LH3DColor(struct LHRegion* param_1, struct LH3DColor* param_2); + +#endif /* BW1_DECOMP_EDITOR_ICON_BASE_INCLUDED_H */ diff --git a/black/EffectInfo.h b/black/EffectInfo.h new file mode 100644 index 0000000..bc2008d --- /dev/null +++ b/black/EffectInfo.h @@ -0,0 +1,31 @@ +#ifndef BW1_DECOMP_EFFECT_INFO_INCLUDED_H +#define BW1_DECOMP_EFFECT_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +struct GEffectInfo +{ + struct GBaseInfo super; /* 0x0 */ + float field_0x10; + float field_0x14; + float field_0x18; + float field_0x1c; + uint32_t field_0x20; + float field_0x24; + uint32_t field_0x28; + float field_0x2c; + uint32_t field_0x30; +}; +static_assert(sizeof(struct GEffectInfo) == 0x34, "Data type is of wrong size"); + +static struct BaseInfoVftable* __vt__11GEffectInfo = (struct BaseInfoVftable*)0x008d8b48; + +// Constructors + +// win1.41 00524d40 mac 100cc740 GEffectInfo::GEffectInfo(void) +struct GEffectInfo* __fastcall __ct__11GEffectInfoFv(struct GEffectInfo* this); + +#endif /* BW1_DECOMP_EFFECT_INFO_INCLUDED_H */ diff --git a/black/EffectValues.h b/black/EffectValues.h new file mode 100644 index 0000000..e811328 --- /dev/null +++ b/black/EffectValues.h @@ -0,0 +1,42 @@ +#ifndef BW1_DECOMP_EFFECT_VALUES_INCLUDED_H +#define BW1_DECOMP_EFFECT_VALUES_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For EFFECT_TYPE_LAST, enum EFFECT_TYPE */ + +#include "Base.h" /* For struct Base */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct GPlayer; +struct GameThing; + +struct EffectNumbers +{ + float values[EFFECT_TYPE_LAST]; /* 0x0 */ +}; +static_assert(sizeof(struct EffectNumbers) == 0x1c, "Data type is of wrong size"); + +struct EffectValues +{ + struct Base super; /* 0x0 */ + struct EffectNumbers numbers; + float field_0x24; + struct GameThing* applied_by; + struct MapCoords coords; + uint32_t field_0x38; + struct GPlayer* player; +}; +static_assert(sizeof(struct EffectValues) == 0x40, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__12EffectValues = (struct GBaseInfoVftable*)0x008d8ba8; + +// Static methods + +// win1.41 00525040 mac 100cc350 EffectValues::EffectValues(EFFECT_TYPE, float, GameThing *, float, GPlayer *) +struct EffectValues* __fastcall __ct__12EffectValuesF11EFFECT_TYPEfP9GameThingfP7GPlayer(struct EffectValues* this, enum EFFECT_TYPE type, float value, struct GameThing* source, float param_4, struct GPlayer* player); + +#endif /* BW1_DECOMP_EFFECT_VALUES_INCLUDED_H */ diff --git a/black/EndGameBox.h b/black/EndGameBox.h new file mode 100644 index 0000000..0cbe075 --- /dev/null +++ b/black/EndGameBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_END_GAME_BOX_INCLUDED_H +#define BW1_DECOMP_END_GAME_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct EndGameBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0xac]; +}; +static_assert(sizeof(struct EndGameBox) == 0xbc, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__10EndGameBox = (struct DialogBoxBaseVftable*)0x008de9ec; + +#endif /* BW1_DECOMP_END_GAME_BOX_INCLUDED_H */ diff --git a/black/Feature.h b/black/Feature.h new file mode 100644 index 0000000..8135eb7 --- /dev/null +++ b/black/Feature.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_FEATURE_INCLUDED_H +#define BW1_DECOMP_FEATURE_INCLUDED_H + +#include /* For static_assert */ + +#include "MultiMapFixed.h" /* For struct MultiMapFixed */ + +struct Feature +{ + struct MultiMapFixed super; /* 0x0 */ +}; +static_assert(sizeof(struct Feature) == 0x7c, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__7Feature = (struct MultiMapFixedVftable*)0x008c2320; + +#endif /* BW1_DECOMP_FEATURE_INCLUDED_H */ diff --git a/black/FelledTree.h b/black/FelledTree.h new file mode 100644 index 0000000..ec0bfd0 --- /dev/null +++ b/black/FelledTree.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_FELLED_TREE_INCLUDED_H +#define BW1_DECOMP_FELLED_TREE_INCLUDED_H + +#include /* For static_assert */ + +#include "DeadTree.h" /* For struct DeadTree */ + +struct FelledTree +{ + struct DeadTree super; /* 0x0 */ +}; +static_assert(sizeof(struct FelledTree) == 0xa0, "Data type is of wrong size"); + +static struct RockVftable* __vt__10FelledTree = (struct RockVftable*)0x008d697c; + +#endif /* BW1_DECOMP_FELLED_TREE_INCLUDED_H */ diff --git a/black/Field.h b/black/Field.h new file mode 100644 index 0000000..a84f5ba --- /dev/null +++ b/black/Field.h @@ -0,0 +1,64 @@ +#ifndef BW1_DECOMP_FIELD_INCLUDED_H +#define BW1_DECOMP_FIELD_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Abode.h" /* For struct Abode */ + +// Forward Declares + +struct GAbodeInfo; +struct GFieldTypeInfo; +struct MapCoords; +struct Town; + +struct Field +{ + struct Abode super; /* 0x0 */ + struct Field* next; /* 0xc4 */ + uint32_t field_0xc8; + uint8_t field_0xcc; + uint32_t field_0xd0; + uint32_t field_0xd4; + uint32_t field_0xd8; + uint32_t field_0xdc; + uint32_t field_0xe0; + float field_0xe4; + float field_0xe8; + float field_0xec; + uint32_t field_0xf0; + uint32_t field_0xf4; + uint32_t field_0xf8; + uint32_t field_0xfc; + uint32_t field_0x100; + float field_0x104; + uint32_t field_0x108; + uint32_t field_0x10c; + uint32_t field_0x110; + uint32_t field_0x114; + struct Town* town; + int field_0x11c; + struct GFieldTypeInfo* type_info; /* 0x120 */ +}; +static_assert(sizeof(struct Field) == 0x124, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__5Field = (struct MultiMapFixedVftable*)0x008d9b7c; + +// Static methods + +// win1.41 00528280 mac 100d5130 Field::Create(MapCoords const &, GFieldTypeInfo const *, Town *, float, float, int) +struct Field* __cdecl Create__5FieldFRC9MapCoordsPC14GFieldTypeInfoP4Townffi(struct MapCoords* coords, struct GFieldTypeInfo* type_info, struct Town* town, float param_4, float param_5, int param_6); + +// Constructors + +// win1.41 00527dd0 mac 100d5910 Field::Field(MapCoords const &, GFieldTypeInfo const *, GAbodeInfo const *, Town *, float, float, int) +struct Field* __fastcall __ct__5FieldFRC9MapCoordsPC14GFieldTypeInfoPC10GAbodeInfoP4Townffi(struct Field* this, const void* edx, struct MapCoords* coords, struct GFieldTypeInfo* type_info, struct GAbodeInfo* abode_info, struct Town* town, float param_5, float param_6, int param_7); + +DECLARE_LH_LINKED_LIST(Field); +DECLARE_LH_LIST_HEAD(Field); + +#endif /* BW1_DECOMP_FIELD_INCLUDED_H */ diff --git a/black/FieldTypeInfo.h b/black/FieldTypeInfo.h new file mode 100644 index 0000000..5b16ecb --- /dev/null +++ b/black/FieldTypeInfo.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_FIELD_TYPE_INFO_INCLUDED_H +#define BW1_DECOMP_FIELD_TYPE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "MultiMapFixedInfo.h" /* For struct GMultiMapFixedInfo */ + +struct GFieldTypeInfo +{ + struct GMultiMapFixedInfo super; /* 0x0 */ + uint8_t field_0x20[0x34]; /* 0x120 */ +}; +static_assert(sizeof(struct GFieldTypeInfo) == 0x154, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__14GFieldTypeInfo = (struct MultiMapFixedVftable*)0x008d9b30; + +// win1.41 00527cf0 mac inlined __sinit_GFieldTypeInfo_cpp +void __cdecl __sinit_GFieldTypeInfo_cpp(void); + +#endif /* BW1_DECOMP_FIELD_TYPE_INFO_INCLUDED_H */ diff --git a/black/FireEffect.h b/black/FireEffect.h new file mode 100644 index 0000000..eb17f32 --- /dev/null +++ b/black/FireEffect.h @@ -0,0 +1,51 @@ +#ifndef BW1_DECOMP_FIRE_EFFECT_INCLUDED_H +#define BW1_DECOMP_FIRE_EFFECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct FireGraphic; +struct GPlayer; +struct Object; + +struct FireEffect +{ + struct GameThing super; /* 0x0 */ + float temperature; /* 0x14 */ + float temperature2; + struct Object* source; + struct GPlayer* player; /* 0x20 */ + struct GameThing* thing; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + uint8_t field_0x38; + struct FireEffect* next; + uint8_t field_0x40[0x8]; + uint32_t field_0x48; + uint32_t field_0x4c; +}; +static_assert(sizeof(struct FireEffect) == 0x50, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__10FireEffect = (struct GameThingVftable*)0x009996d4; + +// Constructors + +// win1.41 0072ea80 mac 10150740 FireEffect::FireEffect(void) +struct FireEffect* __fastcall __ct__10FireEffectFv(struct FireEffect* this); + +// Non-virtual methods + +// win1.41 00730ad0 mac 1014c5c0 FireEffect::CreateSprites(void) +struct FireGraphic* __fastcall CreateSprites__10FireEffectFv(struct FireEffect* this); + +DECLARE_LH_LIST_HEAD(FireEffect); + +#endif /* BW1_DECOMP_FIRE_EFFECT_INCLUDED_H */ diff --git a/black/FireFly.h b/black/FireFly.h new file mode 100644 index 0000000..326843e --- /dev/null +++ b/black/FireFly.h @@ -0,0 +1,58 @@ +#ifndef BW1_DECOMP_FIRE_FLY_INCLUDED_H +#define BW1_DECOMP_FIRE_FLY_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "MapCoords.h" /* For struct MapCoords */ +#include "Object.h" /* For struct Object */ + +// Forward Declares + +struct LH3DSprite; + +struct FireFly +{ + struct Object super; /* 0x0 */ + uint32_t field_0x54; + struct LH3DSprite* sprite; + uint32_t field_0x5c; + struct MapCoords field_0x60; + struct MapCoords field_0x6c; + struct MapCoords field_0x78; + uint8_t field_0x84[0xc]; + uint32_t field_0x90; + uint32_t field_0x94; + uint32_t field_0x98; + float field_0x9c; + float field_0xa0; + float field_0xa4; + float field_0xa8; + float field_0xac; + float field_0xb0; + float field_0xb4; + float field_0xb8; + float field_0xbc; + uint8_t field_0xc0; +}; +static_assert(sizeof(struct FireFly) == 0xc4, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__7FireFly = (struct ObjectVftable*)0x008da4f8; + +// Static methods + +// win1.41 0052a200 mac 100d9f20 FireFly::Create(MapCoords const &) +struct FireFly* __cdecl Create__7FireFlyFRC9MapCoords(struct MapCoords* coord); + +// Constructors + +// win1.41 0052a280 mac 100d9e20 FireFly::FireFly(const MapCoords&) +struct FireFly* __fastcall __ct__7FireFlyFRC9MapCoords(struct FireFly* this, const void* edx, struct MapCoords* coords); +// win1.41 0052a340 mac 100d9e04 FireFly::FireFly(void) +struct FireFly* __fastcall __ct__7FireFlyFv(struct FireFly* this); + +DECLARE_LH_LIST_HEAD(FireFly); + +#endif /* BW1_DECOMP_FIRE_FLY_INCLUDED_H */ diff --git a/black/FishFarm.h b/black/FishFarm.h new file mode 100644 index 0000000..92ebefe --- /dev/null +++ b/black/FishFarm.h @@ -0,0 +1,41 @@ +#ifndef BW1_DECOMP_FISH_FARM_INCLUDED_H +#define BW1_DECOMP_FISH_FARM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "MultiMapFixed.h" /* For struct MultiMapFixed */ +#include "Villager.h" /* For struct Villager */ + +// Forward Declares + +struct GFishFarmInfo; +struct MapCoords; +struct Town; + +struct FishFarm +{ + struct MultiMapFixed super; /* 0x0 */ + struct FishFarm* next; /* 0x7c */ + struct LHLinkedList__Villager villagers; /* 0x80 */ + uint32_t field_0x88; + struct Town* town; + float field_0x90; + float field_0x94; +}; +static_assert(sizeof(struct FishFarm) == 0x98, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__8FishFarm = (struct MultiMapFixedVftable*)0x008dadc0; + +// Constructors + +// win1.41 0052c360 mac 100dd070 FishFarm::FishFarm(MapCoords const &, GFishFarmInfo const *, Town *) +struct FishFarm* __fastcall __ct__8FishFarmFRC9MapCoordsPC13GFishFarmInfoP4Town(struct FishFarm* this, const void* edx, struct MapCoords* coords, struct GFishFarmInfo* info, struct Town* town); + +DECLARE_LH_LINKED_LIST(FishFarm); +DECLARE_LH_LIST_HEAD(FishFarm); + +#endif /* BW1_DECOMP_FISH_FARM_INCLUDED_H */ diff --git a/black/Fixed.h b/black/Fixed.h new file mode 100644 index 0000000..b0b55e6 --- /dev/null +++ b/black/Fixed.h @@ -0,0 +1,93 @@ +#ifndef BW1_DECOMP_FIXED_INCLUDED_H +#define BW1_DECOMP_FIXED_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include "Object.h" /* For struct Object, struct ObjectVftable */ + +// Forward Declares + +struct FixedObject; +struct GObjectInfo; +struct GameOSFile; +struct GameThing; +struct GameThingVftable; +struct GameThingWithPosVftable; +struct MapCell; +struct MapCoords; +struct NewCollide; +struct SingleMapFixed; + +struct FixedObjectVftable +{ + struct ObjectVftable super; /* 0x0 */ + void (__fastcall* InsertMapObjectToCellAssumeFixed)(struct FixedObject* this, const void* edx, struct MapCell* cell); /* 0x85c */ + bool (__fastcall* IsObjectFullyInMap)(struct FixedObject* this); /* 0x860 */ +}; +static_assert(sizeof(struct FixedObjectVftable) == 0x864, "Data type is of wrong size"); + +union FixedObjectBase +{ + struct Object super; + struct ObjectVftable* object_vftable; + struct FixedObjectVftable* fixed_vftable; + struct GameThingVftable* gameThing_vftable; + struct GameThingWithPosVftable* gameThingWithPos_vftable; +}; +static_assert(sizeof(union FixedObjectBase) == 0x54, "Data type is of wrong size"); + +struct FixedObject +{ + union FixedObjectBase base; /* 0x0 */ + struct GameThing* field_0x54; +}; +static_assert(sizeof(struct FixedObject) == 0x58, "Data type is of wrong size"); + +static struct FixedObjectVftable* __vt__11FixedObject = (struct FixedObjectVftable*)0x008db71c; + +// Constructors + +// win1.41 0052dd80 mac inlined FixedObject::FixedObject(void) +struct FixedObject* __fastcall __ct__11FixedObjectFv(struct FixedObject* this); +// win1.41 0052ddc0 mac 100e1fb0 FixedObject::FixedObject(MapCoords const &, GObjectInfo const *, float, float) +struct FixedObject* __fastcall __ct__11FixedObjectFRC9MapCoordsPC11GObjectInfoff(struct FixedObject* this, const void* edx, const struct MapCoords* coords, const struct GObjectInfo* info, float y_angle, float scale); + +// Override methods + +// win1.41 0052e170 mac inlined FixedObject::Load(GameOSFile &) +uint32_t __fastcall Load__11FixedObjectFR10GameOSFile(struct FixedObject* this, const void* edx, struct GameOSFile* file); +// win1.41 0052de30 mac 100e1ea0 FixedObject::Create3DObject(void) +void __fastcall Create3DObject__11FixedObjectFv(struct FixedObject* this); +// win1.41 0052dea0 mac 100e1d30 FixedObject::InsertMapObjectToCell(MapCell *) +void __fastcall InsertMapObjectToCell__11FixedObjectFP7MapCell(struct FixedObject* this, const void* edx, struct MapCell* cell); +// win1.41 0052dee0 mac 100e1c70 FixedObject::InsertMapObjectToCellAssumeFixed(MapCell *) +void __fastcall InsertMapObjectToCellAssumeFixed__11FixedObjectFP7MapCell(struct FixedObject* this, const void* edx, struct MapCell* cell); +// win1.41 004252f0 mac 100a9cd0 FixedObject::IsObjectFullyInMap(void) +bool __fastcall IsObjectFullyInMap__11FixedObjectFv(struct FixedObject* this); + +struct SingleMapFixedVftable +{ + struct FixedObjectVftable super; /* 0x0 */ + void (__fastcall* CreateCollideData)(struct SingleMapFixed* this); /* 0x864 */ +}; +static_assert(sizeof(struct SingleMapFixedVftable) == 0x868, "Data type is of wrong size"); + +struct SingleMapFixed +{ + struct FixedObject super; /* 0x0 */ + struct NewCollide* collide_data; /* 0x58 */ +}; +static_assert(sizeof(struct SingleMapFixed) == 0x5c, "Data type is of wrong size"); + +static struct SingleMapFixedVftable* __vt__14SingleMapFixed = (struct SingleMapFixedVftable*)0x008dc894; + +// Override methods + +// win1.41 0052eb30 mac 10095a30 SingleMapFixed::GetCollideData(void) +struct NewCollide* __fastcall GetCollideData__14SingleMapFixedFv(struct SingleMapFixed* this); +// win1.41 0052f510 mac 100dde20 SingleMapFixed::CreateCollideData(void) +void __fastcall CreateCollideData__14SingleMapFixedFv(struct SingleMapFixed* this); + +#endif /* BW1_DECOMP_FIXED_INCLUDED_H */ diff --git a/black/Flock.h b/black/Flock.h new file mode 100644 index 0000000..5d964a9 --- /dev/null +++ b/black/Flock.h @@ -0,0 +1,63 @@ +#ifndef BW1_DECOMP_FLOCK_INCLUDED_H +#define BW1_DECOMP_FLOCK_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint32_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "Container.h" /* For struct Container */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct CitadelHeart; +struct GFlockInfo; +struct GPlayer; +struct Living; +struct LivingDLList; + +struct Flock +{ + struct Container super; /* 0x0 */ + uint32_t field_0x30; + uint32_t field_0x34; + struct CitadelHeart* citadel_heart; + struct LivingDLList* members; + struct LivingDLList* leader; /* 0x40 */ + struct LivingDLList* field_0x44; + int field_0x48; + uint32_t field_0x4c; + uint16_t domain_radius; /* 0x50 */ + uint16_t field_0x52; + uint32_t field_0x54; + uint32_t field_0x58; + uint32_t field_0x5c; + struct MapCoords field_0x60; + struct MapCoords field_0x6c; + uint32_t field_0x78; + uint32_t field_0x7c; + uint32_t field_0x80; + uint32_t field_0x84; + uint32_t field_0x88; + uint32_t field_0x8c; +}; +static_assert(sizeof(struct Flock) == 0x90, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__5Flock = (struct GameThingWithPosVftable*)0x008dd108; + +// Constructors + +// win1.41 0052f780 mac 100e6ec0 Flock::Flock(MapCoords const &, GFlockInfo const *, GPlayer *, unsigned long) +struct Flock* __fastcall __ct__5FlockFRC9MapCoordsPC10GFlockInfoP7GPlayerUl(struct Flock* this, const void* edx, struct MapCoords* coords, struct GFlockInfo* info, struct GPlayer* player, uint32_t param_4); +// win1.41 100e6be0 mac 0052f950 Flock::Flock(Living*) +struct Flock* __fastcall __ct__5FlockFP6Living(struct Flock* this, const void* edx, struct Living* param_1); + +// Non-virtual methods + +// win1.41 00530570 mac 100684b0 Flock::GetFlockPos(void) +struct MapCoords* __fastcall GetFlockPos__5FlockFv(struct Flock* this); + +DECLARE_LH_LINKED_LIST(Flock); + +#endif /* BW1_DECOMP_FLOCK_INCLUDED_H */ diff --git a/black/Football.h b/black/Football.h new file mode 100644 index 0000000..2dbe283 --- /dev/null +++ b/black/Football.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_FOOTBALL_INCLUDED_H +#define BW1_DECOMP_FOOTBALL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Abode.h" /* For struct Abode */ + +struct Football +{ + struct Abode super; /* 0x0 */ + uint8_t field_0xc4[0x254]; +}; +static_assert(sizeof(struct Football) == 0x318, "Data type is of wrong size"); + +static struct AbodeVftable* __vt__8Football = (struct AbodeVftable*)0x008dd648; + +#endif /* BW1_DECOMP_FOOTBALL_INCLUDED_H */ diff --git a/black/Footpath.h b/black/Footpath.h new file mode 100644 index 0000000..58cc735 --- /dev/null +++ b/black/Footpath.h @@ -0,0 +1,68 @@ +#ifndef BW1_DECOMP_FOOTPATH_INCLUDED_H +#define BW1_DECOMP_FOOTPATH_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct GFootpathNode; +struct GameThingWithPos; +struct MapCoords; +struct MultiMapFixed; +struct Point2D; +struct RPHolder; +struct RPlan; + +struct GFootpath +{ + struct GameThing super; /* 0x0 */ + struct GFootpathNode* nodes; /* 0x14 */ + int node_count; + struct GFootpath* next; + uint32_t field_0x20; +}; +static_assert(sizeof(struct GFootpath) == 0x24, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__9GFootpath = (struct GameThingVftable*)0x008de0bc; + +// Static methods + +// win1.41 00535a80 mac inlined GFootpath::FUN_00535a80(Point2D *, MultiMapFixed *, float, float) +void __cdecl FUN_00535a80__9GFootpathFP7Point2DP13MultiMapFixedff(struct Point2D* param_1, struct MultiMapFixed* param_2, float point_x, float point_y); +// win1.41 00537290 mac 100ea6f0 GFootpath::SendFootpathsAroundObsticle(float, MapCoords const &) +void __cdecl SendFootpathsAroundObsticle__9GFootpathFfRC9MapCoords(float radius, struct MapCoords* coords); +// win1.41 00538340 mac 100e95b0 GFootpath::ConvertCreaturePlanToFootpath(RPHolder &, RPlan &, GFootpathNode *, GFootpathNode *, MapCoords const &) +void __cdecl ConvertCreaturePlanToFootpath__9GFootpathFR8RPHolderR5RPlanP13GFootpathNodeP13GFootpathNodeRC9MapCoords(struct RPHolder* holder, struct RPlan* plan, struct GFootpathNode* start, struct GFootpathNode* end, struct MapCoords* coord); +// win1.41 005387d0 mac 100e93a0 GFootpath::AttemptRerenderFootpathWithCreatureRP(GFootpathNode *, GFootpathNode *, MapCoords const &) +uint32_t __cdecl AttemptRerenderFootpathWithCreatureRP__9GFootpathFP13GFootpathNodeP13GFootpathNodeRC9MapCoords(struct GFootpathNode* start, struct GFootpathNode* end, struct MapCoords* coord); + +// Constructors + +// win1.41 00534dc0 mac 100eecb0 GFootpath::GFootpath(void) +struct GFootpath* __fastcall __ct__9GFootpathFv(struct GFootpath* this); +// win1.41 00534eb0 mac 100ee9b0 GFootpath::GFootpath(GameThingWithPos *, GameThingWithPos *) +struct GFootpath* __fastcall __ct__9GFootpathFP16GameThingWithPosP16GameThingWithPos(struct GFootpath* this, const void* edx, struct GameThingWithPos* param_2, struct GameThingWithPos* param_3); + +// Non-virtual methods + +// win1.41 00534fc0 mac 100ee4c0 GFootpath::AddPos(MapCoords const &) +void __fastcall AddPos__9GFootpathFRC9MapCoords(struct GFootpath* this, const void* edx, struct MapCoords* coords); +// win1.41 005351a0 mac 100ee290 GFootpath::GetNextNode(GFootpathNode *, int) +struct GFootpathNode* __fastcall GetNextNode__9GFootpathFP13GFootpathNodei(struct GFootpath* this, const void* edx, struct GFootpathNode* node, int backwards); +// win1.41 005351f0 mac 100ee190 GFootpath::GetNextPos(MapCoords const &, GFootpathNode *&, MapCoords &, int, float) +uint32_t __fastcall GetNextPos__9GFootpathFRC9MapCoordsRP13GFootpathNodeR9MapCoordsif(struct GFootpath* this, const void* edx, struct MapCoords* current_pos, struct GFootpathNode** next_node, struct MapCoords* next_pos, int backwards, float max_t); +// win1.41 00535270 mac 100ee0d0 GFootpath::GetNextPos(GFootpathNode *&, MapCoords &, int) +uint32_t __fastcall GetNextPos__9GFootpathFRP13GFootpathNodeR9MapCoordsi(struct GFootpath* this, const void* edx, struct GFootpathNode** next_node, struct MapCoords* next_pos, int backwards); +// win1.41 005352c0 mac 100edfa0 GFootpath::GetNearestPos(MapCoords const &, int) +struct GFootpathNode* __fastcall GetNearestPos__9GFootpathFRC9MapCoordsi(struct GFootpath* this, const void* edx, const struct MapCoords* coords, int param_3); + +DECLARE_LH_LINKED_LIST(GFootpath); +DECLARE_LH_LIST_HEAD(GFootpath); + +#endif /* BW1_DECOMP_FOOTPATH_INCLUDED_H */ diff --git a/black/FootpathFinder.h b/black/FootpathFinder.h new file mode 100644 index 0000000..2319b8e --- /dev/null +++ b/black/FootpathFinder.h @@ -0,0 +1,56 @@ +#ifndef BW1_DECOMP_FOOTPATH_FINDER_INCLUDED_H +#define BW1_DECOMP_FOOTPATH_FINDER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For struct RPHolder */ +#include /* For struct RPlan */ +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct GFootpath; +struct GFootpathNode; +struct GameOSFile; +struct GameThingWithPos; + +struct GFootpathFinder +{ + struct GameThing super; /* 0x0 */ + struct RPHolder holder; /* 0x14 */ + struct RPlan plan; /* 0x64040 */ + struct GameThingWithPos* gamethingwithpos_start; /* 0x640b4 */ + struct GameThingWithPos* gamethingwithpos_dest; + struct GFootpath* footpath_0x7c; + struct GFootpathNode* start_node; /* 0x640c0 */ + struct GFootpathNode* dest_node; +}; +static_assert(sizeof(struct GFootpathFinder) == 0x640c8, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__15GFootpathFinder = (struct GameThingVftable*)0x008de2e0; + +// Constructors + +// win1.41 inlined mac inlined GFootpathFinder::GFootpathFinder(void) +struct GFootpathFinder* __fastcall __ct__15GFootpathFinderFv(struct GFootpathFinder* this); + +// Non-virtual methods + +// win1.41 00539040 mac 100e7dc0 GFootpathFinder::GameTurnProcess(void) +void __fastcall GameTurnProcess__15GFootpathFinderFv(struct GFootpathFinder* this); +// win1.41 00539240 mac 100e7760 GFootpathFinder::Done(void) +void __fastcall Done__15GFootpathFinderFv(struct GFootpathFinder* this); +// win1.41 005392f0 mac 100e7150 GFootpathFinder::Init(void) +void __fastcall Init__15GFootpathFinderFv(struct GFootpathFinder* this); + +// Override methods + +// win1.41 005390e0 mac 100e7ce0 GFootpathFinder::Load(GameOSFile &) +uint32_t __fastcall Load__15GFootpathFinderFR10GameOSFile(struct GFootpathFinder* this, const void* edx, struct GameOSFile* file); + +DECLARE_LH_LINKED_LIST(GFootpathFinder); + +#endif /* BW1_DECOMP_FOOTPATH_FINDER_INCLUDED_H */ diff --git a/black/FootpathLink.h b/black/FootpathLink.h new file mode 100644 index 0000000..4ba0660 --- /dev/null +++ b/black/FootpathLink.h @@ -0,0 +1,46 @@ +#ifndef BW1_DECOMP_FOOTPATH_LINK_INCLUDED_H +#define BW1_DECOMP_FOOTPATH_LINK_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Footpath.h" /* For struct GFootpath */ +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct GFootpathNode; +struct GameOSFile; +struct GameThingWithPos; +struct Living; +struct MapCoords; + +struct GFootpathLink +{ + struct GameThing super; /* 0x0 */ + struct LHLinkedList__GFootpath footpath_list; /* 0x14 */ +}; +static_assert(sizeof(struct GFootpathLink) == 0x1c, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__13GFootpathLink = (struct GameThingVftable*)0x008d3e88; + +// Constructors + +// win1.41 inlined mac inlined GFootpathLink::GFootpathLink(void) +struct GFootpathLink* __fastcall __ct__13GFootpathLinkFv(struct GFootpathLink* this); + +// Non-virtual methods + +// win1.41 00536110 mac 100ec590 GFootpathLink::GetNearestPathTo(MapCoords const &, MapCoords const &, float, int &, GFootpathNode **) +struct GFootpath* __fastcall GetNearestPathTo__13GFootpathLinkFRC9MapCoordsRC9MapCoordsfRiPP13GFootpathNode(struct GFootpathLink* this, const void* edx, const struct MapCoords* param_1, const struct MapCoords* param_2, float param_3, int* param_4, struct GFootpathNode** param_5); +// win1.41 005361f0 mac 100ec3e0 GFootpathLink::GetNearestPathToQuick(MapCoords const &, MapCoords const &, float, int &, GFootpathNode **) +struct GFootpath* __fastcall GetNearestPathToQuick__13GFootpathLinkFRC9MapCoordsRC9MapCoordsfRiPP13GFootpathNode(struct GFootpathLink* this, const void* edx, const struct MapCoords* param_1, const struct MapCoords* param_2, float param_3, int* param_4, struct GFootpathNode** param_5); +// win1.41 005362e0 mac 100ebe90 GFootpathLink::UseFootpathIfNecessary(Living *, MapCoords const &, unsigned char, GameThingWithPos *) +uint32_t __fastcall UseFootpathIfNecessary__13GFootpathLinkFP6LivingRC9MapCoordsUcP16GameThingWithPos(struct GFootpathLink* this, const void* edx, struct Living* living, const struct MapCoords* coord, uint32_t param_4, struct GameThingWithPos* game_thing_with_pos); + +// Override methods + +// win1.41 005365a0 mac 100eb8e0 GFootpathLink::Load(GameOSFile &) +uint32_t __fastcall Load__13GFootpathLinkFR10GameOSFile(struct GFootpathLink* this, const void* edx, struct GameOSFile* file); + +#endif /* BW1_DECOMP_FOOTPATH_LINK_INCLUDED_H */ diff --git a/black/FootpathLinkSave.h b/black/FootpathLinkSave.h new file mode 100644 index 0000000..f95f289 --- /dev/null +++ b/black/FootpathLinkSave.h @@ -0,0 +1,40 @@ +#ifndef BW1_DECOMP_FOOTPATH_LINK_SAVE_INCLUDED_H +#define BW1_DECOMP_FOOTPATH_LINK_SAVE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "GameThing.h" /* For struct GameThing */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct GFootpathLink; +struct GameOSFile; + +struct GFootpathLinkSave +{ + struct GameThing super; /* 0x0 */ + struct GFootpathLink* link; /* 0x14 */ + struct MapCoords coords; +}; +static_assert(sizeof(struct GFootpathLinkSave) == 0x24, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__17GFootpathLinkSave = (struct GameThingVftable*)0x008de1c4; + +// Constructors + +// win1.41 inlined mac inlined GFootpathLinkSave::GFootpathLinkSave(void) +struct GFootpathLinkSave* __fastcall __ct__17GFootpathLinkSaveFv(struct GFootpathLinkSave* this); + +// Non-virtual methods + +// win1.41 00536fa0 mac inlined GFootpathLinkSave::FUN_00536fa0(void) +void __fastcall FUN_00536fa0__17GFootpathLinkSaveFv(struct GFootpathLinkSave* this); + +// Override methods + +// win1.41 005370a0 mac 100eb5c0 GFootpathLinkSave::Load(GameOSFile &) +uint32_t __fastcall Load__17GFootpathLinkSaveFR10GameOSFile(struct GFootpathLinkSave* this, const void* edx, struct GameOSFile* file); + +#endif /* BW1_DECOMP_FOOTPATH_LINK_SAVE_INCLUDED_H */ diff --git a/black/FootpathNode.h b/black/FootpathNode.h new file mode 100644 index 0000000..5b260ae --- /dev/null +++ b/black/FootpathNode.h @@ -0,0 +1,37 @@ +#ifndef BW1_DECOMP_FOOTPATH_NODE_INCLUDED_H +#define BW1_DECOMP_FOOTPATH_NODE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "GameThing.h" /* For struct GameThing */ +#include "Living.h" /* For struct Living */ +#include "MapCoords.h" /* For struct MapCoords */ + +struct GFootpathNode +{ + struct GameThing super; /* 0x0 */ + uint8_t field_0x14; + struct MapCoords coords; + struct GFootpathNode* next; /* 0x24 */ + struct LHLinkedList__Living followers; +}; +static_assert(sizeof(struct GFootpathNode) == 0x30, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__13GFootpathNode = (struct GameThingVftable*)0x008ddfbc; + +// Constructors + +// win1.41 inlined mac inlined GFootpathNode::GFootpathNode(void) +struct GFootpathNode* __fastcall __ct__13GFootpathNodeFv(struct GFootpathNode* this); +// win1.41 00534cf0 mac 100eed50 GFootpathNode::GFootpathNode(MapCoords const &, int, int) +struct GFootpathNode* __fastcall __ct__13GFootpathNodeFRC9MapCoordsii(struct GFootpathNode* this, const void* edx, struct MapCoords* coords, int param_2, int param_3); + +// Non-virtual methods + +// win1.41 005389d0 mac 100e90a0 GFootpathNode::PurgeFollowerList(void) +void __fastcall PurgeFollowerList__13GFootpathNodeFv(struct GFootpathNode* this); +// win1.41 00538b10 mac 100e8d10 GFootpathNode::ClearFromPreviousNode(void) +void __fastcall ClearFromPreviousNode__13GFootpathNodeFv(struct GFootpathNode* this); + +#endif /* BW1_DECOMP_FOOTPATH_NODE_INCLUDED_H */ diff --git a/black/Forest.h b/black/Forest.h new file mode 100644 index 0000000..956eaf0 --- /dev/null +++ b/black/Forest.h @@ -0,0 +1,63 @@ +#ifndef BW1_DECOMP_FOREST_INCLUDED_H +#define BW1_DECOMP_FOREST_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Container.h" /* For struct Container, struct ContainerVftable */ +#include "Tree.h" /* For struct Tree */ + +// Forward Declares + +struct GameOSFile; +struct MapCoords; + +struct ForestVftable +{ + struct ContainerVftable super; /* 0x0 */ +}; +static_assert(sizeof(struct ForestVftable) == 0x500, "Data type is of wrong size"); + +union ForestBase +{ + struct Container super; + struct ForestVftable* vftable; +}; +static_assert(sizeof(union ForestBase) == 0x30, "Data type is of wrong size"); + +struct Forest +{ + union ForestBase base; /* 0x0 */ + uint8_t field_0x30[0x10]; + uint32_t id; /* 0x40 */ + struct Forest* next; + struct LHLinkedList__Tree trees_0; + struct LHLinkedList__Tree trees_1; /* 0x50 */ +}; +static_assert(sizeof(struct Forest) == 0x58, "Data type is of wrong size"); + +static struct ForestVftable* __vt__6Forest = (struct ForestVftable*)0x008de41c; + +// Constructors + +// win1.41 00539bd0 mac 100f2620 Forest::Forest(MapCoords const&, unsigned long) +struct Forest* __fastcall __ct__6ForestFRC9MapCoordsUl(struct Forest* this, const void* edx, const struct MapCoords* coords, uint32_t param_2); + +// Non-virtual methods + +// win1.41 0053a310 mac 100f16f0 Forest::AddTree(Tree*) +void __fastcall AddTree__6ForestFP4Tree(struct Forest* this, const void* edx, struct Tree* tree); +// win1.41 0053abf0 mac 100f0a00 Forest::GetForestCentreTree(void) +struct Tree* __fastcall GetForestCentreTree__6ForestFv(struct Forest* this); + +// Override methods + +// win1.41 0053b070 mac 100ef950 Forest::Load(GameOSFile &) +bool __fastcall Load__6ForestFR10GameOSFile(struct Forest* this, const void* edx, struct GameOSFile* file); + +DECLARE_LH_LIST_HEAD(Forest); + +#endif /* BW1_DECOMP_FOREST_INCLUDED_H */ diff --git a/black/Fragment.h b/black/Fragment.h new file mode 100644 index 0000000..2b7e5db --- /dev/null +++ b/black/Fragment.h @@ -0,0 +1,39 @@ +#ifndef BW1_DECOMP_FRAGMENT_INCLUDED_H +#define BW1_DECOMP_FRAGMENT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "Rock.h" /* For struct Rock */ + +// Forward Declares + +struct FragMesh; +struct GPlayer; +struct MapCoords; + +struct Fragment +{ + struct Rock super; /* 0x0 */ + struct FragMesh* frag_mesh; /* 0x94 */ + uint32_t field_0x98; + uint32_t field_0x9c; + uint32_t field_0xa0; + uint32_t field_0xa4; +}; +static_assert(sizeof(struct Fragment) == 0xa8, "Data type is of wrong size"); + +static struct RockVftable* __vt__8Fragment = (struct RockVftable*)0x0099aa98; + +// Constructors + +// win1.41 0076e900 mac 1015c440 Fragment::Fragment(void) +struct Fragment* __fastcall __ct__8FragmentFv(struct Fragment* this); +// win1.41 0076e9d0 mac 1015c250 Fragment::Fragment(MapCoords const &, FragMesh *, GPlayer *) +struct Fragment* __fastcall __ct__8FragmentFRC9MapCoordsP8FragMeshP7GPlayer(struct Fragment* this, const void* edx, struct MapCoords* coords, struct FragMesh* frag_mesh, struct GPlayer* player); + +DECLARE_LH_LINKED_LIST(Fragment); + +#endif /* BW1_DECOMP_FRAGMENT_INCLUDED_H */ diff --git a/black/FrontEnd.h b/black/FrontEnd.h new file mode 100644 index 0000000..23151fb --- /dev/null +++ b/black/FrontEnd.h @@ -0,0 +1,109 @@ +#ifndef BW1_DECOMP_FRONT_END_INCLUDED_H +#define BW1_DECOMP_FRONT_END_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct CDBox; +struct ChannelBox; +struct DialogBoxBase; +struct EditingDebugBox; +struct EndGameBox; +struct GSLobbyBox; +struct GatheringBox; +struct HistoryBox; +struct LH3DMaterial; +struct LoadingBox; +struct LobbyBox; +struct LoginBox; +struct MainMenu; +struct MultiplayerConditionBox; +struct NewProfileBox; +struct Plasma; +struct ProfileEditor; +struct RegisterBox; +struct SetupMultiplayerMain; +struct SetupOnlineLandscapes; +struct SkipBox; +struct SkirmishGameBox; +struct StartGameBox; +struct StatsBox; +struct TattooEditor; + +struct FrontEnd +{ + bool cursor_on; /* 0x0 */ + struct ChannelBox* channel_box; + struct EditingDebugBox* editing_debug_box; + struct SetupMultiplayerMain* setup_multiplayer_main; + struct SetupOnlineLandscapes* setup_online_landscapes; /* 0x10 */ + struct SkipBox* skip_box; + struct CDBox* cd_box; + struct GatheringBox* gathering_box; + struct LoadingBox* loading_box; /* 0x20 */ + struct GSLobbyBox* gs_lobby_box; + struct LobbyBox* lobby_box; + struct RegisterBox* register_box; + struct LoginBox* login_box; /* 0x30 */ + struct TattooEditor* tattoo_editor; + struct NewProfileBox* new_profile_box; + struct MainMenu* main_menu; + struct ProfileEditor* profile_editor; /* 0x40 */ + uint32_t field_0x44; + uint32_t field_0x48; + uint32_t field_0x4c; + uint32_t field_0x50; + uint32_t field_0x54; + uint32_t field_0x58; + uint32_t field_0x5c; + uint32_t field_0x60; + uint32_t field_0x64; + uint32_t field_0x68; + uint32_t field_0x6c; + uint32_t field_0x70; + uint32_t field_0x74; + uint32_t field_0x78; + uint8_t field_0x7c[0x40]; + bool field_0xbc; + bool field_0xbd; + uint8_t field_0xbe; + uint8_t field_0xbf; + uint32_t field_0xc0; + uint32_t field_0xc4; + struct Plasma* plasma; + struct LH3DMaterial* field_0xcc; + struct LH3DMaterial* field_0xd0; + struct LH3DMaterial* field_0xd4; + uint8_t field_0xd8[0x400]; + float field_0x4d8; + int field_0x4dc; + bool field_0x4e0; + bool field_0x4e1; + bool field_0x4e2; + bool field_0x4e3; + bool field_0x4e4; + bool field_0x4e5; + uint8_t field_0x4e6; + uint8_t field_0x4e7; + struct StatsBox* stats_box; + struct EndGameBox* end_game_box; + struct MultiplayerConditionBox* multiplayer_condition_box; /* 0x4f0 */ + struct StartGameBox* start_game_box; + struct HistoryBox* history_box; + struct SkirmishGameBox* skirmish_game_box; +}; +static_assert(sizeof(struct FrontEnd) == 0x500, "Data type is of wrong size"); + +// Static methods + +// win1.41 0053b4d0 mac 105c4d10 FrontEnd::Init(void) +void __cdecl Init__8FrontEndFv(void); +// win1.41 0053c450 mac 105c47d0 FrontEnd::SetCursorOn(void) +void __cdecl SetCursorOn__8FrontEndFv(void); +// win1.41 00544f90 mac 105b9c50 FrontEnd::JustDoABox(DialogBoxBase *) +void __cdecl JustDoABox__8FrontEndFP13DialogBoxBase(struct DialogBoxBase* this); + +#endif /* BW1_DECOMP_FRONT_END_INCLUDED_H */ diff --git a/black/GJBaseUtils.h b/black/GJBaseUtils.h new file mode 100644 index 0000000..e5ed700 --- /dev/null +++ b/black/GJBaseUtils.h @@ -0,0 +1,17 @@ +#ifndef BW1_DECOMP_GJ_BASE_UTILS_INCLUDED_H +#define BW1_DECOMP_GJ_BASE_UTILS_INCLUDED_H + +// Forward Declares + +struct LH3DMaterial; +struct LH3DMesh; +struct MaterialProperties; + +// win1.41 0057dfb0 mac 102bf450 GJUtils::GetSharedMesh(const char *, const MaterialProperties &) +struct LH3DMesh* __cdecl GetSharedMesh__7GJUtilsFPCcRC18MaterialProperties(const char* path, const struct MaterialProperties* props); +// win1.41 0057e120 mac 102bf2f0 GJUtils::SetMaterialProperties(LH3DMaterial *, MaterialProperties const &) +void __cdecl SetMaterialProperties__7GJUtilsFP12LH3DMaterialRC18MaterialProperties(struct LH3DMaterial* material, struct MaterialProperties* prop); +// win1.41 0057e1d0 mac 102bf210 GJUtils::SetMaterialProperties(LH3DMesh *, MaterialProperties const &) +void __cdecl SetMaterialProperties__7GJUtilsFP8LH3DMeshRC18MaterialProperties(struct LH3DMesh* mesh, struct MaterialProperties* prop); + +#endif /* BW1_DECOMP_GJ_BASE_UTILS_INCLUDED_H */ diff --git a/black/Game.h b/black/Game.h new file mode 100644 index 0000000..42cc940 --- /dev/null +++ b/black/Game.h @@ -0,0 +1,270 @@ +#ifndef BW1_DECOMP_GAME_INCLUDED_H +#define BW1_DECOMP_GAME_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint32_t, uint8_t */ + +#include /* For enum TRIBE_TYPE */ +#include /* For struct LHTimer */ + +#include "CreatureDatabase.h" /* For struct CreatureDatabase */ +#include "Data.h" /* For struct GData */ +#include "GameThing.h" /* For struct GameThing */ +#include "GlobalGameLists.h" /* For struct GlobalGameLists */ +#include "KeyBuffer.h" /* For struct GKeyBuffer */ +#include "Landscape.h" /* For struct GLandscape */ +#include "Language.h" /* For struct GLanguage */ +#include "Map.h" /* For struct GMap */ +#include "MapCoords.h" /* For struct MapCoords */ +#include "Network.h" /* For struct GNetwork */ +#include "PathCreator.h" /* For struct PathCreator */ +#include "Player.h" /* For enum PLAYER_NAME, struct GPlayer */ +#include "PlayerInfo.h" /* For struct GPlayerInfo */ +#include "ScriptCreatureCurse.h" /* For struct ScriptCreatureCurse */ +#include "StatsDatabase.h" /* For struct StatsDatabase */ +#include "TerrainMap.h" /* For struct GTerrainMap */ + +// Forward Declares + +struct Config; +struct ControlMap; +struct DialogBoxKeyBinding; +struct DialogBoxOptions; +struct DialogBoxSaveMessage; +struct GCamera; +struct GClimate; +struct GInterface; +struct GScript; +struct GSoundMap; +struct GTribeInfo; +struct GameOSFile; +struct GestureSystem; +struct GestureSystemData; +struct GestureSystemDataList; +struct GestureSystemResult; +struct HelpProfile; +struct HelpSystem; +struct LHFilePath; +struct Settings; +struct Temple; +struct Town; + +enum GAME_MODE +{ + GAME_MODE_RUNNING = 0x0, + GAME_MODE_1 = 0x1, + GAME_MODE_2 = 0x2, + GAME_MODE_ONLINE = 0x3, + GAME_MODE_4 = 0x4, + GAME_MODE_SKIRMISH = 0x5, + GAME_MODE_QUITTING = 0x6, + _GAME_MODE_COUNT = 0x7 +}; +static_assert(sizeof(enum GAME_MODE) == 0x4, "Data type is of wrong size"); + +static const char* GAME_MODE_strs[_GAME_MODE_COUNT] = { + "GAME_MODE_RUNNING", + "GAME_MODE_1", + "GAME_MODE_2", + "GAME_MODE_ONLINE", + "GAME_MODE_4", + "GAME_MODE_SKIRMISH", + "GAME_MODE_QUITTING", +}; + +struct GGame +{ + struct GameThing super; /* 0x0 */ + uint32_t field_0x14; + struct GPlayer players[0x8]; + uint8_t field_0x5318[0x664]; + struct StatsDatabase stats_database; /* 0x597c */ + struct CreatureDatabase creature_database; /* 0x598c */ + bool field_0x599c; + uint8_t field_0x599d; + uint8_t field_0x599e; + uint8_t field_0x599f; + uint32_t field_0x59a0; + uint32_t field_0x59a4; + uint8_t field_0x59a8[0xc]; + struct Temple* temple; /* 0x59b4 */ + struct GMap map; + int32_t land_number; /* 0x205a08 */ + uint32_t field_0x205a0c; + int field_0x205a10; + uint32_t field_0x205a14; + int field_0x205a18; + int field_0x205a1c; + struct GLandscape landscape; /* 0x205a20 */ + uint32_t field_0x205a28; + uint32_t field_0x205a2c; + struct GData data; /* 0x205a30 */ + uint8_t field_0x205a58; + uint8_t player_index; + uint8_t field_0x205a5a; + uint8_t neutral_player_index; + uint32_t field_0x205a5c; + uint8_t field_0x205a60; + uint8_t field_0x205a61; + uint8_t field_0x205a62; + uint8_t field_0x205a63; + uint32_t field_0x205a64; + struct MapCoords coords_0x205a68; + struct MapCoords coords_0x205a74; + uint8_t field_0x205a80[0xf0]; + struct GNetwork network; /* 0x205b70 */ + uint8_t field_0x205b84[0x20]; + struct GlobalGameLists game_lists; /* 0x205ba4 */ + uint32_t field_0x205d34; + int fps_0x205d38; + uint32_t field_0x205d3c; + int field_0x205d40; + uint32_t field_0x205d44; + int field_0x205d48; + uint8_t field_0x205d4c[0xc]; + int field_0x205d58; + uint32_t field_0x205d5c; + uint32_t field_0x205d60; + float field_0x205d64; + struct LHTimer timer; + uint8_t field_0x205e78[0x14]; + struct GTerrainMap terrain_map; /* 0x205e8c */ + struct GPlayerInfo player_info; /* 0x24ffbc */ + struct GLanguage language; /* 0x25004c */ + struct GSoundMap* sound_map; /* 0x250058 */ + struct HelpSystem* help_system; + struct HelpProfile* help_profile; /* 0x250060 */ + struct GestureSystemDataList* gesture_system_data_list; + struct GestureSystemData* gesture_system_data; + struct GestureSystem* gesture_system; + struct GestureSystemResult* gesture_system_result; /* 0x250070 */ + struct Settings* settings; + float town_influence_multiplier; + float player_influence_multiplier; + uint32_t field_0x250080; + struct ScriptCreatureCurse script_creature_curse; + struct GScript* script; /* 0x250090 */ + uint32_t field_0x250094; + uint32_t field_0x250098; + struct MapCoords start_camera_coords; + uint8_t field_0x2500a8[0xc8]; + char* field_0x250170; + uint32_t field_0x250174; + struct Config* config; + uint32_t enum_0x25017c; + enum GAME_MODE game_mode; /* 0x250180 */ + uint8_t field_0x250184[0x124]; + struct GKeyBuffer key_buffer; /* 0x2502a8 */ + uint32_t field_0x2502b8; + uint32_t field_0x2502bc; + struct GCamera* camera; /* 0x2502c0 */ + uint32_t field_0x2502c4; + uint32_t field_0x2502c8; + uint8_t field_0x2502cc; + uint8_t field_0x2502cd; + uint8_t field_0x2502ce; + uint8_t field_0x2502cf; + uint8_t field_0x2502d0[0x14]; + struct LHFilePath* field_0x2502e4; + uint8_t field_0x2502e8[0x18]; + struct ControlMap* control_map; /* 0x250300 */ + struct DialogBoxOptions* dialog_box_options; + struct DialogBoxKeyBinding* dialog_box_key_binding; + struct DialogBoxSaveMessage* dialog_box_save_message; + struct PathCreator path_creator; /* 0x250310 */ + uint32_t field_0x250530; + struct GClimate* climate; + uint32_t field_0x250538; + uint32_t field_0x25053c; + int field_0x250540; +}; +static_assert(sizeof(struct GGame) == 0x250544, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__5GGame = (struct GameThingVftable*)0x008df630; + +// Static methods + +// win1.41 0054cbd0 mac 101584c0 GGame::DoYesNoSkipTutorialRequestersIfNecessary(void) +void __cdecl DoYesNoSkipTutorialRequestersIfNecessary__5GGameFv(void); +// win1.41 00552620 mac 1005cfb0 GGame::GetTribe(TRIBE_TYPE) +struct GTribeInfo* __stdcall GetTribe__5GGameF10TRIBE_TYPE(enum TRIBE_TYPE type); +// win1.41 00552f40 mac 1056f520 GGame::StartPlaygroundGame(char *) +void __stdcall StartPlaygroundGame__5GGameFPc(char* map_path); +// win1.41 00555890 mac 105996f0 GGame::SetLandBalance(unsigned long, float, GPlayer *) +void __stdcall SetLandBalance__5GGameFUlfP7GPlayer(int index, float balance, struct GPlayer* player); + +// Constructors + +// win1.41 0054b240 mac 104fda10 GGame::GGame(void) +struct GGame* __fastcall __ct__5GGameFv(struct GGame* this); + +// Non-virtual methods + +// win1.41 0054c180 mac 1003a410 GGame::GetCamera(void) +struct GCamera* __fastcall GetCamera__5GGameFv(struct GGame* this); +// win1.41 0054c190 mac 101c8360 GGame::StartGame(void) +void __fastcall StartGame__5GGameFv(struct GGame* this); +// win1.41 0054c3d0 mac 1001e260 GGame::ProcessGameInputs(void) +void __fastcall ProcessGameInputs__5GGameFv(struct GGame* this); +// win1.41 0054c420 mac 10083f50 GGame::ProcessBufferedKeys(void) +void __fastcall ProcessBufferedKeys__5GGameFv(struct GGame* this); +// win1.41 0054c4a0 mac 10029760 GGame::LocalTimerSaysDoATurn(void) +bool __fastcall LocalTimerSaysDoATurn__5GGameFv(struct GGame* this); +// win1.41 0054cc30 mac 10029320 GGame::ProcessNetworkPackets(void) +void __fastcall ProcessNetworkPackets__5GGameFv(struct GGame* this); +// win1.41 0054ced0 mac 100dc070 GGame::DoNetworkStart(void) +void __fastcall DoNetworkStart__5GGameFv(struct GGame* this); +// win1.41 0054cf20 mac 100e23b0 GGame::Loop(void) +void __fastcall Loop__5GGameFv(struct GGame* this); +// win1.41 0054d620 mac 1001e2f0 GGame::ProcessOneGameTurn(void) +void __fastcall ProcessOneGameTurn__5GGameFv(struct GGame* this); +// win1.41 0054d820 mac 10083dd0 GGame::ProcessGameCode(void) +void __fastcall ProcessGameCode__5GGameFv(struct GGame* this); +// win1.41 0054d850 mac 10079980 GGame::ProcessGraphicsEngine(unsigned long, unsigned long) +void __fastcall ProcessGraphicsEngine__5GGameFUlUl(struct GGame* this, const void* edx, uint32_t param_1, uint32_t param_2); +// win1.41 0054da80 mac 10033dd0 GGame::ProcessGraphicsEngine(void) +void __fastcall Process3dEngine__5GGameFv(struct GGame* this); +// win1.41 0054e4f0 mac 10083c70 GGame::StartTurn(void) +void __fastcall StartTurn__5GGameFv(struct GGame* this); +// win1.41 0054e4f0 mac 10070430 GGame::EndTurn(void) +void __fastcall EndTurn__5GGameFv(struct GGame* this); +// win1.41 0054e5c0 mac 100665c0 GGame::ProcessTurn(void) +void __fastcall ProcessTurn__5GGameFv(struct GGame* this); +// win1.41 0054f3b0 mac 101b9770 GGame::Init(void) +bool __fastcall Init__5GGameFv(struct GGame* this); +// win1.41 00550390 mac 10427340 GGame::LoadFiles(void) +int __fastcall LoadFiles__5GGameFv(struct GGame* this); +// win1.41 005507f0 mac 10506220 GGame::Birthday(void) +void __fastcall Birthday__5GGameFv(struct GGame* this); +// win1.41 00550930 mac 10095d40 GGame::GetNextActivePlayerAndNeutral(GPlayer *) +struct GPlayer* __fastcall GetNextActivePlayerAndNeutral__5GGameFP7GPlayer(struct GGame* this, const void* edx, struct GPlayer* player); +// win1.41 00550980 mac 1005c2a0 GGame::GetNextPlayerAndNeutral(GPlayer *) +struct GPlayer* __fastcall GetNextPlayerAndNeutral__5GGameFP7GPlayer(struct GGame* this, const void* edx, struct GPlayer* player); +// win1.41 005509b0 mac 100586e0 GGame::GetPlayer(unsigned long) +struct GPlayer* __fastcall GetPlayer__5GGameFUl(struct GGame* this, const void* edx, enum PLAYER_NAME param_1); +// win1.41 00552640 mac 10073d30 GGame::AddPlayerSparkles(void) +void __fastcall AddPlayerSparkles__5GGameFv(struct GGame* this); +// win1.41 00552bb0 mac 10424170 GGame::ClearMap(void) +void __fastcall ClearMap__5GGameFv(struct GGame* this); +// win1.41 00552f80 mac 100369c0 GGame::IsMultiplayerGame(void) +bool __fastcall IsMultiplayerGame__5GGameCFv(struct GGame* this); +// win1.41 00552fa0 mac 10423f90 GGame::FindTownWithID(unsigned long) +struct Town* __fastcall FindTownWithID__5GGameFUl(struct GGame* this, const void* edx, int id); +// win1.41 005538e0 mac 10166f50 GGame::OnNewGame(void) +void __fastcall OnNewGame__5GGameFv(struct GGame* this); +// win1.41 00555280 mac 1008f570 GGame::Update3DInfluence(void) +struct GPlayer* __fastcall Update3DInfluence__5GGameFv(struct GGame* this); +// win1.41 00555850 mac 10051560 GGame::MyInterface(void) +struct GInterface* __fastcall MyInterface__5GGameFv(struct GGame* this); +// win1.41 00555990 mac inlined GGame::ResetAndStartPlaygroundGame(char *) +void __fastcall ResetAndStartPlaygroundGame__5GGameFPc(struct GGame* this, const void* edx, char* path); +// win1.41 0063c3d0 mac 1001e1e0 GGame::ProcessOneSuperpacket(void) +void __fastcall ProcessOneSuperpacket__5GGameFv(struct GGame* this); + +// Override methods + +// win1.41 00554090 mac 104935a0 GGame::Save(GameOSFile &) +int __fastcall Save__5GGameFR10GameOSFile(struct GGame* this, const void* edx, struct GameOSFile* file); + +#endif /* BW1_DECOMP_GAME_INCLUDED_H */ diff --git a/black/Game3DObject.h b/black/Game3DObject.h new file mode 100644 index 0000000..9f89beb --- /dev/null +++ b/black/Game3DObject.h @@ -0,0 +1,34 @@ +#ifndef BW1_DECOMP_GAME_3D_OBJECT_INCLUDED_H +#define BW1_DECOMP_GAME_3D_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include /* For enum LH3DObject__ObjectType, struct LH3DObject */ + +// Forward Declares + +struct MapCoords; + +struct Game3DObject +{ + struct LH3DObject super; /* 0x0 */ +}; +static_assert(sizeof(struct Game3DObject) == 0x7c, "Data type is of wrong size"); + +// Static methods + +// win1.41 0063abb0 mac 103da2c0 Game3DObject::Create(LH3DObject::ObjectType) +struct Game3DObject* __cdecl Create__12Game3DObjectFQ210LH3DObject10ObjectType(enum LH3DObject__ObjectType type); + +// Non-virtual methods + +// win1.41 0063abc0 mac 103da030 Game3DObject::GetAltitudeFondation(void) const +float __fastcall GetAltitudeFondation__12Game3DObjectCFv(const struct Game3DObject* this); +// win1.41 0063afe0 mac 10019840 Game3DObject::GetDoorPosition(MapCoords *) const +bool __fastcall GetDoorPosition__12Game3DObjectCFP9MapCoords(const struct Game3DObject* this, const void* edx, struct MapCoords* position); +// win1.41 0063b060 mac 103d9d50 Game3DObject::GetSpecialPos(unsigned long, MapCoords &) const +bool __fastcall GetSpecialPos__12Game3DObjectCFUlR9MapCoords(const struct Game3DObject* this, const void* edx, uint32_t index, struct MapCoords* coords); + +#endif /* BW1_DECOMP_GAME_3D_OBJECT_INCLUDED_H */ diff --git a/black/GameInfo.h b/black/GameInfo.h new file mode 100644 index 0000000..3600ab9 --- /dev/null +++ b/black/GameInfo.h @@ -0,0 +1,61 @@ +#ifndef BW1_DECOMP_GAME_INFO_INCLUDED_H +#define BW1_DECOMP_GAME_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct GGameInfo +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8; + uint8_t field_0x9; + uint8_t field_0xa; + uint8_t field_0xb; + int time_scale; + float elapsed_days; /* 0x10 */ + float elapsed_years; + float seconds_per_day; + uint32_t current_year; + double elapsed_seconds_since_start; /* 0x20 */ + int32_t start_year; + int32_t start_month; + int32_t start_day; /* 0x30 */ + int32_t start_hour; + int32_t start_minute; + int32_t start_second; + uint32_t field_0x40; + float visual_time_scale; + float field_0x48; + float field_0x4c; + float field_0x50; + uint32_t field_0x54; +}; +static_assert(sizeof(struct GGameInfo) == 0x58, "Data type is of wrong size"); + +static struct BaseVftable* __vt__9GGameInfo = (struct BaseVftable*)0x008df8f8; + +// Constructors + +// win1.41 00557730 mac 102ff6c0 GGameInfo::GGameInfo(void) +struct GGameInfo* __fastcall __ct__9GGameInfoFv(struct GGameInfo* this); + +// Non-virtual methods + +// win1.41 00557620 mac 102ff910 GGameInfo::SetVisualTimeCycle(float, float, float) +void __fastcall SetVisualTimeCycle__9GGameInfoFfff(struct GGameInfo* this, const void* edx, float param_1, float param_2, float param_3); +// win1.41 005577d0 mac 102ff520 GGameInfo::SetStartDate(long, long, long) +void __fastcall SetStartDate__9GGameInfoFlll(struct GGameInfo* this, const void* edx, int32_t year, int32_t month, int32_t day); +// win1.41 005577f0 mac 102ff380 GGameInfo::SetStartTime(long, long, long) +void __fastcall SetStartTime__9GGameInfoFlll(struct GGameInfo* this, const void* edx, int32_t hour, int32_t minute, int32_t second); +// win1.41 00557940 mac 100789f0 GGameInfo::GetDaysFromStart(void) +float __fastcall GetDaysFromStart__9GGameInfoFv(struct GGameInfo* this); +// win1.41 00557950 mac 1008c390 GGameInfo::GetYear(void) +float __fastcall GetYear__9GGameInfoFv(struct GGameInfo* this); +// win1.41 00557b60 mac 1008c3f0 GGameInfo::Process(void) +void __fastcall Process__9GGameInfoFv(struct GGameInfo* this); +// win1.41 00557bb0 mac 102fecf0 GGameInfo::SetVisualTimeCycleFromMapEditor(float, float, float) +void __fastcall SetVisualTimeCycleFromMapEditor__9GGameInfoFfff(struct GGameInfo* this, const void* edx, float param_1, float param_2, float param_3); + +#endif /* BW1_DECOMP_GAME_INFO_INCLUDED_H */ diff --git a/black/GameOSFile.h b/black/GameOSFile.h new file mode 100644 index 0000000..1cfe29c --- /dev/null +++ b/black/GameOSFile.h @@ -0,0 +1,72 @@ +#ifndef BW1_DECOMP_GAME_OS_FILE_INCLUDED_H +#define BW1_DECOMP_GAME_OS_FILE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint16_t, uint32_t, uint8_t */ + +#include /* For enum LH_FILE_MODE */ +#include /* For struct LHReleasedOSFile */ + +#include "GameThing.h" /* For struct GameThing */ +#include "SaveLoadPtr.h" /* For struct GSaveLoadPtr */ + +// Forward Declares + +struct GBaseInfo; +struct MapCoords; + +struct GameOSFile +{ + struct LHReleasedOSFile super; /* 0x0 */ + uint8_t field_0x8[0x40]; + uint8_t field_0x48[0xc4]; + uint32_t field_0x10c; + char filename[0x100]; /* 0x110 */ + uint32_t field_0x210; + uint32_t checksum; + uint32_t field_0x218; + uint32_t field_0x21c; + struct LHLinkedList__GSaveLoadPtr save_load_ptr_list; /* 0x220 */ + struct LHLinkedList__GameThing game_thing_list; +}; +static_assert(sizeof(struct GameOSFile) == 0x230, "Data type is of wrong size"); + +static struct LHOSFileVftable* __vt__10GameOSFile = (struct LHOSFileVftable*)0x008df960; + +// Static methods + +// win1.41 005587b0 mac 1030ef00 GameOSFile::LoadAllGame(char *) +bool __cdecl LoadAllGame__10GameOSFileFPc(char* filename); + +// Non-virtual methods + +// win1.41 inlined mac inlined GameOSFile::ReadIt(MapCoords*) +void __fastcall ReadIt_MapCoords___10GameOSFileFRUl(struct GameOSFile* this, const void* edx, struct MapCoords* out); +// win1.41 inlined mac inlined GameOSFile::ReadIt(uint8_t*) +void __fastcall ReadIt_u8___10GameOSFileFRUl(struct GameOSFile* this, const void* edx, uint8_t* out); +// win1.41 inlined mac inlined GameOSFile::ReadIt(uint16_t*) +void __fastcall ReadIt_u16___10GameOSFileFRUl(struct GameOSFile* this, const void* edx, uint16_t* out); +// win1.41 inlined mac inlined GameOSFile::ReadIt(uint32_t*) +void __fastcall ReadIt_u32___10GameOSFileFRUl(struct GameOSFile* this, const void* edx, uint32_t* out); +// win1.41 inlined mac 104f2b44 GameOSFile::ReadIt(float*) +void __fastcall ReadIt_f32___10GameOSFileFRUl(struct GameOSFile* this, const void* edx, float* out); +// win1.41 inlined mac 1034dc00 GameOSFile::ReadIt(int*) +void __fastcall ReadIt_i32___10GameOSFileFRUl(struct GameOSFile* this, const void* edx, int* out); +// win1.41 00558dc0 mac 10304ef0 GameOSFile::LoadInstance(GameThing **) +void __fastcall LoadInstance__10GameOSFileFPP9GameThing(struct GameOSFile* this, const void* edx, struct GameThing** out_thing); +// win1.41 00561c60 mac 103049e0 GameOSFile::ResolveAllLoads(void) +void __fastcall ResolveAllLoads__10GameOSFileFv(struct GameOSFile* this); +// win1.41 00562180 mac 10304470 GameOSFile::ReadPtr(GameThing **) +void __fastcall ReadPtr__10GameOSFileFPP9GameThing(struct GameOSFile* this, const void* edx, struct GameThing** ptr); +// win1.41 00563f00 mac 103008a0 GameOSFile::ReadInfo(GBaseInfo const **) +void __fastcall ReadInfo__10GameOSFileFPPC9GBaseInfo(struct GameOSFile* this, const void* edx, struct GBaseInfo** info); +// win1.41 00563fa0 mac 10300720 GameOSFile::ReadCheckSum(GameThing *) +void __fastcall ReadCheckSum__10GameOSFileFP9GameThing(struct GameOSFile* this, const void* edx, struct GameThing* thing); + +// Override methods + +// win1.41 inlined mac inlined GameOSFile::Open(char *, LH_FILE_MODE) +uint32_t __fastcall Open__10GameOSFileFPc12LH_FILE_MODE(struct GameOSFile* this, const void* edx, const char* filename, enum LH_FILE_MODE mode); + +#endif /* BW1_DECOMP_GAME_OS_FILE_INCLUDED_H */ diff --git a/black/GameStats.h b/black/GameStats.h new file mode 100644 index 0000000..38afdcc --- /dev/null +++ b/black/GameStats.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_GAME_STATS_INCLUDED_H +#define BW1_DECOMP_GAME_STATS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "GameThing.h" /* For struct GameThing */ + +struct GameStats +{ + struct GameThing super; /* 0x0 */ + uint8_t field_0x14[0x94]; + uint32_t wood_used; /* 0xa8 */ + uint8_t graph_0[0x1f4]; + uint8_t field_0x2a0[0x5e8]; + uint8_t graph_1[0x1f4]; /* 0x888 */ + uint8_t field_0xa7c[0x6ac]; +}; +static_assert(sizeof(struct GameStats) == 0x1128, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__9GameStats = (struct GameThingVftable*)0x008ffdc0; + +// Constructors + +// win1.41 00564a40 mac 1031b7d0 GameStats::GameStats(void) +struct GameStats* __fastcall __ct__9GameStatsFv(struct GameStats* this); + +#endif /* BW1_DECOMP_GAME_STATS_INCLUDED_H */ diff --git a/black/GameThing.h b/black/GameThing.h new file mode 100644 index 0000000..abcf55a --- /dev/null +++ b/black/GameThing.h @@ -0,0 +1,372 @@ +#ifndef BW1_DECOMP_GAME_THING_INCLUDED_H +#define BW1_DECOMP_GAME_THING_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint16_t, uint32_t, uint8_t */ + +#include /* For enum RESOURCE_TYPE */ +#include /* For DECLARE_LH_LINKED_LIST */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Base.h" /* For struct Base, struct BaseVftable */ + +// Forward Declares + +struct Abode; +struct Creature; +struct GFootpath; +struct GFootpathLink; +struct GInterfaceStatus; +struct GPlayer; +struct GameOSFile; +struct GameThing; +struct Living; +struct MapCoords; +struct MultiMapFixed; +struct PSysProcessInfo; +struct Spell; +struct Town; +struct Villager; + +enum GAME_THING_TYPE +{ + GAME_THING_TYPE_GFOOTPATH = 0x1, + GAME_THING_TYPE_GFOOTPATH_LINK = 0x2, + GAME_THING_TYPE_GFOOTPATH_NODE = 0x3, + GAME_THING_TYPE_GFOOTPATH_LINK_SAVE = 0x4, + GAME_THING_TYPE_GFOOTPATH_FINDER = 0x5, + GAME_THING_TYPE_SPELL_FOREST = 0xf, + GAME_THING_TYPE_CITADEL_HEART_1 = 0x3a, + GAME_THING_TYPE_CITADEL_HEART_2 = 0x3b, + GAME_THING_TYPE_POT = 0x58, + GAME_THING_TYPE_GGAME = 0x6a, + _GAME_THING_TYPE_COUNT = 0x6b +}; +static_assert(sizeof(enum GAME_THING_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* GAME_THING_TYPE_strs[_GAME_THING_TYPE_COUNT] = { + "GAME_THING_TYPE_0x0", + "GAME_THING_TYPE_GFOOTPATH", + "GAME_THING_TYPE_GFOOTPATH_LINK", + "GAME_THING_TYPE_GFOOTPATH_NODE", + "GAME_THING_TYPE_GFOOTPATH_LINK_SAVE", + "GAME_THING_TYPE_GFOOTPATH_FINDER", + "GAME_THING_TYPE_0x6", + "GAME_THING_TYPE_0x7", + "GAME_THING_TYPE_0x8", + "GAME_THING_TYPE_0x9", + "GAME_THING_TYPE_0xa", + "GAME_THING_TYPE_0xb", + "GAME_THING_TYPE_0xc", + "GAME_THING_TYPE_0xd", + "GAME_THING_TYPE_0xe", + "GAME_THING_TYPE_SPELL_FOREST", + "GAME_THING_TYPE_0x10", + "GAME_THING_TYPE_0x11", + "GAME_THING_TYPE_0x12", + "GAME_THING_TYPE_0x13", + "GAME_THING_TYPE_0x14", + "GAME_THING_TYPE_0x15", + "GAME_THING_TYPE_0x16", + "GAME_THING_TYPE_0x17", + "GAME_THING_TYPE_0x18", + "GAME_THING_TYPE_0x19", + "GAME_THING_TYPE_0x1a", + "GAME_THING_TYPE_0x1b", + "GAME_THING_TYPE_0x1c", + "GAME_THING_TYPE_0x1d", + "GAME_THING_TYPE_0x1e", + "GAME_THING_TYPE_0x1f", + "GAME_THING_TYPE_0x20", + "GAME_THING_TYPE_0x21", + "GAME_THING_TYPE_0x22", + "GAME_THING_TYPE_0x23", + "GAME_THING_TYPE_0x24", + "GAME_THING_TYPE_0x25", + "GAME_THING_TYPE_0x26", + "GAME_THING_TYPE_0x27", + "GAME_THING_TYPE_0x28", + "GAME_THING_TYPE_0x29", + "GAME_THING_TYPE_0x2a", + "GAME_THING_TYPE_0x2b", + "GAME_THING_TYPE_0x2c", + "GAME_THING_TYPE_0x2d", + "GAME_THING_TYPE_0x2e", + "GAME_THING_TYPE_0x2f", + "GAME_THING_TYPE_0x30", + "GAME_THING_TYPE_0x31", + "GAME_THING_TYPE_0x32", + "GAME_THING_TYPE_0x33", + "GAME_THING_TYPE_0x34", + "GAME_THING_TYPE_0x35", + "GAME_THING_TYPE_0x36", + "GAME_THING_TYPE_0x37", + "GAME_THING_TYPE_0x38", + "GAME_THING_TYPE_0x39", + "GAME_THING_TYPE_CITADEL_HEART_1", + "GAME_THING_TYPE_CITADEL_HEART_2", + "GAME_THING_TYPE_0x3c", + "GAME_THING_TYPE_0x3d", + "GAME_THING_TYPE_0x3e", + "GAME_THING_TYPE_0x3f", + "GAME_THING_TYPE_0x40", + "GAME_THING_TYPE_0x41", + "GAME_THING_TYPE_0x42", + "GAME_THING_TYPE_0x43", + "GAME_THING_TYPE_0x44", + "GAME_THING_TYPE_0x45", + "GAME_THING_TYPE_0x46", + "GAME_THING_TYPE_0x47", + "GAME_THING_TYPE_0x48", + "GAME_THING_TYPE_0x49", + "GAME_THING_TYPE_0x4a", + "GAME_THING_TYPE_0x4b", + "GAME_THING_TYPE_0x4c", + "GAME_THING_TYPE_0x4d", + "GAME_THING_TYPE_0x4e", + "GAME_THING_TYPE_0x4f", + "GAME_THING_TYPE_0x50", + "GAME_THING_TYPE_0x51", + "GAME_THING_TYPE_0x52", + "GAME_THING_TYPE_0x53", + "GAME_THING_TYPE_0x54", + "GAME_THING_TYPE_0x55", + "GAME_THING_TYPE_0x56", + "GAME_THING_TYPE_0x57", + "GAME_THING_TYPE_POT", + "GAME_THING_TYPE_0x59", + "GAME_THING_TYPE_0x5a", + "GAME_THING_TYPE_0x5b", + "GAME_THING_TYPE_0x5c", + "GAME_THING_TYPE_0x5d", + "GAME_THING_TYPE_0x5e", + "GAME_THING_TYPE_0x5f", + "GAME_THING_TYPE_0x60", + "GAME_THING_TYPE_0x61", + "GAME_THING_TYPE_0x62", + "GAME_THING_TYPE_0x63", + "GAME_THING_TYPE_0x64", + "GAME_THING_TYPE_0x65", + "GAME_THING_TYPE_0x66", + "GAME_THING_TYPE_0x67", + "GAME_THING_TYPE_0x68", + "GAME_THING_TYPE_0x69", + "GAME_THING_TYPE_GGAME", +}; + +struct GameThingVftable +{ + struct BaseVftable super; /* 0x0 */ + struct GPlayer* (__fastcall* GetPlayer)(struct GameThing* this); /* 0x1c */ + void (__fastcall* SetPlayer)(struct GameThing* this, const void* edx, struct GPlayer* player); /* 0x20 */ + float (__fastcall* CalculateInfluence)(struct GameThing* this, const void* edx, struct MapCoords* param_1); + void (__fastcall* RemoveDance)(struct GameThing* this); + bool (__fastcall* IsAvailable)(struct GameThing* this); + bool (__fastcall* IsCreature)(struct GameThing* this); /* 0x30 */ + bool (__fastcall* IsCreature2)(struct GameThing* this, const void* edx, struct Creature* param_1); + bool (__fastcall* IsCreatureNotTooNear)(struct GameThing* this, const void* edx, struct Creature* param_1); + float (__fastcall* GetDrawImportance)(struct GameThing* this); + float (__fastcall* GetMaxAlignmentChangePerGameTurn)(struct GameThing* this); /* 0x40 */ + bool (__fastcall* GetComputerSeen)(struct GameThing* this); + struct Town* (__fastcall* GetTown)(const struct GameThing* this); + float (__fastcall* GetVillagerActivityDesire)(struct GameThing* this, const void* edx, struct Villager* param_1); + void (__fastcall* SetVillagerActivity)(struct GameThing* this, const void* edx, struct Villager* param_1); /* 0x50 */ + uint32_t (__fastcall* UpdateVillagerActivityEffect)(struct GameThing* this, const void* edx, struct Villager* param_1); + void (__fastcall* MaintainSpell)(struct GameThing* this, const void* edx, uint32_t param_1, float param_2); + void (__fastcall* UpdateSpellInfo)(struct GameThing* this, const void* edx, struct Spell* param_1, struct PSysProcessInfo* param_2); + float (__fastcall* GetRadius)(struct GameThing* this); /* 0x60 */ + float (__fastcall* Get2DRadius)(struct GameThing* this); + struct GPlayer* (__fastcall* GetPlayerWhoLastPickedMeUp)(struct GameThing* this); + struct GPlayer* (__fastcall* GetPlayerWhoLastDroppedMe)(struct GameThing* this); + bool (__fastcall* IsFootpathLink)(struct GameThing* this); /* 0x70 */ + struct GFootpathLink* (__fastcall* GetFootpathLink)(struct GameThing* this); + void (__fastcall* AddFootpathLink)(struct GameThing* this, const void* edx, struct GFootpath* param_1); + uint32_t (__fastcall* GetNearestPathTo)(struct GameThing* this, const void* edx, struct MapCoords* param_1, float param_2, int param_3); + void (__fastcall* UseFootpathIfNecessary)(struct GameThing* this, const void* edx, struct Living* param_1, const struct MapCoords* param_2, unsigned char param_3); /* 0x80 */ + uint32_t (__fastcall* AddFootpath)(struct GameThing* this, const void* edx, struct GFootpath* param_1); + uint32_t (__fastcall* RemoveFootpath)(struct GameThing* this, const void* edx, struct GFootpath* param_1); + uint32_t (__fastcall* JustAddResource)(struct GameThing* this, const void* edx, uint8_t param_1); + uint32_t (__fastcall* JustRemoveResource)(struct GameThing* this, const void* edx, uint8_t param_1); /* 0x90 */ + uint32_t (__fastcall* JustGetResource)(struct GameThing* this, const void* edx, uint8_t param_1, uint8_t param_2); + uint32_t (__fastcall* GetResource)(struct GameThing* this, const void* edx, enum RESOURCE_TYPE type); + uint32_t (__fastcall* AddResource)(struct GameThing* this, const void* edx, enum RESOURCE_TYPE type, uint32_t param_2, struct GInterfaceStatus* param_3, bool param_4, const struct MapCoords* coords, int param_6); + uint32_t (__fastcall* RemoveResource)(struct GameThing* this, const void* edx, uint8_t param_1, uint8_t param_2, uint8_t param_3); /* 0xa0 */ + struct Creature* (__fastcall* CastCreature)(struct GameThing* this); + struct GPlayer* (__fastcall* CastPlayer)(struct GameThing* this); + uint32_t (__fastcall* CastOneOffSpellSeed)(struct GameThing* this); + struct Abode* (__fastcall* CastAbode)(struct GameThing* this); /* 0xb0 */ + struct MultiMapFixed* (__fastcall* CastMultiMapFixed)(struct GameThing* this); + uint32_t (__fastcall* CastSpellIcon)(struct GameThing* this); + uint32_t (__fastcall* CastTree)(struct GameThing* this); + bool (__fastcall* IsDeletedOnNewMap)(struct GameThing* this); /* 0xc0 */ + uint16_t (__fastcall* GetNumberOfInstanceForGlobalList)(struct GameThing* this); + float (__fastcall* GetTownArtifactValue)(struct GameThing* this); + bool (__fastcall* CanBecomeArtifact)(struct GameThing* this); + void (__fastcall* DrawInHand)(struct GameThing* this, const void* edx, struct GInterfaceStatus* param_1); /* 0xd0 */ + bool (__fastcall* IsFunctional)(struct GameThing* this); + char* (__fastcall* GetDebugText)(struct GameThing* this); + uint32_t (__fastcall* GetSampleForAttack)(struct GameThing* this); + uint32_t (__fastcall* GetGuidanceResourceType)(struct GameThing* this); /* 0xe0 */ + uint32_t (__fastcall* GetShowNeedsPos)(struct GameThing* this); + uint32_t (__fastcall* Load)(struct GameThing* this, const void* edx, struct GameOSFile* file); + uint32_t (__fastcall* Save)(struct GameThing* this, const void* edx, struct GameOSFile* file); + uint32_t (__fastcall* GetSaveType)(struct GameThing* this); /* 0xf0 */ + void (__fastcall* SaveExtraData)(struct GameThing* this, const void* edx, struct GameOSFile* file); + void (__fastcall* ResolveLoad)(struct GameThing* this); +}; +static_assert(sizeof(struct GameThingVftable) == 0xfc, "Data type is of wrong size"); + +union GameThingBase +{ + struct Base super; + struct GameThingVftable* vftable; +}; +static_assert(sizeof(union GameThingBase) == 0x8, "Data type is of wrong size"); + +struct GameThing +{ + union GameThingBase base; /* 0x0 */ + uint16_t field_0x8; + uint8_t field_0xa; + uint16_t field_0xc; + struct GameThing* next; /* 0x10 */ +}; +static_assert(sizeof(struct GameThing) == 0x14, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__9GameThing = (struct GameThingVftable*)0x008fff50; + +// Static methods + +// win1.41 0056fb10 mac 1008e550 GameThing::ProcessDeadList(int) +void __stdcall ProcessDeadList__9GameThingFi(int param_1); + +// Constructors + +// win1.41 0056fa10 mac 10088880 GameThing::GameThing(void) +struct GameThing* __fastcall __ct__9GameThingFv(struct GameThing* this); + +// Non-virtual methods + +// win1.41 0056faa0 mac 10492500 GameThing::ProcessDead(int) +void __fastcall ProcessDead__9GameThingFi(struct GameThing* this, const void* edx, int param_1); + +// Override methods + +// win1.41 00570130 mac 10364e60 GameThing::GetPlayer(void) +struct GPlayer* __fastcall GetPlayer__9GameThingFv(struct GameThing* this); +// win1.41 00570150 mac 10359980 GameThing::SetPlayer(GPlayer *) +void __fastcall SetPlayer__9GameThingFP7GPlayer(struct GameThing* this, const void* edx, struct GPlayer* param_1); +// win1.41 004017f0 mac 1010bb00 GameThing::CalculateInfluence(MapCoords const &) +float __fastcall CalculateInfluence__9GameThingFRC9MapCoords(struct GameThing* this, const void* edx, struct MapCoords* param_1); +// win1.41 00401800 mac 10494700 GameThing::RemoveDance(void) +void __fastcall RemoveDance__9GameThingFv(struct GameThing* this); +// win1.41 00401810 mac 100512d0 GameThing::IsAvailable(void) +bool __fastcall IsAvailable__9GameThingFv(struct GameThing* this); +// win1.41 00401830 mac 1002c400 GameThing::IsCreature(void) +bool __fastcall IsCreature__9GameThingFv(struct GameThing* this); +// win1.41 00401820 mac 10494880 GameThing::IsCreature(Creature *) +bool __fastcall IsCreature2__9GameThingFP8Creature(struct GameThing* this, const void* edx, struct Creature* param_1); +// win1.41 00401840 mac 104948c0 GameThing::IsCreatureNotTooNear(Creature *) +bool __fastcall IsCreatureNotTooNear__9GameThingFP8Creature(struct GameThing* this, const void* edx, struct Creature* param_1); +// win1.41 00405130 mac 10169a70 GameThing::GetDrawImportance(void) +float __fastcall GetDrawImportance__9GameThingFv(struct GameThing* this); +// win1.41 00401850 mac 10428ff0 GameThing::GetMaxAlignmentChangePerGameTurn(void) +float __fastcall GetMaxAlignmentChangePerGameTurn__9GameThingFv(struct GameThing* this); +// win1.41 00401860 mac 10425a40 GameThing::GetComputerSeen(void) +bool __fastcall GetComputerSeen__9GameThingFv(struct GameThing* this); +// win1.41 0056ff10 mac 103c22d0 GameThing::GetTown(void) +struct Town* __fastcall GetTown__9GameThingFv(struct GameThing* this); +// win1.41 00401870 mac 103f1450 GameThing::GetVillagerActivityDesire(Villager *) +float __fastcall GetVillagerActivityDesire__9GameThingFP8Villager(struct GameThing* this, const void* edx, struct Villager* param_1); +// win1.41 00401880 mac 10389ac0 GameThing::SetVillagerActivity(Villager *) +void __fastcall SetVillagerActivity__9GameThingFP8Villager(struct GameThing* this, const void* edx, struct Villager* param_1); +// win1.41 00401890 mac 1037f2e0 GameThing::UpdateVillagerActivityEffect(Villager *) +uint32_t __fastcall UpdateVillagerActivityEffect__9GameThingFP8Villager(struct GameThing* this, const void* edx, struct Villager* param_1); +// win1.41 0056fed0 mac 10160960 GameThing::MaintainSpell(Spell *, float) +void __fastcall MaintainSpell__9GameThingFP5Spellf(struct GameThing* this, const void* edx, uint32_t param_1, float param_2); +// win1.41 0056fee0 mac 100fc510 GameThing::UpdateSpellInfo(Spell *, PSysProcessInfo *) +void __fastcall UpdateSpellInfo__9GameThingFP5SpellP15PSysProcessInfo(struct GameThing* this, const void* edx, struct Spell* param_1, struct PSysProcessInfo* param_2); +// win1.41 00405140 mac 104e9450 GameThing::GetRadius(void) +float __fastcall GetRadius__9GameThingFv(struct GameThing* this); +// win1.41 00405150 mac 1034f3d0 GameThing::Get2DRadius(void) +float __fastcall Get2DRadius__9GameThingFv(struct GameThing* this); +// win1.41 004018a0 mac 101664f0 GameThing::GetPlayerWhoLastPickedMeUp(void) +struct GPlayer* __fastcall GetPlayerWhoLastPickedMeUp__9GameThingFv(struct GameThing* this); +// win1.41 004018b0 mac 10381da0 GameThing::GetPlayerWhoLastDroppedMe(void) +struct GPlayer* __fastcall GetPlayerWhoLastDroppedMe__9GameThingFv(struct GameThing* this); +// win1.41 00405160 mac 103c36e0 GameThing::IsFootpathLink(void) +bool __fastcall IsFootpathLink__9GameThingFv(struct GameThing* this); +// win1.41 00405170 mac 1056c160 GameThing::GetFootpathLink(void) +struct GFootpathLink* __fastcall GetFootpathLink__9GameThingFv(struct GameThing* this); +// win1.41 004018c0 mac 101063a0 GameThing::AddFootpathLink(GFootpath *) +void __fastcall AddFootpathLink__9GameThingFP9GFootpath(struct GameThing* this, const void* edx, struct GFootpath* param_1); +// win1.41 00405180 mac 104788b0 GameThing::GetNearestPathTo(MapCoords const &, float, int) +uint32_t __fastcall GetNearestPathTo__9GameThingFRC9MapCoordsfi(struct GameThing* this, const void* edx, struct MapCoords* param_1, float param_2, int param_3); +// win1.41 00570330 mac 100e4740 GameThing::UseFootpathIfNecessary(Living *, MapCoords const &, unsigned char) +void __fastcall UseFootpathIfNecessary__9GameThingFP6LivingRC9MapCoordsUc(struct GameThing* this, const void* edx, struct Living* param_1, const struct MapCoords* param_2, unsigned char param_3); +// win1.41 00405190 mac 103dffc0 GameThing::AddFootpath(GFootpath *) +uint32_t __fastcall AddFootpath__9GameThingFP9GFootpath(struct GameThing* this, const void* edx, struct GFootpath* param_1); +// win1.41 004051a0 mac 103dff70 GameThing::RemoveFootpath(GFootpath *) +uint32_t __fastcall RemoveFootpath__9GameThingFP9GFootpath(struct GameThing* this, const void* edx, struct GFootpath* param_1); +// win1.41 005705f0 mac 10560530 GameThing::JustAddResource(RESOURCE_TYPE, unsigned long, bool) +uint32_t __fastcall JustAddResource__9GameThingF13RESOURCE_TYPEUlb(struct GameThing* this, const void* edx, uint8_t param_1); +// win1.41 00570600 mac 1054a9d0 GameThing::JustRemoveResource(RESOURCE_TYPE, unsigned long, bool *) +uint32_t __fastcall JustRemoveResource__9GameThingF13RESOURCE_TYPEUlPb(struct GameThing* this, const void* edx, uint8_t param_1); +// win1.41 00570610 mac 101669d0 GameThing::JustGetResource(RESOURCE_TYPE, unsigned long, bool *) +uint32_t __fastcall JustGetResource__9GameThingF13RESOURCE_TYPEUlPb(struct GameThing* this, const void* edx, uint8_t param_1, uint8_t param_2); +// win1.41 004051b0 mac 1056c950 GameThing::GetResource(RESOURCE_TYPE) +uint32_t __fastcall GetResource__9GameThingF13RESOURCE_TYPE(struct GameThing* this, const void* edx, enum RESOURCE_TYPE type); +// win1.41 004051c0 mac 1056c9a0 GameThing::AddResource(RESOURCE_TYPE, unsigned long, GInterfaceStatus *, bool, MapCoords const &, int) +uint32_t __fastcall AddResource__9GameThingF13RESOURCE_TYPEUlP16GInterfaceStatusbRC9MapCoordsi(struct GameThing* this, const void* edx, enum RESOURCE_TYPE type, uint32_t param_2, struct GInterfaceStatus* param_3, bool param_4, const struct MapCoords* coords, int param_6); +// win1.41 004051d0 mac 104f8b20 GameThing::RemoveResource(RESOURCE_TYPE, unsigned long, GInterfaceStatus *, bool *) +uint32_t __fastcall RemoveResource__9GameThingF13RESOURCE_TYPEUlP16GInterfaceStatusPb(struct GameThing* this, const void* edx, uint8_t param_1, uint8_t param_2, uint8_t param_3); +// win1.41 004018d0 mac 103dd790 GameThing::CastCreature(void) +struct Creature* __fastcall CastCreature__9GameThingFv(struct GameThing* this); +// win1.41 004018e0 mac 103dd5d0 GameThing::CastPlayer(void) +struct GPlayer* __fastcall CastPlayer__9GameThingFv(struct GameThing* this); +// win1.41 004018f0 mac 104fb790 GameThing::CastOneOffSpellSeed(void) +uint32_t __fastcall CastOneOffSpellSeed__9GameThingFv(struct GameThing* this); +// win1.41 004051e0 mac 1017ebc0 GameThing::CastAbode(void) +struct Abode* __fastcall CastAbode__9GameThingFv(struct GameThing* this); +// win1.41 004051f0 mac 10199740 GameThing::CastMultiMapFixed(void) +struct MultiMapFixed* __fastcall CastMultiMapFixed__9GameThingFv(struct GameThing* this); +// win1.41 00401900 mac 100a0a70 GameThing::CastSpellIcon(void) +uint32_t __fastcall CastSpellIcon__9GameThingFv(struct GameThing* this); +// win1.41 00401910 mac 101c8320 GameThing::CastTree(void) +uint32_t __fastcall CastTree__9GameThingFv(struct GameThing* this); +// win1.41 00401920 mac 1019e2b0 GameThing::IsDeletedOnNewMap(void) +bool __fastcall IsDeletedOnNewMap__9GameThingFv(struct GameThing* this); +// win1.41 00405200 mac 100ac9a0 GameThing::GetNumberOfInstanceForGlobalList(void) +uint16_t __fastcall GetNumberOfInstanceForGlobalList__9GameThingFv(struct GameThing* this); +// win1.41 00405210 mac 1019aa00 GameThing::GetTownArtifactValue(void) +float __fastcall GetTownArtifactValue__9GameThingFv(struct GameThing* this); +// win1.41 00405220 mac 10199de0 GameThing::CanBecomeArtifact(void) +bool __fastcall CanBecomeArtifact__9GameThingFv(struct GameThing* this); +// win1.41 00405230 mac 10199e20 GameThing::DrawInHand(GInterfaceStatus *) +void __fastcall DrawInHand__9GameThingFP16GInterfaceStatus(struct GameThing* this, const void* edx, struct GInterfaceStatus* param_1); +// win1.41 00405240 mac 10067860 GameThing::IsFunctional(void) +bool __fastcall IsFunctional__9GameThingFv(struct GameThing* this); +// win1.41 00425da0 mac 1054ef00 GameThing::GetDebugText(void) +char* __fastcall GetDebugText__9GameThingFv(struct GameThing* this); +// win1.41 0071bc20 mac 1050ff50 GameThing::GetSampleForAttack(void) +uint32_t __fastcall GetSampleForAttack__9GameThingFv(struct GameThing* this); +// win1.41 0071bdd0 mac 1050fc90 GameThing::GetGuidanceResourceType(void) +uint32_t __fastcall GetGuidanceResourceType__9GameThingFv(struct GameThing* this); +// win1.41 00401930 mac 1017a550 GameThing::GetShowNeedsPos(unsigned long, MapCoords *) +uint32_t __fastcall GetShowNeedsPos__9GameThingFUlP9MapCoords(struct GameThing* this); +// win1.41 0056fcf0 mac 103807f0 GameThing::Load(GameOSFile &) +uint32_t __fastcall Load__9GameThingFR10GameOSFile(struct GameThing* this, const void* edx, struct GameOSFile* file); +// win1.41 0056fbe0 mac 101724b0 GameThing::Save(GameOSFile &) +uint32_t __fastcall Save__9GameThingFR10GameOSFile(struct GameThing* this, const void* edx, struct GameOSFile* file); +// win1.41 0056fd90 mac 101361c0 GameThing::GetSaveType(void) +uint32_t __fastcall GetSaveType__9GameThingFv(struct GameThing* this); +// win1.41 0056fda0 mac 100bc180 GameThing::SaveExtraData(GameOSFile &) +void __fastcall SaveExtraData__9GameThingFR10GameOSFile(struct GameThing* this, const void* edx, struct GameOSFile* file); +// win1.41 00405250 mac 1057b140 GameThing::ResolveLoad(void) +void __fastcall ResolveLoad__9GameThingFv(struct GameThing* this); + +DECLARE_LH_LINKED_LIST(GameThing); +DECLARE_LH_LIST_HEAD(GameThing); + +#endif /* BW1_DECOMP_GAME_THING_INCLUDED_H */ diff --git a/black/GameThingWithPos.h b/black/GameThingWithPos.h new file mode 100644 index 0000000..a7d9d2c --- /dev/null +++ b/black/GameThingWithPos.h @@ -0,0 +1,332 @@ +#ifndef BW1_DECOMP_GAME_THING_WITH_POS_INCLUDED_H +#define BW1_DECOMP_GAME_THING_WITH_POS_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint16_t, uint32_t, uint8_t */ + +#include /* For enum DEATH_REASON, enum IMPRESSIVE_TYPE */ +#include /* For enum HELP_TEXT */ +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "GameThing.h" /* For struct GameThing, struct GameThingVftable */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct Citadel; +struct Creature; +struct GameOSFile; +struct GameThingWithPos; +struct LHPoint; +struct Living; +struct Object; +struct Reaction; +struct WorshipSite; + +struct GameThingWithPosVftable +{ + struct GameThingVftable super; /* 0x0 */ + void (__fastcall* SetPos)(struct GameThingWithPos* this, const void* edx, struct MapCoords* param_1); /* 0xfc */ + struct MapCoords* (__fastcall* GetPos)(const struct GameThingWithPos* this, const void* edx, struct MapCoords* param_1); /* 0x100 */ + struct MapCoords* (__fastcall* GetArrivePos)(struct GameThingWithPos* this, const void* edx, struct MapCoords* coords); + void (__fastcall* PhysicsEditorCreate)(struct GameThingWithPos* this, const void* edx, int param_1); + uint32_t (__fastcall* GetCreatureBeliefType)(struct GameThingWithPos* this); + uint32_t (__fastcall* GetCreatureBeliefListType)(struct GameThingWithPos* this); /* 0x110 */ + struct Citadel* (__fastcall* GetCitadel)(struct GameThingWithPos* this); + uint32_t (__fastcall* GetOrigin)(const struct GameThingWithPos* this); + float (__fastcall* GetLife)(const struct GameThingWithPos* this); + float (__fastcall* GetScale)(const struct GameThingWithPos* this); /* 0x120 */ + void (__fastcall* SetScale)(struct GameThingWithPos* this, const void* edx, float scale); + float (__fastcall* GetPower)(const struct GameThingWithPos* this); + float (__fastcall* GetPSysPower)(const struct GameThingWithPos* this); + float (__fastcall* GetSpeedInMetres)(const struct GameThingWithPos* this); /* 0x130 */ + void (__fastcall* SetSpeedInMetres)(struct GameThingWithPos* this, const void* edx, float speed, int scale); + float (__fastcall* GetRunningSpeedInMetres)(const struct GameThingWithPos* this); + float (__fastcall* GetDistanceFromObject)(const struct GameThingWithPos* this, const void* edx, struct MapCoords* target); + float (__fastcall* GetDefaultSpeedInMetres)(struct GameThingWithPos* this); /* 0x140 */ + void (__fastcall* SetHeight)(struct GameThingWithPos* this, const void* edx, float height); + void (__fastcall* SetMaxHeight)(struct GameThingWithPos* this, const void* edx, float height); + float (__fastcall* GetMaxHeight)(struct GameThingWithPos* this); + void (__fastcall* GetPSysBeamTargetPos)(struct GameThingWithPos* this, const void* edx, struct LHPoint* pos); /* 0x150 */ + float (__fastcall* GetSpeedInMetresPerSecond)(const struct GameThingWithPos* this); + void (__fastcall* SetSpeedInMetresPerSecond)(struct GameThingWithPos* this, const void* edx, float speed, int scale); + float (__fastcall* GetRunningSpeedInMetresPerSecond)(struct GameThingWithPos* this); + float (__fastcall* GetDefaultSpeedInMetresPerSecond)(struct GameThingWithPos* this); /* 0x160 */ + bool (__fastcall* IsAnimate)(struct GameThingWithPos* this); + void (__fastcall* GetMovementDirection)(struct GameThingWithPos* this, const void* edx, struct LHPoint* pos); + void (__fastcall* GetPhysicsMovementDirection)(struct GameThingWithPos* this, const void* edx, struct LHPoint* pos); + void (__fastcall* GetInteractPos)(struct GameThingWithPos* this, const void* edx, struct LHPoint* pos); /* 0x170 */ + bool (__fastcall* IsMoving)(const struct GameThingWithPos* this); + bool (__fastcall* IsObjectInMap)(struct GameThingWithPos* this); + bool (__fastcall* IsDrowning)(struct GameThingWithPos* this); + bool (__fastcall* IsCannotBePickedUp)(const struct GameThingWithPos* this); /* 0x180 */ + uint32_t (__fastcall* GetOverwritePickUpToolTip)(struct GameThingWithPos* this); + bool (__fastcall* IsStompable)(struct GameThingWithPos* this); + bool (__fastcall* IsAvailableForStateChange)(struct GameThingWithPos* this); + bool (__fastcall* IsInteractable)(struct GameThingWithPos* this); /* 0x190 */ + uint32_t (__fastcall* GetOverwriteInteractableToolTip)(struct GameThingWithPos* this); + uint32_t (__fastcall* GetOverwriteDropToolTip)(struct GameThingWithPos* this); + uint32_t (__fastcall* GetOverwriteTapToolTip)(struct GameThingWithPos* this); + bool (__fastcall* IsCastShadowAtNight)(struct GameThingWithPos* this); /* 0x1a0 */ + void (__fastcall* CleanupWhenDeleted)(struct GameThingWithPos* this, const void* edx, int param_1); + enum IMPRESSIVE_TYPE (__fastcall* GetImpressiveType)(struct GameThingWithPos* this); + float (__fastcall* GetImpressiveIntensity)(struct GameThingWithPos* this, const void* edx, enum IMPRESSIVE_TYPE type); + float (__fastcall* GetImpressiveValue)(struct GameThingWithPos* this, const void* edx, struct Living* param_1, struct Reaction* param_2); /* 0x1b0 */ + float (__fastcall* GetUpdateOfBoredomValue)(struct GameThingWithPos* this, const void* edx, struct Reaction* param_1, struct GameThingWithPos* param_2); + bool (__fastcall* IsTown_1)(struct GameThingWithPos* this, const void* edx, struct Creature* param_1); + bool (__fastcall* IsTown_0)(struct GameThingWithPos* this); + bool (__fastcall* IsActivityObjectWhichAngerAppliesTo)(struct GameThingWithPos* this, const void* edx, struct Creature* param_1); /* 0x1c0 */ + bool (__fastcall* IsActivityObjectWhichCompassionAppliesTo)(struct GameThingWithPos* this, const void* edx, struct Creature* param_1); + bool (__fastcall* IsActivityObjectWhichPlayfulnessAppliesTo)(struct GameThingWithPos* this, const void* edx, struct Creature* param_1); + bool (__fastcall* IsTownBelongingToAnotherPlayer)(struct GameThingWithPos* this, const void* edx, struct Creature* param_1); + bool (__fastcall* TrueFunction)(struct GameThingWithPos* this); /* 0x1d0 */ + bool (__fastcall* FalseFunction)(struct GameThingWithPos* this); + bool (__fastcall* IsNotLiving)(struct GameThingWithPos* this); + bool (__fastcall* IsSuitableForCreatureActivity)(struct GameThingWithPos* this); + bool (__fastcall* IsTownCentre)(struct GameThingWithPos* this); /* 0x1e0 */ + bool (__fastcall* IsTotemStatue)(struct GameThingWithPos* this); + bool (__fastcall* IsTownDesireFlag)(struct GameThingWithPos* this); + bool (__fastcall* IsRock_1)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsRock_0)(struct GameThingWithPos* this); /* 0x1f0 */ + bool (__fastcall* IsSpellDispenser)(struct GameThingWithPos* this); + bool (__fastcall* IsMist)(struct GameThingWithPos* this); + bool (__fastcall* IsQueryIcon)(struct GameThingWithPos* this); + bool (__fastcall* IsStreetLight)(struct GameThingWithPos* this); /* 0x200 */ + bool (__fastcall* IsStreetLantern)(struct GameThingWithPos* this); + bool (__fastcall* IsAbode)(struct GameThingWithPos* this); + bool (__fastcall* IsField_1)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsField_0)(struct GameThingWithPos* this); /* 0x210 */ + bool (__fastcall* IsBuildingMaterial)(struct GameThingWithPos* this); + bool (__fastcall* IsMagicFireBall)(struct GameThingWithPos* this); + bool (__fastcall* IsSuitableForCreatureAction)(struct GameThingWithPos* this); + bool (__fastcall* IsCitadelHeart)(struct GameThingWithPos* this); /* 0x220 */ + bool (__fastcall* IsDamaged)(struct GameThingWithPos* this); + bool (__fastcall* CanBeHealedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeEatenByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanCreatureEatMe)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x230 */ + bool (__fastcall* CanBeAttackedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeFrighteningToCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeHelpedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBePlayedWithByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x240 */ + bool (__fastcall* CanBeImpressedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeInspectedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBePoodUponByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeBefriendedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x250 */ + bool (__fastcall* CanBeSleptNextToByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBePickedUpByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeStrokedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeKissedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x260 */ + bool (__fastcall* CanBeSetOnFire)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeStompedOnByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeThrownByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeGivenToVillager)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x270 */ + bool (__fastcall* CanBePutInAStoragePit)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeDestroyedByStoning)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeStonedAndEatenByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeExaminedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x280 */ + bool (__fastcall* CanBeFoughtByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanReceiveGifts)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanActAsAContainer)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsBeingBuilt)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x290 */ + bool (__fastcall* NeedsRepair)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsOnFire)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsNotOnFire)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeUsedForBuilding)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x2a0 */ + bool (__fastcall* IsMushroom)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeUsedForRepair)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeGivenToTown)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeUsedToHoldWater)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x2b0 */ + bool (__fastcall* CanBePutInFoodPile)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBePutInWoodPile)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanHaveMagicFoodCastOnMe)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanHaveMagicWoodCastOnMe)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x2c0 */ + bool (__fastcall* CanBeBroughtBackToCitadel)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsVillager)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsVillagerFarFromHome)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsVillagerInTownWithoutManyBreeders)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x2d0 */ + bool (__fastcall* IsVillagerNotWorshipping)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsVillagerBelongingToOtherPlayer)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsCow)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBePoodOn)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x2e0 */ + bool (__fastcall* IsVillagerWhoHasNotBeenImpressedRecently)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsVillagerWhoHasNotBeenDancedWithRecently)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* DoesVillagerBelongToATownWhichIsAlreadyImpressed)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* DoesTotemBelongToATownWhichIsVeryImpressedIndeed)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x2f0 */ + bool (__fastcall* IsDominantCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeDancedWith)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsAggressive)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsStoragePit)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x300 */ + bool (__fastcall* IsWorshipSite_0)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsWorshipSite_1)(struct GameThingWithPos* this); + struct WorshipSite* (__fastcall* GetWorshipSite)(struct GameThingWithPos* this); + bool (__fastcall* IsWorkshop_0)(struct GameThingWithPos* this); /* 0x310 */ + bool (__fastcall* IsWorkshop_1)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsBuildingWhichIsBeingBuilt)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsStoragePitWithFoodInIt)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsFieldWhichNeedsWatering)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x320 */ + bool (__fastcall* IsFieldWithFoodInIt)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsFieldBelongingToAnotherPlayer)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsStoragePitBelongingToAnotherPlayer)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsStoragePitBelongingToMyPlayer)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x330 */ + bool (__fastcall* BenefitsFromHavingWaterSprinkledOnIt)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsTree_1)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsTree_0)(struct GameThingWithPos* this); + bool (__fastcall* IsTreeNotTooNearPlannedForest)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x340 */ + bool (__fastcall* IsTreeBigEnoughForCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsAFoodPileOutsideStoragePit)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsAWoodPileOutsideStoragePit)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsDoingSomethingInteresting)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x350 */ + bool (__fastcall* CanBeUsedForBuildingHomeByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsPickupableRock)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsCitadelPart_1)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsCitadelPart_0)(struct GameThingWithPos* this); /* 0x360 */ + bool (__fastcall* IsPlayingFootball)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsPlayingFootballAndMySideHasJustScored)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsPlayingFootballAndOtherSideHasJustScored)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeBroughtHomeByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x370 */ + bool (__fastcall* IsAnimalBelongingToOtherPlayer)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsOneOffSpellBelongingToOtherPlayer)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsOneOffSpellAggressive)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsOneOffSpellCompassionate)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x380 */ + bool (__fastcall* IsOneOffSpellPlayful)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsOneOffSpellToRestoreHealth)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeKickedByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* CanBeStolenByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x390 */ + bool (__fastcall* IsStealableByCreature)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsStealableSpell)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsStealableScaffold)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsTownBelongingToOtherPlayer)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x3a0 */ + bool (__fastcall* IsTotemWithStealableSpell)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsCreatureAvailableForJointActivity)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsCreatureNotAvailableForJointActivity)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsToyAwayFromHome)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x3b0 */ + bool (__fastcall* IsToy)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsToyBall)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsToyDie)(struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsToyCuddly)(const struct GameThingWithPos* this, const void* edx, struct Creature* creature); /* 0x3c0 */ + bool (__fastcall* IsLiving_1)(const struct GameThingWithPos* this, const void* edx, struct Creature* creature); + bool (__fastcall* IsLiving_0)(const struct GameThingWithPos* this); + bool (__fastcall* IsFence)(const struct GameThingWithPos* this); + bool (__fastcall* IsSpellIcon)(const struct GameThingWithPos* this); /* 0x3d0 */ + bool (__fastcall* NothingScareyNearMe)(const struct GameThingWithPos* this); + bool (__fastcall* CanBeUsedForThrowingDamageByCreature)(const struct GameThingWithPos* this); + bool (__fastcall* IsCreatureWhoSeemsFriendly)(const struct GameThingWithPos* this); + bool (__fastcall* CanBeThrownInTheSeaPlayfully)(const struct GameThingWithPos* this); /* 0x3e0 */ + uint32_t (__fastcall* GetCreatureMimicType)(const struct GameThingWithPos* this); + float (__fastcall* GetHowMuchCreatureWantsToLookAtMe)(struct GameThingWithPos* this); + bool (__fastcall* IsFlock)(const struct GameThingWithPos* this); + bool (__fastcall* IsDance)(const struct GameThingWithPos* this); /* 0x3f0 */ + bool (__fastcall* IsReward)(const struct GameThingWithPos* this); + bool (__fastcall* IsScriptContainer)(const struct GameThingWithPos* this); + bool (__fastcall* IsWeather)(const struct GameThingWithPos* this); + bool (__fastcall* IsSpell)(const struct GameThingWithPos* this); /* 0x400 */ + bool (__fastcall* IsDeletedWhenReleasedFromScript)(struct GameThingWithPos* this); + bool (__fastcall* IsMobileWallHug)(const struct GameThingWithPos* this); + bool (__fastcall* IsActive)(const struct GameThingWithPos* this); + bool (__fastcall* IsObjectTurningTooFastForCameraToFollowSmoothly)(const struct GameThingWithPos* this); /* 0x410 */ + void (__fastcall* CalculateWhereIWillBeAfterNSeconds)(struct GameThingWithPos* this, const void* edx, float seconds, struct LHPoint* outPos); + uint32_t (__fastcall* AttitudeToCreatureEating)(struct GameThingWithPos* this); + const char* (__fastcall* GetText)(struct GameThingWithPos* this); + float (__fastcall* CalculateDesireForFood)(struct GameThingWithPos* this); /* 0x420 */ + float (__fastcall* CalculateDesireForRest)(struct GameThingWithPos* this); + float (__fastcall* CalculatePeopleHidingIndicator)(struct GameThingWithPos* this); + float (__fastcall* GetHeight)(const struct GameThingWithPos* this); + bool (__fastcall* IsReadyForNewScriptAction)(const struct GameThingWithPos* this); /* 0x430 */ + int (__fastcall* ForDrawFXGetNumVertices)(struct GameThingWithPos* this); + void (__fastcall* ForDrawFXGetVertexPos)(struct GameThingWithPos* this, const void* edx, int32_t param_1, struct LHPoint* param_2); + void (__fastcall* SetInScript)(struct GameThingWithPos* this, const void* edx, int32_t param_1); + void (__fastcall* SetControlledByScript)(struct GameThingWithPos* this, const void* edx, int32_t param_1); /* 0x440 */ + enum DEATH_REASON (__fastcall* GetDeathReason)(struct GameThingWithPos* this); + bool (__fastcall* IsInScript)(struct GameThingWithPos* this); + bool (__fastcall* IsMaleVillager)(struct GameThingWithPos* this); + bool (__fastcall* IsFemaleVillager)(struct GameThingWithPos* this); /* 0x450 */ + bool (__fastcall* IsAnimal)(struct GameThingWithPos* this); + bool (__fastcall* IsAChild)(struct GameThingWithPos* this); + bool (__fastcall* IsHouse)(struct GameThingWithPos* this); + bool (__fastcall* IsObject)(const struct GameThingWithPos* this); /* 0x460 */ + bool (__fastcall* IsFootball)(const struct GameThingWithPos* this); + bool (__fastcall* IsCitadel)(struct GameThingWithPos* this); + bool (__fastcall* IsForest)(struct GameThingWithPos* this); + bool (__fastcall* IsMobileObject)(struct GameThingWithPos* this); /* 0x470 */ + bool (__fastcall* IsMobileStatic)(struct GameThingWithPos* this); + bool (__fastcall* IsAnyKindOfTree)(struct GameThingWithPos* this); + bool (__fastcall* IsDeadTree)(struct GameThingWithPos* this); + bool (__fastcall* IsPileFood)(struct GameThingWithPos* this); /* 0x480 */ + bool (__fastcall* IsFeature)(struct GameThingWithPos* this); + bool (__fastcall* IsScriptMarker)(struct GameThingWithPos* this); + bool (__fastcall* IsScriptHighlight)(struct GameThingWithPos* this); + bool (__fastcall* IsWonder)(struct GameThingWithPos* this); /* 0x490 */ + bool (__fastcall* IsInfluenceRing)(struct GameThingWithPos* this); + bool (__fastcall* IsPuzzleGame)(struct GameThingWithPos* this); + bool (__fastcall* IsScaffold)(struct GameThingWithPos* this); + bool (__fastcall* IsSkeleton)(const struct GameThingWithPos* this); /* 0x4a0 */ + bool (__fastcall* IsPoisoned)(const struct GameThingWithPos* this); + bool (__fastcall* IsSpeedUp)(struct GameThingWithPos* this); + bool (__fastcall* IsParticleContainer)(struct GameThingWithPos* this); + bool (__fastcall* IsSacrificeAltar)(struct GameThingWithPos* this); /* 0x4b0 */ + bool (__fastcall* IsPot)(struct GameThingWithPos* this); + bool (__fastcall* IsComputerPlayer)(const struct GameThingWithPos* this); + bool (__fastcall* CanBeThrownByPlayer)(const struct GameThingWithPos* this); + void (__fastcall* SetSkeleton)(struct GameThingWithPos* this, const void* edx, int index); /* 0x4c0 */ + bool (__fastcall* IsSpellSeed)(const struct GameThingWithPos* this); + bool (__fastcall* IsSpellShield)(const struct GameThingWithPos* this); + bool (__fastcall* IsPileResource)(const struct GameThingWithPos* this); + bool (__fastcall* IsScriptTimer)(const struct GameThingWithPos* this); /* 0x4d0 */ + bool (__fastcall* CreateBuildingSite)(const struct GameThingWithPos* this); + enum HELP_TEXT (__fastcall* GetQueryFirstEnumText)(struct GameThingWithPos* this); + enum HELP_TEXT (__fastcall* GetQueryLastEnumText)(struct GameThingWithPos* this); + uint32_t (__fastcall* GetFOVHelpMessageSet)(struct GameThingWithPos* this); /* 0x4e0 */ + uint32_t (__fastcall* GetFOVHelpCondition)(struct GameThingWithPos* this); + uint32_t (__fastcall* GetScriptObjectType)(struct GameThingWithPos* this); + float (__fastcall* GetFacingDirection)(struct GameThingWithPos* this); + void (__fastcall* SetAffectedByWind)(struct GameThingWithPos* this, const void* edx, int param_1); /* 0x4f0 */ + float (__fastcall* GetReactionPower)(struct GameThingWithPos* this); + void (__fastcall* GetSpellCastPos)(struct GameThingWithPos* this, const void* edx, struct MapCoords* outPos); + void (__fastcall* CleanUpBeforeReset)(struct GameThingWithPos* this); +}; +static_assert(sizeof(struct GameThingWithPosVftable) == 0x500, "Data type is of wrong size"); + +union GameThingWithPosBase +{ + struct GameThing super; + struct GameThingWithPosVftable* vftable; +}; +static_assert(sizeof(union GameThingWithPosBase) == 0x14, "Data type is of wrong size"); + +struct GameThingWithPos +{ + union GameThingWithPosBase base; /* 0x0 */ + struct MapCoords coords; /* 0x14 */ + struct Object* map_child; /* 0x20 */ + uint16_t field_0x24; + uint8_t field_0x26; +}; +static_assert(sizeof(struct GameThingWithPos) == 0x28, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__16GameThingWithPos = (struct GameThingWithPosVftable*)0x008c31a0; + +// Constructors + +// win1.41 0055d050 mac 101bb2c0 GameThingWithPos::GameThingWithPos(void) +struct GameThingWithPos* __fastcall __ct__16GameThingWithPosFv(struct GameThingWithPos* this); +// win1.41 0055d050 mac inlined GameThingWithPos::GameThingWithPos(MapCoords const &) +struct GameThingWithPos* __fastcall __ct__16GameThingWithPosFRC9MapCoords(struct GameThingWithPos* this, const void* edx, const struct MapCoords* coords); + +// Non-virtual methods + +// win1.41 005705d0 mac 10098a30 GameThingWithPos::SetToZero(void) +void __fastcall SetToZero__16GameThingWithPosFv(struct GameThingWithPos* this); + +// Override methods + +// win1.41 00570350 mac 10005560 GameThingWithPos::UseFootpathIfNecessary(Living *, MapCoords const &, unsigned char) +void __fastcall UseFootpathIfNecessary__16GameThingWithPosFP6LivingRC9MapCoordsUc(struct GameThingWithPos* this, const void* edx, struct Living* param_1, const struct MapCoords* param_2, unsigned char param_3); +// win1.41 005704a0 mac 1016a2c0 GameThingWithPos::Load(GameOSFile &) +uint32_t __fastcall Load__16GameThingWithPosFR10GameOSFile(struct GameThingWithPos* this, const void* edx, struct GameOSFile* file); +// win1.41 00401940 mac 1004d010 GameThingWithPos::SetPos(MapCoords const &) +void __fastcall SetPos__16GameThingWithPosFRC9MapCoords(struct GameThingWithPos* this, const void* edx, struct MapCoords* param_2); + +DECLARE_LH_LINKED_LIST(GameThingWithPos); + +#endif /* BW1_DECOMP_GAME_THING_WITH_POS_INCLUDED_H */ diff --git a/black/GatheringBox.h b/black/GatheringBox.h new file mode 100644 index 0000000..f2a0c08 --- /dev/null +++ b/black/GatheringBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_GATHERING_BOX_INCLUDED_H +#define BW1_DECOMP_GATHERING_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct GatheringBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0xe0]; +}; +static_assert(sizeof(struct GatheringBox) == 0xf0, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__12GatheringBox = (struct DialogBoxBaseVftable*)0x008deb2c; + +#endif /* BW1_DECOMP_GATHERING_BOX_INCLUDED_H */ diff --git a/black/GatheringText.h b/black/GatheringText.h new file mode 100644 index 0000000..baf91ce --- /dev/null +++ b/black/GatheringText.h @@ -0,0 +1,54 @@ +#ifndef BW1_DECOMP_GATHERING_TEXT_INCLUDED_H +#define BW1_DECOMP_GATHERING_TEXT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint8_t */ +#include /* For char16_t */ + +// Forward Declares + +struct LH3DColor; + +enum TEXTJUSTIFY +{ + TEXTJUSTIFY_LEFT = 0x0, + TEXTJUSTIFY_CENTRE = 0x1, + TEXTJUSTIFY_RIGHT = 0x2, + TEXTJUSTIFY_LEFT_BREAK = 0x3, + TEXTJUSTIFY_CENTRE_BREAK = 0x4, + _TEXTJUSTIFY_COUNT = 0x5 +}; +static_assert(sizeof(enum TEXTJUSTIFY) == 0x4, "Data type is of wrong size"); + +static const char* TEXTJUSTIFY_strs[_TEXTJUSTIFY_COUNT] = { + "TEXTJUSTIFY_LEFT", + "TEXTJUSTIFY_CENTRE", + "TEXTJUSTIFY_RIGHT", + "TEXTJUSTIFY_LEFT_BREAK", + "TEXTJUSTIFY_CENTRE_BREAK", +}; + +struct GatheringText +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct GatheringText) == 0x1, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00831130 mac 00033360 GatheringText::GetStringWidth(wchar_t *, int, float) +float __fastcall GetStringWidth__13GatheringTextFPwif(struct GatheringText* this, const void* edx, const char16_t* str, int len, float text_size); +// win1.41 008315b0 mac 1061ca0c GatheringText::DrawText(wchar_t *, float, float, float, float, float, float, float, float, float, LH3DColor *, int, int, int) +float __fastcall DrawText__13GatheringTextFPwfffffffffP9LH3DColoriii(struct GatheringText* this, const void* edx, const char16_t* text, float param_2, float param_3, float param_4, float param_5, float param_6, float param_7, float param_8, float param_9, float param_10, const struct LH3DColor* p_color, int param_12, int param_13, int param_14); +// win1.41 00832c60 mac 10be2db8 GatheringText::DrawTextRaw(wchar_t *, int, float, float, float, float, LH3DColor *, int, LH3DColor *, float, float) +void __fastcall DrawTextRaw__13GatheringTextFPwiffffP9LH3DColoriP9LH3DColorff(struct GatheringText* this, const void* edx, const char16_t* text, int param_2, float x, float y, float param_5, float param_6, struct LH3DColor* param_7, int param_8, struct LH3DColor* param_9, float param_10, float param_11); + +// win1.41 004079c0 mac 10087550 NeedsBiggerText(void) +bool __cdecl NeedsBiggerText__Fv(void); +// win1.41 00407a00 mac 1036d670 GetMidTextSize(void) +int __cdecl GetMidTextSize__Fv(void); +// win1.41 00407a10 mac 10513380 GetSmallTextSize(void) +int __cdecl GetSmallTextSize__Fv(void); + +#endif /* BW1_DECOMP_GATHERING_TEXT_INCLUDED_H */ diff --git a/black/GestureSystem.h b/black/GestureSystem.h new file mode 100644 index 0000000..80235d2 --- /dev/null +++ b/black/GestureSystem.h @@ -0,0 +1,29 @@ +#ifndef BW1_DECOMP_GESTURE_SYSTEM_INCLUDED_H +#define BW1_DECOMP_GESTURE_SYSTEM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct GestureSystem +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0xc98]; +}; +static_assert(sizeof(struct GestureSystem) == 0xca0, "Data type is of wrong size"); + +static struct BaseVftable* __vt__13GestureSystem = (struct BaseVftable*)0x008df800; + +// Constructors + +// win1.41 0054bb40 mac inlined GestureSystem::GestureSystem(void) +struct GestureSystem* __fastcall __ct__13GestureSystem(struct GestureSystem* this); + +struct GestureSystemPacketData +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct GestureSystemPacketData) == 0x1, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_GESTURE_SYSTEM_INCLUDED_H */ diff --git a/black/GestureSystemData.h b/black/GestureSystemData.h new file mode 100644 index 0000000..258dbec --- /dev/null +++ b/black/GestureSystemData.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_GESTURE_SYSTEM_DATA_INCLUDED_H +#define BW1_DECOMP_GESTURE_SYSTEM_DATA_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct GestureSystemData +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0x654]; +}; +static_assert(sizeof(struct GestureSystemData) == 0x65c, "Data type is of wrong size"); + +static struct BaseVftable* __vt__17GestureSystemData = (struct BaseVftable*)0x008df7e0; + +#endif /* BW1_DECOMP_GESTURE_SYSTEM_DATA_INCLUDED_H */ diff --git a/black/GestureSystemDataList.h b/black/GestureSystemDataList.h new file mode 100644 index 0000000..882fb39 --- /dev/null +++ b/black/GestureSystemDataList.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_GESTURE_SYSTEM_DATA_LIST_INCLUDED_H +#define BW1_DECOMP_GESTURE_SYSTEM_DATA_LIST_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct GestureSystemDataList +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0x8]; +}; +static_assert(sizeof(struct GestureSystemDataList) == 0x10, "Data type is of wrong size"); + +static struct BaseVftable* __vt__21GestureSystemDataList = (struct BaseVftable*)0x008df7c0; + +#endif /* BW1_DECOMP_GESTURE_SYSTEM_DATA_LIST_INCLUDED_H */ diff --git a/black/GestureSystemResult.h b/black/GestureSystemResult.h new file mode 100644 index 0000000..a3dfd96 --- /dev/null +++ b/black/GestureSystemResult.h @@ -0,0 +1,13 @@ +#ifndef BW1_DECOMP_GESTURE_SYSTEM_RESULT_INCLUDED_H +#define BW1_DECOMP_GESTURE_SYSTEM_RESULT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +struct GestureSystemResult +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct GestureSystemResult) == 0x1, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_GESTURE_SYSTEM_RESULT_INCLUDED_H */ diff --git a/black/Global.h b/black/Global.h new file mode 100644 index 0000000..cbd5782 --- /dev/null +++ b/black/Global.h @@ -0,0 +1,38 @@ +#ifndef BW1_DECOMP_GLOBAL_INCLUDED_H +#define BW1_DECOMP_GLOBAL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "Debug.h" /* For struct GDebug */ + +// Forward Declares + +struct GAudio; + +struct GGlobal +{ + struct GAudio* audio; /* 0x0 */ + struct GDebug debug; + void* (__cdecl* field_0x2d2ac)( void ); + uint32_t field_0x2d2b0; + uint32_t field_0x2d2b4; + uint32_t field_0x2d2b8; + uint32_t field_0x2d2bc; + uint32_t field_0x2d2c0; + uint32_t field_0x2d2c4; + uint32_t field_0x2d2c8; + uint32_t field_0x2d2cc; + uint32_t field_0x2d2d0; + uint32_t field_0x2d2d4; + uint32_t field_0x2d2d8; + uint32_t field_0x2d2dc; + uint32_t field_0x2d2e0; + void* (__cdecl* field_0x2d2e4)( void ); + uint8_t field_0x2d2e8[0xc]; + char current_directory[0x100]; /* 0x2d2f4 */ + uint8_t field_0x2d3f4[0x10c]; +}; +static_assert(sizeof(struct GGlobal) == 0x2d500, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_GLOBAL_INCLUDED_H */ diff --git a/black/GlobalGameLists.h b/black/GlobalGameLists.h new file mode 100644 index 0000000..036db84 --- /dev/null +++ b/black/GlobalGameLists.h @@ -0,0 +1,117 @@ +#ifndef BW1_DECOMP_GLOBAL_GAME_LISTS_INCLUDED_H +#define BW1_DECOMP_GLOBAL_GAME_LISTS_INCLUDED_H + +#include /* For static_assert */ + +#include "AnimatedStatic.h" /* For struct AnimatedStatic */ +#include "Arena.h" /* For struct GArena */ +#include "Artifact.h" /* For struct TownArtifact */ +#include "Ball.h" /* For struct Ball */ +#include "Base.h" /* For struct Base */ +#include "BaseInfo.h" /* For struct GBaseInfo */ +#include "BigForest.h" /* For struct BigForest */ +#include "BuildingSite.h" /* For struct BuildingSite */ +#include "Climate.h" /* For struct GClimate */ +#include "Dance.h" /* For struct Dance */ +#include "EarthQuake.h" /* For struct EarthQuake */ +#include "Field.h" /* For struct Field */ +#include "FireEffect.h" /* For struct FireEffect */ +#include "FireFly.h" /* For struct FireFly */ +#include "FishFarm.h" /* For struct FishFarm */ +#include "Flock.h" /* For struct Flock */ +#include "Footpath.h" /* For struct GFootpath */ +#include "FootpathFinder.h" /* For struct GFootpathFinder */ +#include "Forest.h" /* For struct Forest */ +#include "Fragment.h" /* For struct Fragment */ +#include "GameThing.h" /* For struct GameThing */ +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ +#include "Influence.h" /* For struct InfluenceRing */ +#include "Living.h" /* For struct Living */ +#include "MagicFireBall.h" /* For struct MagicFireBall */ +#include "MapShield.h" /* For struct MapShield */ +#include "Mist.h" /* For struct Mist */ +#include "MobileObject.h" /* For struct MobileObject */ +#include "MultiMapFixed.h" /* For struct MultiMapFixed */ +#include "Object.h" /* For struct Object */ +#include "ParticleContainer.h" /* For struct GParticleContainer */ +#include "PileFood.h" /* For struct PileFood */ +#include "Player.h" /* For struct GPlayer */ +#include "PuzzleGame.h" /* For struct PuzzleGame */ +#include "Reaction.h" /* For struct Reaction */ +#include "Reward.h" /* For struct Reward */ +#include "ScriptHighlight.h" /* For struct ScriptHighlight */ +#include "SoundTag.h" /* For struct SoundTag */ +#include "Spell.h" /* For struct Spell */ +#include "Stream.h" /* For struct GStream */ +#include "StreetLantern.h" /* For struct GStreetLantern */ +#include "StreetLight.h" /* For struct GStreetLight */ +#include "Town.h" /* For struct Town */ +#include "TownCentre.h" /* For struct TownCentre */ +#include "Tree.h" /* For struct Tree */ +#include "Villager.h" /* For struct Villager */ +#include "Waterfall.h" /* For struct GWaterfall */ +#include "Waypoint.h" /* For struct Waypoint */ +#include "WeatherThing.h" /* For struct WeatherThing */ +#include "Whale.h" /* For struct Whale */ + +struct GlobalGameLists +{ + struct Base super; /* 0x0 */ + struct LHListHead__Ball balls; + struct LHListHead__Forest forests; /* 0x10 */ + struct LHListHead__Living living_list; + struct LHListHead__Spell spells; /* 0x20 */ + struct LHListHead__GParticleContainer particle_containers; + struct LHListHead__Dance dances; /* 0x30 */ + struct LHListHead__Reaction reactions; + struct LHLinkedList__MobileObject mobile_objects; /* 0x40 */ + struct LHLinkedList__GFootpathFinder footpath_finder; + struct LHListHead__EarthQuake earthquakes; /* 0x50 */ + struct LHListHead__Villager villagers_without_town; + struct LHListHead__Field fields; /* 0x60 */ + struct LHListHead__FishFarm fish_farms; + struct LHListHead__FireEffect fire_effects; /* 0x70 */ + struct LHListHead__SoundTag sound_tags; + struct LHListHead__Mist mist; /* 0x80 */ + struct LHListHead__GStreetLight street_lights; + struct LHListHead__GStreetLantern street_lanterns; /* 0x90 */ + struct LHListHead__PileFood food_piles; + struct LHLinkedList__Flock flocks; /* 0xa0 */ + struct LHListHead__InfluenceRing influence_ring_list; + struct LHListHead__WeatherThing weather_things; /* 0xb0 */ + struct LHListHead__GStream streams; + struct LHListHead__GFootpath footpaths; /* 0xc0 */ + struct LHListHead__GWaterfall waterfalls; + struct LHListHead__Waypoint waypoints; /* 0xd0 */ + struct LHListHead__GArena arenas; + struct LHLinkedList__Town town_list; /* 0xe0 */ + struct LHLinkedList__GameThingWithPos game_thing_with_pos; + struct LHListHead__ScriptHighlight script_highlights; /* 0xf0 */ + struct LHListHead__MagicFireBall magic_fire_balls; + struct LHListHead__MapShield map_shields; /* 0x100 */ + struct LHLinkedList__BuildingSite building_sites; + struct LHLinkedList__MultiMapFixed multi_map_fixed; /* 0x110 */ + struct LHLinkedList__AnimatedStatic animated_statics; + struct LHListHead__GPlayer players; /* 0x120 */ + struct LHLinkedList__Reward rewards; + struct LHLinkedList__Object objects; /* 0x130 */ + struct LHLinkedList__Tree trees; + struct LHListHead__BigForest big_forests; /* 0x140 */ + struct LHListHead__GBaseInfo base_infos; + struct LHLinkedList__GClimate climates; /* 0x150 */ + struct LHLinkedList__TownCentre town_centres; + struct LHListHead__Whale whales; /* 0x160 */ + struct LHListHead__FireFly fire_flies; + struct LHListHead__PuzzleGame puzzle_game; /* 0x170 */ + struct LHListHead__GameThing game_things; + struct LHLinkedList__TownArtifact town_artifacts; /* 0x180 */ + struct LHLinkedList__Fragment fragments; +}; +static_assert(sizeof(struct GlobalGameLists) == 0x190, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00591370 mac 10059120 GlobalGameLists::Process(void) +void __fastcall Process__15GlobalGameListsFv(struct GlobalGameLists* this); + +#endif /* BW1_DECOMP_GLOBAL_GAME_LISTS_INCLUDED_H */ diff --git a/black/GroupBehaviour.h b/black/GroupBehaviour.h new file mode 100644 index 0000000..15e924f --- /dev/null +++ b/black/GroupBehaviour.h @@ -0,0 +1,92 @@ +#ifndef BW1_DECOMP_GROUP_BEHAVIOUR_INCLUDED_H +#define BW1_DECOMP_GROUP_BEHAVIOUR_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "DanceGroup.h" /* For enum DANCE_GROUP_ACTION_TYPE */ +#include "DancePathInfo.h" /* For struct DancePathInfo */ +#include "GameThingWithPos.h" /* For struct GameThingWithPos, struct GameThingWithPosVftable */ + +// Forward Declares + +struct DanceGroup; +struct DanceGroupActionArgument; +struct GroupBehaviour; + +struct GroupBehaviourVftable +{ + struct GameThingWithPosVftable super; /* 0x0 */ + void (__fastcall* Process)(struct GroupBehaviour* this); /* 0x500 */ + void (__fastcall* UpdateGroupBasedOnAction)(struct GroupBehaviour* this, const void* edx, struct DanceGroup* dance_group, enum DANCE_GROUP_ACTION_TYPE action_type, const struct DanceGroupActionArgument* argument, uint32_t param_4); + void (__fastcall* AddAction_1)(struct GroupBehaviour* this, const void* edx, float param_1, struct LHDynamicStack__Ul stack, enum DANCE_GROUP_ACTION_TYPE action_type, const struct DanceGroupActionArgument* argument); + void (__fastcall* AddAction_2)(struct GroupBehaviour* this, const void* edx, float param_1, uint32_t param_2, enum DANCE_GROUP_ACTION_TYPE action_type, struct DanceGroupActionArgument* arguments); + void (__fastcall* LoadDance)(struct GroupBehaviour* this, const void* edx, const char* param_1); /* 0x510 */ + float (__fastcall* GetAngle)(struct GroupBehaviour* this); +}; +static_assert(sizeof(struct GroupBehaviourVftable) == 0x518, "Data type is of wrong size"); + +struct GroupBehaviour +{ + struct GameThingWithPos super; /* 0x0 */ + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + uint32_t field_0x38; + uint32_t field_0x3c; + uint32_t field_0x40; + uint32_t field_0x44; + uint8_t field_0x48; + uint32_t field_0x4c[0xa]; + uint32_t field_0x74; + uint32_t field_0x78; + uint32_t field_0x7c; + uint32_t field_0x80; + uint32_t field_0x84; + uint32_t field_0x88; + uint32_t field_0x8c; + uint32_t field_0x90; + uint32_t field_0x94; + uint32_t field_0x98; + float field_0x9c; + float field_0xa0; + uint32_t field_0xa4; + uint32_t field_0xa8; + float group_angle; + uint32_t field_0xb0; + uint32_t field_0xb4; + uint32_t field_0xb8; + uint32_t field_0xbc; + uint32_t field_0xc0; + uint32_t field_0xc4; + struct DancePathInfo dance_path_info; +}; +static_assert(sizeof(struct GroupBehaviour) == 0xe8, "Data type is of wrong size"); + +static struct GroupBehaviourVftable* __vt__14GroupBehaviour = (struct GroupBehaviourVftable*)0x009003f8; + +// Constructors + +// win1.41 00596070 mac 100fad20 GroupBehaviour::GroupBehaviour(void) +struct GroupBehaviour* __fastcall __ct__14GroupBehaviourFv(struct GroupBehaviour* this); + +// Non-virtual methods + +// win1.41 00597270 mac 100f8990 GroupBehaviour::AddAction(float, unsigned long, DANCE_GROUP_ACTION_TYPE, DanceGroupActionArgument const &) +void __fastcall AddAction__14GroupBehaviourFfUl23DANCE_GROUP_ACTION_TYPERC24DanceGroupActionArgument(struct GroupBehaviour* this, const void* edx, float param_1, uint32_t param_2, enum DANCE_GROUP_ACTION_TYPE action_type, struct DanceGroupActionArgument* arguments); +// win1.41 00597300 mac 100f8760 GroupBehaviour::AddAction(float, LHDynamicStack
      &, DANCE_GROUP_ACTION_TYPE, DanceGroupActionArgument const &) +void __fastcall AddAction__14GroupBehaviourFfR18LHDynamicStack_Ul_23DANCE_GROUP_ACTION_TYPERC24DanceGroupActionArgument(struct GroupBehaviour* this, const void* edx, float param_1, struct LHDynamicStack__Ul stack, enum DANCE_GROUP_ACTION_TYPE action_type, const struct DanceGroupActionArgument* argument); + +// Override methods + +// win1.41 005964a0 mac 106ffb98 GroupBehaviour::Process(void) +void __fastcall Process__14GroupBehaviour(struct GroupBehaviour* this); +// win1.41 00596700 mac 100f90b0 GroupBehaviour::UpdateGroupBasedOnAction(DanceGroup *, DANCE_GROUP_ACTION_TYPE, DanceGroupActionArgument const &, unsigned long) +void __fastcall UpdateGroupBasedOnAction__14GroupBehaviourFP10DanceGroup23DANCE_GROUP_ACTION_TYPERC24DanceGroupActionArgumentUl(struct GroupBehaviour* this, const void* edx, struct DanceGroup* dance_group, enum DANCE_GROUP_ACTION_TYPE action_type, const struct DanceGroupActionArgument* argument, uint32_t param_4); +// win1.41 005978e0 mac 100f6eb0 GroupBehaviour::LoadDance(char const *) +void __fastcall LoadDance__14GroupBehaviourFPCc(struct GroupBehaviour* this, const void* edx, const char* param_1); +// win1.41 0050cc40 mac 100f4e30 GroupBehaviour::GetAngle(void) +float __fastcall GetAngle__14GroupBehaviourFv(struct GroupBehaviour* this); + +#endif /* BW1_DECOMP_GROUP_BEHAVIOUR_INCLUDED_H */ diff --git a/black/HairGroup.h b/black/HairGroup.h new file mode 100644 index 0000000..a74f908 --- /dev/null +++ b/black/HairGroup.h @@ -0,0 +1,44 @@ +#ifndef BW1_DECOMP_HAIR_GROUP_INCLUDED_H +#define BW1_DECOMP_HAIR_GROUP_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +// Forward Declares + +struct LH3DHair; +struct LHFile; + +struct HairGroup +{ + bool field_0x0; + int hair_count; + uint32_t field_0x8[0x3]; + uint32_t field_0x14[0x3]; + uint32_t field_0x20[0x3]; + float field_0x2c[0x3]; + float field_0x38[0x3]; + float field_0x44[0x3]; + float field_0x50[0x3]; + uint32_t count_0x5c; + uint32_t field_0x60; + uint32_t field_0x64; + uint32_t field_0x68; + uint32_t field_0x6c; + uint32_t field_0x70; + struct LH3DHair* hairs; + uint32_t field_0x78; +}; +static_assert(sizeof(struct HairGroup) == 0x7c, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00847b50 mac 10041060 HairGroup::DeleteHair(long) +void __fastcall DeleteHair__9HairGroupFl(struct HairGroup* this, const void* edx, int param_1); +// win1.41 008479e0 mac 10041400 HairGroup::Init(long) +void __fastcall Init__9HairGroupFl(struct HairGroup* this, const void* edx, long param_1); +// win1.41 00848180 mac 101376f0 HairGroup::ReadBinary(LHFile *) +void __fastcall ReadBinary__9HairGroupFP6LHFile(struct HairGroup* this, const void* edx, struct LHFile* param_1); + +#endif /* BW1_DECOMP_HAIR_GROUP_INCLUDED_H */ diff --git a/black/HandState.h b/black/HandState.h new file mode 100644 index 0000000..4123256 --- /dev/null +++ b/black/HandState.h @@ -0,0 +1,75 @@ +#ifndef BW1_DECOMP_HAND_STATE_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +// Forward Declares + +struct CHand; +struct HandState; +struct LHMatrix; + +enum HAND_STATES +{ + HAND_STATE_INVISIBLE = 0x0, + HAND_STATE_NORMAL = 0x1, + HAND_STATE_CAMERA = 0x2, + HAND_STATE_TUG = 0x3, + HAND_STATE_HOLDING = 0x4, + HAND_STATE_TOTEM = 0x5, + HAND_STATE_MULTI_PICK_UP = 0x6, + HAND_STATE_CREATURE = 0x7, + HAND_STATE_GRAIN = 0x8, + HAND_STATE_PLAY_ANIM = 0x9, + HAND_STATE_CITADEL = 0xa, + _HAND_STATES_COUNT = 0xb +}; +static_assert(sizeof(enum HAND_STATES) == 0x4, "Data type is of wrong size"); + +static const char* HAND_STATES_strs[_HAND_STATES_COUNT] = { + "HAND_STATE_INVISIBLE", + "HAND_STATE_NORMAL", + "HAND_STATE_CAMERA", + "HAND_STATE_TUG", + "HAND_STATE_HOLDING", + "HAND_STATE_TOTEM", + "HAND_STATE_MULTI_PICK_UP", + "HAND_STATE_CREATURE", + "HAND_STATE_GRAIN", + "HAND_STATE_PLAY_ANIM", + "HAND_STATE_CITADEL", +}; + +struct HandStateVftable +{ + void (__fastcall* Enter)(struct HandState* this); /* 0x0 */ + void (__fastcall* DrawTheHeldObject)(struct HandState* this); + void (__fastcall* Exit)(struct HandState* this); + void (__fastcall* Update)(struct HandState* this, const void* edx, float param_1, struct LHMatrix* param_2); + bool (__fastcall* AllowCameraTricons)(struct HandState* this); /* 0x10 */ +}; +static_assert(sizeof(struct HandStateVftable) == 0x14, "Data type is of wrong size"); + +struct HandState +{ + struct HandStateVftable* vftable; /* 0x0 */ + struct CHand* hand; +}; +static_assert(sizeof(struct HandState) == 0x8, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac inlined HandState::HandState(CHand*) +struct HandState* __fastcall __ct__9HandStateFP5CHand(struct HandState* this, const void* edx, struct CHand* hand); + +// Override methods + +// win1.41 0046e5e0 mac 101c6110 HandState::DrawTheHeldObject(void) +void __fastcall DrawTheHeldObject__9HandStateFv(struct HandState* this); +// win1.41 005b02d0 mac 101c5590 HandState::Exit(void) +void __fastcall Exit__9HandStateFv(struct HandState* this); +// win1.41 0046be80 mac 101a6900 HandState::AllowCameraTricons(void) +bool __fastcall AllowCameraTricons__9HandStateFv(struct HandState* this); + +#endif /* BW1_DECOMP_HAND_STATE_INCLUDED_H */ diff --git a/black/HandStateCamera.h b/black/HandStateCamera.h new file mode 100644 index 0000000..f8089a2 --- /dev/null +++ b/black/HandStateCamera.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_HAND_STATE_CAMERA_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_CAMERA_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t, uintptr_t */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStateCamera +{ + struct HandState super; /* 0x0 */ + uintptr_t field_0x8; + uint8_t field_0xC[0xcc]; +}; +static_assert(sizeof(struct HandStateCamera) == 0xd8, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__15HandStateCamera = (struct HandStateVftable*)0x00900a54; + +// Constructors + +// win1.41 005b02b0 mac 10336ec0 HandStateCamera::HandStateCamera(CHand*) +struct HandStateCamera* __fastcall __ct__15HandStateCameraFP5CHand(struct HandStateCamera* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_CAMERA_INCLUDED_H */ diff --git a/black/HandStateCitadel.h b/black/HandStateCitadel.h new file mode 100644 index 0000000..c5d5be9 --- /dev/null +++ b/black/HandStateCitadel.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_HAND_STATE_CITADEL_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_CITADEL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStateCitadel +{ + struct HandState super; /* 0x0 */ + uint32_t field_0x8; + uint8_t field_0xC[0xc4]; +}; +static_assert(sizeof(struct HandStateCitadel) == 0xd0, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__16HandStateCitadel = (struct HandStateVftable*)0x00900a80; + +// Constructors + +// win1.41 005b0bf0 mac 103377e0 HandStateCitadel::HandStateCitadel(CHand*) +struct HandStateCitadel* __fastcall __ct__16HandStateCitadelFP5CHand(struct HandStateCitadel* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_CITADEL_INCLUDED_H */ diff --git a/black/HandStateCreature.h b/black/HandStateCreature.h new file mode 100644 index 0000000..16b12ac --- /dev/null +++ b/black/HandStateCreature.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_HAND_STATE_CREATURE_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_CREATURE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStateCreature +{ + struct HandState super; /* 0x0 */ + uint8_t field_0x8[0x118]; +}; +static_assert(sizeof(struct HandStateCreature) == 0x120, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__17HandStateCreature = (struct HandStateVftable*)0x00900aac; + +// Constructors + +// win1.41 005b13d0 mac 10338f00 HandStateCreature::HandStateCreature(CHand*) +struct HandStateCreature* __fastcall __ct__17HandStateCreatureFP5CHand(struct HandStateCreature* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_CREATURE_INCLUDED_H */ diff --git a/black/HandStateGrain.h b/black/HandStateGrain.h new file mode 100644 index 0000000..6741f2c --- /dev/null +++ b/black/HandStateGrain.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_HAND_STATE_GRAIN_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_GRAIN_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "HandStateHolding.h" /* For struct HandStateHolding */ + +// Forward Declares + +struct CHand; + +struct HandStateGrain +{ + struct HandStateHolding super; /* 0x0 */ + uint8_t field_0x8[0xe4]; /* 0x144 */ +}; +static_assert(sizeof(struct HandStateGrain) == 0x228, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__14HandStateGrain = (struct HandStateVftable*)0x00900b00; + +// Constructors + +// win1.41 005b2b80 mac 10339d60 HandStateGrain::HandStateGrain(CHand*) +struct HandStateGrain* __fastcall __ct__14HandStateGrainFP5CHand(struct HandStateGrain* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_GRAIN_INCLUDED_H */ diff --git a/black/HandStateHolding.h b/black/HandStateHolding.h new file mode 100644 index 0000000..87d2ece --- /dev/null +++ b/black/HandStateHolding.h @@ -0,0 +1,29 @@ +#ifndef BW1_DECOMP_HAND_STATE_HOLDING_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_HOLDING_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t, uintptr_t */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStateHolding +{ + struct HandState super; /* 0x0 */ + uintptr_t field_0x8; + uintptr_t field_0x10; + uint8_t field_0xC[0x134]; /* 0x10 */ +}; +static_assert(sizeof(struct HandStateHolding) == 0x144, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__16HandStateHolding = (struct HandStateVftable*)0x00900b40; + +// Constructors + +// win1.41 005b3aa0 mac 1033bba0 HandStateHolding::HandStateHolding(CHand*) +struct HandStateHolding* __fastcall __ct__16HandStateHoldingFP5CHand(struct HandStateHolding* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_HOLDING_INCLUDED_H */ diff --git a/black/HandStateInvisible.h b/black/HandStateInvisible.h new file mode 100644 index 0000000..a253453 --- /dev/null +++ b/black/HandStateInvisible.h @@ -0,0 +1,25 @@ +#ifndef BW1_DECOMP_HAND_STATE_INVISIBLE_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_INVISIBLE_INCLUDED_H + +#include /* For static_assert */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStateInvisible +{ + struct HandState super; /* 0x0 */ +}; +static_assert(sizeof(struct HandStateInvisible) == 0x8, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__18HandStateInvisible = (struct HandStateVftable*)0x008cbeb4; + +// Constructors + +// win1.41 inlined mac inlined HandStateInvisible::HandStateInvisible(CHand*) +struct HandStateInvisible* __fastcall __ct__18HandStateInvisibleFP5CHand(struct HandStateInvisible* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_INVISIBLE_INCLUDED_H */ diff --git a/black/HandStateMultiPickUp.h b/black/HandStateMultiPickUp.h new file mode 100644 index 0000000..814fa7a --- /dev/null +++ b/black/HandStateMultiPickUp.h @@ -0,0 +1,25 @@ +#ifndef BW1_DECOMP_HAND_STATE_MULTI_PICK_UP_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_MULTI_PICK_UP_INCLUDED_H + +#include /* For static_assert */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStateMultiPickUp +{ + struct HandState super; /* 0x0 */ +}; +static_assert(sizeof(struct HandStateMultiPickUp) == 0x8, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__20HandStateMultiPickUp = (struct HandStateVftable*)0x00900b6c; + +// Constructors + +// win1.41 005b5730 mac 1033c330 HandStateMultiPickUp::HandStateMultiPickUp(CHand*) +struct HandStateMultiPickUp* __fastcall __ct__20HandStateMultiPickUpFP5CHand(struct HandStateMultiPickUp* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_MULTI_PICK_UP_INCLUDED_H */ diff --git a/black/HandStateNormal.h b/black/HandStateNormal.h new file mode 100644 index 0000000..560dee5 --- /dev/null +++ b/black/HandStateNormal.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_HAND_STATE_NORMAL_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_NORMAL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uintptr_t */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStateNormal +{ + struct HandState super; /* 0x0 */ + uintptr_t field_0x8; + uintptr_t field_0xC; +}; +static_assert(sizeof(struct HandStateNormal) == 0x10, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__15HandStateNormal = (struct HandStateVftable*)0x00900ba0; + +// Constructors + +// win1.41 005b5c70 mac 1033c8a0 HandStateNormal::HandStateNormal(CHand*) +struct HandStateNormal* __fastcall __ct__15HandStateNormalFP5CHand(struct HandStateNormal* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_NORMAL_INCLUDED_H */ diff --git a/black/HandStatePlayAnim.h b/black/HandStatePlayAnim.h new file mode 100644 index 0000000..0989fc5 --- /dev/null +++ b/black/HandStatePlayAnim.h @@ -0,0 +1,29 @@ +#ifndef BW1_DECOMP_HAND_STATE_PLAY_ANIM_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_PLAY_ANIM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStatePlayAnim +{ + struct HandState super; /* 0x0 */ + uint8_t field_0x8[0x10]; + uint32_t field_0x18; + uint32_t field_0x1C; +}; +static_assert(sizeof(struct HandStatePlayAnim) == 0x20, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__17HandStatePlayAnim = (struct HandStateVftable*)0x00900bc4; + +// Constructors + +// win1.41 005b74f0 mac 1033cb50 HandStatePlayAnim::HandStatePlayAnim(CHand*) +struct HandStatePlayAnim* __fastcall __ct__17HandStatePlayAnimFP5CHand(struct HandStatePlayAnim* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_PLAY_ANIM_INCLUDED_H */ diff --git a/black/HandStateTotem.h b/black/HandStateTotem.h new file mode 100644 index 0000000..b06e40b --- /dev/null +++ b/black/HandStateTotem.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_HAND_STATE_TOTEM_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_TOTEM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStateTotem +{ + struct HandState super; /* 0x0 */ + uint8_t field_0x8[0xa4]; +}; +static_assert(sizeof(struct HandStateTotem) == 0xac, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__14HandStateTotem = (struct HandStateVftable*)0x00900be4; + +// Constructors + +// win1.41 005b7670 mac 1033d4c0 HandStateTotem::HandStateTotem(CHand*) +struct HandStateTotem* __fastcall __ct__14HandStateTotemFP5CHand(struct HandStateTotem* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_TOTEM_INCLUDED_H */ diff --git a/black/HandStateTug.h b/black/HandStateTug.h new file mode 100644 index 0000000..1739c80 --- /dev/null +++ b/black/HandStateTug.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_HAND_STATE_TUG_INCLUDED_H +#define BW1_DECOMP_HAND_STATE_TUG_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t, uintptr_t */ + +#include "HandState.h" /* For struct HandState */ + +// Forward Declares + +struct CHand; + +struct HandStateTug +{ + struct HandState super; /* 0x0 */ + uintptr_t field_0x8; + uint8_t field_0xC[0x140]; +}; +static_assert(sizeof(struct HandStateTug) == 0x14c, "Data type is of wrong size"); + +static struct HandStateVftable* __vt__12HandStateTug = (struct HandStateVftable*)0x00900c1c; + +// Constructors + +// win1.41 005b7dd0 mac 1033e9e0 HandStateTug::HandStateTug(CHand*) +struct HandStateTug* __fastcall __ct__12HandStateTugFP5CHand(struct HandStateTug* this, const void* edx, struct CHand* hand); + +#endif /* BW1_DECOMP_HAND_STATE_TUG_INCLUDED_H */ diff --git a/black/HelpProfile.h b/black/HelpProfile.h new file mode 100644 index 0000000..f47176f --- /dev/null +++ b/black/HelpProfile.h @@ -0,0 +1,40 @@ +#ifndef BW1_DECOMP_HELP_PROFILE_INCLUDED_H +#define BW1_DECOMP_HELP_PROFILE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct CameraHelpAccumulator +{ + uint8_t field_0x0[0x10c]; +}; +static_assert(sizeof(struct CameraHelpAccumulator) == 0x10c, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00448f20 mac 1019cd90 CameraHelpAccumulator::Reset(void) +void __fastcall Reset__21CameraHelpAccumulatorFv(struct CameraHelpAccumulator* this); + +struct HelpProfile +{ + struct Base super; /* 0x0 */ + struct CameraHelpAccumulator accumulators[0x31]; + uint32_t field_0x3354; +}; +static_assert(sizeof(struct HelpProfile) == 0x3358, "Data type is of wrong size"); + +static struct BaseVftable* __vt__11HelpProfile = (struct BaseVftable*)0x00915458; + +// Static methods + +// win1.41 005c4500 mac 1034b3b0 HelpProfile::Create(void) +struct HelpProfile* __cdecl Create__11HelpProfileFv(void); + +// Non-virtual methods + +// win1.41 005c4770 mac 1034b310 HelpProfile::SetToZero(void) +void __fastcall SetToZero__11HelpProfileFv(struct HelpProfile* this); + +#endif /* BW1_DECOMP_HELP_PROFILE_INCLUDED_H */ diff --git a/black/HelpSpirit.h b/black/HelpSpirit.h new file mode 100644 index 0000000..f1fd421 --- /dev/null +++ b/black/HelpSpirit.h @@ -0,0 +1,31 @@ +#ifndef BW1_DECOMP_HELP_SPIRIT_INCLUDED_H +#define BW1_DECOMP_HELP_SPIRIT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum HELP_SPIRIT_TYPE */ + +#include "Object.h" /* For struct Object */ + +// Forward Declares + +struct MapCoords; + +struct HelpSpirit +{ + struct Object super; /* 0x0 */ + uint32_t field_0x54; + enum HELP_SPIRIT_TYPE type; + uint8_t field_0x5c[0x8]; +}; +static_assert(sizeof(struct HelpSpirit) == 0x64, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__10HelpSpirit = (struct ObjectVftable*)0x009154b8; + +// Constructors + +// win1.41 005c4aa0 mac 1034c700 HelpSpirit::HelpSpirit(MapCoords const &, HELP_SPIRIT_TYPE) +struct HelpSpirit* __fastcall __ct__10HelpSpiritFRC9MapCoords16HELP_SPIRIT_TYPE(struct HelpSpirit* this, const void* edx, const struct MapCoords* coords, enum HELP_SPIRIT_TYPE type); + +#endif /* BW1_DECOMP_HELP_SPIRIT_INCLUDED_H */ diff --git a/black/HelpSystem.h b/black/HelpSystem.h new file mode 100644 index 0000000..2d4a677 --- /dev/null +++ b/black/HelpSystem.h @@ -0,0 +1,110 @@ +#ifndef BW1_DECOMP_HELP_SYSTEM_INCLUDED_H +#define BW1_DECOMP_HELP_SYSTEM_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint16_t, uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct Bubble; +struct HelpDudeControl; +struct HelpSpirit; + +struct HelpSystem +{ + struct Base super; /* 0x0 */ + struct HelpSpirit* spirit_type_2; + struct HelpSpirit* spirit_type_1; + struct HelpDudeControl* help_dude_control; /* 0x10 */ + uint32_t help_text; + struct Bubble* bubble; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t icon0; + uint32_t icon1; + uint32_t icon2; + uint8_t field_0x30[0x48]; + uint32_t field_0x78[0x98]; + uint32_t field_0x2d8[0x9]; + uint32_t field_0x2fc[0x98]; + uint32_t field_0x55c; + uint32_t field_0x560; + uint8_t field_0x564; + uint8_t field_0x565; + uint8_t field_0x566; + uint8_t field_0x567; + uint32_t field_0x568; + uint16_t field_0x56c; + uint8_t field_0x56e; + uint8_t field_0x56f; + uint32_t field_0x570; + uint32_t field_0x574; + uint32_t field_0x578; + uint32_t field_0x57c; + uint32_t field_0x580; + uint32_t field_0x584[0x6]; + uint8_t field_0x59c[0x4028]; + uint32_t field_0x45c4; + uint32_t field_0x45c8; + uint32_t field_0x45cc; + uint32_t field_0x45d0; + uint8_t field_0x45d4; + uint8_t field_0x45d5; + uint8_t field_0x45d6; + uint8_t field_0x45d7; + uint32_t field_0x45d8; + uint32_t field_0x45dc; + uint32_t field_0x45e0; + uint32_t field_0x45e4; + int field_0x45e8; + int field_0x45ec; + float field_0x45f0; + int field_0x45f4; + int field_0x45f8; + uint32_t field_0x45fc; + uint8_t field_0x4600; + uint8_t field_0x4601; + uint8_t field_0x4602; + uint8_t field_0x4603; + uint8_t field_0x4604; + uint8_t field_0x4605; + uint8_t field_0x4606; + uint8_t field_0x4607; + uint32_t field_0x4608; + uint32_t field_0x460c; + uint8_t field_0x4610; + uint8_t field_0x4611; + uint8_t field_0x4612; + uint8_t field_0x4613; +}; +static_assert(sizeof(struct HelpSystem) == 0x4614, "Data type is of wrong size"); + +static struct BaseVftable* __vt__10HelpSystem = (struct BaseVftable*)0x0092a47c; + +// Constructors + +// win1.41 005c5410 mac 103519a0 HelpSystem::HelpSystem(void) +struct HelpSystem* __fastcall __ct__10HelpSystemFv(struct HelpSystem* this); + +// Non-virtual methods + +// win1.41 005c5460 mac 103518b0 HelpSystem::SetToZero(void) +void __fastcall SetToZero__10HelpSystemFv(struct HelpSystem* this); +// win1.41 005c54e0 mac 103517f0 HelpSystem::ClearTextDisplayed(void) +void __fastcall ClearTextDisplayed__10HelpSystemFv(struct HelpSystem* this); +// win1.41 005c5550 mac 10351760 HelpSystem::ClearAllText(void) +void __fastcall ClearAllText__10HelpSystemFv(struct HelpSystem* this); +// win1.41 005c5580 mac 10351660 HelpSystem::Reset(void) +void __fastcall Reset__10HelpSystemFv(struct HelpSystem* this); +// win1.41 005c5610 mac 103515b0 HelpSystem::ResetIcons(void) +void __fastcall ResetIcons__10HelpSystemFv(struct HelpSystem* this); +// win1.41 005c67e0 mac 1034f730 HelpSystem::ClearDialogueControl(void) +void __fastcall ClearDialogueControl__10HelpSystemFv(struct HelpSystem* this); +// win1.41 005c6ad0 mac 1034f2c0 HelpSystem::SetWideScreen(int, ulong) +void __fastcall SetWideScreen__10HelpSystemFiUl(struct HelpSystem* this, const void* edx, int32_t param_2, uint32_t param_3); +// win1.41 005c6b60 mac 1001d4b0 HelpSystem::GetWideScreenPercentage(void) const +float __fastcall GetWideScreenPercentage__10HelpSystemCFv(const struct HelpSystem* this); + +#endif /* BW1_DECOMP_HELP_SYSTEM_INCLUDED_H */ diff --git a/black/HelpText.h b/black/HelpText.h new file mode 100644 index 0000000..f8028d8 --- /dev/null +++ b/black/HelpText.h @@ -0,0 +1,57 @@ +#ifndef BW1_DECOMP_HELP_TEXT_INCLUDED_H +#define BW1_DECOMP_HELP_TEXT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ +#include /* For char16_t */ + +#include /* For struct LH3DColor */ +#include /* For struct LHRegion */ + +#include "Base.h" /* For struct Base */ + +struct HelpText +{ + struct Base super; /* 0x0 */ + const char16_t* str; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + struct LH3DColor field_0x1c; + struct LH3DColor field_0x20; + struct LHRegion field_0x24; + uint32_t field_0x34[0x4][0x6]; + uint32_t field_0x94; + uint32_t field_0x98; + float field_0x9c; + float field_0xa0; + uint32_t field_0xa4; + uint32_t field_0xa8; + uint32_t field_0xac; + uint32_t field_0xb0; + uint32_t field_0xb4; + uint32_t field_0xb8; +}; +static_assert(sizeof(struct HelpText) == 0xbc, "Data type is of wrong size"); + +static struct BaseVftable* __vt__8HelpText = (struct BaseVftable*)0x0092a520; + +// Constructors + +// win1.41 005cad40 mac 103579b0 HelpText::HelpText(LHRegion const &) +struct HelpText* __fastcall __ct__8HelpTextFRC8LHRegion(struct HelpText* this, const void* edx, struct LHRegion* region); + +struct HelpTextDataBase +{ + struct HelpText* array; /* 0x0 */ + uint32_t count; +}; +static_assert(sizeof(struct HelpTextDataBase) == 0x8, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 inlined mac 100924c0 HelpTextDataBase::GetHelpText(unsigned long) const +const char16_t* __fastcall GetHelpText__16HelpTextDataBaseCFUl(const struct HelpTextDataBase* this, const void* edx, uint32_t index); + +#endif /* BW1_DECOMP_HELP_TEXT_INCLUDED_H */ diff --git a/black/HistoryBox.h b/black/HistoryBox.h new file mode 100644 index 0000000..001e276 --- /dev/null +++ b/black/HistoryBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_HISTORY_BOX_INCLUDED_H +#define BW1_DECOMP_HISTORY_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct HistoryBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0xc]; +}; +static_assert(sizeof(struct HistoryBox) == 0x1c, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__10HistoryBox = (struct DialogBoxBaseVftable*)0x008de974; + +#endif /* BW1_DECOMP_HISTORY_BOX_INCLUDED_H */ diff --git a/black/Influence.h b/black/Influence.h new file mode 100644 index 0000000..1c6eb86 --- /dev/null +++ b/black/Influence.h @@ -0,0 +1,39 @@ +#ifndef BW1_DECOMP_INFLUENCE_INCLUDED_H +#define BW1_DECOMP_INFLUENCE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "BaseInfo.h" /* For struct BaseInfo */ +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +// Forward Declares + +struct GPlayer; +struct MapCoords; + +struct InfluenceRing +{ + struct GameThingWithPos super; /* 0x0 */ + struct BaseInfo info; /* 0x28 */ + struct GPlayer* player; /* 0x34 */ + float field_0x38; + int field_0x3c; + uint32_t field_0x40; +}; +static_assert(sizeof(struct InfluenceRing) == 0x44, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__13InfluenceRing = (struct GameThingWithPosVftable*)0x008ea3cc; + +// Constructors + +// win1.41 005cd760 mac 100fd0a4 InfluenceRing::InfluenceRing(MapCoords const &, GPlayer *, float, int) +struct InfluenceRing* __fastcall __ct__13InfluenceRingFRC9MapCoordsP7GPlayerfi(struct InfluenceRing* this, const void* edx, const struct MapCoords* coords, struct GPlayer* player, float param_4, int param_5); +// win1.41 005cd800 mac 100fce54 InfluenceRing::InfluenceRing(GameThingWithPos *, GPlayer *, float, int) +struct InfluenceRing* __fastcall __ct__13InfluenceRingFP16GameThingWithPosP7GPlayerfi(struct InfluenceRing* this, const void* edx, struct GameThingWithPos* thing, struct GPlayer* player, float param_4, int param_5); + +DECLARE_LH_LIST_HEAD(InfluenceRing); + +#endif /* BW1_DECOMP_INFLUENCE_INCLUDED_H */ diff --git a/black/InnerCamera.h b/black/InnerCamera.h new file mode 100644 index 0000000..a2ffa1c --- /dev/null +++ b/black/InnerCamera.h @@ -0,0 +1,127 @@ +#ifndef BW1_DECOMP_INNER_CAMERA_INCLUDED_H +#define BW1_DECOMP_INNER_CAMERA_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint32_t, uint8_t */ + +#include /* For struct LHCoord */ +#include /* For struct LHPoint, struct Point2D */ +#include /* For struct Zoomer3d */ + +// Forward Declares + +struct InnerCamera; +struct InnerRoom; +struct LH3DCamera; +struct LH3DMesh; + +struct InnerCameraVftable +{ + void (__fastcall* ReloadCamera)(struct InnerCamera* this, const void* edx, char* param_1); /* 0x0 */ + void (__fastcall* PreDraw)(struct InnerCamera* this); + void (__fastcall* Init)(struct InnerCamera* this, const void* edx, char* param_1); + void (__fastcall* Reinit)(struct InnerCamera* this); + void (__fastcall* Close)(struct InnerCamera* this); /* 0x10 */ + uint32_t (__fastcall* CalcDoorHit)(struct InnerCamera* this, const void* edx, struct InnerRoom* param_1, struct LHCoord param_2, float param_3, bool param_4); + void (__fastcall* Update)(struct InnerCamera* this, const void* edx, struct InnerRoom* param_1, float param_2, int param_3, int param_4, struct LHCoord* param_5, bool param_6); + void (__fastcall* UpdateMain)(struct InnerCamera* this, const void* edx, struct InnerRoom* param_1, float param_2, int param_3, int param_4, struct LHCoord* param_5, bool param_6); + void (__fastcall* UpdateState)(struct InnerCamera* this, const void* edx, struct InnerRoom* param_1, float param_2, int param_3, int param_4, struct LHCoord* param_5, bool param_6); /* 0x20 */ + void (__fastcall* FocusOnSubMesh)(struct InnerCamera* this, const void* edx, struct LH3DMesh* param_1, int param_2, float param_3, float param_4, float param_5); + void (__fastcall* TriggerIntro)(struct InnerCamera* this, const void* edx, bool param_1, struct Zoomer3d* param_2, struct Zoomer3d* param_3); + struct InnerCamera* (__fastcall* __dt)(struct InnerCamera* this); +}; +static_assert(sizeof(struct InnerCameraVftable) == 0x30, "Data type is of wrong size"); + +struct InnerCamera +{ + struct InnerCameraVftable* vftable; /* 0x0 */ + struct Zoomer3d zoomer_pos; + struct Zoomer3d zoomer_foc; /* 0x94 */ + uint32_t field_0x124; + uint32_t field_0x128; + int32_t field_0x12c; + uint8_t field_0x130[0x4]; + uint32_t field_0x134; + struct LHCoord* field_0x138; + uint32_t field_0x13c; + uint32_t field_0x140; + float field_0x144; + uint32_t field_0x148; + uint32_t field_0x14c; + uint32_t field_0x150; + uint32_t field_0x154; + int field_0x158; + int field_0x15c; + char filename[0x100]; /* 0x160 */ + struct LHPoint field_0x260; + struct LHPoint field_0x26c; + struct Zoomer3d field_0x278; + struct Zoomer3d field_0x308; + uint8_t field_0x398; + uint8_t field_0x399; + uint8_t field_0x39a; + uint8_t field_0x39b; + struct LHPoint pos_0x39c; + struct LHPoint foc_0x3a8; + uint8_t field_0x3b4[0x18]; + float field_0x3cc; + float field_0x3d0; + struct LHPoint current_pos; + struct LHPoint current_foc; /* 0x3e0 */ + struct Point2D field_0x3ec; + uint8_t field_0x3f4; + uint8_t field_0x3f5[0x3]; + uint32_t field_0x3f8; + float field_0x3fc; + float field_0x400; + uint8_t field_0x404[0x1c]; + float field_0x420; + float field_0x424; + uint32_t field_0x428; + struct LHPoint field_0x42c; + uint32_t field_0x438; + struct LH3DCamera* lh3dcamera; + uint8_t field_0x440[0xc]; + int32_t field_0x44c; + uint32_t field_0x450; + struct LHPoint field_0x454; + struct LHPoint field_0x460; +}; +static_assert(sizeof(struct InnerCamera) == 0x46c, "Data type is of wrong size"); + +static struct InnerCameraVftable* __vt__11InnerCamera = (struct InnerCameraVftable*)0x0099ee70; + +// Constructors + +// win1.41 007974f0 mac 10539250 InnerCamera::InnerCamera(void) +struct InnerCamera* __fastcall __ct__11InnerCameraFv(struct InnerCamera* this); + +// Override methods + +// win1.41 00797420 mac 10539420 InnerCamera::ReloadCamera(char *) +void __fastcall ReloadCamera__11InnerCameraFPc(struct InnerCamera* this, const void* edx, char* param_1); +// win1.41 00796920 mac 10539d10 InnerCamera::PreDraw(void) +void __fastcall PreDraw__11InnerCameraFv(struct InnerCamera* this); +// win1.41 00797140 mac 10539520 InnerCamera::Init(char *) +void __fastcall Init__11InnerCameraFPc(struct InnerCamera* this, const void* edx, char* param_1); +// win1.41 007885f0 mac 10287a60 InnerCamera::Reinit(void) +void __fastcall Reinit__11InnerCameraFv(struct InnerCamera* this); +// win1.41 007974a0 mac 105393b0 InnerCamera::Close(void) +void __fastcall Close__11InnerCameraFv(struct InnerCamera* this); +// win1.41 007969e0 mac 10539ae0 InnerCamera::CalcDoorHit(InnerRoom *, LHCoord, float, bool) +uint32_t __fastcall CalcDoorHit__11InnerCameraFP9InnerRoom7LHCoordfb(struct InnerCamera* this, const void* edx, struct InnerRoom* param_1, struct LHCoord param_2, float param_3, bool param_4); +// win1.41 00796b60 mac 10539710 InnerCamera::Update(InnerRoom *, float, int, int, LHCoord const &, bool) +void __fastcall Update__11InnerCameraFP9InnerRoomfiiRC7LHCoordb(struct InnerCamera* this, const void* edx, struct InnerRoom* param_1, float param_2, int param_3, int param_4, struct LHCoord* param_5, bool param_6); +// win1.41 00795ce0 mac 10539fe0 InnerCamera::UpdateMain(InnerRoom *, float, int, int, LHCoord const &, bool) +void __fastcall UpdateMain__11InnerCameraFP9InnerRoomfiiRC7LHCoordb(struct InnerCamera* this, const void* edx, struct InnerRoom* param_1, float param_2, int param_3, int param_4, struct LHCoord* param_5, bool param_6); +// win1.41 007965f0 mac 10539e30 InnerCamera::UpdateState(InnerRoom *, float, int, int, LHCoord const &, bool) +void __fastcall UpdateState__11InnerCameraFP9InnerRoomfiiRC7LHCoordb(struct InnerCamera* this, const void* edx, struct InnerRoom* param_1, float param_2, int param_3, int param_4, struct LHCoord* param_5, bool param_6); +// win1.41 00795570 mac 1053b120 InnerCamera::FocusOnSubMesh(LH3DMesh *, int, float, float, float) +void __fastcall FocusOnSubMesh__11InnerCameraFP8LH3DMeshifff(struct InnerCamera* this, const void* edx, struct LH3DMesh* param_1, int param_2, float param_3, float param_4, float param_5); +// win1.41 007957c0 mac 1053ada0 InnerCamera::TriggerIntro(bool, Zoomer3d *, Zoomer3d *) +void __fastcall TriggerIntro__11InnerCameraFbP8Zoomer3dP8Zoomer3d(struct InnerCamera* this, const void* edx, bool param_1, struct Zoomer3d* param_2, struct Zoomer3d* param_3); +// win1.41 007974d0 mac 10539320 InnerCamera::__dt(void) +struct InnerCamera* __fastcall __dt__11InnerCameraFv(struct InnerCamera* this); + +#endif /* BW1_DECOMP_INNER_CAMERA_INCLUDED_H */ diff --git a/black/Interface.h b/black/Interface.h new file mode 100644 index 0000000..20edea1 --- /dev/null +++ b/black/Interface.h @@ -0,0 +1,113 @@ +#ifndef BW1_DECOMP_INTERFACE_INCLUDED_H +#define BW1_DECOMP_INTERFACE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For struct LHReleasedOSFile */ + +#include "BaseInfo.h" /* For struct BaseInfo */ +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ +#include "InterfaceCollide.h" /* For struct GInterfaceCollide */ +#include "InterfaceFlags.h" /* For struct GInterfaceFlags */ +#include "InterfaceHandState.h" /* For struct InterfaceHandState */ +#include "InterfaceMessageBuffer.h" /* For struct GInterfaceMessageBuffer */ + +// Forward Declares + +struct CHand; +struct GInterfaceStatus; +struct LHPlayer; +struct Leash; +struct LiquidParticleGroup; + +struct GInterface +{ + struct GameThingWithPos super; /* 0x0 */ + uint32_t field_0x28; + struct LiquidParticleGroup* liquid_particle_group; + struct GInterfaceFlags flags; /* 0x30 */ + int field_0x44; + uint32_t field_0x48; + uint32_t field_0x4c; + struct LHReleasedOSFile file; /* 0x50 */ + uint8_t field_0x58[0x104]; + uint32_t is_specific_playback; /* 0x15c */ + uint32_t is_any_playback; /* 0x160 */ + uint8_t field_0x164[0x30]; + uint32_t field_0x194; + struct Leash* leash_0x198; + struct Leash* leash_0x19c; + struct Leash* leash_0x1a0; + uint32_t field_0x1a4; + uint32_t field_0x1a8; + uint32_t field_0x1ac; + uint32_t field_0x1b0; + uint32_t field_0x1b4; + uint32_t field_0x1b8; + struct LHPlayer* player; + uint8_t field_0x1c0[0x1a0]; + uint32_t field_0x360; + uint32_t field_0x364; + uint32_t field_0x368; + uint32_t field_0x36c; + uint32_t field_0x370; + uint32_t field_0x374; + uint32_t field_0x378; + uint32_t field_0x37c; + uint32_t field_0x380; + uint32_t field_0x384; + uint32_t field_0x388; + uint32_t field_0x38c; + uint32_t field_0x390; + uint32_t field_0x394; + uint32_t field_0x398; + struct GInterfaceStatus* status; + struct CHand* hand; /* 0x3a0 */ + struct InterfaceHandState field_0x3a4; + struct GInterfaceCollide interface_collide; /* 0x3b0 */ + struct GInterfaceCollide field_0x3e0; + float field_0x410; + float field_0x414; + uint32_t field_0x418; + uint32_t field_0x41c; + uint32_t field_0x420; + uint32_t field_0x424; + uint32_t field_0x428; + uint32_t field_0x42c; + struct GInterfaceMessageBuffer message_buffers; /* 0x430 */ + int field_0x444; + int field_0x448; + uint32_t field_0x44c; + uint32_t field_0x450; + uint32_t field_0x454; + uint32_t field_0x458; + struct BaseInfo field_0x45c; + uint32_t field_0x468; + uint32_t field_0x46c; + uint32_t field_0x470; + uint32_t field_0x474; + uint32_t field_0x478; +}; +static_assert(sizeof(struct GInterface) == 0x47c, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__10GInterface = (struct GameThingWithPosVftable*)0x0092a5a0; + +// Non-virtual methods + +// win1.41 005ce4d0 mac 1035be80 GInterface::SetToZero(void) +void __fastcall SetToZero__10GInterfaceFv(struct GInterface* this); +// win1.41 005ce670 mac 1035bd00 GInterface::Init(unsigned char) +void __fastcall Init__10GInterfaceFUc(struct GInterface* this, const void* edx, uint8_t player_number); +// win1.41 005ce7f0 mac 1035ba90 GInterface::InitLeash(void) +void __fastcall InitLeash__10GInterfaceFv(struct GInterface* this); +// win1.41 005ce920 mac 1035b8b0 GInterface::SetupHand(void) +void __fastcall SetupHand__10GInterfaceFv(struct GInterface* this); +// win1.41 005ceab0 mac 1007d9b0 GInterface::PostDrawProcess(void) +void __fastcall PostDrawProcess__10GInterfaceFv(struct GInterface* this); +// win1.41 005cec10 mac 100254c0 GInterface::Process(void) +void __fastcall Process__10GInterfaceFv(struct GInterface* this); +// win1.41 005d9130 mac 100315f0 GInterface::UpdateAllLeashes(void) +void __fastcall UpdateAllLeashes__10GInterfaceFv(struct GInterface* this); + +#endif /* BW1_DECOMP_INTERFACE_INCLUDED_H */ diff --git a/black/InterfaceCollide.h b/black/InterfaceCollide.h new file mode 100644 index 0000000..593f4ad --- /dev/null +++ b/black/InterfaceCollide.h @@ -0,0 +1,31 @@ +#ifndef BW1_DECOMP_INTERFACE_COLLIDE_INCLUDED_H +#define BW1_DECOMP_INTERFACE_COLLIDE_INCLUDED_H + +#include /* For static_assert */ + +#include "Base.h" /* For struct Base */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct Bubble; +struct Leash; +struct Object; + +struct GInterfaceCollide +{ + struct Base super; /* 0x0 */ + struct MapCoords pos; + float pos_distance; /* 0x14 */ + struct Object* object; + float object_distance; + struct Bubble* bubble; /* 0x20 */ + float bubble_distance; + struct Leash* leash; + float leash_distance; +}; +static_assert(sizeof(struct GInterfaceCollide) == 0x30, "Data type is of wrong size"); + +static struct BaseVftable* __vt__17GInterfaceCollide = (struct BaseVftable*)0x0092aac4; + +#endif /* BW1_DECOMP_INTERFACE_COLLIDE_INCLUDED_H */ diff --git a/black/InterfaceFlags.h b/black/InterfaceFlags.h new file mode 100644 index 0000000..cbc1cc4 --- /dev/null +++ b/black/InterfaceFlags.h @@ -0,0 +1,20 @@ +#ifndef BW1_DECOMP_INTERFACE_FLAGS_INCLUDED_H +#define BW1_DECOMP_INTERFACE_FLAGS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Base.h" /* For struct Base */ + +struct GInterfaceFlags +{ + struct Base super; /* 0x0 */ + int field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; +}; +static_assert(sizeof(struct GInterfaceFlags) == 0x14, "Data type is of wrong size"); + +static struct BaseVftable* __vt__15GInterfaceFlags = (struct BaseVftable*)0x0092ab04; + +#endif /* BW1_DECOMP_INTERFACE_FLAGS_INCLUDED_H */ diff --git a/black/InterfaceHandState.h b/black/InterfaceHandState.h new file mode 100644 index 0000000..5be8609 --- /dev/null +++ b/black/InterfaceHandState.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_INTERFACE_HAND_STATE_INCLUDED_H +#define BW1_DECOMP_INTERFACE_HAND_STATE_INCLUDED_H + +#include /* For static_assert */ + +#include "Base.h" /* For struct Base */ +#include "HandState.h" /* For enum HAND_STATES */ + +struct InterfaceHandState +{ + struct Base super; /* 0x0 */ + enum HAND_STATES hand_state; +}; +static_assert(sizeof(struct InterfaceHandState) == 0xc, "Data type is of wrong size"); + +static struct BaseVftable* __vt__18InterfaceHandState = (struct BaseVftable*)0x0092aae4; + +#endif /* BW1_DECOMP_INTERFACE_HAND_STATE_INCLUDED_H */ diff --git a/black/InterfaceMessageBuffer.h b/black/InterfaceMessageBuffer.h new file mode 100644 index 0000000..c1493eb --- /dev/null +++ b/black/InterfaceMessageBuffer.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_INTERFACE_MESSAGE_BUFFER_INCLUDED_H +#define BW1_DECOMP_INTERFACE_MESSAGE_BUFFER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct GInterfaceMessageBuffer +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0xc]; +}; +static_assert(sizeof(struct GInterfaceMessageBuffer) == 0x14, "Data type is of wrong size"); + +static struct BaseVftable* __vt__23GInterfaceMessageBuffer = (struct BaseVftable*)0x0092aaa4; + +#endif /* BW1_DECOMP_INTERFACE_MESSAGE_BUFFER_INCLUDED_H */ diff --git a/black/InterfaceStatus.h b/black/InterfaceStatus.h new file mode 100644 index 0000000..a1b1480 --- /dev/null +++ b/black/InterfaceStatus.h @@ -0,0 +1,93 @@ +#ifndef BW1_DECOMP_INTERFACE_STATUS_INCLUDED_H +#define BW1_DECOMP_INTERFACE_STATUS_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For struct LHCoord */ +#include /* For struct LHPoint */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ +#include "MagicHand.h" /* For struct GMagicHand */ + +// Forward Declares + +struct GGuidance; +struct GInterface; +struct GLeashStatus; +struct GVirtualInfluence; +struct Object; +struct PSysProcessInfo; +struct Spell; + +struct GInterfaceStatus +{ + struct GameThingWithPos super; /* 0x0 */ + uint8_t player_number; /* 0x28 */ + struct GInterface* iface; + struct GGuidance* guidance; /* 0x30 */ + uint32_t field_0x34; + uint32_t field_0x38; + uint32_t field_0x3c; + uint32_t field_0x40; + uint8_t field_0x44[0x14]; + struct GMagicHand magic_hand[0x2]; /* 0x58 */ + bool hand_holding_something; /* 0x90 */ + struct LHCoord field_0x94; + uint32_t field_0x9c; + uint32_t field_0xa0; + struct LHPoint field_0xa4; + struct LHPoint camera_pos; /* 0xb0 */ + struct LHPoint camera_foc; + struct LHPoint field_0xc8; + struct LHPoint field_0xd4; + uint32_t field_0xe0; + uint32_t field_0xe4; + struct LHPoint field_0xe8; + float field_0xf4; + float field_0xf8; + float field_0xfc; + float field_0x100; + float field_0x104; + float field_0x108; + struct LHPoint hand_velocity; + float field_0x118; + uint32_t field_0x11c; + struct Object* last_dropped_object; /* 0x120 */ + uint32_t field_0x124; + struct GLeashStatus* leash_status; + struct GVirtualInfluence* influence; + float field_0x130; +}; +static_assert(sizeof(struct GInterfaceStatus) == 0x134, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__16GInterfaceStatus = (struct GameThingWithPosVftable*)0x0092acd0; + +// Static methods + +// win1.41 005cedc0 mac 1035acc0 GInterfaceStatus::SetActive(int) +void __fastcall SetActive__10GInterfaceFi(struct GInterface* this, const void* edx, int param_1); +// win1.41 005d29c0 mac 10026ad0 GInterfaceStatus::ResetActionState(void) +void __fastcall ResetActionState__10GInterfaceFv(struct GInterface* this); + +// Constructors + +// win1.41 005db860 mac 1036f590 GInterfaceStatus::GInterfaceStatus(void) +struct GInterfaceStatus* __fastcall __ct__16GInterfaceStatusFv(struct GInterfaceStatus* this); + +// Non-virtual methods + +// win1.41 005dba00 mac 1036f310 GInterfaceStatus::SetToZero(GInterface *) +void __fastcall SetToZero__16GInterfaceStatusFP10GInterface(struct GInterfaceStatus* this, const void* edx, struct GInterface* param_1); +// win1.41 005dc2f0 mac 1007b2f0 GInterfaceStatus::IsSpaceInHands(void) +bool __fastcall IsSpaceInHands__16GInterfaceStatusFv(struct GInterfaceStatus* this); +// win1.41 005dd1a0 mac 1036bf20 GInterfaceStatus::Init(unsigned char, GInterface *) +void __fastcall Init__16GInterfaceStatusFUcP10GInterface(struct GInterfaceStatus* this, const void* edx, uint8_t player_number, struct GInterface* iface); + +// Override methods + +// win1.41 005dc8f0 mac 1036d0e0 GInterfaceStatus::UpdateSpellInfo(Spell *, PSysProcessInfo *) +void __fastcall UpdateSpellInfo__16GInterfaceStatusFP5SpellP15PSysProcessInfo(struct GInterfaceStatus* this, const void* edx, struct Spell* param_1, struct PSysProcessInfo* param_2); + +#endif /* BW1_DECOMP_INTERFACE_STATUS_INCLUDED_H */ diff --git a/black/JCGameBlock.h b/black/JCGameBlock.h new file mode 100644 index 0000000..7eb1f5c --- /dev/null +++ b/black/JCGameBlock.h @@ -0,0 +1,36 @@ +#ifndef BW1_DECOMP_JC_GAME_BLOCK_INCLUDED_H +#define BW1_DECOMP_JC_GAME_BLOCK_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +// Forward Declares + +struct MapCell; +struct Object; + +struct GameBlock +{ + uint32_t size; /* 0x0 */ + uint32_t capacity; + struct Object** array; + struct Object* last_inserted; + struct Object* last_removed; /* 0x10 */ +}; +static_assert(sizeof(struct GameBlock) == 0x14, "Data type is of wrong size"); + +// Static methods + +// win1.41 005ddce0 mac 10054520 GameBlock::Insert(Object *, MapCell *) +void __cdecl Insert__9GameBlockFP6ObjectP7MapCell(struct Object* param_1, struct MapCell* param_2); +// win1.41 005ddd50 mac 100543b0 GameBlock::Remove(Object*) +void __cdecl Remove__9GameBlockFP6ObjectP7MapCell(struct Object* obj, struct MapCell* cell); + +// Non-virtual methods + +// win1.41 005dddc0 mac 10054690 GameBlock::Insert(Object*) +void __fastcall Insert__9GameBlockFP6Object(struct GameBlock* this, const void* edx, struct Object* obj); +// win1.41 005ddce0 mac 10054790 GameBlock::Remove(Object *, MapCell *) +void __fastcall Remove__9GameBlockFP6Object(struct GameBlock* this, const void* edx, struct Object* obj); + +#endif /* BW1_DECOMP_JC_GAME_BLOCK_INCLUDED_H */ diff --git a/black/JPSysInterface.h b/black/JPSysInterface.h new file mode 100644 index 0000000..da4ec30 --- /dev/null +++ b/black/JPSysInterface.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_JP_SYS_INTERFACE_INCLUDED_H +#define BW1_DECOMP_JP_SYS_INTERFACE_INCLUDED_H + +#include /* For static_assert */ + +#include "PSysInterface.h" /* For struct PSysInterface */ + +// Forward Declares + +struct PSysManager; + +struct GJPSysInterface +{ + struct PSysInterface super; /* 0x0 */ + struct PSysManager* manager; /* 0x14 */ +}; +static_assert(sizeof(struct GJPSysInterface) == 0x18, "Data type is of wrong size"); + +static struct PSysInterfaceVftable* __vt__15GJPSysInterface = (struct PSysInterfaceVftable*)0x008fa8a0; + +#endif /* BW1_DECOMP_JP_SYS_INTERFACE_INCLUDED_H */ diff --git a/black/KeyBuffer.h b/black/KeyBuffer.h new file mode 100644 index 0000000..c8db98c --- /dev/null +++ b/black/KeyBuffer.h @@ -0,0 +1,26 @@ +#ifndef BW1_DECOMP_KEY_BUFFER_INCLUDED_H +#define BW1_DECOMP_KEY_BUFFER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint8_t, uintptr_t */ + +#include "Base.h" /* For struct Base */ + +struct GKeyBuffer +{ + struct Base super; /* 0x0 */ + uintptr_t field_0x8; + uint8_t field_0xc; + uint8_t field_0xd; + uint16_t buffered_keys; +}; +static_assert(sizeof(struct GKeyBuffer) == 0x10, "Data type is of wrong size"); + +static struct BaseVftable* __vt__10GKeyBuffer = (struct BaseVftable*)0x008df780; + +// Constructors + +// win1.41 0054b930 mac inlined GKeyBuffer::GKeyBuffer(void) +struct GKeyBuffer* __fastcall __ct__10GKeyBuffer(struct GKeyBuffer* this); + +#endif /* BW1_DECOMP_KEY_BUFFER_INCLUDED_H */ diff --git a/black/LandFeature.h b/black/LandFeature.h new file mode 100644 index 0000000..60fa845 --- /dev/null +++ b/black/LandFeature.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_LAND_FEATURE_INCLUDED_H +#define BW1_DECOMP_LAND_FEATURE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +struct LandFeature +{ + uint8_t field_0x0[0x1]; +}; +static_assert(sizeof(struct LandFeature) == 0x1, "Data type is of wrong size"); + +// Static methods + +// win1.41 005e2f30 mac 10021e20 LandFeature::GetNearClipping(void) +float __stdcall GetNearClipping__11LandFeatureFv(void); + +#endif /* BW1_DECOMP_LAND_FEATURE_INCLUDED_H */ diff --git a/black/Landscape.h b/black/Landscape.h new file mode 100644 index 0000000..cabeb2e --- /dev/null +++ b/black/Landscape.h @@ -0,0 +1,37 @@ +#ifndef BW1_DECOMP_LANDSCAPE_INCLUDED_H +#define BW1_DECOMP_LANDSCAPE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +// Forward Declares + +struct LH3DMaterial; +struct LH3DTexture; +struct LHPoint; +struct MapCoords; + +struct GLandscape +{ + struct LH3DTexture* texture; /* 0x0 */ + struct LH3DMaterial* material; +}; +static_assert(sizeof(struct GLandscape) == 0x8, "Data type is of wrong size"); + +// Static methods + +// win1.41 inlined mac 100198f0 GLandscape::ConvertLandscapePointToMapCoord(LHPoint const &, MapCoords &) +void __cdecl ConvertLandscapePointToMapCoord__10GLandscapeFRC7LHPointR9MapCoords(const struct LHPoint* point, struct MapCoords* coords); +// win1.41 inlined mac 106f5c34 GLandscape::ConvertAbsoluteMapCoordToLandscapePoint(MapCoords const &, LHPoint &) +void __cdecl ConvertAbsoluteMapCoordToLandscapePoint__10GLandscapeFRC9MapCoordsR7LHPoint(const struct MapCoords* coords, struct LHPoint* point); +// win1.41 005e3f60 mac 1001d960 GLandscape::PreDraw(void) +uint32_t __cdecl PreDraw__10GLandscapeFv(void); +// win1.41 00613750 mac 10048570 GLandscape::ConvertMapCoordToLandscapePoint(MapCoords const &) +struct LHPoint* __cdecl ConvertMapCoordToLandscapePoint__10GLandscapeFRC9MapCoordsR7LHPoint(const struct MapCoords* param_2, struct LHPoint* param_1); + +// Non-virtual methods + +// win1.41 005e52e0 mac 10379f50 GLandscape::Open(char *) +void __fastcall Open__10GLandscapeFPc(struct GLandscape* this, const void* edx, const char* path); + +#endif /* BW1_DECOMP_LANDSCAPE_INCLUDED_H */ diff --git a/black/Language.h b/black/Language.h new file mode 100644 index 0000000..7786958 --- /dev/null +++ b/black/Language.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_LANGUAGE_INCLUDED_H +#define BW1_DECOMP_LANGUAGE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Base.h" /* For struct Base */ + +struct GLanguage +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; +}; +static_assert(sizeof(struct GLanguage) == 0xc, "Data type is of wrong size"); + +static struct BaseVftable* __vt__9GLanguage = (struct BaseVftable*)0x0092b344; + +// Constructors + +// win1.41 005e6750 mac 1019cef0 GLanguage::GLanguage(void) +void __fastcall __ct__9GLanguageFv(struct GLanguage* this); + +#endif /* BW1_DECOMP_LANGUAGE_INCLUDED_H */ diff --git a/black/LayerCommunication.h b/black/LayerCommunication.h new file mode 100644 index 0000000..b3c85e0 --- /dev/null +++ b/black/LayerCommunication.h @@ -0,0 +1,39 @@ +#ifndef BW1_DECOMP_LAYER_COMMUNICATION_INCLUDED_H +#define BW1_DECOMP_LAYER_COMMUNICATION_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uintptr_t */ + +// Forward Declares + +struct BWLan; + +struct LayerCommunicationVftable +{ + uintptr_t SendMessageW; /* 0x0 */ + uintptr_t SendMessageA; + uintptr_t LeaveMainRoom; + uintptr_t LeaveGameChannel; + uintptr_t BeginPlayerEnumeration; /* 0x10 */ + uintptr_t PopulateChannelPlayers; + uintptr_t Process; + uintptr_t InitialiseLobbyState; + uintptr_t CreateOrJoinRoom; /* 0x20 */ + uintptr_t StartGame; + uint32_t (__fastcall* Connect)(struct BWLan* this); + uintptr_t Disconnect; + uintptr_t KickPlayerFromChannel; /* 0x30 */ + uintptr_t BanPlayerInChannel; + uintptr_t GetNumPeopleInRoom; + uintptr_t LockChannel; + uintptr_t SetInvite; /* 0x40 */ +}; +static_assert(sizeof(struct LayerCommunicationVftable) == 0x44, "Data type is of wrong size"); + +struct LayerCommunication +{ + struct LayerCommunicationVftable* vftable; /* 0x0 */ +}; +static_assert(sizeof(struct LayerCommunication) == 0x4, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LAYER_COMMUNICATION_INCLUDED_H */ diff --git a/black/Leash.h b/black/Leash.h new file mode 100644 index 0000000..72c0e21 --- /dev/null +++ b/black/Leash.h @@ -0,0 +1,17 @@ +#ifndef BW1_DECOMP_LEASH_INCLUDED_H +#define BW1_DECOMP_LEASH_INCLUDED_H + +#include /* For static_assert */ + +#include /* For struct LHPoint */ + +struct Leash +{ + struct LHPoint field_0x0; + struct LHPoint field_0xc; + float field_0x18; + struct LHPoint field_0x1c; +}; +static_assert(sizeof(struct Leash) == 0x28, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LEASH_INCLUDED_H */ diff --git a/black/LeashStatus.h b/black/LeashStatus.h new file mode 100644 index 0000000..d2cd405 --- /dev/null +++ b/black/LeashStatus.h @@ -0,0 +1,31 @@ +#ifndef BW1_DECOMP_LEASH_STATUS_INCLUDED_H +#define BW1_DECOMP_LEASH_STATUS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct GInterfaceStatus; + +struct GLeashStatus +{ + struct GameThing super; /* 0x0 */ + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + uint8_t player_number; /* 0x30 */ + uint32_t field_0x34; + struct GInterfaceStatus* interface_status; +}; +static_assert(sizeof(struct GLeashStatus) == 0x3c, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__12GLeashStatus = (struct GameThingVftable*)0x0092abd0; + +#endif /* BW1_DECOMP_LEASH_STATUS_INCLUDED_H */ diff --git a/black/LightSheet.h b/black/LightSheet.h new file mode 100644 index 0000000..39272e3 --- /dev/null +++ b/black/LightSheet.h @@ -0,0 +1,52 @@ +#ifndef BW1_DECOMP_LIGHT_SHEET_INCLUDED_H +#define BW1_DECOMP_LIGHT_SHEET_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint32_t */ + +#include /* For struct LHPoint */ + +// Forward Declares + +struct LH3DMaterial; + +struct LightSheet +{ + int count; /* 0x0 */ + float field_0x4; + float field_0x8; + float field_0xc; + float field_0x10; + float field_0x14; + float field_0x18; + float field_0x1c; + struct LHPoint* field_0x20; + float* field_0x24; + float* field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + float field_0x34; + uint32_t field_0x38; + uint32_t field_0x3c; + float field_0x40; + float* field_0x44; + uint16_t* field_0x48; + float* field_0x4c; + uint32_t field_0x50; + int field_0x54; + struct LH3DMaterial* material_0x58; + uint32_t field_0x5c; +}; +static_assert(sizeof(struct LightSheet) == 0x60, "Data type is of wrong size"); + +// Constructors + +// win1.41 0083e690 mac 100cddd0 LightSheet::LightSheet(void) +void __fastcall __ct__10LightSheetFv(struct LightSheet* this); + +// Non-virtual methods + +// win1.41 0083e610 mac 100cde20 LightSheet::PulseForceField(LHPoint, float) +void __fastcall PulseForceField__10LightSheetF7LHPointf(struct LightSheet* this, const void* edx, struct LHPoint param_1, float param_2); + +#endif /* BW1_DECOMP_LIGHT_SHEET_INCLUDED_H */ diff --git a/black/LiquidParticle.h b/black/LiquidParticle.h new file mode 100644 index 0000000..13205a6 --- /dev/null +++ b/black/LiquidParticle.h @@ -0,0 +1,43 @@ +#ifndef BW1_DECOMP_LIQUID_PARTICLE_INCLUDED_H +#define BW1_DECOMP_LIQUID_PARTICLE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For struct LHPoint */ + +// Forward Declares + +struct GInterface; + +struct LiquidParticle +{ + float field_0x0; + float field_0x4; + float field_0x8; + float field_0xc; + float field_0x10; + float field_0x14; + float field_0x18; + float field_0x1c; + float field_0x20; + float field_0x24; + float field_0x28; +}; +static_assert(sizeof(struct LiquidParticle) == 0x2c, "Data type is of wrong size"); + +struct LiquidParticleGroup +{ + struct LiquidParticle particle_buffer[0x400]; /* 0x0 */ + uint32_t particle_count; /* 0xb000 */ + struct LHPoint point; + struct LiquidParticleGroup* next; /* 0xb010 */ + struct GInterface* iface; + void (__cdecl* sparkle_func)(struct LiquidParticleGroup* param_0, struct GInterface* param_1); +}; +static_assert(sizeof(struct LiquidParticleGroup) == 0xb01c, "Data type is of wrong size"); + +// win1.41 005cdfc0 mac 1035c8f0 sparklecbstub(LiquidParticleGroup *, unsigned long) +void __cdecl sparklecbstub__FP19LiquidParticleGroupUl(struct LiquidParticleGroup* param_1, struct GInterface* param_2); + +#endif /* BW1_DECOMP_LIQUID_PARTICLE_INCLUDED_H */ diff --git a/black/Living.h b/black/Living.h new file mode 100644 index 0000000..ae0850e --- /dev/null +++ b/black/Living.h @@ -0,0 +1,433 @@ +#ifndef BW1_DECOMP_LIVING_INCLUDED_H +#define BW1_DECOMP_LIVING_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint16_t, uint32_t, uint8_t */ + +#include /* For enum ANIM_LIST */ +#include /* For enum REACTION */ +#include /* For enum VILLAGER_STATES */ +#include /* For struct LH3DColor */ +#include /* For DECLARE_LH_LINKED_LIST */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThing.h" /* For struct GameThing */ +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ +#include "LivingAction.h" /* For enum LIVING_ACTION_INDEX, struct LivingAction */ +#include "MobileWallHug.h" /* For struct MobileWallHug, struct MobileWallHugVftable */ +#include "Object.h" /* For struct Object */ + +// Forward Declares + +struct DanceGroup; +struct DataPath; +struct Flock; +struct GFootpath; +struct GFootpathNode; +struct GLivingInfo; +struct GameThingVftable; +struct Living; +struct MapCoords; +struct ObjectVftable; +struct Reaction; +struct ReactionDoneWhen; +struct Villager; + +struct DataForScriptRemind +{ + struct GameThing super; /* 0x0 */ + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + uint32_t field_0x38; + uint32_t field_0x3c; + uint32_t field_0x40; + uint32_t field_0x44; +}; +static_assert(sizeof(struct DataForScriptRemind) == 0x48, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__19DataForScriptRemind = (struct GameThingVftable*)0x0092b520; + +// Static methods + +// win1.41 005ef190 mac 1037cff0 DataForScriptRemind::Create(void) +struct DataForScriptRemind* __cdecl Create__19DataForScriptRemindFv(void); + +// Constructors + +// win1.41 005ef110 mac 1037d100 DataForScriptRemind::DataForScriptRemind(void) +struct DataForScriptRemind* __fastcall __ct__19DataForScriptRemindFv(struct DataForScriptRemind* this); + +struct LivingDLList +{ + struct LivingDLList* next; /* 0x0 */ + struct LivingDLList* prev; + struct Living* payload; +}; +static_assert(sizeof(struct LivingDLList) == 0xc, "Data type is of wrong size"); + +struct LivingVftable +{ + struct MobileWallHugVftable super; /* 0x0 */ + bool (__fastcall* AmILikelyToMove)(const struct Living* this); /* 0x874 */ + void (__fastcall* SetFoodSpeedup)(struct Living* this, const void* edx, bool speedup); + bool (__fastcall* IsFoodSpeedUp)(const struct Living* this); + uint32_t (__fastcall* GetNumTurnsToDieOver)(struct Living* this); /* 0x880 */ + struct MapCoords* (__fastcall* GetFinalDestPos)(struct Living* this, const void* edx, struct MapCoords* pos); + bool (__fastcall* FleeingFromObjectReaction)(struct Living* this); + bool (__fastcall* LookingAtObjectReaction)(struct Living* this); + bool (__fastcall* FleeingAndLookingAtObjectReaction)(struct Living* this); /* 0x890 */ + bool (__fastcall* FollowingObjectReaction)(struct Living* this); + bool (__fastcall* InspectObjectReaction)(struct Living* this); + bool (__fastcall* Dying)(struct Living* this); + bool (__fastcall* Dead)(struct Living* this); /* 0x8a0 */ + bool (__fastcall* Downed)(struct Living* this); + bool (__fastcall* BeingEaten)(struct Living* this); + bool (__fastcall* GotoFoodReaction)(struct Living* this); + bool (__fastcall* GotoWoodReaction)(struct Living* this); /* 0x8b0 */ + bool (__fastcall* MoveInFlock)(struct Living* this); + bool (__fastcall* IsMovingForAnimation)(struct Living* this); + bool (__fastcall* ArrivesAtFoodReaction)(struct Living* this); + bool (__fastcall* ArrivesAtWoodReaction)(struct Living* this); /* 0x8c0 */ + bool (__fastcall* InHand)(struct Living* this); + bool (__fastcall* DecideWhatToDo)(struct Living* this); + void (__fastcall* Birthday)(struct Living* this); + uint32_t (__fastcall* GetAge)(struct Living* this); /* 0x8d0 */ + void (__fastcall* SetAge)(struct Villager* this, const void* edx, uint32_t age); + bool (__fastcall* LookAtFlyingObjectReaction)(struct Living* this); + int (__fastcall* SetCurrentAndDestinationState)(struct Living* this, const void* edx, enum VILLAGER_STATES current, enum VILLAGER_STATES destination); + int (__fastcall* CallIntoAnimationFunction)(struct Living* this, const void* edx, enum VILLAGER_STATES state); /* 0x8e0 */ + int (__fastcall* CallOutofAnimationFunction)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + void (__fastcall* SetTopState)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + void (__fastcall* StorePreviousState)(struct Living* this); + void (__fastcall* SetStateSpeed)(struct Living* this); /* 0x8f0 */ + bool (__fastcall* IsFinalState)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + void (__fastcall* SetAnim__li)(struct Living* this, const void* edx, int32_t param_1, int32_t param_2); + void (__fastcall* SetAnim__i)(struct Living* this, const void* edx, int32_t param_1); + enum ANIM_LIST (__fastcall* GetAnimId)(struct Living* this); /* 0x900 */ + uint32_t (__fastcall* CallExitStateFunction)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + uint32_t (__fastcall* CallEntryStateFunctionUcUc)(struct Living* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); + uint32_t (__fastcall* CallEntryStateFunctionUc)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + int (__fastcall* ExitReaction)(struct Living* this, const void* edx, enum VILLAGER_STATES state); /* 0x910 */ + int (__fastcall* ExitInScript)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + int (__fastcall* ExitDanceInScript)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + int (__fastcall* ExitInHand)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + int (__fastcall* ExitInFlying)(struct Living* this, const void* edx, enum VILLAGER_STATES state); /* 0x920 */ + int (__fastcall* ExitInLanded)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + int (__fastcall* ExitNoChangeState)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + int (__fastcall* ExitMoveOnPath)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + int (__fastcall* ExitMoveToPos)(struct Living* this); /* 0x930 */ + int (__fastcall* ExitBeingEaten)(struct Living* this); + void (__fastcall* SetState)(struct Living* this, const void* edx, enum LIVING_ACTION_INDEX index, enum VILLAGER_STATES state); + uint32_t (__fastcall* EnterMoveToPos)(struct Living* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); + uint32_t (__fastcall* EnterInScript)(struct Living* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); /* 0x940 */ + uint32_t (__fastcall* EnterInHand)(struct Living* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); + uint32_t (__fastcall* EnterMoveOnPath)(struct Living* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); + uint32_t (__fastcall* EnterDanceInScript)(struct Living* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); + uint32_t (__fastcall* EnterScriptWander)(struct Living* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); /* 0x950 */ + int (__fastcall* ExitScriptWander)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + uint32_t (__fastcall* EnterPlayAnim)(struct Living* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); + int (__fastcall* ExitPlayAnim)(struct Living* this, const void* edx, enum VILLAGER_STATES state); + bool (__fastcall* IsScriptState)(const struct Living* this, const void* edx, enum VILLAGER_STATES state); /* 0x960 */ + bool (__fastcall* IsScriptInterruptableState)(const struct Living* this, const void* edx, enum VILLAGER_STATES state); + bool (__fastcall* IsStateForInterface)(const struct Living* this, const void* edx, enum VILLAGER_STATES state); + bool (__fastcall* IsStateExitFunctionSameAs)(const struct Living* this, const void* edx, enum VILLAGER_STATES state); + bool (__fastcall* IsDeathState)(const struct Living* this, const void* edx, enum VILLAGER_STATES state); /* 0x970 */ + uint32_t (__fastcall* DebugShowTime)(struct Living* this, const void* edx, uint32_t param_1, uint8_t param_2, uint8_t param_3); + bool (__fastcall* IsDancing)(const struct Living* this); + bool (__fastcall* IsInterestedInFoodObject)(struct Living* this, const void* edx, struct Object* object); + bool (__fastcall* IsInterestedInWoodObject)(struct Living* this, const void* edx, struct Object* object); /* 0x980 */ + bool (__fastcall* IsAvailableForReaction)(struct Living* this, const void* edx, enum REACTION reaction); + bool (__fastcall* IsAvailableForBeliefButNotReaction)(struct Living* this, const void* edx, enum REACTION reaction); + void (__fastcall* UpdateHowImpressed)(struct Villager* this, const void* edx, struct Reaction* param_1, int param_2); + void (__fastcall* AddReaction)(struct Living* this, const void* edx, struct Reaction* reaction, enum VILLAGER_STATES state); /* 0x990 */ + void (__fastcall* StartReacting)(struct Living* this, const void* edx, enum REACTION type, struct GameThingWithPos* target, struct Reaction* reaction); + void (__fastcall* StopReacting)(struct Living* this); + void (__fastcall* StopReactingAndSetState)(struct Living* this); + void (__fastcall* ResetStateAfterReacting)(struct Living* this); /* 0x9a0 */ + void (__fastcall* SetupFleeFromObject)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupLookAtObject)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupLookAtSpell)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupLookAtNiceSpell)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); /* 0x9b0 */ + void (__fastcall* SetupFollowObject)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToCreature)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToFood)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToWood)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); /* 0x9c0 */ + void (__fastcall* SetupReactToMagicTree)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToFlyingObject)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToFire)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToBall)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); /* 0x9d0 */ + void (__fastcall* SetupReactToMagicShield)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToCreatureGift)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToNewBuilding)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToHandPickUp)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); /* 0x9e0 */ + void (__fastcall* SetupReactToHandUsingTotem)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToObjectCrushed)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToFight)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToTeleport)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); /* 0x9f0 */ + void (__fastcall* SetupReactToHandPuttingStuffInStoragePit)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToDeath)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToDroppedByHand)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToFainting)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); /* 0xa00 */ + void (__fastcall* SetupReactToConfused)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToFallingTree)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToCrowd)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToBreeder)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); /* 0xa10 */ + void (__fastcall* SetupFleeFromPredator)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToTownCelebration)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToVillagerInHand)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToBurningObjectInHand)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); /* 0xa20 */ + void (__fastcall* SetupReactToMagicShieldStruck)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + void (__fastcall* SetupReactToMagicShieldDestroyed)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, struct Reaction* param_2); + uint8_t (__fastcall* FleeFromObjectPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* LookAtObjectPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); /* 0xa30 */ + uint8_t (__fastcall* FollowObjectPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* FleeFromSpellPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* LookAtSpellPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* LookAtNiceSpellPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); /* 0xa40 */ + uint8_t (__fastcall* FollowSpellPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToCreaturePriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToFoodPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToWoodPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); /* 0xa50 */ + uint8_t (__fastcall* ReactToMagicTreePriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToFlyingObjectPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToBallPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToFirePriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); /* 0xa60 */ + uint8_t (__fastcall* ReactToMagicShieldPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToCreatureGiftPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToNewBuildingPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToHandPickUpPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); /* 0xa70 */ + uint8_t (__fastcall* ReactToHandUsingTotemPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToObjectCrushedPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToFightPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToTeleportPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); /* 0xa80 */ + uint8_t (__fastcall* ReactToHandPuttingStuffInStoragePitPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToDeathPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToDroppedByHandPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToFaintingPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); /* 0xa90 */ + uint8_t (__fastcall* ReactToConfusedPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToFallingTreePriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToCrowdPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToBreederPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); /* 0xaa0 */ + uint8_t (__fastcall* ReactToTownCelebrationPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* FleeFromPredatorPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToVillagerInHandPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToBurningObjectInHandPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); /* 0xab0 */ + uint8_t (__fastcall* ReactToMagicShieldStruckPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToMagicShieldDestroyedPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint8_t (__fastcall* ReactToScaffoldPriority)(struct Living* this, const void* edx, struct Reaction* param_1, struct Reaction* param_2); + uint32_t (__fastcall* StandardNumGameTurnsToReactFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); /* 0xac0 */ + uint32_t (__fastcall* StandardNumGameTurnsBeforeReactingAgainFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); + uint32_t (__fastcall* NumGameTurnsToReactToCreatureFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); + uint32_t (__fastcall* NumGameTurnsBeforeReactingAgainToCreatureFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); + uint32_t (__fastcall* NumGameTurnsToReactToPredatorFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); /* 0xad0 */ + uint32_t (__fastcall* NumGameTurnsBeforeReactingAgainToPredatorFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); + uint32_t (__fastcall* StandardNumGameTurnsBeforeReactingToWoodAgainFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); + uint32_t (__fastcall* NumGameTurnsToReactToBurningObjectFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); + uint32_t (__fastcall* NumGameTurnsBeforeReactingAgainToBurningObjectFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); /* 0xae0 */ + uint32_t (__fastcall* NumGameTurnsToReactToShieldFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); + uint32_t (__fastcall* NumGameTurnsBeforeReactingToShieldAgainFunction)(struct Living* this, const void* edx, struct GameThingWithPos* param_1, uint32_t param_2, float param_3); + uint32_t (__fastcall* IsPosValidForMapCellExistance)(struct Living* this, const void* edx, struct MapCoords* param_1); + void (__fastcall* MoveByTeleport)(struct Living* this, const void* edx, struct MapCoords* param_1); /* 0xaf0 */ + bool (__fastcall* IsDead)(const struct Living* this); + bool (__fastcall* IsChild)(const struct Living* this); + void (__fastcall* GetFleeingPositionFromMovingObject)(struct Living* this, const void* edx, struct MapCoords* param_1, struct GameThingWithPos* param_2, float param_3); + void (__fastcall* GetFleeingPositionFromStationaryObject)(struct Living* this, const void* edx, struct MapCoords* param_1, struct GameThingWithPos* param_2, float param_3); /* 0xb00 */ + enum VILLAGER_STATES (__fastcall* GetFinalState)(const struct Living* this); + void (__fastcall* RemoveFromDance)(struct Living* this, const void* edx, int param_1); + void (__fastcall* SetStateAfterFinishingDance)(struct Living* this); + float (__fastcall* CalculateLifeDesire)(struct Living* this); /* 0xb10 */ + uint32_t (__fastcall* DanceType)(struct Living* this); + bool (__fastcall* CanBeHealedByHealSpell)(struct Living* this); + bool (__fastcall* MoveAllowedForChessGame)(struct Living* this); + bool (__fastcall* AttackAllowedForChessGame)(struct Living* this); /* 0xb20 */ + void (__fastcall* AddToBoxPositionForChessGame)(struct Living* this, const void* edx, int32_t param_1, int32_t param_2); + int32_t (__fastcall* GetBoxXForChessGame)(struct Living* this); + int32_t (__fastcall* GetBoxZForChessGame)(struct Living* this); + void (__fastcall* SetBoxXForChessGame)(struct Living* this, const void* edx, int32_t param_1); /* 0xb30 */ + void (__fastcall* SetBoxZForChessGame)(struct Living* this, const void* edx, int32_t param_1); + uint32_t (__fastcall* GetTeamForChessGame)(struct Living* this); + bool (__fastcall* IsPosValidForTurnAngle)(struct Living* this, const void* edx, struct MapCoords* param_1); +}; +static_assert(sizeof(struct LivingVftable) == 0xb40, "Data type is of wrong size"); + +union LivingBase +{ + struct MobileWallHug super; + struct Object super_object; + struct GameThingWithPos super_gamethingwithpos; + struct ObjectVftable* vftable_object; + struct LivingVftable* living_vftable; + struct GameThingVftable* gameThing_vftable; +}; +static_assert(sizeof(union LivingBase) == 0x8c, "Data type is of wrong size"); + +struct Living +{ + union LivingBase base; /* 0x0 */ + struct LivingAction action; /* 0x8c */ + struct Reaction* reaction; /* 0x94 */ + struct ReactionDoneWhen* reaction_done_when; + int field_0x9c; + int32_t birth_turn; /* 0xa0 */ + struct Living* next; + uint32_t field_0xa8; + struct DataPath* data_path; + struct DataForScriptRemind* data_for_script_remind; /* 0xb0 */ + uint16_t status; + struct Flock* flock; + struct GameThingWithPos* field_0xbc; + uint32_t field_0xc0; + uint32_t field_0xc4; + struct GFootpath* footpath; + struct GFootpathNode* footpath_node; + struct LH3DColor specular_color; /* 0xd0 */ + uint32_t field_0xd4; + struct DanceGroup* dance_group; + uint8_t field_0xdc; +}; +static_assert(sizeof(struct Living) == 0xe0, "Data type is of wrong size"); + +static struct LivingVftable* __vt__6Living = (struct LivingVftable*)0x008cd394; + +// Static methods + +// win1.41 005ec810 mac 1004bb10 Living::ProcessLiving(void) +void __cdecl ProcessLiving__6LivingFv(void); + +// Constructors + +// win1.41 0055c820 mac 1030ed90 Living::Living(void) +struct Living* __fastcall __ct__6LivingFv(struct Living* this); +// win1.41 005ebec0 mac 10383560 Living::Living(MapCoords const &, GLivingInfo const *) +struct Living* __fastcall __ct__6LivingFRC9MapCoordsPC11GLivingInfo(struct Living* this, const void* edx, struct MapCoords* coords, struct GLivingInfo* info); + +// Non-virtual methods + +// win1.41 005afe20 mac inlined Living::StateArrivesAtFoodReaction(void) +uint32_t __fastcall StateArrivesAtFoodReaction__6LivingFv(struct Living* this); +// win1.41 005afe30 mac inlined Living::StateDying(void) +uint32_t __fastcall StateDying__6LivingFv(struct Living* this); +// win1.41 005afe80 mac inlined Living::StateArrivesAtWoodReaction(void) +uint32_t __fastcall StateArrivesAtWoodReaction__6LivingFv(struct Living* this); +// win1.41 005afe90 mac inlined Living::StateDead(void) +uint32_t __fastcall StateDead__6LivingFv(struct Living* this); +// win1.41 005aff20 mac inlined Living::StateInHand(void) +uint32_t __fastcall StateInHand__6LivingFv(struct Living* this); +// win1.41 005aff30 mac inlined Living::StateDowned(void) +uint32_t __fastcall StateDowned__6LivingFv(struct Living* this); +// win1.41 005aff40 mac inlined Living::StateSetDying(void) +uint32_t __fastcall StateSetDying__6LivingFv(struct Living* this); +// win1.41 005affd0 mac inlined Living::StateBeingEaten(void) +uint32_t __fastcall StateBeingEaten__6LivingFv(struct Living* this); +// win1.41 005affe0 mac inlined Living::StateFleeingFromObjectReaction(void) +uint32_t __fastcall StateFleeingFromObjectReaction__6LivingFv(struct Living* this); +// win1.41 005b0040 mac inlined Living::StateAlongPath(void) +uint32_t __fastcall StateAlongPath__6LivingFv(struct Living* this); +// win1.41 005b0050 mac inlined Living::StateBeingGoToFoodReaction(void) +uint32_t __fastcall StateGoToFoodReaction__6LivingFv(struct Living* this); +// win1.41 005b0060 mac inlined Living::StateLookingAtObjectReaction(void) +uint32_t __fastcall StateLookingAtObjectReaction__6LivingFv(struct Living* this); +// win1.41 005b00e0 mac inlined Living::StateFleeingAndLookingAtObjectReaction(void) +uint32_t __fastcall StateFleeingAndLookingAtObjectReaction__6LivingFv(struct Living* this); +// win1.41 005b00f0 mac inlined Living::StateBeingGoToWoodReaction(void) +uint32_t __fastcall StateGoToWoodReaction__6LivingFv(struct Living* this); +// win1.41 005b0190 mac inlined Living::StateMoveInFlock(void) +uint32_t __fastcall StateMoveInFlock__6LivingFv(struct Living* this); +// win1.41 005b01b0 mac inlined Living::StateFollowingObjectReaction(void) +uint32_t __fastcall StateFollowingObjectReaction__6LivingFv(struct Living* this); +// win1.41 005b0230 mac inlined Living::StateLookingAtFlyingObjectReaction(void) +uint32_t __fastcall StateLookingAtFlyingObjectReaction__6LivingFv(struct Living* this); +// win1.41 005b0240 mac inlined Living::StateInspectObjectReaction(void) +uint32_t __fastcall StateInspectObjectReaction__6LivingFv(struct Living* this); +// win1.41 005ec030 mac 103834b0 Living::SetToZero(void) +void __fastcall SetToZero__6LivingFv(struct Living* this); +// win1.41 005ec1d0 mac 103831d0 Living::InvalidState(void) +int __fastcall InvalidState__6LivingFv(struct Living* this); +// win1.41 005ec270 mac 1004cf70 Living::MoveToPos(void) +int __fastcall MoveToPos__6LivingFv(struct Living* this); +// win1.41 005ec2c0 mac 10382da0 Living::MoveToObject(void) +uint32_t __fastcall MoveToObject__6LivingFv(struct Living* this); +// win1.41 005ec330 mac 10382cf0 Living::Flying(void) +uint32_t __fastcall Flying__6LivingFv(struct Living* this); +// win1.41 005ec550 mac 10382540 Living::LookAtPos(MapCoords const &, ulong) +bool __fastcall LookAtPos__6LivingFRC9MapCoordsUl(struct Living* this, const void* edx, struct MapCoords* pos, int param_2); +// win1.41 005ec960 mac 1004eb50 Living::IsReadyForNewAnimation(unsigned long) +bool __fastcall IsReadyForNewAnimation__6LivingFUl(const struct Living* this, const void* edx, uint32_t index); +// win1.41 005ec990 mac 10054e20 Living::WaitForAnimation(void) +uint32_t __fastcall WaitForAnimation__6LivingFv(struct Living* this); +// win1.41 005eca80 mac inlined Living::SetTopStateToFinal(void) +void __fastcall SetTopStateToFinal__6LivingFv(struct Living* this); +// win1.41 005ecb10 mac 10053750 Living::SetStateAnim(void) +void __fastcall SetStateAnim__6LivingFv(struct Living* this); +// win1.41 005ecd00 mac 10380fd0 Living::MoveOnStructure(void) +uint32_t __fastcall MoveOnStructure__6LivingFv(struct Living* this); +// win1.41 005ecf60 mac 1006ced0 Living::GetFlockPos(void) +struct MapCoords* __fastcall GetFlockPos__6LivingFv(struct Living* this); +// win1.41 005ecf70 mac 1004bf90 Living::IAmFlockLeader(void) +bool __fastcall IAmFlockLeader__6LivingFv(struct Living* this); +// win1.41 005ecfa0 mac 10065500 Living::GetDomainRadius(void) +uint16_t __fastcall GetDomainRadius__6LivingFv(struct Living* this); +// win1.41 005ecfc0 mac 1006cd50 Living::GetFlockDistance(void) +uint16_t __fastcall GetFlockDistance__6LivingFv(struct Living* this); +// win1.41 005ed080 mac 100336b0 Living::CalcRandomPos(MapCoords const &, float, float) +struct MapCoords* __fastcall CalcRandomPos__6LivingFRC9MapCoordsff(struct Living* this, const void* edx, struct MapCoords* param_1, struct MapCoords* param_2, float param_3, float param_4); +// win1.41 005ed2c0 mac 10380600 Living::SetAge(float) +void __fastcall SetAge__6LivingFUl(struct Living* this, const void* edx, int age); +// win1.41 005ed9a0 mac 1006cf40 Living::StateInScript(void) +uint32_t __fastcall StateInScript__6LivingFv(struct Living* this); +// win1.41 005edad0 mac 1037f9b0 Living::StateInDance(void) +uint32_t __fastcall StateInDance__6LivingFv(struct Living* this); +// win1.41 005edc10 mac 1037f3d0 Living::SetupMoveOnFootpath(GFootpath *, int, unsigned char, GFootpathNode *) +int __fastcall SetupMoveOnFootpath__6LivingFP9GFootpathiUcP13GFootpathNode(struct Living* this, const void* edx, struct GFootpath* param_1, uint32_t param_2, uint32_t param_3, struct GFootpathNode* param_4); +// win1.41 005edd20 mac 100980f0 Living::SetupMoveToOnFootpath(GameThingWithPos &, MapCoords const &, unsigned char) +void __fastcall SetupMoveToOnFootpath__6LivingFR16GameThingWithPosRC9MapCoordsUc(struct Living* this, const void* edx, struct GameThingWithPos* destination, struct MapCoords* arrive_position, uint8_t state); +// win1.41 005edde0 mac 1037eef0 Living::MoveOnFootpath(void) +int __fastcall MoveOnFootpath__6LivingFv(struct Living* this); +// win1.41 005ef010 mac 10065550 Living::PosWithinDomain(MapCoords const &, float) +uint32_t __fastcall PosWithinDomain__6LivingFRC9MapCoordsf(struct Living* this, const void* edx, struct MapCoords* param_1, float param_2); +// win1.41 005f1270 mac 1004b9b0 Living::ProcessReaction(void) +void __fastcall ProcessReaction__6LivingFv(struct Living* this); +// win1.41 005f2640 mac 10385e00 Living::GotoPickupBallReaction(void) +uint32_t __fastcall GotoPickupBallReaction__6LivingFv(struct Living* this); +// win1.41 005f27f0 mac 10056110 Living::GetTopState(void) +enum VILLAGER_STATES __fastcall GetTopState__6LivingCFv(struct Living* this); +// win1.41 005f2830 mac 10029240 Living::SetupMoveToPos(MapCoords const &, unsigned char) +uint32_t __fastcall SetupMoveToPos__6LivingFRC9MapCoordsUc(struct Living* this, const void* edx, const struct MapCoords* param_2, uint8_t param_3); +// win1.41 005f2890 mac 10010f60 Living::SetupMoveToWithHug(MapCoords const &, unsigned char) +uint32_t __fastcall SetupMoveToWithHug__6LivingFRC9MapCoordsUc(struct Living* this, const void* edx, const struct MapCoords* coords, uint8_t state); +// win1.41 006e44a0 mac 101358c0 Living::SetReactionDoneWhen(REACTION) +void __fastcall SetReactionDoneWhen__6LivingF8REACTION(struct Living* this, const void* edx, enum REACTION reaction); + +// Override methods + +// win1.41 005ec0a0 mac 10383210 Living::ToBeDeleted(int) +void __fastcall ToBeDeleted__6LivingFi(struct Living* this, const void* edx, int param_1); +// win1.41 005ee230 mac 1037e700 Living::MoveAlongPath(void) +uint32_t __fastcall MoveAlongPath__6LivingFv(struct Living* this); +// win1.41 005ec1e0 mac 103830e0 Living::GetFinalDestPos(MapCoords *) +void __fastcall GetFinalDestPos__6LivingFP9MapCoords(const struct Living* this, const void* edx, struct MapCoords* result); +// win1.41 005f2980 mac 10076180 Living::SetCurrentAndDestinationState(unsigned char, unsigned char) +uint32_t __fastcall SetCurrentAndDestinationState__6LivingFUcUc(struct Living* this, const void* edx, enum VILLAGER_STATES current, enum VILLAGER_STATES destination); +// win1.41 005f28e0 mac 10075940 Living::SetTopState(unsigned char) +uint32_t __fastcall SetTopState__6LivingFUc(struct Living* this, const void* edx, enum VILLAGER_STATES state); +// win1.41 00417040 mac 1012f8d0 Living::StorePreviousState(void) +void __fastcall StorePreviousState__6LivingFv(struct Living* this); +// win1.41 005f2a80 mac 10072250 Living::SetState(unsigned long, unsigned char) +void __fastcall SetState__6LivingFUlUc(struct Living* this, const void* edx, enum LIVING_ACTION_INDEX index, enum VILLAGER_STATES state); +// win1.41 005eddd0 mac 1037f260 Living::EnterMoveOnPath(unsigned char, unsigned char) +uint32_t __fastcall EnterMoveOnPath__6LivingFUcUc(struct Living* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); +// win1.41 00751dd0 mac 1004ec00 Living::GetFinalState(void) +enum VILLAGER_STATES __fastcall GetFinalState__6LivingCFv(struct Living* this); + +DECLARE_LH_LINKED_LIST(Living); +DECLARE_LH_LIST_HEAD(Living); + +#endif /* BW1_DECOMP_LIVING_INCLUDED_H */ diff --git a/black/LivingAction.h b/black/LivingAction.h new file mode 100644 index 0000000..53c0010 --- /dev/null +++ b/black/LivingAction.h @@ -0,0 +1,90 @@ +#ifndef BW1_DECOMP_LIVING_ACTION_INCLUDED_H +#define BW1_DECOMP_LIVING_ACTION_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint16_t, uint32_t, uint8_t */ + +#include /* For enum VILLAGER_STATES */ + +// Forward Declares + +struct Living; + +enum LIVING_ACTION_INDEX +{ + LIVING_ACTION_INDEX_TOP = 0x0, + LIVING_ACTION_INDEX_FINAL = 0x1, + LIVING_ACTION_INDEX_PREVIOUS = 0x2, + _LIVING_ACTION_INDEX_COUNT = 0x3 +}; +static_assert(sizeof(enum LIVING_ACTION_INDEX) == 0x4, "Data type is of wrong size"); + +static const char* LIVING_ACTION_INDEX_strs[_LIVING_ACTION_INDEX_COUNT] = { + "LIVING_ACTION_INDEX_TOP", + "LIVING_ACTION_INDEX_FINAL", + "LIVING_ACTION_INDEX_PREVIOUS", +}; + +struct LivingAction +{ + uint8_t states[_LIVING_ACTION_INDEX_COUNT]; /* 0x0 */ + uint8_t field_0x3; + uint16_t turns_since_state_change; +}; +static_assert(sizeof(struct LivingAction) == 0x6, "Data type is of wrong size"); + +// Constructors + +// win1.41 005ecc70 mac 10381350 LivingAction::LivingAction(void) +struct LivingAction* __fastcall __ct__12LivingActionFv(struct LivingAction* this); + +// Non-virtual methods + +// win1.41 005ecc90 mac 10072200 LivingAction::SetState(unsigned long, unsigned char) +void __fastcall SetState__12LivingActionFUlUc(struct LivingAction* this, const void* edx, enum LIVING_ACTION_INDEX index, enum VILLAGER_STATES state); +// win1.41 inlined mac 1004c420 LivingAction::GetState(unsigned long) const +enum VILLAGER_STATES __fastcall GetState__12LivingActionCFUl(const struct LivingAction* this, const void* edx, enum LIVING_ACTION_INDEX index); + +struct Living__StateTableSubEntry +{ + bool (__fastcall* function)(struct Living* this); /* 0x0 */ + uint32_t field_0x4; + uint32_t field_0x8; + int32_t field_0xc; +}; +static_assert(sizeof(struct Living__StateTableSubEntry) == 0x10, "Data type is of wrong size"); + +struct Living__StateTableSubEntryState +{ + uint32_t (__fastcall* function)(struct Living* this); /* 0x0 */ + uint32_t field_0x4; + uint32_t field_0x8; + int32_t field_0xc; +}; +static_assert(sizeof(struct Living__StateTableSubEntryState) == 0x10, "Data type is of wrong size"); + +struct Living__StateTableSubEntryEntryState +{ + bool (__fastcall* function)(struct Living* this, const void* edx, enum VILLAGER_STATES param_1, enum VILLAGER_STATES param_2); /* 0x0 */ + uint32_t field_0x4; + uint32_t field_0x8; + int32_t field_0xc; +}; +static_assert(sizeof(struct Living__StateTableSubEntryEntryState) == 0x10, "Data type is of wrong size"); + +struct Living__StateTableEntry +{ + struct Living__StateTableSubEntryState state; /* 0x0 */ + struct Living__StateTableSubEntryEntryState entry_state; /* 0x10 */ + struct Living__StateTableSubEntry exit_state; /* 0x20 */ + struct Living__StateTableSubEntry save_state; /* 0x30 */ + struct Living__StateTableSubEntry load_state; /* 0x40 */ + struct Living__StateTableSubEntry field_0x50; + struct Living__StateTableSubEntry field_0x60; + struct Living__StateTableSubEntry transition_animation; /* 0x70 */ + struct Living__StateTableSubEntry validate; /* 0x80 */ +}; +static_assert(sizeof(struct Living__StateTableEntry) == 0x90, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LIVING_ACTION_INCLUDED_H */ diff --git a/black/LivingInfo.h b/black/LivingInfo.h new file mode 100644 index 0000000..52d7e05 --- /dev/null +++ b/black/LivingInfo.h @@ -0,0 +1,41 @@ +#ifndef BW1_DECOMP_LIVING_INFO_INCLUDED_H +#define BW1_DECOMP_LIVING_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "MobileWallHugInfo.h" /* For struct GMobileWallHugInfo */ + +struct GLivingInfo +{ + struct GMobileWallHugInfo super; /* 0x0 */ + uint32_t field_0x120; + uint8_t move_to_state; + float life; + float field_0x12c; + float field_0x130; + int field_0x134; + uint32_t teen_age; + uint32_t middle_age; + uint32_t old_age; /* 0x140 */ + uint32_t field_0x144; + uint32_t field_0x148; + uint32_t field_0x14c; + uint32_t field_0x150; + uint32_t field_0x154; + uint32_t field_0x158; + uint32_t field_0x15c; + uint32_t field_0x160; + uint32_t field_0x164; + uint32_t field_0x168; + uint32_t field_0x16c; + uint8_t field_0x170[0x8]; + uint32_t field_0x178; + uint8_t field_0x17c[0x34]; + uint32_t field_0x1b0; + uint32_t field_0x1b4; + uint8_t field_0x1b8[0x3c]; +}; +static_assert(sizeof(struct GLivingInfo) == 0x1f4, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LIVING_INFO_INCLUDED_H */ diff --git a/black/LoadingBox.h b/black/LoadingBox.h new file mode 100644 index 0000000..6b9de1d --- /dev/null +++ b/black/LoadingBox.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_LOADING_BOX_INCLUDED_H +#define BW1_DECOMP_LOADING_BOX_INCLUDED_H + +#include /* For static_assert */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct LoadingBox +{ + struct DialogBoxBase super; /* 0x0 */ +}; +static_assert(sizeof(struct LoadingBox) == 0x10, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__10LoadingBox = (struct DialogBoxBaseVftable*)0x008deb54; + +#endif /* BW1_DECOMP_LOADING_BOX_INCLUDED_H */ diff --git a/black/LobbyBox.h b/black/LobbyBox.h new file mode 100644 index 0000000..4cdd7a1 --- /dev/null +++ b/black/LobbyBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_LOBBY_BOX_INCLUDED_H +#define BW1_DECOMP_LOBBY_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct LobbyBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x7c]; +}; +static_assert(sizeof(struct LobbyBox) == 0x8c, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__8LobbyBox = (struct DialogBoxBaseVftable*)0x008deba4; + +#endif /* BW1_DECOMP_LOBBY_BOX_INCLUDED_H */ diff --git a/black/LocalBase.h b/black/LocalBase.h new file mode 100644 index 0000000..aef082b --- /dev/null +++ b/black/LocalBase.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_LOCAL_BASE_INCLUDED_H +#define BW1_DECOMP_LOCAL_BASE_INCLUDED_H + +#include /* For static_assert */ +#include /* For size_t */ +#include /* For uint32_t */ + +#include "Base.h" /* For struct Base */ + +struct LocalBase +{ + struct Base super; /* 0x0 */ +}; +static_assert(sizeof(struct LocalBase) == 0x8, "Data type is of wrong size"); + +static struct BaseVftable* __vt__9LocalBase = (struct BaseVftable*)0x008a9a44; + +// Static methods + +// win1.41 005f8790 mac 1009eb9c LocalBase::operator new(unsigned long) +struct LocalBase* __cdecl __nw__9LocalBaseFUl(size_t size, const char* file_name, uint32_t line); + +// Constructors + +// win1.41 inlined mac 1034ab30 LocalBase::LocalBase(void) +struct LocalBase* __fastcall __ct__9LocalBaseFv(struct LocalBase* this); + +#endif /* BW1_DECOMP_LOCAL_BASE_INCLUDED_H */ diff --git a/black/LoginBox.h b/black/LoginBox.h new file mode 100644 index 0000000..c30d81b --- /dev/null +++ b/black/LoginBox.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_LOGIN_BOX_INCLUDED_H +#define BW1_DECOMP_LOGIN_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct LoginBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x88c]; +}; +static_assert(sizeof(struct LoginBox) == 0x89c, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__8LoginBox = (struct DialogBoxBaseVftable*)0x008dec98; + +// Non-virtual methods + +// win1.41 00540260 mac inlined LoginBox::LoginBox(void) +struct LoginBox* __fastcall __vt__8LoginBoxFv(struct LoginBox* this); + +#endif /* BW1_DECOMP_LOGIN_BOX_INCLUDED_H */ diff --git a/black/MPFEChannelSelector.h b/black/MPFEChannelSelector.h new file mode 100644 index 0000000..68fd8ad --- /dev/null +++ b/black/MPFEChannelSelector.h @@ -0,0 +1,59 @@ +#ifndef BW1_DECOMP_MPFE_CHANNEL_SELECTOR_INCLUDED_H +#define BW1_DECOMP_MPFE_CHANNEL_SELECTOR_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +// Forward Declares + +struct SetupBigButton; +struct SetupButton; +struct SetupCheckBox; +struct SetupEdit; +struct SetupList; +struct SetupStaticText; + +struct MPFEChannelSelector +{ + struct DialogBoxBase super; /* 0x0 */ + struct SetupStaticText* title; /* 0x10 */ + struct SetupStaticText* instructions; + struct SetupBigButton* back_arrow; + struct SetupBigButton* next_arrow; + struct SetupEdit* field_0x20; + struct SetupEdit* field_0x24; + struct SetupList* field_0x28; + struct SetupList* field_0x2c; + struct SetupButton* join_help_channel_button; /* 0x30 */ + struct SetupButton* refresh_button; + struct SetupCheckBox* resume_checkbox; + struct SetupStaticText* current_game_label; + struct SetupStaticText* players_in_game_label; /* 0x40 */ + struct SetupStaticText* game_name_label; + struct SetupStaticText* field_0x48; + uint8_t field_0x4c; + uint32_t field_0x50; + uint32_t field_0x54; +}; +static_assert(sizeof(struct MPFEChannelSelector) == 0x58, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__19MPFEChannelSelector = (struct DialogBoxBaseVftable*)0x00930780; + +// Constructors + +// win1.41 00628330 mac 1039f0c0 MPFEChannelSelector::MPFEChannelSelector(void) +struct MPFEChannelSelector* __fastcall __ct__19MPFEChannelSelectorFv(struct MPFEChannelSelector* this); + +// Non-virtual methods + +// win1.41 00629c50 mac 1039cab0 MPFEChannelSelector::RefreshChannelList(void) +void __fastcall RefreshChannelList__19MPFEChannelSelectorFv(struct MPFEChannelSelector* this); + +// Override methods + +// win1.41 00628e30 mac 1039df20 MPFEChannelSelector::InitControls(void) +void __fastcall InitControls__19MPFEChannelSelectorFv(struct MPFEChannelSelector* this); + +#endif /* BW1_DECOMP_MPFE_CHANNEL_SELECTOR_INCLUDED_H */ diff --git a/black/MPFEChooseConnection.h b/black/MPFEChooseConnection.h new file mode 100644 index 0000000..f5eb005 --- /dev/null +++ b/black/MPFEChooseConnection.h @@ -0,0 +1,26 @@ +#ifndef BW1_DECOMP_MPFE_CHOOSE_CONNECTION_INCLUDED_H +#define BW1_DECOMP_MPFE_CHOOSE_CONNECTION_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +// Forward Declares + +struct MPFEChannelSelector; + +struct MPFEChooseConnection +{ + struct DialogBoxBase super; /* 0x0 */ +}; +static_assert(sizeof(struct MPFEChooseConnection) == 0x10, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__20MPFEChooseConnection = (struct DialogBoxBaseVftable*)0x009307d8; + +// Static methods + +// win1.41 0062b030 mac 1039fa00 MPFEChooseConnection::Init(unsigned long, unsigned long, void (*)(int, SetupBox *, SetupControl *, int, int)) +void __fastcall Init__20MPFEChooseConnectionFUlUlPFiP8SetupBoxP12SetupControlii_v(struct MPFEChannelSelector* this, const void* edx, uint32_t param_1, uint32_t param_2, void* callback); + +#endif /* BW1_DECOMP_MPFE_CHOOSE_CONNECTION_INCLUDED_H */ diff --git a/black/MPFEConnectionStatus.h b/black/MPFEConnectionStatus.h new file mode 100644 index 0000000..e35ff61 --- /dev/null +++ b/black/MPFEConnectionStatus.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_MPFE_CONNECTION_STATUS_INCLUDED_H +#define BW1_DECOMP_MPFE_CONNECTION_STATUS_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include /* For enum LOBBY_TYPE */ + +struct MPFEConnectionStatus +{ + enum LOBBY_TYPE type; /* 0x0 */ +}; +static_assert(sizeof(struct MPFEConnectionStatus) == 0x4, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 0062dab0 mac 103a1860 MPFEConnectionStatus::IsLanLobby(void) +bool __fastcall IsLanLobby__20MPFEConnectionStatusFv(struct MPFEConnectionStatus* this); +// win1.41 0062dac0 mac 103a1810 MPFEConnectionStatus::IsInternetLobby(void) +bool __fastcall IsInternetLobby__20MPFEConnectionStatusFv(struct MPFEConnectionStatus* this); + +#endif /* BW1_DECOMP_MPFE_CONNECTION_STATUS_INCLUDED_H */ diff --git a/black/MPFEDatabase.h b/black/MPFEDatabase.h new file mode 100644 index 0000000..da7e317 --- /dev/null +++ b/black/MPFEDatabase.h @@ -0,0 +1,41 @@ +#ifndef BW1_DECOMP_MPFE_DATABASE_INCLUDED_H +#define BW1_DECOMP_MPFE_DATABASE_INCLUDED_H + +#include /* For static_assert */ + +#include /* For bool32_t */ + +// Forward Declares + +struct MPFEDatabase; + +struct MPFEDatabaseVftable +{ + void (__fastcall* DatabaseError)(struct MPFEDatabase* this); /* 0x0 */ + void (__fastcall* DatabaseComplete)(struct MPFEDatabase* this); +}; +static_assert(sizeof(struct MPFEDatabaseVftable) == 0x8, "Data type is of wrong size"); + +struct MPFEDatabase +{ + struct MPFEDatabaseVftable* vftable; /* 0x0 */ + float progress_percentage; + bool32_t populated; +}; +static_assert(sizeof(struct MPFEDatabase) == 0xc, "Data type is of wrong size"); + +static struct MPFEDatabaseVftable* __vt__12MPFEDatabase = (struct MPFEDatabaseVftable*)0x0093086c; + +// Constructors + +// win1.41 0062e100 mac 103a3ce0 MPFEDatabase::MPFEDatabase(void) +struct MPFEDatabase* __fastcall __ct__12MPFEDatabaseFv(struct MPFEDatabase* this); + +// Override methods + +// win1.41 0062e4f0 mac 103a35b0 MPFEDatabase::DatabaseError(void) +void __fastcall DatabaseError__12MPFEDatabaseFv(struct MPFEDatabase* this); +// win1.41 0062e510 mac 103a3520 MPFEDatabase::DatabaseComplete(void) +void __fastcall DatabaseComplete__12MPFEDatabaseFv(struct MPFEDatabase* this); + +#endif /* BW1_DECOMP_MPFE_DATABASE_INCLUDED_H */ diff --git a/black/MPFELogin.h b/black/MPFELogin.h new file mode 100644 index 0000000..f97cdd9 --- /dev/null +++ b/black/MPFELogin.h @@ -0,0 +1,54 @@ +#ifndef BW1_DECOMP_MPFE_LOGIN_INCLUDED_H +#define BW1_DECOMP_MPFE_LOGIN_INCLUDED_H + +#include /* For static_assert */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ +#include "MPFEDatabase.h" /* For struct MPFEDatabase */ + +// Forward Declares + +struct SetupBigButton; +struct SetupEdit; +struct SetupStaticText; + +struct MPFELogin +{ + struct DialogBoxBase super; /* 0x0 */ + struct SetupBigButton* left_arrow_button; /* 0x10 */ + struct SetupBigButton* right_arrow_button; + struct SetupEdit* edit; + struct SetupEdit* edit2; + struct SetupStaticText* text1; /* 0x20 */ + struct SetupStaticText* text2; + struct SetupStaticText* text3; + struct MPFEDatabase database; + void* field_0x38; + char field_0x3c[0x20]; +}; +static_assert(sizeof(struct MPFELogin) == 0x5c, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__9MPFELogin = (struct DialogBoxBaseVftable*)0x00930968; + +// Constructors + +// win1.41 00630580 mac 103a80e0 MPFELogin::MPFELogin(void) +struct MPFELogin* __fastcall __ct__9MPFELoginFv(struct MPFELogin* this); + +struct MPFELoginDatabase +{ + struct MPFEDatabase super; /* 0x0 */ +}; +static_assert(sizeof(struct MPFELoginDatabase) == 0xc, "Data type is of wrong size"); + +static struct MPFEDatabaseVftable* __vt__17MPFELoginDatabase = (struct MPFEDatabaseVftable*)0x00930990; + +// Constructors + +// win1.41 00631050 mac 103a7490 MPFELoginDatabase::MPFELoginDatabase(void) +struct MPFELoginDatabase* __fastcall __ct__17MPFELoginDatabaseFv(struct MPFELoginDatabase* this); + +// win1.41 00630530 mac 103a8100 __sinit_MPFELogin_cpp +void __cdecl __sinit_MPFELogin_cpp(void); + +#endif /* BW1_DECOMP_MPFE_LOGIN_INCLUDED_H */ diff --git a/black/MagicEffectInfo.h b/black/MagicEffectInfo.h new file mode 100644 index 0000000..5609196 --- /dev/null +++ b/black/MagicEffectInfo.h @@ -0,0 +1,69 @@ +#ifndef BW1_DECOMP_MAGIC_EFFECT_INFO_INCLUDED_H +#define BW1_DECOMP_MAGIC_EFFECT_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "EffectInfo.h" /* For struct GEffectInfo */ + +struct GMagicEffectInfo +{ + struct GEffectInfo super; /* 0x0 */ + char name[0x30]; /* 0x34 */ + uint32_t field_0x64; + uint32_t field_0x68; + uint32_t field_0x6c; + uint32_t field_0x70; + float field_0x74; + float field_0x78; + float field_0x7c; + float field_0x80; + float field_0x84; + uint32_t field_0x88; + uint32_t field_0x8c; + uint32_t field_0x90; + int field_0x94; + uint32_t field_0x98; + uint32_t field_0x9c; + int field_0xa0; + uint32_t field_0xa4; + float field_0xa8; + float field_0xac; + float field_0xb0; + float field_0xb4; + float field_0xb8; + float field_0xbc; + float field_0xc0; + float field_0xc4; + float field_0xc8; + uint32_t field_0xcc; + uint32_t field_0xd0; + uint32_t field_0xd4; + uint32_t field_0xd8; + uint32_t field_0xdc; + uint32_t field_0xe0; + uint32_t field_0xe4; + uint32_t field_0xe8; + uint32_t field_0xec; + uint32_t field_0xf0; + uint32_t field_0xf4; + uint32_t field_0xf8; + uint32_t field_0xfc; + uint32_t field_0x100; + uint32_t field_0x104; + uint32_t field_0x108; + uint32_t field_0x10c; + uint32_t field_0x110; + float field_0x114; + float field_0x118; +}; +static_assert(sizeof(struct GMagicEffectInfo) == 0x11c, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__16GMagicEffectInfo = (struct GBaseInfoVftable*)0x008d8b78; + +// Constructors + +// win1.41 00524e00 mac 100ccad0 GMagicEffectInfo::GMagicEffectInfo(void) +struct GMagicEffectInfo* __fastcall __ct__16GMagicEffectInfoFv(struct GMagicEffectInfo* this); + +#endif /* BW1_DECOMP_MAGIC_EFFECT_INFO_INCLUDED_H */ diff --git a/black/MagicFireBall.h b/black/MagicFireBall.h new file mode 100644 index 0000000..fdf5769 --- /dev/null +++ b/black/MagicFireBall.h @@ -0,0 +1,30 @@ +#ifndef BW1_DECOMP_MAGIC_FIRE_BALL_INCLUDED_H +#define BW1_DECOMP_MAGIC_FIRE_BALL_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Object.h" /* For struct Object */ + +struct MagicFireBall +{ + struct Object super; /* 0x0 */ + uint32_t field_0x54; + bool field_0x58; + uint32_t field_0x5c; +}; +static_assert(sizeof(struct MagicFireBall) == 0x60, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__13MagicFireBall = (struct ObjectVftable*)0x0093595c; + +// Constructors + +// win1.41 00682a20 mac 103fca90 MagicFireBall::MagicFireBall(void) +struct MagicFireBall* __fastcall __ct__13MagicFireBallFv(struct MagicFireBall* this); + +DECLARE_LH_LIST_HEAD(MagicFireBall); + +#endif /* BW1_DECOMP_MAGIC_FIRE_BALL_INCLUDED_H */ diff --git a/black/MagicHand.h b/black/MagicHand.h new file mode 100644 index 0000000..27e631c --- /dev/null +++ b/black/MagicHand.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_MAGIC_HAND_INCLUDED_H +#define BW1_DECOMP_MAGIC_HAND_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct Object; + +struct GMagicHand +{ + struct GameThing super; /* 0x0 */ + bool has_object_in_hand; /* 0x14 */ + struct Object* object_in_hand; +}; +static_assert(sizeof(struct GMagicHand) == 0x1c, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_MAGIC_HAND_INCLUDED_H */ diff --git a/black/MagicInfo.h b/black/MagicInfo.h new file mode 100644 index 0000000..da6ae0f --- /dev/null +++ b/black/MagicInfo.h @@ -0,0 +1,42 @@ +#ifndef BW1_DECOMP_MAGIC_INFO_INCLUDED_H +#define BW1_DECOMP_MAGIC_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For enum MAGIC_TYPE */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +// Forward Declares + +struct GMagicEffectInfo; + +struct GMagicInfo +{ + struct GBaseInfo super; /* 0x0 */ + int field_0x10; + uint8_t field_0x14[0x44]; +}; +static_assert(sizeof(struct GMagicInfo) == 0x58, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__10GMagicInfo = (struct GBaseInfoVftable*)0x008c4cbc; + +// Static methods + +// win1.41 005fb3b0 mac 103ae320 GMagicInfo::GetInfoFromText(char const *) +enum MAGIC_TYPE __cdecl GetInfoFromText__10GMagicInfoFPCc(const char* text); + +// Constructors + +// win1.41 00435520 mac 1018eec0 GMagicInfo::GMagicInfo(void) +void __fastcall __ct__10GMagicInfoFv(struct GMagicInfo* this); + +// Non-virtual methods + +// win1.41 005fb3f0 mac 103ae2c0 GMagicInfo::GetMagicInfoText(void) const +const char* __fastcall GetMagicInfoText__10GMagicInfoCFv(const struct GMagicInfo* this); +// win1.41 005fb680 mac 103adc30 GMagicInfo::GetMagicEffectInfo(void) const +struct GMagicEffectInfo* __fastcall GetMagicEffectInfo__10GMagicInfoCFv(const struct GMagicInfo* this); + +#endif /* BW1_DECOMP_MAGIC_INFO_INCLUDED_H */ diff --git a/black/MagicVortex.h b/black/MagicVortex.h new file mode 100644 index 0000000..d306998 --- /dev/null +++ b/black/MagicVortex.h @@ -0,0 +1,73 @@ +#ifndef BW1_DECOMP_MAGIC_VORTEX_INCLUDED_H +#define BW1_DECOMP_MAGIC_VORTEX_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum VORTEX_TYPE */ + +#include "MobileStatic.h" /* For struct MobileStatic */ +#include "MultiMapFixed.h" /* For struct MultiMapFixedVftable */ + +// Forward Declares + +struct Flock; +struct GVortexInfo; +struct LandscapeVortex; +struct MapCoords; +struct Villager; + +struct LandscapeVortexVftable +{ + struct MultiMapFixedVftable super; /* 0x0 */ + void (__fastcall* ProcessContentsOfVortex)(struct LandscapeVortex* this); /* 0x90c */ + void (__fastcall* SetFlockParams)(struct LandscapeVortex* this, const void* edx, const struct MapCoords* coords, float param_2, float param_3, struct Flock* flock); /* 0x910 */ + bool (__fastcall* IsVillagerBeingThrownByThisVortex)(struct LandscapeVortex* this, const void* edx, struct Villager* villager); +}; +static_assert(sizeof(struct LandscapeVortexVftable) == 0x918, "Data type is of wrong size"); + +struct LandscapeVortex +{ + struct MobileStatic super; /* 0x0 */ + struct LandscapeVortex* next; /* 0x88 */ + float field_0x8c; + float field_0x90; + uint32_t field_0x94; + uint32_t field_0x98; + uint32_t field_0x9c; + uint32_t field_0xa0; + uint32_t field_0xa4; + uint32_t field_0xa8; + uint32_t field_0xac; + uint32_t field_0xb0; + uint32_t field_0xb4; + uint8_t field_0xb8; + uint32_t field_0xbc; + uint32_t field_0xc0; + uint32_t field_0xc4; + uint32_t field_0xc8; + uint32_t field_0xcc; + uint32_t field_0xd0; + uint32_t field_0xd4; + uint32_t field_0xd8; + uint32_t field_0xdc; + enum VORTEX_TYPE type; /* 0xe0 */ + uint32_t field_0xe4; + float field_0xe8; +}; +static_assert(sizeof(struct LandscapeVortex) == 0xec, "Data type is of wrong size"); + +static struct LandscapeVortexVftable* __vt__15LandscapeVortex = (struct LandscapeVortexVftable*)0x0092ee80; + +// Constructors + +// win1.41 005fe7a0 mac 103b69b0 LandscapeVortex::LandscapeVortex(void) +struct LandscapeVortex* __fastcall __ct__15LandscapeVortexFv(struct LandscapeVortex* this); + +// Non-virtual methods + +// win1.41 005fd570 mac 103b8c60 LandscapeVortex::GetVortexInfo(void) +struct GVortexInfo* __fastcall GetVortexInfo__15LandscapeVortexFv(struct LandscapeVortex* this); + +#endif /* BW1_DECOMP_MAGIC_VORTEX_INCLUDED_H */ diff --git a/black/MainMenu.h b/black/MainMenu.h new file mode 100644 index 0000000..7e13d1f --- /dev/null +++ b/black/MainMenu.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_MAIN_MENU_INCLUDED_H +#define BW1_DECOMP_MAIN_MENU_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct MainMenu +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x28]; +}; +static_assert(sizeof(struct MainMenu) == 0x38, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__8MainMenu = (struct DialogBoxBaseVftable*)0x008dec44; + +#endif /* BW1_DECOMP_MAIN_MENU_INCLUDED_H */ diff --git a/black/Map.h b/black/Map.h new file mode 100644 index 0000000..bbad0e4 --- /dev/null +++ b/black/Map.h @@ -0,0 +1,101 @@ +#ifndef BW1_DECOMP_MAP_INCLUDED_H +#define BW1_DECOMP_MAP_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint16_t, uint32_t, uint8_t */ + +#include /* For enum OBJECT_TYPE */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct Object; + +struct MapCell +{ + struct Object* first_object_mobile; /* 0x0 */ + struct Object* first_object_fixed; +}; +static_assert(sizeof(struct MapCell) == 0x8, "Data type is of wrong size"); + +// Static methods + +// win1.41 00601510 mac 1000b040 MapCell::DoesObjectTypeCountAsFixed(OBJECT_TYPE) +bool __cdecl DoesObjectTypeCountAsFixed__7MapCellF11OBJECT_TYPE(enum OBJECT_TYPE type); + +// Non-virtual methods + +// win1.41 00601b60 mac 10054090 MapCell::SetFirstObjectMobile(Object *) +void __fastcall SetFirstObjectMobile__7MapCellFP6Object(struct MapCell* this, const void* edx, struct Object* object); +// win1.41 00601b70 mac 104a6ee0 MapCell::SetFirstObjectFixed(Object *) +void __fastcall SetFirstObjectFixed__7MapCellFP6Object(struct MapCell* this, const void* edx, struct Object* object); +// win1.41 00601380 mac 101cbfc0 MapCell::Clean(void) +void __fastcall Clean__7MapCellFv(struct MapCell* this); +// win1.41 006015e0 mac 100121f0 MapCell::FindTypeOnMap(OBJECT_TYPE, Object *) const +struct Object* __fastcall FindTypeOnMap__7MapCellCF11OBJECT_TYPEP6Object(struct MapCell* this, const void* edx, enum OBJECT_TYPE type, struct Object* object); +// win1.41 00601b80 mac 100544d0 MapCell::GetX(void) const +uint32_t __fastcall GetX__7MapCellCFv(const struct MapCell* this); +// win1.41 00601ba0 mac 10054640 MapCell::GetZ(void) const +uint32_t __fastcall GetZ__7MapCellCFv(const struct MapCell* this); + +struct MapCellIterator +{ + struct Object* object; /* 0x0 */ + bool is_fixed; + struct MapCell* cell; +}; +static_assert(sizeof(struct MapCellIterator) == 0xc, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 inlined mac 1002c620 MapCellIterator::MoveToMobileObsIfNeededAndPoss(void) +void __fastcall MoveToMobileObsIfNeededAndPoss__15MapCellIteratorFv(struct MapCellIterator* this); + +struct GMap +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8; + uint8_t field_0x9; + uint8_t field_0xa; + uint8_t field_0xb; + uint32_t cell_extent_zx[0x2]; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + uint32_t field_0x38; + uint8_t field_0x3c; + uint8_t field_0x3d; + uint8_t field_0x3e; + uint8_t field_0x3f; + uint32_t field_0x40; + struct MapCell cells[0x200][0x200]; + uint16_t count_0x200044; + uint8_t field_0x200046; + uint8_t field_0x200047; + uint8_t field_0x200048; + uint8_t field_0x200049; + uint8_t field_0x20004a; + uint8_t field_0x20004b; + uint8_t field_0x20004c; + uint8_t field_0x20004d; + uint8_t field_0x20004e; + uint8_t field_0x20004f; +}; +static_assert(sizeof(struct GMap) == 0x200050, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00612660 mac 100fddf0 GMap::ToMap(long, long) +struct MapCell* __fastcall ToMap__4GMapFll(struct GMap* this, const void* edx, uint32_t cell_x, uint32_t cell_z); +// win1.41 00612690 mac 10049c10 GMap::InBounds(long, long) +bool __fastcall InBounds__4GMapCFll(struct GMap* this, const void* edx, uint32_t x, uint32_t z); + +#endif /* BW1_DECOMP_MAP_INCLUDED_H */ diff --git a/black/MapCoords.h b/black/MapCoords.h new file mode 100644 index 0000000..8753be4 --- /dev/null +++ b/black/MapCoords.h @@ -0,0 +1,114 @@ +#ifndef BW1_DECOMP_MAP_COORDS_INCLUDED_H +#define BW1_DECOMP_MAP_COORDS_INCLUDED_H + +#include /* For static_assert */ +#include /* For int16_t, int32_t, uint16_t, uint32_t */ + +#include /* For enum OBJECT_TYPE */ +#include /* For bool32_t */ + +// Forward Declares + +struct LHPoint; +struct MapCell; +struct MapCellIterator; +struct Object; +struct Point2D; +struct Town; + +struct JustMapXZ +{ + int16_t x; /* 0x0 */ + int16_t z; +}; +static_assert(sizeof(struct JustMapXZ) == 0x4, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 inlined mac 10032f20 JustMapXZ::Init(ushort, ushort) +struct JustMapXZ* __fastcall Init__9JustMapXZFUsUs(struct JustMapXZ* this, const void* edx, int16_t x, int16_t z); +// win1.41 005e1920 mac 100fe800 JustMapXZ::Init(MapCell*) +struct JustMapXZ* __fastcall Init__9JustMapXZFP7MapCell(struct JustMapXZ* this, const void* edx, struct MapCell* cell); + +struct MapCoordsSplit +{ + uint16_t cell; /* 0x0 */ + uint16_t map; +}; +static_assert(sizeof(struct MapCoordsSplit) == 0x4, "Data type is of wrong size"); + +union MapCoordsFull +{ + int32_t full; + struct MapCoordsSplit split; +}; +static_assert(sizeof(union MapCoordsFull) == 0x4, "Data type is of wrong size"); + +struct MapCoords +{ + union MapCoordsFull x; /* 0x0 */ + union MapCoordsFull z; + float altitude; +}; +static_assert(sizeof(struct MapCoords) == 0xc, "Data type is of wrong size"); + +// Constructors + +// win1.41 00441b60 mac 1006e040 MapCoords::MapCoords(void) +struct MapCoords* __fastcall __ct__9MapCoordsFv(struct MapCoords* this); +// win1.41 006031b0 mac 1004feb0 MapCoords::MapCoords(long, long, float) +struct MapCoords* __fastcall __ct__9MapCoordsFllf(struct MapCoords* this, const void* edx, long x, long z, float altitude); +// win1.41 006031d0 mac 10324c60 MapCoords::MapCoords(char *) +struct MapCoords* __fastcall __ct__9MapCoordsFPc(struct MapCoords* this, const void* edx, const char* str); +// win1.41 inlined mac inlined MapCoords::MapCoords(MapCoords const &) +struct MapCoords* __fastcall __ct__9MapCoordsFP9MapCoords(struct MapCoords* this, const void* edx, const struct MapCoords* other); +// win1.41 00603160 mac 1006a450 MapCoords::MapCoords(LHPoint const &) +struct MapCoords* __fastcall __ct__9MapCoordsFRC7LHPoint(struct MapCoords* this, const void* edx, const struct LHPoint* point); + +// Non-virtual methods + +// win1.41 00603340 mac 1006a370 MapCoords::Set(LHPoint const &) +struct MapCoords* __fastcall Set__9MapCoordsFRC7LHPoint(struct MapCoords* this, const void* edx, const struct LHPoint* point); +// win1.41 00603280 mac 10513100 MapCoords::Set(char *) +void __fastcall Set__9MapCoordsFPc(struct MapCoords* this, const void* edx, const char* str); +// win1.41 006042c0 mac 100499f0 MapCoords::InBounds(void) const +bool32_t __fastcall InBounds__9MapCoordsCFv(const struct MapCoords* this); +// win1.41 006053c0 mac 100028d0 MapCoords::IsCloseToEqual(const MapCoords&, float) const +bool32_t __fastcall IsCloseToEqual__9MapCoordsCFRC9MapCoordsf(struct MapCoords* this, const void* edx, const struct MapCoords* other, float epsilon); +// win1.41 00605410 mac 1001fb00 MapCoords::operator+=(MapCoords const &) const +struct MapCoords* __fastcall __apl__9MapCoordsFRC9MapCoords(struct MapCoords* this, const void* edx, const struct MapCoords* other); +// win1.41 00605470 mac 100494b0 MapCoords::operator+=(JustMapXZ const &) const +struct MapCoords* __fastcall __apl__9MapCoordsFRC9JustMapXZ(struct MapCoords* this, const void* edx, const struct JustMapXZ* other); +// win1.41 00605520 mac 100503e0 MapCoords::operator+(MapCoords const &) const +struct MapCoords* __fastcall __pl__9MapCoordsCFRC9MapCoords(struct MapCoords* this, const void* edx, struct MapCoords* param_1, struct MapCoords* other); +// win1.41 006020e0 mac 1048f050 MapCoords::GetNearestTown(float) const +struct Town* __fastcall GetNearestTown__9MapCoordsCFf(const struct MapCoords* this, const void* edx, float t_max); +// win1.41 00603430 mac 10049b80 MapCoords::ToMap(void) const +struct MapCell* __fastcall ToMap__9MapCoordsCFv(const struct MapCoords* this); +// win1.41 006034d0 mac 1002c570 MapCoords::GetFirstIterator(void) const +struct MapCellIterator* __fastcall GetFirstIterator__9MapCoordsCFv(struct MapCoords* this, const void* edx, struct MapCellIterator* iter); +// win1.41 006035b0 mac 10018e70 MapCoords::IsWater(void) const +bool32_t __fastcall IsWater__9MapCoordsCFv(const struct MapCoords* this); +// win1.41 006045c0 mac 100195c0 MapCoords::FindType(OBJECT_TYPE, Object *) const +struct Object* __fastcall FindType__9MapCoordsCF11OBJECT_TYPEP6Object(struct MapCoords* this, const void* edx, enum OBJECT_TYPE type, struct Object* object); +// win1.41 00605660 mac 10087b50 MapCoords::operator==(MapCoords const &) const +uint32_t __fastcall __eq__9MapCoordsCFRC9MapCoords(const struct MapCoords* this, const void* edx, const struct MapCoords* param_2); +// win1.41 00605c40 mac 1004ff00 MapCoords::GetLHPoint(void) const +struct LHPoint* __fastcall GetLHPoint__9MapCoordsCFv(const struct MapCoords* this, const void* edx, struct LHPoint* point); +// win1.41 00605fb0 mac 10032290 MapCoords::GetMetresDistanceSq(MapCoords const &) const +float __fastcall GetMetresDistanceSq__9MapCoordsCFRC9MapCoords(struct MapCoords* this, const void* edx, struct MapCoords* param_2); +// win1.41 006034b0 mac 1002cb50 MapCoords::GetFirstObjectFixed(void) const +struct Object* __fastcall GetFirstObjectFixed__9MapCoordsCFv(const struct MapCoords* this); +// win1.41 inlined mac 100e62c0 MapCoords::operator=(MapCoords const &) +struct MapCoords* __fastcall __as__9MapCoordsFRC9MapCoords(struct MapCoords* this, const void* edx, const struct MapCoords* other); +// win1.41 inlined mac 1004a1d0 MapCoords::Altitude(void) const +float __fastcall Altitude__9MapCoordsCFv(const struct MapCoords* this); + +// win1.41 00535780 mac 100eda80 ConvertMapCoordsToPoint2D(MapCoords const &) +struct Point2D* __cdecl ConvertMapCoordsToPoint2D__FRC9MapCoords(struct Point2D* param_1, const struct MapCoords* param_2); +// win1.41 inlined mac 100ed940 ConvertPoint2DToMapCoords(Point2D const &) +struct MapCoords* __cdecl ConvertPoint2DToMapCoords__FRC7Point2D(struct MapCoords* param_1, const struct Point2D* param_2); +// win1.41 inlined mac inlined ConvertPointToMapCoords(Point2D const &) +struct MapCoords* __cdecl ConvertPointToMapCoords__FRC7Point(struct MapCoords* param_1, const struct LHPoint* param_2); + +#endif /* BW1_DECOMP_MAP_COORDS_INCLUDED_H */ diff --git a/black/MapShield.h b/black/MapShield.h new file mode 100644 index 0000000..63357d8 --- /dev/null +++ b/black/MapShield.h @@ -0,0 +1,46 @@ +#ifndef BW1_DECOMP_MAP_SHIELD_INCLUDED_H +#define BW1_DECOMP_MAP_SHIELD_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Fixed.h" /* For struct SingleMapFixed, struct SingleMapFixedVftable */ + +// Forward Declares + +struct GMagicInfo; +struct GMapShieldInfo; +struct MapCoords; +struct MapShield; +struct SpellShield; + +struct MapShieldVftable +{ + struct SingleMapFixedVftable super; /* 0x0 */ + void (__fastcall* ProcessShield)(struct MapShield* this); /* 0x868 */ + void (__fastcall* DrawShield)(struct MapShield* this); + bool (__fastcall* IsPointDefinietlyWithinShieldVolume)(struct MapShield* this, const void* edx, const struct MapCoords* point); /* 0x870 */ +}; +static_assert(sizeof(struct MapShieldVftable) == 0x874, "Data type is of wrong size"); + +struct MapShield +{ + struct SingleMapFixed super; /* 0x0 */ + struct MapShield* next; /* 0x5c */ + struct SpellShield* spell; /* 0x60 */ + struct GMagicInfo* spell_info; +}; +static_assert(sizeof(struct MapShield) == 0x68, "Data type is of wrong size"); + +static struct MapShieldVftable* __vt__9MapShield = (struct MapShieldVftable*)0x00982e74; + +// Constructors + +// win1.41 0072c070 mac 10531a30 MapShield::__ct(MapCoords const &, GMapShieldInfo *, SpellShield *) +struct MapShield* __fastcall __ct__9MapShieldFRC9MapCoordsP14GMapShieldInfoP11SpellShield(struct MapShield* this, const void* edx, struct MapCoords* coords, struct GMapShieldInfo* info, struct SpellShield* spell); + +DECLARE_LH_LIST_HEAD(MapShield); + +#endif /* BW1_DECOMP_MAP_SHIELD_INCLUDED_H */ diff --git a/black/MiniDialogBoxOptions.h b/black/MiniDialogBoxOptions.h new file mode 100644 index 0000000..3890d73 --- /dev/null +++ b/black/MiniDialogBoxOptions.h @@ -0,0 +1,44 @@ +#ifndef BW1_DECOMP_MINI_DIALOG_BOX_OPTIONS_INCLUDED_H +#define BW1_DECOMP_MINI_DIALOG_BOX_OPTIONS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +// Forward Declares + +struct SetupBigButton; +struct SetupButton; +struct SetupCheckBox; +struct SetupSlider; +struct SetupStaticText; + +struct MiniDialogBoxOptions +{ + struct DialogBoxBase super; /* 0x0 */ + struct SetupSlider* field_0x10; + struct SetupSlider* field_0x14; + struct SetupBigButton* field_0x18; + struct SetupBigButton* field_0x1c; + struct SetupBigButton* field_0x20; + struct SetupBigButton* field_0x24; + struct SetupStaticText* field_0x28; + struct SetupStaticText* field_0x2c; + struct SetupStaticText* field_0x30; + struct SetupCheckBox* field_0x34; + struct SetupCheckBox* field_0x38; + uint32_t field_0x3c; + uint32_t field_0x40; + struct SetupButton* field_0x44; +}; +static_assert(sizeof(struct MiniDialogBoxOptions) == 0x48, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__20MiniDialogBoxOptions = (struct DialogBoxBaseVftable*)0x008d866c; + +// Constructors + +// win1.41 00514f20 mac inlined MiniDialogBoxOptions::MiniDialogBoxOptions(void) +struct MiniDialogBoxOptions* __fastcall __ct__20MiniDialogBoxOptions(struct MiniDialogBoxOptions* this); + +#endif /* BW1_DECOMP_MINI_DIALOG_BOX_OPTIONS_INCLUDED_H */ diff --git a/black/Mist.h b/black/Mist.h new file mode 100644 index 0000000..b9829a0 --- /dev/null +++ b/black/Mist.h @@ -0,0 +1,38 @@ +#ifndef BW1_DECOMP_MIST_INCLUDED_H +#define BW1_DECOMP_MIST_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +// Forward Declares + +struct MapCoords; +struct MistListNode; + +struct Mist +{ + struct GameThingWithPos super; /* 0x0 */ + uint32_t field_0x28; + float field_0x2c; + uint32_t field_0x30; + float field_0x34; + uint8_t field_0x38[0x14]; + uint32_t field_0x4c; + struct Mist* next; /* 0x50 */ +}; +static_assert(sizeof(struct Mist) == 0x54, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__4Mist = (struct GameThingWithPosVftable*)0x008eb640; + +// Constructors + +// win1.41 00606270 mac 101056c0 Mist::Mist(MapCoords const &, float, unsigned long, float) +struct MistListNode* __fastcall __ct__4MistFRC9MapCoordsfUlf(struct Mist* this, const void* edx, struct MapCoords* coords, float param_3, uint32_t param_4, float param_5); + +DECLARE_LH_LIST_HEAD(Mist); + +#endif /* BW1_DECOMP_MIST_INCLUDED_H */ diff --git a/black/Mobile.h b/black/Mobile.h new file mode 100644 index 0000000..e7d02eb --- /dev/null +++ b/black/Mobile.h @@ -0,0 +1,43 @@ +#ifndef BW1_DECOMP_MOBILE_INCLUDED_H +#define BW1_DECOMP_MOBILE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t */ + +#include "Object.h" /* For struct Object, struct ObjectVftable */ + +// Forward Declares + +struct GMobileInfo; +struct MapCoords; + +struct MobileVftable +{ + struct ObjectVftable super; /* 0x0 */ +}; +static_assert(sizeof(struct MobileVftable) == 0x85c, "Data type is of wrong size"); + +union MobileBase +{ + struct Object super; + struct MobileVftable* vftable; +}; +static_assert(sizeof(union MobileBase) == 0x54, "Data type is of wrong size"); + +struct Mobile +{ + union MobileBase base; /* 0x0 */ + uint16_t field_0x54; +}; +static_assert(sizeof(struct Mobile) == 0x58, "Data type is of wrong size"); + +static struct MobileVftable* __vt__6Mobile = (struct MobileVftable*)0x008ce750; + +// Constructors + +// win1.41 0055c790 mac 100c0890 Mobile::Mobile(void) +struct Mobile* __fastcall __ct__6MobileFv(struct Mobile* this); +// win1.41 00600d80 mac inlined Mobile::Mobile(MapCoords const &, GMobileInfo const *) +struct Mobile* __fastcall __ct__6MobileFRC9MapCoordsPC11GMobileInfo(struct Mobile* this, const void* edx, struct MapCoords* coords, struct GMobileInfo* info); + +#endif /* BW1_DECOMP_MOBILE_INCLUDED_H */ diff --git a/black/MobileInfo.h b/black/MobileInfo.h new file mode 100644 index 0000000..969fe6e --- /dev/null +++ b/black/MobileInfo.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_MOBILE_INFO_INCLUDED_H +#define BW1_DECOMP_MOBILE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "ObjectInfo.h" /* For struct GObjectInfo */ + +struct GMobileInfo +{ + struct GObjectInfo super; /* 0x0 */ + uint32_t field_0x100; +}; +static_assert(sizeof(struct GMobileInfo) == 0x104, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_MOBILE_INFO_INCLUDED_H */ diff --git a/black/MobileObject.h b/black/MobileObject.h new file mode 100644 index 0000000..eda5595 --- /dev/null +++ b/black/MobileObject.h @@ -0,0 +1,66 @@ +#ifndef BW1_DECOMP_MOBILE_OBJECT_INCLUDED_H +#define BW1_DECOMP_MOBILE_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "Mobile.h" /* For struct Mobile, struct MobileVftable */ + +// Forward Declares + +struct GMobileObjectInfo; +struct MapCell; +struct MapCoords; +struct Object; + +struct MobileObjectVftable +{ + struct MobileVftable super; /* 0x0 */ +}; +static_assert(sizeof(struct MobileObjectVftable) == 0x85c, "Data type is of wrong size"); + +union MobileObjectBase +{ + struct Mobile super; + struct MobileObjectVftable* vftable; +}; +static_assert(sizeof(union MobileObjectBase) == 0x58, "Data type is of wrong size"); + +struct MobileObject +{ + union MobileObjectBase base; /* 0x0 */ + struct Object* object; /* 0x58 */ + uint32_t field_0x5C; + uint32_t field_0x60; + uint32_t field_0x64; +}; +static_assert(sizeof(struct MobileObject) == 0x68, "Data type is of wrong size"); + +static struct MobileObjectVftable* __vt__12MobileObject = (struct MobileObjectVftable*)0x008eed1c; + +// Static methods + +// win1.41 00606fc0 mac 1008e240 MobileObject::AddMobileObjectCheckSum(void) +void __cdecl AddMobileObjectCheckSum__12MobileObjectFv(void); + +// Constructors + +// win1.41 00600d80 mac 1011a5a0 MobileObject::MobileObject(void) +struct MobileObject* __fastcall __ct__12MobileObjectFv(struct MobileObject* this); +// win1.41 00606e40 mac 103bde00 MobileObject::MobileObject(MapCoords const &, GMobileObjectInfo const *, Object *, float, float) +struct MobileObject* __fastcall __ct__12MobileObjectFRC9MapCoordsPC17GMobileObjectInfoP6Objectff(const struct MobileObject* this, const void* edx, struct MapCoords* coords, const struct GMobileObjectInfo* info, struct Object* param_4, float param_5, float param_6); + +// Override methods + +// win1.41 00607250 mac 103bd0c0 MobileObject::InsertMapObjectToCell(MapCell *) +void __fastcall InsertMapObjectToCell__12MobileObjectFP7MapCell(struct MobileObject* this, const void* edx, struct MapCell* cell); +// win1.41 00607265 mac 103bd050 MobileObject::RemoveMapObjectFromCell(MapCell *) +void __fastcall RemoveMapObjectFromCell__12MobileObjectFP7MapCell(struct MobileObject* this, const void* edx, struct MapCell* cell); +// win1.41 00404aa0 mac 100ad960 MobileObject::GetMesh(void) const +void* __fastcall GetMesh__12MobileObjectCFv(struct MobileObject* this); + +DECLARE_LH_LINKED_LIST(MobileObject); + +#endif /* BW1_DECOMP_MOBILE_OBJECT_INCLUDED_H */ diff --git a/black/MobileObjectInfo.h b/black/MobileObjectInfo.h new file mode 100644 index 0000000..bf0dc3d --- /dev/null +++ b/black/MobileObjectInfo.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_MOBILE_OBJECT_INFO_INCLUDED_H +#define BW1_DECOMP_MOBILE_OBJECT_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "MobileInfo.h" /* For struct GMobileInfo */ + +struct GMobileObjectInfo +{ + struct GMobileInfo super; /* 0x0 */ + uint8_t field_0x104[0x10]; +}; +static_assert(sizeof(struct GMobileObjectInfo) == 0x114, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__17GMobileObjectInfo = (struct GBaseInfoVftable*)0x009305cc; + +// Constructors + +// win1.41 inlined mac 100ad720 GMobileObjectInfo::GMobileObjectInfo(void) +struct GMobileObjectInfo* __fastcall __ct__17GMobileObjectInfoFv(struct GMobileObjectInfo* this); + +#endif /* BW1_DECOMP_MOBILE_OBJECT_INFO_INCLUDED_H */ diff --git a/black/MobileStatic.h b/black/MobileStatic.h new file mode 100644 index 0000000..72b2da0 --- /dev/null +++ b/black/MobileStatic.h @@ -0,0 +1,30 @@ +#ifndef BW1_DECOMP_MOBILE_STATIC_INCLUDED_H +#define BW1_DECOMP_MOBILE_STATIC_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "MultiMapFixed.h" /* For struct MultiMapFixed */ + +// Forward Declares + +struct GMobileStaticInfo; +struct MapCoords; +struct Object; + +struct MobileStatic +{ + struct MultiMapFixed super; /* 0x0 */ + struct Object* field_0x7c; + uint8_t field_0x80[0x8]; +}; +static_assert(sizeof(struct MobileStatic) == 0x88, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__12MobileStatic = (struct MultiMapFixedVftable*)0x008e80b4; + +// Constructors + +// win1.41 00608710 mac 103c0e60 MobileStatic::MobileStatic(MapCoords const &, GMobileStaticInfo const *, Object *, float, float) +struct MobileStatic* __fastcall __ct__12MobileStaticFRC9MapCoordsPC17GMobileStaticInfoP6Objectff(struct MobileStatic* this, const void* edx, struct MapCoords* coords, struct GMobileStaticInfo* info, struct Object* param_3, float param_4, float param_5); + +#endif /* BW1_DECOMP_MOBILE_STATIC_INCLUDED_H */ diff --git a/black/MobileStaticInfo.h b/black/MobileStaticInfo.h new file mode 100644 index 0000000..d4a416d --- /dev/null +++ b/black/MobileStaticInfo.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_MOBILE_STATIC_INFO_INCLUDED_H +#define BW1_DECOMP_MOBILE_STATIC_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "MultiMapFixedInfo.h" /* For struct GMultiMapFixedInfo */ + +struct GMobileStaticInfo +{ + struct GMultiMapFixedInfo super; /* 0x0 */ + uint8_t field_0x120[0xc]; +}; +static_assert(sizeof(struct GMobileStaticInfo) == 0x12c, "Data type is of wrong size"); + +static struct GMultiMapFixedInfoVftable* __vt__17GMobileStaticInfo = (struct GMultiMapFixedInfoVftable*)0x0093060c; + +// Static methods + +// win1.41 005ff2f0 mac 103c1190 GMobileStaticInfo::GetInfo(void) +struct GMobileStaticInfo* __cdecl GetInfo__17GMobileStaticInfoFv(void); + +#endif /* BW1_DECOMP_MOBILE_STATIC_INFO_INCLUDED_H */ diff --git a/black/MobileWallHug.h b/black/MobileWallHug.h new file mode 100644 index 0000000..7b94556 --- /dev/null +++ b/black/MobileWallHug.h @@ -0,0 +1,334 @@ +#ifndef BW1_DECOMP_MOBILE_WALL_HUG_INCLUDED_H +#define BW1_DECOMP_MOBILE_WALL_HUG_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int16_t, int32_t, int8_t, uint16_t, uint32_t, uint8_t */ + +#include "Collide.h" /* For struct CircleHugInfo */ +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ +#include "MapCoords.h" /* For struct MapCoords */ +#include "Mobile.h" /* For struct Mobile, struct MobileVftable */ +#include "Object.h" /* For struct Object */ + +// Forward Declares + +struct GFootpath; +struct GMobileWallHugInfo; +struct GameThingVftable; +struct GameThingWithPosVftable; +struct MobileWallHug; +struct ObjectVftable; +struct Point2D; +struct Q210NewCollide3Obj; + +enum MOVE_TO_STATES +{ + MOVE_TO_STATES_ARRIVED = 0x1, + MOVE_TO_STATES_FINAL_STEP = 0x4, + MOVE_TO_STATES_STEP_THROUGH = 0xb, + MOVE_TO_STATES_LINEAR = 0xc, + MOVE_TO_STATES_LINEAR_CW = 0xd, + MOVE_TO_STATES_LINEAR_CCW = 0xe, + MOVE_TO_STATES_ORBIT_CW = 0xf, + MOVE_TO_STATES_ORBIT_CCW = 0x10, + MOVE_TO_STATES_EXIT_CIRCLE_CCW = 0x11, + MOVE_TO_STATES_EXIT_CIRCLE_CW = 0x12, + _MOVE_TO_STATES_COUNT = 0x13 +}; +static_assert(sizeof(enum MOVE_TO_STATES) == 0x4, "Data type is of wrong size"); + +static const char* MOVE_TO_STATES_strs[_MOVE_TO_STATES_COUNT] = { + "MOVE_TO_STATES_0x0", + "MOVE_TO_STATES_ARRIVED", + "MOVE_TO_STATES_0x2", + "MOVE_TO_STATES_0x3", + "MOVE_TO_STATES_FINAL_STEP", + "MOVE_TO_STATES_0x5", + "MOVE_TO_STATES_0x6", + "MOVE_TO_STATES_0x7", + "MOVE_TO_STATES_0x8", + "MOVE_TO_STATES_0x9", + "MOVE_TO_STATES_0xa", + "MOVE_TO_STATES_STEP_THROUGH", + "MOVE_TO_STATES_LINEAR", + "MOVE_TO_STATES_LINEAR_CW", + "MOVE_TO_STATES_LINEAR_CCW", + "MOVE_TO_STATES_ORBIT_CW", + "MOVE_TO_STATES_ORBIT_CCW", + "MOVE_TO_STATES_EXIT_CIRCLE_CCW", + "MOVE_TO_STATES_EXIT_CIRCLE_CW", +}; + +struct GMoveBy +{ + int x; /* 0x0 */ + float altitude; + int z; +}; +static_assert(sizeof(struct GMoveBy) == 0xc, "Data type is of wrong size"); + +struct MobileWallHugVftable +{ + struct MobileVftable super; /* 0x0 */ + bool (__fastcall* AreWeThere)(struct MobileWallHug* this, const void* edx, struct MapCoords* param_1, float param_2); /* 0x85c */ + struct MapCoords* (__fastcall* GetDestPos)(struct MobileWallHug* this); /* 0x860 */ + void (__fastcall* SetSpeed)(struct MobileWallHug* this, const void* edx, int speed); + void (__fastcall* SetTowardsAngle)(struct MobileWallHug* this, const void* edx, uint16_t angle); + void (__fastcall* MoveTo3D)(struct MobileWallHug* this); + void (__fastcall* SetNewWander)(struct MobileWallHug* this, const void* edx, struct MapCoords* param_1, int32_t param_2, int32_t param_3); /* 0x870 */ +}; +static_assert(sizeof(struct MobileWallHugVftable) == 0x874, "Data type is of wrong size"); + +union MobileWallHugBase +{ + struct Mobile super; + struct Object super_object; + struct GameThingWithPos super_gamethingwithpos; + struct MobileWallHugVftable* mobileWallHug_vftable; + struct ObjectVftable* vftable_object; + struct GameThingWithPosVftable* vftable_gameThingWithPos; + struct GameThingVftable* gameThing_vftable; +}; +static_assert(sizeof(union MobileWallHugBase) == 0x58, "Data type is of wrong size"); + +struct MobileWallHug +{ + union MobileWallHugBase base; /* 0x0 */ + int16_t turns_until_next_state_change; /* 0x58 */ + uint16_t speed; + uint16_t game_angle; + uint8_t move_state; + struct Object* target; /* 0x60 */ + struct GMoveBy step; + struct CircleHugInfo circle_hug_info; /* 0x70 */ + int8_t field_0x78; + struct GFootpath* footpath; + struct MapCoords goal; /* 0x80 */ +}; +static_assert(sizeof(struct MobileWallHug) == 0x8c, "Data type is of wrong size"); + +static struct MobileWallHugVftable* __vt__13MobileWallHug = (struct MobileWallHugVftable*)0x008cded8; + +// Constructors + +// win1.41 inlined mac inlined MobileWallHug::MobileWallHug(MapCoords const &, GMobileWallHugInfo const *) +struct MobileWallHug* __fastcall __ct__13MobileWallHugFRC9MapCoordsPC18GMobileWallHugInfo(struct MobileWallHug* this, const void* edx, struct MapCoords* coords, struct GMobileWallHugInfo* info); +// win1.41 00474890 mac 101e0bb0 MobileWallHug::MobileWallHug(void) +struct MobileWallHug* __fastcall __ct__13MobileWallHugFv(struct MobileWallHug* this); + +// Non-virtual methods + +// win1.41 00609d10 mac inlined MobileWallHug::RebuildMoveByStep(void) +void __fastcall RebuildMoveByStep__13MobileWallHugFv(struct MobileWallHug* this); +// win1.41 0060abc0 mac 1001c770 MobileWallHug::SetupMobileMoveToPos(MapCoords const &, MOVE_TO_STATES) +void __fastcall SetupMobileMoveToPos__13MobileWallHugFRC9MapCoords14MOVE_TO_STATES(struct MobileWallHug* this, const void* edx, const struct MapCoords* coords, enum MOVE_TO_STATES move_to_state); +// win1.41 0060ad40 mac 1005f4a0 MobileWallHug::AreWeThere(float) +bool __fastcall AreWeThere__13MobileWallHugFf(struct MobileWallHug* this, const void* edx, float param_1); +// win1.41 0060af20 mac 10047250 MobileWallHug::MoveTo(void) +int __fastcall MoveTo__13MobileWallHugFv(struct MobileWallHug* this); +// win1.41 0060bfa0 mac 103c3600 MobileWallHug::InitStepsXZ(void) +void __fastcall InitStepsXZ__13MobileWallHugFv(struct MobileWallHug* this); +// win1.41 0060ca50 mac 10076600 MobileWallHug::MoveToCircleHugLinearSquareSweep(MapCoords const &) +uint32_t __fastcall MoveToCircleHugLinearSquareSweep__13MobileWallHugFRC9MapCoords(struct MobileWallHug* this, const void* edx, struct MapCoords* dest); +// win1.41 0060d800 mac 100382d0 MobileWallHug::MoveToCircleHug(void) +int __fastcall MoveToCircleHug__13MobileWallHugFv(struct MobileWallHug* this); +// win1.41 0060da90 mac 1004cce0 MobileWallHug::SetGameAngle(unsigned short) +void __fastcall SetGameAngle__13MobileWallHugFUs(struct MobileWallHug* this, const void* edx, uint16_t angle); +// win1.41 0060f760 mac 103c1910 MobileWallHug::SetToZero(void) +void __fastcall SetToZero__13MobileWallHugFv(struct MobileWallHug* this); + +// Override methods + +// win1.41 0060f760 mac 103c1910 MobileWallHug::SetSpeed(long) +void __fastcall SetSpeed__13MobileWallHugFl(struct MobileWallHug* this, const void* edx, int speed); + +struct std__pair__pMobileWallHug__ulong +{ + struct MobileWallHug* first; /* 0x0 */ + uint32_t second; +}; +static_assert(sizeof(struct std__pair__pMobileWallHug__ulong) == 0x8, "Data type is of wrong size"); + +struct std__map__pMobileWallHug__ulong_node +{ + struct std__map__pMobileWallHug__ulong_node* field_0x0; + struct std__map__pMobileWallHug__ulong_node* field_0x4; + struct std__map__pMobileWallHug__ulong_node* field_0x8; + struct std__pair__pMobileWallHug__ulong payload; + uint32_t field_last; /* 0x14 */ +}; +static_assert(sizeof(struct std__map__pMobileWallHug__ulong_node) == 0x18, "Data type is of wrong size"); + +struct std__map__pMobileWallHug__ulong_node_list +{ + struct std__map__pMobileWallHug__ulong_node* head; /* 0x0 */ + uint32_t count; +}; +static_assert(sizeof(struct std__map__pMobileWallHug__ulong_node_list) == 0x8, "Data type is of wrong size"); + +struct std__map__pMobileWallHug__ulong +{ + uint32_t field_0x0; + struct std__map__pMobileWallHug__ulong_node* head; + uint32_t field_0x8; + int count; +}; +static_assert(sizeof(struct std__map__pMobileWallHug__ulong) == 0x10, "Data type is of wrong size"); + +struct std__set__pMobileWallHug_node +{ + struct std__set__pMobileWallHug_node* field_0x0; + struct std__set__pMobileWallHug_node* field_0x4; + struct std__set__pMobileWallHug_node* field_0x8; + struct MobileWallHug* payload; + uint32_t field_last; /* 0x10 */ +}; +static_assert(sizeof(struct std__set__pMobileWallHug_node) == 0x14, "Data type is of wrong size"); + +struct std__set__pMobileWallHug_node_list +{ + struct std__set__pMobileWallHug_node* head; /* 0x0 */ + uint32_t count; +}; +static_assert(sizeof(struct std__set__pMobileWallHug_node_list) == 0x8, "Data type is of wrong size"); + +struct std__set__pMobileWallHug +{ + uint32_t field_0x0; + struct std__set__pMobileWallHug_node* head; + uint32_t field_0x8; + int count; +}; +static_assert(sizeof(struct std__set__pMobileWallHug) == 0x10, "Data type is of wrong size"); + +struct std__pair__pQ210NewCollide3Obj__std__set__pMobileWallHug +{ + struct Q210NewCollide3Obj* first; /* 0x0 */ + struct std__set__pMobileWallHug second; +}; +static_assert(sizeof(struct std__pair__pQ210NewCollide3Obj__std__set__pMobileWallHug) == 0x14, "Data type is of wrong size"); + +struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_iterator +{ + struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_iterator* field_0x0; + struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_iterator* field_0x4; + struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_iterator* field_0x8; + struct std__pair__pQ210NewCollide3Obj__std__set__pMobileWallHug payload; + uint32_t field_last; /* 0x20 */ +}; +static_assert(sizeof(struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_iterator) == 0x24, "Data type is of wrong size"); + +struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_node_list +{ + struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_iterator* head; /* 0x0 */ + uint32_t count; +}; +static_assert(sizeof(struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_node_list) == 0x8, "Data type is of wrong size"); + +struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug +{ + uint32_t field_0x0; + struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_iterator* head; + uint32_t field_0x8; + int count; +}; +static_assert(sizeof(struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug) == 0x10, "Data type is of wrong size"); + +struct SubCollideBlockPos +{ + uint16_t x; /* 0x0 */ + uint16_t z; +}; +static_assert(sizeof(struct SubCollideBlockPos) == 0x4, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 inlined mac inlined SubCollideBlockPos::operator<( const(SubCollideBlockPos const &)) +bool __fastcall __lt__18SubCollideBlockPosCFRC18SubCollideBlockPos(const struct SubCollideBlockPos* this, const void* edx, const struct SubCollideBlockPos* other); + +struct std__map__SubCollideBlockPosPNewCollide3Obj_iterator +{ + struct std__map__SubCollideBlockPosPNewCollide3Obj_iterator* field_0x0; + struct std__map__SubCollideBlockPosPNewCollide3Obj_iterator* field_0x4; + struct std__map__SubCollideBlockPosPNewCollide3Obj_iterator* field_0x8; + struct SubCollideBlockPos key; + struct Q210NewCollide3Obj* value; /* 0x10 */ + uint32_t field_last; +}; +static_assert(sizeof(struct std__map__SubCollideBlockPosPNewCollide3Obj_iterator) == 0x18, "Data type is of wrong size"); + +struct CircleHugStateInfo_field_0x44_node_list +{ + struct std__map__SubCollideBlockPosPNewCollide3Obj_iterator* head; /* 0x0 */ + uint32_t count; +}; +static_assert(sizeof(struct CircleHugStateInfo_field_0x44_node_list) == 0x8, "Data type is of wrong size"); + +struct std__map__SubCollideBlockPosPNewCollide3Obj +{ + float field_0x0; + struct std__map__SubCollideBlockPosPNewCollide3Obj_iterator* head; + float field_0x8; + int count; +}; +static_assert(sizeof(struct std__map__SubCollideBlockPosPNewCollide3Obj) == 0x10, "Data type is of wrong size"); + +struct CircleHugStateInfoT +{ + struct std__map__pMobileWallHug__ulong field_0x0; + struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug obj_to_mwh; /* 0x10 */ + struct std__set__pMobileWallHug field_0x20; + struct std__set__pMobileWallHug field_0x30; + bool field_0x40; + uint8_t field_0x41[0x3]; + struct std__map__SubCollideBlockPosPNewCollide3Obj field_0x44; +}; +static_assert(sizeof(struct CircleHugStateInfoT) == 0x54, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 0060d410 mac 10093270 CircleHugStateInfoT::fetch(MapCoords) +struct Q210NewCollide3Obj* __fastcall fetch__19CircleHugStateInfoTF9MapCoords(struct CircleHugStateInfoT* this, const void* edx, struct MapCoords coords); + +struct LinearSquareSweepStruct +{ + float dpmr; /* 0x0 */ + float dot_product; + float dp2pr2ml2; + struct Q210NewCollide3Obj* obj; +}; +static_assert(sizeof(struct LinearSquareSweepStruct) == 0x10, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac inlined LinearSquareSweepStruct::LinearSquareSweepStruct(void) Guessed +struct LinearSquareSweepStruct* __fastcall __ct__23LinearSquareSweepStructFPNewCollide3Obj7Point2D7Point2D(struct LinearSquareSweepStruct* this, const void* edx, struct Q210NewCollide3Obj* collide_obj, const struct Point2D* agent_position, const struct Point2D* step); + +// Non-virtual methods + +// win1.41 inlined mac inlined LinearSquareSweepStruct::Reset(void) Guessed +void __fastcall Reset__23LinearSquareSweepStructFv(struct LinearSquareSweepStruct* this); +// win1.41 inlined mac inlined LinearSquareSweepStruct::operator<(LinearSquareSweepStruct *) Guessed +bool __fastcall __lt__23LinearSquareSweepStructFP23LinearSquareSweepStruct(struct LinearSquareSweepStruct* this, const void* edx, struct LinearSquareSweepStruct* other); + +// win1.41 006111b0 mac 103c6e50 std::map>::find(NewCollide::Obj**) +void __fastcall find__std__map_pNewCollide_Obj_std_set_pMobileWallHug__FRCPQ210NewCollide3Obj(struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug* this, const void* edx, struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_iterator** result, struct Q210NewCollide3Obj** key); +// win1.41 00613a70 mac 103c7480 std::map::find +void __fastcall find__std__map__SubCollideBlockPosPNewCollide3Obj(const struct std__map__SubCollideBlockPosPNewCollide3Obj* this, const void* edx, struct std__map__SubCollideBlockPosPNewCollide3Obj_iterator** iterator, const struct SubCollideBlockPos* key); +// win1.41 00613830 mac 103c71c0 std::map::find_or_insert +void __fastcall find_or_insert__std__map__SubCollideBlockPosPNewCollide3Obj(const struct std__map__SubCollideBlockPosPNewCollide3Obj* this, const void* edx, struct std__map__SubCollideBlockPosPNewCollide3Obj_iterator** iterator, const struct SubCollideBlockPos* key); +// win1.41 inlined mac inlined MobileWallHug_InCircleStuff::MoveToCircleHugCircleSquareSweep(MobileWallHug*, const MapCoords&) +uint32_t __cdecl MoveToCircleHugCircleSquareSweep__30MobileWallHug_InCircleStuff_clockwise_FP13MobileWallHugRC9MapCoords(struct MobileWallHug* this, const struct MapCoords* dest, bool clockwise); +// win1.41 00614c40 mac 1005a760 MobileWallHug_InCircleStuff<0>::MoveToCircleHugCircleSquareSweep(MobileWallHug *, MapCoords const &) +uint32_t __cdecl MoveToCircleHugCircleSquareSweep__30MobileWallHug_InCircleStuff_0_FP13MobileWallHugRC9MapCoords(struct MobileWallHug* param_1, const struct MapCoords* param_2); +// win1.41 006159f0 mac 10059450 MobileWallHug_InCircleStuff<1>::MoveToCircleHugCircleSquareSweep(MobileWallHug *, MapCoords const &) +uint32_t __cdecl MoveToCircleHugCircleSquareSweep__30MobileWallHug_InCircleStuff_1_FP13MobileWallHugRC9MapCoords(struct MobileWallHug* param_1, const struct MapCoords* param_2); +// win1.41 00613790 mac inlined FUN_00613790 +void __fastcall FUN_00613790(struct std__set__pMobileWallHug_node** this); +// win1.41 00609a50 mac 10013020 DoWallHuggerLookahead(void) +void __cdecl DoWallHuggerLookahead__Fv(void); +// win1.41 006097c0 mac 103cb690 __sinit_MobileWallHug_cpp +void __fastcall __sinit_MobileWallHug_cpp(void* this); + +#endif /* BW1_DECOMP_MOBILE_WALL_HUG_INCLUDED_H */ diff --git a/black/MobileWallHugInfo.h b/black/MobileWallHugInfo.h new file mode 100644 index 0000000..89149ae --- /dev/null +++ b/black/MobileWallHugInfo.h @@ -0,0 +1,20 @@ +#ifndef BW1_DECOMP_MOBILE_WALL_HUG_INFO_INCLUDED_H +#define BW1_DECOMP_MOBILE_WALL_HUG_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint8_t */ + +#include "MobileInfo.h" /* For struct GMobileInfo */ + +struct GMobileWallHugInfo +{ + struct GMobileInfo super; /* 0x0 */ + int32_t speed; /* 0x104 */ + uint8_t field_0x108[0xc]; + float field_0x114; + float field_0x118; + float field_0x11c; +}; +static_assert(sizeof(struct GMobileWallHugInfo) == 0x120, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_MOBILE_WALL_HUG_INFO_INCLUDED_H */ diff --git a/black/Morphable.h b/black/Morphable.h new file mode 100644 index 0000000..7226348 --- /dev/null +++ b/black/Morphable.h @@ -0,0 +1,141 @@ +#ifndef BW1_DECOMP_MORPHABLE_INCLUDED_H +#define BW1_DECOMP_MORPHABLE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint32_t, uint8_t, uintptr_t */ + +#include /* For struct LH3DAnimSet */ +#include /* For struct LHPoint */ +#include /* For struct LHReleasedFile */ + +#include "DrawingObject.h" /* For struct DrawingObject */ +#include "Name.h" /* For struct Name */ + +// Forward Declares + +struct AnimInfo; +struct CAnim; +struct CFrame; +struct HairGroup; +struct LH3DComplexObject; +struct LH3DMesh; +struct LH3DObjectHair; +struct LHFile; +struct LHMatrix; +struct Morphable; + +struct Morphable_field_0x4314_t +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; + struct Morphable_field_0x4314_t* next; /* 0x10 */ +}; +static_assert(sizeof(struct Morphable_field_0x4314_t) == 0x14, "Data type is of wrong size"); + +struct MorphableVftable +{ + void (__fastcall* SetAnimTime)(struct Morphable* this, const void* edx, int param_1, int param_2); /* 0x0 */ + uint32_t (__fastcall* LoadBase)(struct Morphable* this, const void* edx, const char* path); + void (__fastcall* SetSize)(struct Morphable* this, const void* edx, float scale); + void (__fastcall* MorphAnims)(struct Morphable* this); + void (__fastcall* MorphTexture)(struct Morphable* this); /* 0x10 */ + void (__fastcall* UpdateTime)(struct Morphable* this, const void* edx, int time); + void (__fastcall* PrepareForDrawing)(struct Morphable* this); + bool (__fastcall* AddForDrawing)(struct Morphable* this); + bool (__fastcall* LoadBinary)(struct Morphable* this, const void* edx, char* param_2, int param_3); /* 0x20 */ + void (__fastcall* SaveBinary)(struct Morphable* this, const void* edx, char* buffer); +}; +static_assert(sizeof(struct MorphableVftable) == 0x28, "Data type is of wrong size"); + +struct Morphable +{ + struct DrawingObject super; /* 0x0 */ + uintptr_t field_0x4; + uint8_t field_0x8; + uint8_t field_0x9; + uint8_t field_0xa; + uint8_t field_0xb; + struct LHReleasedFile file; + struct LHPoint position; /* 0x78 */ + uint8_t field_0x84; + uint8_t field_0x85; + uint8_t field_0x86; + uint8_t field_0x87; + uint8_t field_0x88; + uint8_t field_0x89; + uint8_t field_0x8a; + uint8_t field_0x8b; + float field_0x8c; + float size_1; /* 0x90 */ + float size_2; + int current_mesh; + uint8_t field_0x9c; + uint8_t field_0x9d; + uint8_t field_0x9e; + uint8_t field_0x9f; + float field_0xa0; + uint8_t field_0xa4; + uint8_t field_0xa5; + uint8_t field_0xa6; + uint8_t field_0xa7; + float field_0xa8; + uint8_t field_0xac; + uint8_t field_0xad; + uint8_t field_0xae; + uint8_t field_0xaf; + uint8_t field_0xb0; + uint8_t field_0xb1; + uint8_t field_0xb2; + uint8_t field_0xb3; + struct LH3DMesh* meshes[0x8]; + struct Name names[0x8]; /* 0xd4 */ + struct LH3DAnimSet anim_sets[0x6]; /* 0x1d4 */ + struct Morphable_field_0x4314_t* field_0x4314[0xe8]; + uint8_t field_0x46b4[0x104]; + int field_0x47b8; + uint8_t field_0x47bc[0x24]; + float field_0x47e0; + uint8_t field_0x47e4[0xc]; + struct LHMatrix* transformed_matrices; /* 0x47f0 */ + struct LHMatrix* field_0x47f4; + struct LHMatrix* field_0x47f8; + struct CFrame* frame; + int32_t hair_group_count; /* 0x4800 */ + struct HairGroup* hair_groups[0x8]; + uint32_t field_0x4824; + struct LH3DObjectHair* l3d_hair_group; + struct LH3DComplexObject* dynamic_shadow; + uint32_t field_0x4830; +}; +static_assert(sizeof(struct Morphable) == 0x4834, "Data type is of wrong size"); + +static struct MorphableVftable* __vt__9Morphable = (struct MorphableVftable*)0x008cbef8; + +// Static methods + +// win1.41 006186b0 mac 10107250 Morphable::LoadExtraTexture(void) +uint32_t __fastcall LoadExtraTexture__9MorphableFv(void); + +// Non-virtual methods + +// win1.41 00617310 mac 10108d10 Morphable::MorphInit(LHPoint &, long, void* ) +void __fastcall MorphInit__9MorphableFR7LHPointlPv(struct Morphable* this, const void* edx, struct LHPoint* point, long param_3, void* param_4); +// win1.41 00617470 mac 10108c30 Morphable::AddHairGroup() +uint32_t __fastcall AddHairGroup__9MorphableFv(struct Morphable* this); +// win1.41 00617620 mac 10108960 Morphable::SelectMesh(long) +void __fastcall SelectMesh__9MorphableFl(struct Morphable* this, const void* edx, int param_1); +// win1.41 00617ae0 mac 10107f50 Morphable::ReadBinary(LHFile *, AnimInfo *, AnimInfo *) +uint32_t __fastcall ReadBinary__9MorphableFP6LHFileP8AnimInfoP8AnimInfo(struct Morphable* this, const void* edx, struct LHFile* file, struct AnimInfo* info_1, struct AnimInfo* info_2); +// win1.41 00617ee0 mac 10107a90 Morphable::ReadExtraDataBinary +void __fastcall ReadExtraDataBinary__9MorphableFP6LHFileP8AnimInfoP8AnimInfol(struct Morphable* this, const void* edx, struct LHFile* param_1, struct AnimInfo* param_2, struct AnimInfo* param_3, long param_4); +// win1.41 00618720 mac 10106d80 Morphable::LoadMesh(char*, long) +uint32_t __fastcall LoadMesh__9MorphableFPcl(struct Morphable* this, const void* edx, char* param_2, int param_3); +// win1.41 00619650 mac 10084860 Morphable::GetAnim(long, long) +struct CAnim* __fastcall GetAnim__9MorphableFll(struct Morphable* this, const void* edx, long anim_index, long param_3); +// win1.41 00619690 mac 10084450 Morphable::GetSetAnim(long, long, long) +struct CAnim* __fastcall GetSetAnim__9MorphableFlll(struct Morphable* this, const void* edx, long param_1, long param_2, long param_3); + +#endif /* BW1_DECOMP_MORPHABLE_INCLUDED_H */ diff --git a/black/MultiMapFixed.h b/black/MultiMapFixed.h new file mode 100644 index 0000000..46c67d8 --- /dev/null +++ b/black/MultiMapFixed.h @@ -0,0 +1,175 @@ +#ifndef BW1_DECOMP_MULTI_MAP_FIXED_INCLUDED_H +#define BW1_DECOMP_MULTI_MAP_FIXED_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint32_t, uint8_t */ + +#include /* For enum ABODE_TYPE, enum RESOURCE_TYPE */ +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "Fixed.h" /* For struct FixedObject, struct FixedObjectVftable */ +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ +#include "MapCoords.h" /* For struct JustMapXZ */ +#include "Object.h" /* For struct Object */ + +// Forward Declares + +struct BuildingSite; +struct GFootpath; +struct GFootpathLink; +struct GInterfaceStatus; +struct GMultiMapFixedInfo; +struct GameOSFile; +struct GameThingVftable; +struct GameThingWithPosVftable; +struct LH3DMesh; +struct MapCell; +struct MapCoords; +struct MultiMapFixed; +struct NewCollide; +struct ObjectVftable; +struct PlannedMultiMapFixed; +struct PotStructure; +struct Villager; + +struct MultiChild +{ + struct Object* object; /* 0x0 */ + struct JustMapXZ coords; +}; +static_assert(sizeof(struct MultiChild) == 0x8, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac 100dc120 MultiChild::MultiChild(void) +struct MultiChild* __fastcall __ct__10MultiChildFv(struct MultiChild* this); + +struct MultiChildList +{ + struct MultiChild* array; /* 0x0 */ + uint32_t size; + uint32_t capacity; +}; +static_assert(sizeof(struct MultiChildList) == 0xc, "Data type is of wrong size"); + +struct MultiMapFixedVftable +{ + struct FixedObjectVftable super; /* 0x0 */ + struct MapCoords* (__fastcall* GetDoorPos)(struct MultiMapFixed* this, const void* edx, struct MapCoords* pos); /* 0x864 */ + float (__fastcall* GetInfluence)(struct MultiMapFixed* this); + bool (__fastcall* IsPlaytimeStructure)(struct MultiMapFixed* this); + bool (__fastcall* IsPlaytimeStarted)(struct MultiMapFixed* this); /* 0x870 */ + void (__fastcall* AddPlaytimeVillager)(struct MultiMapFixed* this, const void* edx, struct Villager* villager); + void (__fastcall* CheckMapObject)(struct MultiMapFixed* this); + void (__fastcall* GetResourceDropPosForComputerPlayer)(struct MultiMapFixed* this, const void* edx, struct MapCoords* drop_pos); + float (__fastcall* GetPercentBuilt)(struct MultiMapFixed* this); /* 0x880 */ + float (__fastcall* GetPercentRepaired)(struct MultiMapFixed* this); + float (__fastcall* GetPercentRepairedFromWhenDamaged)(struct MultiMapFixed* this); + bool (__fastcall* IsRepaired)(struct MultiMapFixed* this); + bool (__fastcall* IsBuilt)(struct MultiMapFixed* this); /* 0x890 */ + float (__fastcall* GetPercentRepairedForNonFunctional)(struct MultiMapFixed* this); + float (__fastcall* GetPercentForDrawBuilding)(struct MultiMapFixed* this); + float (__fastcall* GetPercentAbodeFullWithAdults)(struct MultiMapFixed* this); + float (__fastcall* GetPercentAbodeFullWithChildren)(struct MultiMapFixed* this); /* 0x8a0 */ + bool (__fastcall* IsDrawBuilding)(struct MultiMapFixed* this); + bool (__fastcall* Built)(struct MultiMapFixed* this); + bool (__fastcall* Repaired)(struct MultiMapFixed* this); + uint32_t (__fastcall* GetBuildingSiteWood)(struct MultiMapFixed* this, const void* edx, uint32_t* param_1); /* 0x8b0 */ + struct LH3DMesh* (__fastcall* GetDestructionMesh)(struct MultiMapFixed* this); + void (__fastcall* RemoveDamage)(struct MultiMapFixed* this); + void* (__fastcall* GetBuildingObject)(struct MultiMapFixed* this); + bool (__fastcall* IsCivic)(struct MultiMapFixed* this); /* 0x8c0 */ + enum ABODE_TYPE (__fastcall* GetAbodeType)(struct MultiMapFixed* this); + void (__fastcall* SetPower)(struct MultiMapFixed* this, const void* edx, float power); + struct MapCoords* (__fastcall* GetResourcePos)(struct MultiMapFixed* this, const void* edx, enum RESOURCE_TYPE type, int32_t param_2); + bool (__fastcall* IsPoisonedResource)(struct MultiMapFixed* this); /* 0x8d0 */ + struct MapCoords* (__fastcall* GetResourceNearestEdge)(struct MultiMapFixed* this, const void* edx, struct MapCoords* coords, enum RESOURCE_TYPE type, struct Object* param_3, int param_4); + float (__fastcall* GetDesireToBeRepaired)(struct MultiMapFixed* this); + void (__fastcall* AddToPlayer)(struct MultiMapFixed* this); + void (__fastcall* RemoveFromPlayer)(struct MultiMapFixed* this); /* 0x8e0 */ + uint32_t (__fastcall* DoResourceAdding)(struct MultiMapFixed* this, const void* edx, enum RESOURCE_TYPE type, struct GInterfaceStatus* iface, bool param_3, struct MapCoords* param_4, int param_5); + uint32_t (__fastcall* DoResourceRemoving)(struct MultiMapFixed* this, const void* edx, enum RESOURCE_TYPE type, uint32_t param_2, struct GInterfaceStatus* iface, bool param_4); + int (__fastcall* CalulateAmountOverMaximum)(struct MultiMapFixed* this, const void* edx, enum RESOURCE_TYPE type); + bool (__fastcall* IsAbode)(struct MultiMapFixed* this); /* 0x8f0 */ + void (__fastcall* RemovePotFromStructure)(struct MultiMapFixed* this, const void* edx, struct PotStructure* structure); + bool (__fastcall* GetShouldNotBeAddedToPlanned)(struct MultiMapFixed* this); + void (__fastcall* SetShouldNotBeAddedToPlanned)(struct MultiMapFixed* this, const void* edx, bool value); + void (__fastcall* BuildBy)(struct MultiMapFixed* this, const void* edx, float param_1); /* 0x900 */ + struct PlannedMultiMapFixed* (__fastcall* ConvertToPlanned)(struct MultiMapFixed* this); + void (__fastcall* CreateCollideData)(struct MultiMapFixed* this); +}; +static_assert(sizeof(struct MultiMapFixedVftable) == 0x90c, "Data type is of wrong size"); + +union MultiMapFixedBase +{ + struct FixedObject super; + struct Object super_object; + struct GameThingWithPos super_gamethingwithpos; + struct ObjectVftable* object_vftable; + struct MultiMapFixedVftable* multiMapFixed_vftable; + struct GameThingVftable* gameThing_vftable; + struct GameThingWithPosVftable* gameThingWithPos_vftable; +}; +static_assert(sizeof(union MultiMapFixedBase) == 0x58, "Data type is of wrong size"); + +struct MultiMapFixed +{ + union MultiMapFixedBase base; /* 0x0 */ + uint8_t field_0x58; + float field_0x5c; + uint32_t field_0x60; + struct GFootpathLink* footpath_link; + struct MultiChildList multi_children_array; + struct BuildingSite* building_site; /* 0x74 */ + struct NewCollide* collide_data; +}; +static_assert(sizeof(struct MultiMapFixed) == 0x7c, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__13MultiMapFixed = (struct MultiMapFixedVftable*)0x008dbf84; + +// Static methods + +// win1.41 0052dbc0 mac 10038060 MultiMapFixed::CompareMultiChilds(void const *, void const *) +int __cdecl CompareMultiChilds__13MultiMapFixedFPCvPCv(struct MultiChild* param_1, struct MultiChild* param_2); + +// Constructors + +// win1.41 0052e1a0 mac 100e16a0 MultiMapFixed::MultiMapFixed(void) +struct MultiMapFixed* __fastcall __ct__13MultiMapFixedFv(struct MultiMapFixed* this); +// win1.41 0052e1e0 mac 100e1460 MultiMapFixed::MultiMapFixed(MapCoords const &, GMultiMapFixedInfo const *, float, float, float, int) +struct MultiMapFixed* __fastcall __ct__13MultiMapFixedFRC9MapCoordsPC18GMultiMapFixedInfofffi(struct MultiMapFixed* this, const void* edx, const struct MapCoords* coords, const struct GMultiMapFixedInfo* info, float y_angle, float scale, float param_5, int param_6); + +// Non-virtual methods + +// win1.41 0052dc10 mac inlined MultiMapFixed::SortChildren(void) +void __fastcall SortChildren__13MultiMapFixedFv(struct MultiMapFixed* this); +// win1.41 0052dc30 mac 100380f0 MultiMapFixed::SortedMultiChildFind(MapCell const &) +struct MultiChild* __fastcall SortedMultiChildFind__13MultiMapFixedFRC7MapCell(struct MultiMapFixed* this, const void* edx, const struct MapCell* cell); +// win1.41 0052ea50 mac 100e0160 MultiMapFixed::AllocateMultiChild(void) +void __fastcall AllocateMultiChild__13MultiMapFixedFv(struct MultiMapFixed* this); +// win1.41 0052f6d0 mac 100ddab0 MultiMapFixed::ReleaseCollideData(void) +void __fastcall ReleaseCollideData__13MultiMapFixedFv(struct MultiMapFixed* this); + +// Override methods + +// win1.41 0052ee10 mac 100df0c0 MultiMapFixed::AddFootpath(GFootpath *) +uint32_t __fastcall AddFootpath__13MultiMapFixedFP9GFootpath(struct MultiMapFixed* this, const void* edx, struct GFootpath* footpath); +// win1.41 0052f310 mac 100de310 MultiMapFixed::Load(GameOSFile &) +uint32_t __fastcall Load__13MultiMapFixedFR10GameOSFile(struct MultiMapFixed* this, const void* edx, struct GameOSFile* file); +// win1.41 0052e400 mac 10033c30 MultiMapFixed::GetMapChild(MapCell const &) +struct Object* __fastcall GetMapChild__13MultiMapFixedFRC7MapCell(struct MultiMapFixed* this, const void* edx, const struct MapCell* cell); +// win1.41 0052e420 mac 100e0ec0 MultiMapFixed::SetMapChild(Object *, MapCell *) +void __fastcall SetMapChild__13MultiMapFixedFP6ObjectP7MapCell(struct MultiMapFixed* this, const void* edx, struct Object* child, struct MapCell* cell); +// win1.41 0052e650 mac 100e0690 MultiMapFixed::InsertMapObject(void) +void __fastcall InsertMapObject__13MultiMapFixedFv(struct MultiMapFixed* this); +// win1.41 0052e890 mac 100e0240 MultiMapFixed::CallVirtualFunctionsForCreation(const MapCoords&) +void __fastcall CallVirtualFunctionsForCreation__13MultiMapFixedFRC9MapCoords(struct MultiMapFixed* this, const void* edx, const struct MapCoords* coords); +// win1.41 0052e370 mac 1002c2e0 MultiMapFixed::GetDoorPos(void) +void __fastcall GetDoorPos__13MultiMapFixedFv(const struct MultiMapFixed* this, const void* edx, struct MapCoords* position); +// win1.41 0052f550 mac 100ddd70 MultiMapFixed::CreateCollideData(void) +void __fastcall CreateCollideData__13MultiMapFixedFv(struct MultiMapFixed* this); + +DECLARE_LH_LINKED_LIST(MultiMapFixed); + +#endif /* BW1_DECOMP_MULTI_MAP_FIXED_INCLUDED_H */ diff --git a/black/MultiMapFixedInfo.h b/black/MultiMapFixedInfo.h new file mode 100644 index 0000000..f871de5 --- /dev/null +++ b/black/MultiMapFixedInfo.h @@ -0,0 +1,34 @@ +#ifndef BW1_DECOMP_MULTI_MAP_FIXED_INFO_INCLUDED_H +#define BW1_DECOMP_MULTI_MAP_FIXED_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uintptr_t */ + +#include /* For enum MESH_LIST */ + +#include "ObjectInfo.h" /* For struct GObjectInfo, struct GObjectInfoVftable */ + +struct GMultiMapFixedInfoVftable +{ + struct GObjectInfoVftable super; /* 0x0 */ + uintptr_t field_0x3c; + uintptr_t field_0x40; + uintptr_t field_0x44; +}; +static_assert(sizeof(struct GMultiMapFixedInfoVftable) == 0x48, "Data type is of wrong size"); + +struct GMultiMapFixedInfo +{ + struct GObjectInfo super; /* 0x0 */ + enum MESH_LIST editorMesh; /* 0x100 */ + uint32_t woodRequiredPerBuild; + uint32_t timeToBuild; + uint32_t scaffoldsRequired; + uint32_t maxVillagerNeededToBuild; /* 0x110 */ + float desireToBeBuilt; + float desireToBeRepaired; + float influence; +}; +static_assert(sizeof(struct GMultiMapFixedInfo) == 0x120, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_MULTI_MAP_FIXED_INFO_INCLUDED_H */ diff --git a/black/MultiplayerConditionBox.h b/black/MultiplayerConditionBox.h new file mode 100644 index 0000000..14d8c86 --- /dev/null +++ b/black/MultiplayerConditionBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_MULTIPLAYER_CONDITION_BOX_INCLUDED_H +#define BW1_DECOMP_MULTIPLAYER_CONDITION_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct MultiplayerConditionBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x2c]; +}; +static_assert(sizeof(struct MultiplayerConditionBox) == 0x3c, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__23MultiplayerConditionBox = (struct DialogBoxBaseVftable*)0x008de9c4; + +#endif /* BW1_DECOMP_MULTIPLAYER_CONDITION_BOX_INCLUDED_H */ diff --git a/black/MultiplayerDatabase.h b/black/MultiplayerDatabase.h new file mode 100644 index 0000000..e79ab7e --- /dev/null +++ b/black/MultiplayerDatabase.h @@ -0,0 +1,36 @@ +#ifndef BW1_DECOMP_MULTIPLAYER_DATABASE_INCLUDED_H +#define BW1_DECOMP_MULTIPLAYER_DATABASE_INCLUDED_H + +#include /* For static_assert */ + +#include /* For bool32_t */ + +// Forward Declares + +struct CreatureDatabase; +struct DBInfo; + +struct MultiplayerDatabaseVftable +{ + bool32_t (__fastcall* Send)(struct CreatureDatabase* this); /* 0x0 */ + bool32_t (__fastcall* ReceiveReturnData)(struct CreatureDatabase* this); +}; +static_assert(sizeof(struct MultiplayerDatabaseVftable) == 0x8, "Data type is of wrong size"); + +struct MultiplayerDatabase +{ + struct MultiplayerDatabaseVftable* vftable; /* 0x0 */ + bool32_t field_0x4; + struct DBInfo* info; + char* field_0xc; +}; +static_assert(sizeof(struct MultiplayerDatabase) == 0x10, "Data type is of wrong size"); + +static struct MultiplayerDatabaseVftable* __vt__19MultiplayerDatabase = (struct MultiplayerDatabaseVftable*)0x009309f4; + +// Constructors + +// win1.41 00633400 mac 1010a230 MultiplayerDatabase::MultiplayerDatabase(void) +struct MultiplayerDatabase* __fastcall __ct__19MultiplayerDatabaseFv(struct MultiplayerDatabase* this); + +#endif /* BW1_DECOMP_MULTIPLAYER_DATABASE_INCLUDED_H */ diff --git a/black/Name.h b/black/Name.h new file mode 100644 index 0000000..68e5771 --- /dev/null +++ b/black/Name.h @@ -0,0 +1,17 @@ +#ifndef BW1_DECOMP_NAME_INCLUDED_H +#define BW1_DECOMP_NAME_INCLUDED_H + +#include /* For static_assert */ + +struct Name +{ + char string[0x20]; /* 0x0 */ +}; +static_assert(sizeof(struct Name) == 0x20, "Data type is of wrong size"); + +// Constructors + +// win1.41 0046d5e0 mac 101c7b50 Name::Name(void) +struct Name* __fastcall __ct__4NameFv(struct Name* this); + +#endif /* BW1_DECOMP_NAME_INCLUDED_H */ diff --git a/black/Network.h b/black/Network.h new file mode 100644 index 0000000..28ca393 --- /dev/null +++ b/black/Network.h @@ -0,0 +1,46 @@ +#ifndef BW1_DECOMP_NETWORK_INCLUDED_H +#define BW1_DECOMP_NETWORK_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct LHSession; + +struct GNetwork +{ + uint8_t field_0x0; + uint8_t field_0x1; + uint8_t field_0x2; + uint8_t field_0x3; + uint8_t field_0x4; + uint8_t field_0x5; + uint8_t field_0x6; + uint8_t field_0x7; + uint8_t field_0x8; + uint8_t field_0x9; + uint8_t field_0xa; + uint8_t field_0xb; + uint8_t field_0xc; + uint8_t field_0xd; + uint8_t field_0xe; + uint8_t field_0xf; + struct LHSession* session; /* 0x10 */ +}; +static_assert(sizeof(struct GNetwork) == 0x14, "Data type is of wrong size"); + +// Static methods + +// win1.41 006349f0 mac 1010bff0 GNetwork::ProcessOnePacket(void) +bool __stdcall ProcessOnePacket__8GNetworkFv(struct GNetwork* this); +// win1.41 006345e0 mac 10017240 GNetwork::ResetStateDebug(void) +void __cdecl ResetStateDebug__8GNetworkFv(void); + +// Non-virtual methods + +// win1.41 00635290 mac 1001e1e0 GNetwork::ProcessOneSuperpacket(void) +uint32_t __fastcall ProcessOneSuperpacket__8GNetworkFv(struct GNetwork* this); + +#endif /* BW1_DECOMP_NETWORK_INCLUDED_H */ diff --git a/black/NewProfileBox.h b/black/NewProfileBox.h new file mode 100644 index 0000000..3da0443 --- /dev/null +++ b/black/NewProfileBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_NEW_PROFILE_BOX_INCLUDED_H +#define BW1_DECOMP_NEW_PROFILE_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct NewProfileBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x14]; +}; +static_assert(sizeof(struct NewProfileBox) == 0x24, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__13NewProfileBox = (struct DialogBoxBaseVftable*)0x008dec1c; + +#endif /* BW1_DECOMP_NEW_PROFILE_BOX_INCLUDED_H */ diff --git a/black/Object.h b/black/Object.h new file mode 100644 index 0000000..bccd77c --- /dev/null +++ b/black/Object.h @@ -0,0 +1,367 @@ +#ifndef BW1_DECOMP_OBJECT_INCLUDED_H +#define BW1_DECOMP_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For size_t */ +#include /* For int32_t, uint32_t, uint8_t */ + +#include /* For enum MESH_LIST */ +#include /* For enum EFFECT_TYPE, enum HOLD_TYPE, enum IMMERSION_EFFECT_TYPE, enum RESOURCE_TYPE, enum SOUND_COLLISION_TYPE, enum TRIBE_TYPE */ +#include /* For struct LH3DColor */ +#include /* For enum LH3DObject__ObjectType */ +#include /* For DECLARE_LH_LINKED_LIST */ +#include /* For bool32_t */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos, struct GameThingWithPosVftable */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct ControlHandUpdateInfo; +struct Creature; +struct EffectNumbers; +struct EffectValues; +struct FireEffect; +struct GInterfaceStatus; +struct GObjectInfo; +struct GPlayer; +struct Game3DObject; +struct GameOSFile; +struct GameThing; +struct GameThingVftable; +struct GestureSystemPacketData; +struct LH3DSprite; +struct LHMatrix; +struct LHOSFile; +struct LHPoint; +struct LHRegion; +struct LandscapeVortex; +struct Living; +struct MapCell; +struct NewCollide; +struct Object; +struct PhysOb; +struct PhysicsObject; +struct RPHolder; +struct Scaffold; +struct Spell; +struct SpellWater; +struct Villager; + +enum FOOD_TYPE +{ + FOOD_TYPE_0 = 0x0, + _FOOD_TYPE_COUNT = 0x1 +}; +static_assert(sizeof(enum FOOD_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* FOOD_TYPE_strs[_FOOD_TYPE_COUNT] = { + "FOOD_TYPE_0", +}; + +struct ObjectVftable +{ + struct GameThingWithPosVftable super; /* 0x0 */ + void (__fastcall* DestroyedByBeam)(struct Object* this); /* 0x500 */ + float (__fastcall* GetXAngle)(const struct Object* this); + float (__fastcall* GetYAngle)(const struct Object* this); + float (__fastcall* GetZAngle)(const struct Object* this); + void (__fastcall* SetFocus)(struct Object* this, const void* edx, const struct LHPoint* focus); /* 0x510 */ + void (__fastcall* SetXYZAngles)(struct Object* this, const void* edx, float x, float y, float z); + void (__fastcall* SetXYZAnglesAndScale)(struct Object* this, const void* edx, float x, float y, float z, float scale); + void (__fastcall* SetJustScale)(struct Object* this, const void* edx, float scale); + void (__fastcall* SetYJustAngle)(struct Object* this, const void* edx, float angle); /* 0x520 */ + void (__fastcall* SetYAngle)(struct Object* this, const void* edx, float angle); + void (__fastcall* UpdateFrom3DPosition)(struct Object* this); + uint32_t (__fastcall* MoveAlongPath)(struct Object* this); + bool (__fastcall* IsReachable)(struct Object* this); /* 0x530 */ + bool (__fastcall* BlocksTownClearArea)(const struct Object* this); + void (__fastcall* Create3DObject)(struct Object* this); + struct Object* (__fastcall* GetMapChild)(struct Object* this, const void* edx, const struct MapCell* param_1); + void (__fastcall* SetMapChild)(struct Object* this, const void* edx, struct Object* object, struct MapCell* cell); /* 0x540 */ + void (__fastcall* InsertMapObject)(struct Object* this); + void (__fastcall* RemoveMapObject)(struct Object* this); + void (__fastcall* InsertMapObjectToCell)(struct Object* this, const void* edx, struct MapCell* param_1); + void (__fastcall* RemoveMapObjectFromCell)(struct Object* this, const void* edx, struct MapCell* param_1); /* 0x550 */ + bool (__fastcall* IsObjectInMap_1)(struct Object* this, const void* edx, struct MapCell* cell); + bool (__fastcall* IsObjectInMapCheck)(struct Object* this); + int (__fastcall* MoveMapObject)(struct Object* this, const void* edx, struct MapCoords* param_2); + void (__fastcall* ActualMoveMapObject)(struct Object* this, const void* edx, struct MapCoords* param_1); /* 0x560 */ + struct Object* (__fastcall* GetPtr)(struct Object* this); + float (__fastcall* GetMeshRadius)(const struct Object* this); + struct Game3DObject* (__fastcall* Get3DObjectForPSys)(struct Object* this); + bool (__fastcall* GetPSysFireFlameMatrix)(struct Object* this, const void* edx, struct LHMatrix* matrix); /* 0x570 */ + bool (__fastcall* GetPSysFireLocalRndFlamePos)(struct Object* this, const void* edx, struct LHPoint* point, int32_t* param_2); + bool (__fastcall* GetPSysFireWorldFlamePos)(struct Object* this, const void* edx, const struct LHPoint* param_1, int32_t param_2, struct LHPoint* param_3); + float (__fastcall* GetPSysFireLocalFlameScale)(struct Object* this); + uint32_t (__fastcall* GetPSysFireMaxFlames)(struct Object* this); /* 0x580 */ + float (__fastcall* GetSpotEffectPower)(const struct Object* this); + float (__fastcall* GetAggressorValueFromDamage)(const struct Object* this, const void* edx, float param_1); + enum HOLD_TYPE (__fastcall* GetHoldType)(struct Object* this); + float (__fastcall* GetHoldRadius)(struct Object* this); /* 0x590 */ + float (__fastcall* GetHoldLoweringMultiplier)(struct Object* this); + float (__fastcall* GetHoldYRotate)(struct Object* this); + bool (__fastcall* HandShouldFeelWithMeshIntersect)(struct Object* this); + void (__fastcall* SetSpecularColor)(struct Object* this, const void* edx, struct LH3DColor color); /* 0x5a0 */ + struct LH3DColor (__fastcall* GetSpecularColor)(struct Object* this); + void (__fastcall* SetBeliefSprite)(struct Object* this, const void* edx, struct LH3DSprite* sprite); + struct LH3DSprite* (__fastcall* GetBeliefSprite)(struct Object* this); + void (__fastcall* SetLife)(struct Object* this, const void* edx, float param_1); /* 0x5b0 */ + bool (__fastcall* IsAlive)(struct Object* this); + void (__fastcall* ReduceLife)(struct Object* this, const void* edx, float value, struct GPlayer* player); + void (__fastcall* IncreaseLife)(struct Object* this, const void* edx, float value); + float (__fastcall* GetSacrificeValue)(struct Object* this); /* 0x5c0 */ + void (__fastcall* ReduceLifeDueToBurning)(struct Object* this, const void* edx, float param_1, struct GPlayer* param_2); + void (__fastcall* FillInEffectDefenceMultiplier)(struct Object* this, const void* edx, struct EffectNumbers* param_1); + void (__fastcall* ApplyEffect)(struct Object* this, const void* edx, const void* param_1, struct EffectValues* param_2); + float (__fastcall* GetDamageEffect)(struct Object* this, const void* edx, struct EffectValues* values); /* 0x5d0 */ + float (__fastcall* GetHealEffect)(struct Object* this, const void* edx, struct EffectValues* values); + void* (__fastcall* GetActualObjectToEffect)(struct Object* this, const void* edx, struct GPlayer* player, bool param_2); + void (__fastcall* DrawValue)(struct Object* this, const void* edx, int32_t param_1, float param_2); + void (__fastcall* ScaffoldMoved)(struct Object* this, const void* edx, struct Scaffold* scaffold); /* 0x5e0 */ + float (__fastcall* GetHeatCapacity)(struct Object* this); + void (__fastcall* GetFireGPHXDrawn)(struct Object* this, const void* edx, bool* param_1, bool* param_2, bool* param_3, bool* param_4); + float (__fastcall* GetRainCoolingMultiplier)(struct Object* this); + struct LHPoint* (__fastcall* GetDefaultFireCentrePos)(struct Object* this, const void* edx, struct LHPoint* pos); /* 0x5f0 */ + float (__fastcall* GetDefaultFireRadius)(struct Object* this); + uint32_t (__fastcall* DestroyedByEffect)(struct Object* this, const void* edx, struct GPlayer* player, float param_2); + uint32_t (__fastcall* Process)(struct Object* this); + uint32_t (__fastcall* ProcessBySpell)(struct Object* this, const void* edx, struct Spell* spell); /* 0x600 */ + void (__fastcall* ApplySingleEffect)(struct Object* this, const void* edx, enum EFFECT_TYPE param_1, float param_2, struct GameThing* param_3, const struct MapCoords* param_4); + int (__fastcall* GetMesh)(struct Object* this); + int (__fastcall* GetDetailMesh)(struct Object* this, const void* edx, int detail); + void (__fastcall* Draw)(struct Object* this); /* 0x610 */ + void (__fastcall* DrawOutOfMap)(struct Object* this, const void* edx, bool param_1); + bool (__fastcall* IsG3DObjectDrawnInHand)(struct Object* this); + void (__fastcall* GetDrawRegion)(struct Object* this, const void* edx, struct LHRegion* param_1); + uint32_t (__fastcall* ProcessState)(struct Object* this); /* 0x620 */ + float (__fastcall* GetProjectileSpeed)(struct Object* this); + bool (__fastcall* CanBePickedUp)(struct Object* this); + bool (__fastcall* CanBeCrushed)(struct Object* this); + float (__fastcall* GetTopPos)(struct Object* this); /* 0x630 */ + float (__fastcall* GetVillagerHugRadius)(struct Object* this); + float (__fastcall* GetWeight)(struct Object* this); + void (__fastcall* GetWorldMatrix)(struct Object* this, const void* edx, struct LHMatrix* out); + bool (__fastcall* CanBeSuckedIntoVortex)(struct Object* this, const void* edx, struct LandscapeVortex* param_1); /* 0x640 */ + uint32_t (__fastcall* GetDiscipleStateIfInteractedWith)(struct Object* this, const void* edx, struct GInterfaceStatus* status, struct Villager* villager); + struct MapCoords* (__fastcall* GetWorkingPos)(struct Object* this, const void* edx, struct MapCoords* param_1, struct Object* param_2); + float (__fastcall* GetHeightForHandAboveInteractObject)(struct Object* this); + uint32_t (__fastcall* GetHandHelpMessageSet)(struct Object* this); /* 0x650 */ + uint32_t (__fastcall* GetHandHelpCondition)(struct Object* this); + void (__fastcall* CallVirtualFunctionsForCreation)(struct Object* this, const void* edx, const struct MapCoords* coords); + enum LH3DObject__ObjectType (__fastcall* Get3DType)(struct Object* this); + float (__fastcall* GetFoodValue)(struct Object* this, const void* edx, enum FOOD_TYPE type); /* 0x660 */ + float (__fastcall* GetWoodValue)(struct Object* this); + enum FOOD_TYPE (__fastcall* GetFoodType)(struct Object* this); + float (__fastcall* GetImpressiveValue)(struct Object* this); + bool (__fastcall* IsSpellSeedReturnPoint)(struct Object* this); /* 0x670 */ + bool (__fastcall* IsABeliever)(struct Object* this); + bool (__fastcall* AsMultiMapFixed)(struct Object* this); + float (__fastcall* ApplyWaterSpell)(struct Object* this, const void* edx, struct SpellWater* spell); + bool (__fastcall* IsResourceStore)(struct Object* this, const void* edx, enum RESOURCE_TYPE type); /* 0x680 */ + bool (__fastcall* DeleteObjectAndTakeResource)(struct Object* this, const void* edx, struct Object* param_1, struct GInterfaceStatus* param_2); + float (__fastcall* GetRadiusMultiplierForApplyingPotToPos)(struct Object* this); + bool (__fastcall* DoCreatureMimicAfterAddingResource)(struct Object* this, const void* edx, enum RESOURCE_TYPE type, struct GInterfaceStatus* status); + enum RESOURCE_TYPE (__fastcall* GetResourceType)(struct Object* this); /* 0x690 */ + int (__fastcall* GetDefaultResource)(struct Object* this); + void (__fastcall* SetPoisonedResource)(struct Object* this, const void* edx, enum RESOURCE_TYPE type, int param_2); + void (__fastcall* SetPoisoned)(struct Object* this, const void* edx, int param_1); + bool (__fastcall* IsLockedInInteract)(struct Object* this); /* 0x6a0 */ + bool (__fastcall* SetDying)(struct Object* this); + bool (__fastcall* IsAttackable)(struct Object* this, const void* edx, struct Object* param_1); + bool (__fastcall* IsAllied)(struct Object* this, const void* edx, struct Object* param_1); + bool (__fastcall* IsTouching_1)(const struct Object* this, const void* edx, struct MapCoords* param_1, struct MapCoords* param_2); /* 0x6b0 */ + bool (__fastcall* IsTouching_2)(const struct Object* this, const void* edx, struct MapCoords* param_1); + bool (__fastcall* IsTouching_3)(const struct Object* this, const void* edx, struct Object* param_1, float param_2); + void (__fastcall* StartOnFire)(struct Object* this); + void (__fastcall* EndOnFire)(struct Object* this); /* 0x6c0 */ + float (__fastcall* GetDistanceFromObject)(struct Object* this, const void* edx, struct Object* param_1); + float (__fastcall* GetTribalPower)(struct Object* this, const void* edx, enum TRIBE_TYPE param_1); + bool (__fastcall* ValidForLockedSelectProcess)(struct Object* this, const void* edx, struct GInterfaceStatus* status); + bool (__fastcall* NetworkFriendlyStartLockedSelect)(struct Object* this, const void* edx, struct GInterfaceStatus* status); /* 0x6d0 */ + bool (__fastcall* NetworkUnfriendlyStartLockedSelect)(struct Object* this); + bool (__fastcall* IsReadyForNetworkUnfriendlyLockedSelect)(struct Object* this); + bool (__fastcall* NetworkUnfriendlyLockedSelect)(struct Object* this, const void* edx, struct ControlHandUpdateInfo* param_1); + bool (__fastcall* GetReadyForNetworkUnfriendlyEndLockedSelect)(struct Object* this); /* 0x6e0 */ + bool (__fastcall* IsReadyForNetworkUnfriendlyEndLockedSelect)(struct Object* this); + bool (__fastcall* NetworkUnfriendlyEndLockedSelect)(struct Object* this); + bool (__fastcall* NetworkFriendlyEndLockedSelect)(struct Object* this, const void* edx, struct GInterfaceStatus* status); + bool (__fastcall* ValidAsInterfaceTarget)(struct Object* this); /* 0x6f0 */ + bool (__fastcall* ValidAsInterfaceLeashTarget)(struct Object* this); + bool (__fastcall* SelectOnlyAfterRecSystem)(struct Object* this); + bool (__fastcall* ValidForPlaceInHand)(struct Object* this, const void* edx, struct GInterfaceStatus* status); + bool (__fastcall* InterfaceSetInMagicHand)(struct Object* this, const void* edx, struct GInterfaceStatus* status); /* 0x700 */ + bool (__fastcall* InterfaceSetOutMagicHand)(struct Object* this, const void* edx, struct GInterfaceStatus* status); + bool (__fastcall* ValidToRemoveFromHand)(struct Object* this, const void* edx, struct GInterfaceStatus* status, const struct MapCoords* param_2); + uint32_t (__fastcall* RemoveFromHand)(struct Object* this, const void* edx, struct GInterfaceStatus* status, const struct MapCoords* param_2); + bool (__fastcall* ValidToShakeFromHand)(struct Object* this); /* 0x710 */ + bool (__fastcall* InterfaceMustBeInInfluenceForInteraction)(struct Object* this); + bool (__fastcall* IsTuggable)(struct Object* this); + uint32_t (__fastcall* ValidToApplyThisToObject)(struct Object* this, const void* edx, struct GInterfaceStatus* status, struct Object* param_2); + uint32_t (__fastcall* ApplyThisToObject)(struct Object* this, const void* edx, struct GInterfaceStatus* status, struct Object* param_2, struct GestureSystemPacketData* param_3); /* 0x720 */ + uint32_t (__fastcall* ValidToApplyThisToMapCoord)(struct Object* this, const void* edx, struct GInterfaceStatus* status, struct MapCoords* param_2); + uint32_t (__fastcall* ApplyThisToMapCoord)(struct Object* this, const void* edx, struct GInterfaceStatus* status, const struct MapCoords* param_2, struct GestureSystemPacketData* param_3); + uint32_t (__fastcall* ValidForLockedApplyProcess)(struct Object* this, const void* edx, struct GInterfaceStatus* status); + uint32_t (__fastcall* ApplyUnlockProcess)(struct Object* this, const void* edx, struct GInterfaceStatus* status); /* 0x730 */ + uint32_t (__fastcall* IsInterfacePowerUpWhenInHand)(struct Object* this); + uint32_t (__fastcall* ApplyOnlyAfterRecSystem)(struct Object* this); + uint32_t (__fastcall* ApplyOnlyAfterReleased)(struct Object* this); + uint32_t (__fastcall* InterfaceValidToTap)(struct Object* this, const void* edx, struct GInterfaceStatus* status); /* 0x740 */ + uint32_t (__fastcall* InterfaceTap)(struct Object* this, const void* edx, struct GInterfaceStatus* status); + uint32_t (__fastcall* InterfaceValidToGiveObject)(struct Object* this, const void* edx, struct GInterfaceStatus* status, struct Object* param_2); + uint32_t (__fastcall* InterfaceGiveObject)(struct Object* this, const void* edx, struct GInterfaceStatus* status, struct Object* param_2); + uint32_t (__fastcall* InterfaceValidToInteractAsMapCoordsObject)(struct Object* this, const void* edx, struct GInterfaceStatus* status); /* 0x750 */ + uint32_t (__fastcall* InterfaceInteractAsMapCoordsObject)(struct Object* this, const void* edx, struct GInterfaceStatus* status); + uint32_t (__fastcall* ThrowObjectFromHand)(struct Object* this, const void* edx, struct GInterfaceStatus* status, int param_2); + uint32_t (__fastcall* ValidToSelectFightThisToMapCoord)(struct Object* this, const void* edx, struct GInterfaceStatus* status, const struct MapCoords* param_2); + uint32_t (__fastcall* ValidToApplyFightThisToMapCoord)(struct Object* this, const void* edx, struct GInterfaceStatus* status, const struct MapCoords* param_2); /* 0x760 */ + uint32_t (__fastcall* SelectFightThisToMapCoord)(struct Object* this, const void* edx, struct GInterfaceStatus* status, const struct MapCoords* param_2); + uint32_t (__fastcall* ApplyFightThisToMapCoord)(struct Object* this, const void* edx, struct GInterfaceStatus* status, const struct MapCoords* param_2); + uint32_t (__fastcall* ValidToFightThisToObject)(struct Object* this, const void* edx, struct GInterfaceStatus* status, const struct MapCoords* param_2); + uint32_t (__fastcall* FightThisToObject)(struct Object* this, const void* edx, struct GInterfaceStatus* status, struct Object* param_2); /* 0x770 */ + bool (__fastcall* IsEffectReceiver)(struct Object* this, const void* edx, struct EffectValues* param_1); + bool (__fastcall* CanBeDestroyedBySpell_1)(struct Object* this, const void* edx, struct Spell* param_1); + float (__fastcall* GetImportance)(struct Object* this); + uint32_t (__fastcall* CanBeDestroyedBySpell_2)(struct Object* this, const void* edx, struct LHPoint* param_1, struct LHPoint* param_2, struct GInterfaceStatus* param_3, struct Object* param_4, int param_5); /* 0x780 */ + uint32_t (__fastcall* InitialisePhysics)(struct Object* this, const void* edx, const struct LHPoint* param_1, const struct LHPoint* param_2, struct Object* param_3, bool param_4, struct GInterfaceStatus* param_5); + uint32_t (__fastcall* GetPhysicsConstantsType)(struct Object* this); + void (__fastcall* SetUpPhysOb)(struct Object* this, const void* edx, struct PhysOb* param_1); + void (__fastcall* EndPhysics)(struct Object* this, const void* edx, struct PhysicsObject* param_1, bool param_2); /* 0x790 */ + uint32_t (__fastcall* DropSfx)(struct Object* this); + void (__fastcall* GetBoundingSphere)(struct Object* this, const void* edx, struct LHPoint* center, float* radius); + bool (__fastcall* InteractsWithPhysicsObjects)(struct Object* this); + uint32_t (__fastcall* ChecksVerticesVObjects)(struct Object* this); /* 0x7a0 */ + void (__fastcall* ShouldPhysicsRaiseObjectUntilNotIntersectingThis)(struct Object* this, const void* edx, struct Object* param_1); + uint32_t (__fastcall* PhysicallyDestroysAbodes)(struct Object* this); + void (__fastcall* ReactToPhysicsImpact)(struct Object* this, const void* edx, struct PhysicsObject* param_1, bool param_2); + bool (__fastcall* CanBecomeAPhysicsObject)(struct Object* this); /* 0x7b0 */ + bool (__fastcall* GetAlwaysRemainsInPhysicsInternalSystem)(struct Object* this); + bool (__fastcall* HasSunk)(struct Object* this); + bool (__fastcall* CreatureMustAvoid)(struct Object* this, const void* edx, struct Creature* param_1); + void (__fastcall* AddToRoutePlan)(struct Object* this, const void* edx, struct RPHolder* param_1, struct Creature* param_2, int param_3, void (__cdecl* param_4)(int param_1, struct Point2D param_2, float param_3, int param_4)); /* 0x7c0 */ + float (__fastcall* GetRoutePlanRadius)(struct Object* this, const void* edx, struct Creature* param_1); + bool (__fastcall* VillagerMustAvoid)(struct Object* this, const void* edx, struct Villager* param_1); + bool (__fastcall* IsFireMan)(struct Object* this); + bool (__fastcall* IsARootedObject)(struct Object* this); /* 0x7d0 */ + enum SOUND_COLLISION_TYPE (__fastcall* GetCollideSoundType)(struct Object* this); + bool (__fastcall* IsSolidToNewAbode)(struct Object* this); + uint32_t (__fastcall* RemoveFromGame)(struct Object* this); + int (__fastcall* GetLandingPointCount)(struct Object* this); /* 0x7e0 */ + bool (__fastcall* GetLandingPoint)(struct Object* this, const void* edx, uint8_t param_1, struct LHPoint* param_2); + uint32_t (__fastcall* GetTastiness)(struct Object* this); + bool (__fastcall* IsScary)(struct Object* this); + bool (__fastcall* GetInspectObjectPos)(struct Object* this, const void* edx, struct Villager* param_1, struct MapCoords* pos); /* 0x7f0 */ + void (__fastcall* DiscipleInHandNear)(struct Object* this, const void* edx, struct Villager* param_1, struct GInterfaceStatus* status); + bool32_t (__fastcall* GetSpecialPos)(struct Object* this, const void* edx, uint32_t index, struct MapCoords* pos); + struct GameThing* (__fastcall* GetTownArtifact)(struct Object* this); + bool (__fastcall* IsTownArtifact)(struct Object* this); /* 0x800 */ + bool (__fastcall* ProcessInHand)(struct Object* this); + uint32_t (__fastcall* ProcessInInteract)(struct Object* this, const void* edx, struct GInterfaceStatus* status); + uint32_t (__fastcall* GetObjectCollide)(struct Object* this); + float (__fastcall* CalculateForceAppliedBy)(struct Object* this, const void* edx, struct Living* param_1); /* 0x810 */ + bool (__fastcall* IsPushable)(struct Object* this); + void (__fastcall* PushObject_1)(struct Object* this, const void* edx, struct Living* param_1, struct MapCoords* param_2); + void (__fastcall* PushObject_2)(struct Object* this, const void* edx, struct Living* param_1); + uint32_t (__fastcall* GetCarriedTreeType)(struct Object* this); /* 0x820 */ + float (__fastcall* GetFacingPitch)(struct Object* this); + void (__fastcall* SetHeadPos)(struct Object* this, const void* edx, struct MapCoords* param_1); + size_t (__fastcall* SaveObject)(struct Object* this, const void* edx, struct LHOSFile* param_1, const struct MapCoords* param_2); + bool (__fastcall* IsAPotFromABuildingSite)(struct Object* this); /* 0x830 */ + void (__fastcall* GetNearestEdgeOfObject)(struct Object* this, const void* edx, struct Object* param_1); + void (__fastcall* GetNearestPosOfObject)(struct Object* this, const void* edx, struct Object* param_1); + void (__fastcall* GetNearestEdgeToPos)(struct Object* this, const void* edx, const struct MapCoords* param_1); + void (__fastcall* GetNearestEdge)(struct Object* this, const void* edx, float param_1, float param_2); /* 0x840 */ + enum IMMERSION_EFFECT_TYPE (__fastcall* GetImmersionTexture)(struct Object* this); + enum IMMERSION_EFFECT_TYPE (__fastcall* GetInHandImmersionTexture)(struct Object* this); + bool (__fastcall* ShouldFootpathsGoRound)(struct Object* this); + void (__fastcall* InitialiseIsFixedForMapList)(struct Object* this); /* 0x850 */ + uint32_t (__fastcall* StandAnimation)(struct Object* this); + struct NewCollide* (__fastcall* GetCollideData)(const struct Object* this); +}; +static_assert(sizeof(struct ObjectVftable) == 0x85c, "Data type is of wrong size"); + +union ObjectBase +{ + struct GameThingWithPos super; + struct ObjectVftable* vftable_object; + struct GameThingWithPosVftable* vftable_gamethingwithpos; + struct GameThingVftable* vftable_gamething; +}; +static_assert(sizeof(union ObjectBase) == 0x28, "Data type is of wrong size"); + +struct Object +{ + union ObjectBase base; /* 0x0 */ + const struct GObjectInfo* info; /* 0x28 */ + struct MapCoords coords; + struct Object* map_parent; /* 0x38 */ + uint32_t field_0x3c; + struct Game3DObject* game_3d_object; /* 0x40 */ + struct FireEffect* fire_effect; + float life; + float y_angle; + float scale; /* 0x50 */ +}; +static_assert(sizeof(struct Object) == 0x54, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__6Object = (struct ObjectVftable*)0x00930aa0; + +// Static methods + +// win1.41 006364c0 mac 103d93a0 Object::Get3DType(MESH_LIST) +enum LH3DObject__ObjectType __cdecl Get3DType__6ObjectF9MESH_LIST(enum MESH_LIST index); + +// Constructors + +// win1.41 00636450 mac 103d9480 Object::Object(void) +struct Object* __fastcall __ct__6ObjectFv(struct Object* this); +// win1.41 00636520 mac 103d90d0 Object::Object(MapCoords const &, GObjectInfo const *) +struct Object* __fastcall __ct__6ObjectFRC9MapCoordsPC11GObjectInfo(struct Object* this, const void* edx, const struct MapCoords* coords, const struct GObjectInfo* info); + +// Non-virtual methods + +// win1.41 00638560 mac 1005ba80 Object::GetMapChild(MapCoords const &) +struct Object* __fastcall GetMapChild__6ObjectFRC9MapCoords(struct Object* this, const void* edx, const struct MapCoords* coord); + +// Override methods + +// win1.41 00639eb0 mac 103d1b20 Object::Load(GameOSFile &) +uint32_t __fastcall Load__6ObjectFR10GameOSFile(struct Object* this, const void* edx, struct GameOSFile* file); +// win1.41 00639200 mac 103d3c80 Object::SetScale(float) +void __fastcall SetScale__6ObjectFf(struct Object* this, const void* edx, float scale); +// win1.41 006377f0 mac 103d6d80 Object::CleanupWhenDeleted(int) +void __fastcall CleanupWhenDeleted__6ObjectFi(struct Object* this, const void* edx, int param_1); +// win1.41 00639260 mac 1004cc10 Object::SetYAngle(float) +void __fastcall SetYAngle__6ObjectFf(struct Object* this, const void* edx, float angle); +// win1.41 006365f0 mac 103d90d0 Object::Create3DObject(void) +void __fastcall Create3DObject__6ObjectFv(struct Object* this); +// win1.41 00418cc0 mac 10053b70 Object::SetMapChild(Object *, MapCell *) +void __fastcall SetMapChild__6ObjectFP6ObjectP7MapCell(struct Object* this, const void* edx, struct Object* child, struct MapCell* cell); +// win1.41 00636740 mac 1004ad80 Object::InsertMapObject(void) +void __fastcall InsertMapObject__6ObjectFv(struct Object* this); +// win1.41 006367a0 mac 1004ace0 Object::RemoveMapObject(void) +void __fastcall RemoveMapObject__6ObjectFv(struct Object* this); +// win1.41 00636830 mac 10053ed0 Object::InsertMapObjectToCell(MapCell *) +void __fastcall InsertMapObjectToCell__6ObjectFP7MapCell(struct Object* this, const void* edx, struct MapCell* cell); +// win1.41 006368d0 mac 10053bc0 Object::RemoveMapObjectFromCell(MapCell *) +void __fastcall RemoveMapObjectFromCell__6ObjectFP7MapCell(struct Object* this, const void* edx, struct MapCell* cell); +// win1.41 00636a40 mac 1004d070 Object::MoveMapObject(MapCoords const &) +uint32_t __fastcall MoveMapObject__6ObjectFRC9MapCoords(struct Object* this, const void* edx, struct MapCoords* param_2); +// win1.41 00638040 mac 10055200 Object::ActualMoveMapObject(MapCoords const &) +void __fastcall ActualMoveMapObject__6ObjectFRC9MapCoords(struct Object* this, const void* edx, struct MapCoords* param_2); +// win1.41 0063a140 mac 100515d0 Object::SetLife(float) +void __fastcall SetLife__6ObjectFf(struct Object* this, const void* edx, float life); +// win1.41 00637810 mac 1004b140 Object::ReduceLife(float, GPlayer *) +float __fastcall ReduceLife__6ObjectFfP7GPlayer(struct Object* this, const void* edx, float value, struct GPlayer* player); +// win1.41 00636be0 mac 103d84b0 Object::CallVirtualFunctionsForCreation(MapCoords const &) +void __fastcall CallVirtualFunctionsForCreation__6ObjectFRC9MapCoords(struct Object* this, const void* edx, const struct MapCoords* coords); +// win1.41 0063a640 mac 103d0b20 Object::InitialiseIsFixedForMapList(void) +void __fastcall InitialiseIsFixedForMapList__6ObjectFv(struct Object* this); + +DECLARE_LH_LINKED_LIST(Object); + +// win1.41 005e2ff0 mac 103782a0 RequestChangeTexture(Object *) +void __cdecl RequestChangeTexture__FP6Object(struct Object* param_1); + +#endif /* BW1_DECOMP_OBJECT_INCLUDED_H */ diff --git a/black/ObjectInfo.h b/black/ObjectInfo.h new file mode 100644 index 0000000..968a1c5 --- /dev/null +++ b/black/ObjectInfo.h @@ -0,0 +1,91 @@ +#ifndef BW1_DECOMP_OBJECT_INFO_INCLUDED_H +#define BW1_DECOMP_OBJECT_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint32_t */ + +#include /* For enum ALIGNMENT_TYPE, enum IMMERSION_EFFECT_TYPE, enum OBJECT_TYPE, enum SOUND_COLLISION_TYPE, enum TRIBE_TYPE */ +#include /* For enum HELP_TEXT */ + +#include "BaseInfo.h" /* For struct GBaseInfo, struct GBaseInfoVftable */ + +// Forward Declares + +struct GObjectInfo; + +struct GObjectInfoVftable +{ + struct GBaseInfoVftable super; /* 0x0 */ + void* (__fastcall* GetMesh)(const struct GObjectInfo* this); /* 0x2c */ + void* (__fastcall* GetMesh__TRIBE_TYPE)(const struct GObjectInfo* this, const void* edx, enum TRIBE_TYPE tribe); /* 0x30 */ + enum ALIGNMENT_TYPE (__fastcall* GetAlignmentType)(const struct GObjectInfo* this); + uint32_t (__fastcall* GetFoodType)(const struct GObjectInfo* this); +}; +static_assert(sizeof(struct GObjectInfoVftable) == 0x3c, "Data type is of wrong size"); + +union GObjectInfoBase +{ + struct GBaseInfo super; + struct GObjectInfoVftable* vftable; +}; +static_assert(sizeof(union GObjectInfoBase) == 0x10, "Data type is of wrong size"); + +struct GObjectInfo +{ + union GObjectInfoBase base; /* 0x0 */ + enum OBJECT_TYPE type; /* 0x10 */ + enum ALIGNMENT_TYPE alignmentType; + char debugString[0x30]; + enum SOUND_COLLISION_TYPE collideSound; /* 0x48 */ + enum IMMERSION_EFFECT_TYPE immersion; + enum HELP_TEXT helpStartEnum; /* 0x50 */ + enum HELP_TEXT helpEndEnum; + uint32_t helpMessage; + uint32_t helpCondition; + uint32_t helpInHand; /* 0x60 */ + uint32_t handCondition; + float foodValue; + uint32_t woodValue; + uint32_t food_type; /* 0x70 */ + float defenceEffectBurn; + float defenceEffectCrush; + float defenceEffectHit; + float defenceEffectHeal; /* 0x80 */ + float defenceEffectFlyAway; + float defenceEffectAlignmentModification; + float defenceEffectBeliefModification; + float defenceMultiplierBurn; /* 0x90 */ + float defenceMultiplierCrush; + float defenceMultiplierHit; + float defenceMultiplierHeal; + float defenceMultiplierFlyAway; /* 0xa0 */ + float defenceMultiplierAlignmentModification; + float defenceMultiplierBeliefModification; + float weight; + float heat_capacity; /* 0xb0 */ + float combustionTemperature; + float burningPriority; + uint32_t canCreatureUseForBuilding; + uint32_t canCreatureInteractWithMe; /* 0xc0 */ + uint32_t canCreatureAttackMe; + uint32_t canCreaturePlayWithMe; + uint32_t canCreatureInspectMe; + uint32_t canCreatureGiveMeToLiving; /* 0xd0 */ + uint32_t canCreatureBringMeBackToTheCitadel; + uint16_t villagerInteractState; + uint16_t villagerInteractStateForBuilding; + float field_0xdc; + float villagerInteractDesire; /* 0xe0 */ + float sacrificeValue; + float impressiveValue; + float aggressorValue; + float villagerImpressiveValue; /* 0xf0 */ + float artifactMultiplier; + float drawImportance; + float computer_attack_desire; +}; +static_assert(sizeof(struct GObjectInfo) == 0x100, "Data type is of wrong size"); + +static struct GObjectInfoVftable* __vt__11GObjectInfo = (struct GObjectInfoVftable*)0x00930a60; + +#endif /* BW1_DECOMP_OBJECT_INFO_INCLUDED_H */ diff --git a/black/OneOffSpellSeed.h b/black/OneOffSpellSeed.h new file mode 100644 index 0000000..d931d86 --- /dev/null +++ b/black/OneOffSpellSeed.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_ONE_OFF_SPELL_SEED_INCLUDED_H +#define BW1_DECOMP_ONE_OFF_SPELL_SEED_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "MobileObject.h" /* For struct MobileObject */ + +struct OneOffSpellSeed +{ + struct MobileObject super; /* 0x0 */ + uint8_t field_0x68[0x14]; +}; +static_assert(sizeof(struct OneOffSpellSeed) == 0x7c, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__15OneOffSpellSeed = (struct ObjectVftable*)0x008f3774; + +#endif /* BW1_DECOMP_ONE_OFF_SPELL_SEED_INCLUDED_H */ diff --git a/black/PCMain.h b/black/PCMain.h new file mode 100644 index 0000000..1c6ab82 --- /dev/null +++ b/black/PCMain.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_PC_MAIN_INCLUDED_H +#define BW1_DECOMP_PC_MAIN_INCLUDED_H + +#include /* For bool */ +#include /* For size_t */ +#include /* For uint32_t */ + +// win1.41 00641a10 mac 1011c650 IsACmdLineString(char*, const char*) +bool __cdecl IsACmdLineString__FPcPCc(char* cmd_line, char* cmd); +// win1.41 00641aa0 mac 101528f0 ScanParameters(void) +void __stdcall ScanParameters__Fv(void); +// win1.41 007c64ee mac 106203fc operator new(unsigned long) +void* __cdecl operator_new(size_t size); +// win1.41 007db790 mac 106203fc operator new(unsigned long, const char*, uint32_t) +void* __cdecl __nw__FUl(size_t size, const char* file_name, uint32_t line); +// win1.41 007aee98 mac 1061fbd4 operator delete(void* ) +void __cdecl __dl__FPv(void* address); +// win1.41 008a6187 mac 101a84e4 __construct_new_array +void __cdecl __construct_new_array(void* address, size_t stride, int len, void* constructor); +// win1.41 008a5f63 mac 101a7d90 __destroy_new_array +void __cdecl __destroy_new_array(void* address, size_t stride, int len, void* destructor); + +#endif /* BW1_DECOMP_PC_MAIN_INCLUDED_H */ diff --git a/black/PSysAtomCore.h b/black/PSysAtomCore.h new file mode 100644 index 0000000..1e7697f --- /dev/null +++ b/black/PSysAtomCore.h @@ -0,0 +1,35 @@ +#ifndef BW1_DECOMP_P_SYS_ATOM_CORE_INCLUDED_H +#define BW1_DECOMP_P_SYS_ATOM_CORE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct Q222UR_GesturingRecognised8AtomData; + +struct AtomCollection +{ + uint8_t field_0x0[0x0]; +}; +static_assert(sizeof(struct AtomCollection) == 0x4, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00674ed0 mac 100773a0 AtomCollection::GetAge(void) +float __fastcall GetAge__14AtomCollectionFv(struct AtomCollection* this); + +struct UR_GesturingRecognised +{ + uint8_t field_0x0[0x0]; +}; +static_assert(sizeof(struct UR_GesturingRecognised) == 0x4, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 006884f0 mac 1007c960 UR_GesturingRecognised::ModifyAtomCollection(AtomCollection *) const +uint32_t __fastcall ModifyAtomCollection__22UR_GesturingRecognisedCFP14AtomCollection(const struct UR_GesturingRecognised* this, const void* edx, struct AtomCollection* collection); +// win1.41 00688910 mac 10406f90 UR_GesturingRecognised::ModifySubCollection(AtomCollection *, UR_GesturingRecognised::AtomData *) const +void __fastcall ModifySubCollection__22UR_GesturingRecognisedCFP14AtomCollectionPQ222UR_GesturingRecognised8AtomData(const struct UR_GesturingRecognised* this, const void* edx, struct AtomCollection* collection, struct Q222UR_GesturingRecognised8AtomData* data); + +#endif /* BW1_DECOMP_P_SYS_ATOM_CORE_INCLUDED_H */ diff --git a/black/PSysBase.h b/black/PSysBase.h new file mode 100644 index 0000000..57af529 --- /dev/null +++ b/black/PSysBase.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_P_SYS_BASE_INCLUDED_H +#define BW1_DECOMP_P_SYS_BASE_INCLUDED_H + +#include /* For static_assert */ + +#include "GameThing.h" /* For struct GameThing */ + +struct PSysBase +{ + struct GameThing super; /* 0x0 */ +}; +static_assert(sizeof(struct PSysBase) == 0x14, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__8PSysBase = (struct GameThingVftable*)0x008c9c34; + +#endif /* BW1_DECOMP_P_SYS_BASE_INCLUDED_H */ diff --git a/black/PSysEditor.h b/black/PSysEditor.h new file mode 100644 index 0000000..bf0bfbe --- /dev/null +++ b/black/PSysEditor.h @@ -0,0 +1,7 @@ +#ifndef BW1_DECOMP_P_SYS_EDITOR_INCLUDED_H +#define BW1_DECOMP_P_SYS_EDITOR_INCLUDED_H + +// win1.41 0067d620 mac 10014ce0 PSysEditorInterface::Draw3D +void __cdecl Draw3D__19PSysEditorInterfaceFv(void); + +#endif /* BW1_DECOMP_P_SYS_EDITOR_INCLUDED_H */ diff --git a/black/PSysHandFX.h b/black/PSysHandFX.h new file mode 100644 index 0000000..fa38019 --- /dev/null +++ b/black/PSysHandFX.h @@ -0,0 +1,83 @@ +#ifndef BW1_DECOMP_P_SYS_HAND_FX_INCLUDED_H +#define BW1_DECOMP_P_SYS_HAND_FX_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum TRIBE_TYPE */ + +// Forward Declares + +struct HandFX; +struct LHPoint; +struct PSysHandFX; + +struct PSysHandFXVftable +{ + void (__fastcall* RemoveAllPermBands)(struct PSysHandFX* this); /* 0x0 */ + void (__fastcall* DoRemoveFromHandVisual)(struct PSysHandFX* this); + void (__fastcall* AddSpellToHandVisuals)(struct PSysHandFX* this, const void* edx, bool param_1); + void (__fastcall* SetPULevel)(struct PSysHandFX* this, const void* edx, uint32_t param_1, bool param_2); + void (__fastcall* DrawHandFX)(struct PSysHandFX* this); /* 0x10 */ + uint32_t (__fastcall* GetPULevel)(struct PSysHandFX* this); + void (__fastcall* StartTribalPowerRing)(struct PSysHandFX* this, const void* edx, enum TRIBE_TYPE tribe); + void (__fastcall* StopTribalPowerRing)(struct PSysHandFX* this); + void (__fastcall* ReleaseOrCreateTribalPowerRing)(struct PSysHandFX* this, const void* edx, enum TRIBE_TYPE tribe); /* 0x20 */ + void (__fastcall* Release)(struct PSysHandFX* this); +}; +static_assert(sizeof(struct PSysHandFXVftable) == 0x28, "Data type is of wrong size"); + +struct PSysHandFX +{ + struct PSysHandFXVftable* vftable; /* 0x0 */ +}; +static_assert(sizeof(struct PSysHandFX) == 0x4, "Data type is of wrong size"); + +// Static methods + +// win1.41 0068c9d0 mac 1040e720 PSysHandFX::CreateHandFX(void) +struct HandFX* __cdecl CreateHandFX__10PSysHandFXFv(void); +// win1.41 0068def0 mac 1040c1a0 PSysHandFX::CreateTribalPowerColumn(TRIBE_TYPE, LHPoint const &, unsigned long) +void __cdecl CreateTribalPowerColumn__10PSysHandFXF10TRIBE_TYPERC7LHPointUl(enum TRIBE_TYPE type, struct LHPoint* param_2, uint32_t param_3); + +struct PHandFX +{ + struct PSysHandFX super; /* 0x0 */ + uint8_t field_0x4[0x44]; + uint32_t power_up_level; /* 0x48 */ + uint8_t field_0x4c[0x28]; +}; +static_assert(sizeof(struct PHandFX) == 0x74, "Data type is of wrong size"); + +static struct PSysHandFXVftable* __vt__7PHandFX = (struct PSysHandFXVftable*)0x00936c1c; + +// Constructors + +// win1.41 0068cb10 mac 1040e240 PHandFX::PHandFX(void) +struct PHandFX* __fastcall __ct__7PHandFXFv(struct PHandFX* this); + +// Override methods + +// win1.41 0068d060 mac 1040e060 PHandFX::RemoveAllPermBands(void) +void __fastcall RemoveAllPermBands__7PHandFXFv(struct PHandFX* this); +// win1.41 0068ce90 mac 1040e0c0 PHandFX::DoRemoveFromHandVisual(void) +void __fastcall DoRemoveFromHandVisual__7PHandFXFv(struct PHandFX* this); +// win1.41 0068de20 mac 1040c300 PHandFX::AddSpellToHandVisuals(bool) +void __fastcall AddSpellToHandVisuals__7PHandFXFb(struct PHandFX* this, const void* edx, bool param_1); +// win1.41 0068dda0 mac 1040c460 PHandFX::SetPULevel(long, bool) +void __fastcall SetPULevel__7PHandFXFlb(struct PHandFX* this, const void* edx, uint32_t param_1, bool param_2); +// win1.41 0068dd60 mac 1001b7a0 PHandFX::DrawHandFX(void) +void __fastcall DrawHandFX__7PHandFXFv(struct PHandFX* this); +// win1.41 0068ccb0 mac 1040e200 PHandFX::GetPULevel(void) +uint32_t __fastcall GetPULevel__7PHandFXFv(struct PHandFX* this); +// win1.41 0068df20 mac 1040c000 PHandFX::StartTribalPowerRing(TRIBE_TYPE) +void __fastcall StartTribalPowerRing__7PHandFXF10TRIBE_TYPE(struct PHandFX* this, const void* edx, enum TRIBE_TYPE tribe); +// win1.41 0068dfa0 mac 1040bf70 PHandFX::StopTribalPowerRing(void) +void __fastcall StopTribalPowerRing__7PHandFXFv(struct PHandFX* this); +// win1.41 0068dfc0 mac 1040be00 PHandFX::ReleaseOrCreateTribalPowerRing(TRIBE_TYPE) +void __fastcall ReleaseOrCreateTribalPowerRing__7PHandFXF10TRIBE_TYPE(struct PHandFX* this, const void* edx, enum TRIBE_TYPE tribe); +// win1.41 0068ca10 mac 1040e670 PHandFX::Release(void) +void __fastcall Release__7PHandFXFv(struct PHandFX* this); + +#endif /* BW1_DECOMP_P_SYS_HAND_FX_INCLUDED_H */ diff --git a/black/PSysInterface.h b/black/PSysInterface.h new file mode 100644 index 0000000..c2a70ec --- /dev/null +++ b/black/PSysInterface.h @@ -0,0 +1,72 @@ +#ifndef BW1_DECOMP_P_SYS_INTERFACE_INCLUDED_H +#define BW1_DECOMP_P_SYS_INTERFACE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum PARTICLE_TYPE */ + +#include "GameThing.h" /* For struct GameThingVftable */ +#include "PSysBase.h" /* For struct PSysBase */ + +// Forward Declares + +struct GameThing; +struct LHPoint; +struct PSysInterface; +struct PSysProcessInfo; +struct Spell; + +enum PSysInterface__NET_GAME_TYPE +{ + PSysInterface__NET_GAME_TYPE_0 = 0x0, + _PSysInterface__NET_GAME_TYPE_COUNT = 0x1 +}; +static_assert(sizeof(enum PSysInterface__NET_GAME_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* PSysInterface__NET_GAME_TYPE_strs[_PSysInterface__NET_GAME_TYPE_COUNT] = { + "PSysInterface__NET_GAME_TYPE_0", +}; + +struct PSysInterfaceVftable +{ + struct GameThingVftable super; /* 0x0 */ + uint32_t (__fastcall* Process__1)(struct PSysBase* this, const void* edx, const struct PSysProcessInfo* info, uint32_t param_3); /* 0xfc */ + void (__fastcall* Process__2)(struct PSysBase* this, const void* edx, struct PSysProcessInfo* info); /* 0x100 */ + void (__fastcall* Draw__1)(struct PSysBase* this, const void* edx, float param_1, bool param_2); + void (__fastcall* Draw__2)(struct PSysBase* this, const void* edx, bool param_1); + void (__fastcall* AddDrawing)(struct PSysInterface* this, const void* edx, float param_1, const struct LHPoint* param_2); + void (__fastcall* AddTarget__1)(struct PSysInterface* this, const void* edx, const struct LHPoint* target); /* 0x110 */ + void (__fastcall* AddTarget__2)(struct PSysInterface* this, const void* edx, struct GameThing* target); + void (__fastcall* CloseDown)(struct PSysInterface* this); + void (__fastcall* SetMagnitude)(struct PSysInterface* this, const void* edx, float value); + void (__fastcall* SetAge)(struct PSysInterface* this, const void* edx, float value); /* 0x120 */ + void (__fastcall* SetOrigin)(struct PSysInterface* this, const void* edx, const struct LHPoint* value); + void (__fastcall* SetOriginAndMoveAllAtoms)(struct PSysInterface* this, const void* edx, const struct LHPoint* value); + void (__fastcall* SetAlpha)(struct PSysInterface* this, const void* edx, uint8_t value); + struct LHPoint* (__fastcall* GetOrigin)(struct PSysInterface* this); /* 0x130 */ +}; +static_assert(sizeof(struct PSysInterfaceVftable) == 0x134, "Data type is of wrong size"); + +union PSysInterfaceBase +{ + struct PSysBase super; + struct PSysInterfaceVftable* vftable; +}; +static_assert(sizeof(union PSysInterfaceBase) == 0x14, "Data type is of wrong size"); + +struct PSysInterface +{ + union PSysInterfaceBase base; /* 0x0 */ +}; +static_assert(sizeof(struct PSysInterface) == 0x14, "Data type is of wrong size"); + +static struct PSysInterfaceVftable* __vt__13PSysInterface = (struct PSysInterfaceVftable*)0x008fa9d8; + +// Static methods + +// win1.41 0068e910 mac 100053c0 PSysInterface::Create(Spell *, PARTICLE_TYPE, LHPoint const &, LHPoint const &, float, PSysInterface::NET_GAME_TYPE) +struct PSysInterface* __cdecl Create__13PSysInterfaceFP5Spell13PARTICLE_TYPERC7LHPointRC7LHPointfQ213PSysInterface13NET_GAME_TYPE(struct Spell* spell, enum PARTICLE_TYPE particle_type, struct LHPoint* param_3, struct LHPoint* param_4, float param_5, enum PSysInterface__NET_GAME_TYPE game_type); + +#endif /* BW1_DECOMP_P_SYS_INTERFACE_INCLUDED_H */ diff --git a/black/PSysManager.h b/black/PSysManager.h new file mode 100644 index 0000000..c7bcb67 --- /dev/null +++ b/black/PSysManager.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_P_SYS_MANAGER_INCLUDED_H +#define BW1_DECOMP_P_SYS_MANAGER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "PSysBase.h" /* For struct PSysBase */ + +struct PSysManager +{ + struct PSysBase super; /* 0x0 */ + uint8_t field_0x14[0xd0]; +}; +static_assert(sizeof(struct PSysManager) == 0xe4, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__11PSysManager = (struct GameThingVftable*)0x009353c0; + +#endif /* BW1_DECOMP_P_SYS_MANAGER_INCLUDED_H */ diff --git a/black/PSysProcessInfo.h b/black/PSysProcessInfo.h new file mode 100644 index 0000000..882c839 --- /dev/null +++ b/black/PSysProcessInfo.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_P_SYS_PROCESS_INFO_INCLUDED_H +#define BW1_DECOMP_P_SYS_PROCESS_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For struct LHPoint */ + +struct PSysProcessInfo +{ + struct LHPoint interface_position; /* 0x0 */ + struct LHPoint field_0xc; + struct LHPoint camera_forward_unit_vector; /* 0x18 */ + struct LHPoint hand_velocity; /* 0x24 */ + float field_0x30; + uint32_t field_0x34; + uint8_t field_0x38; +}; +static_assert(sizeof(struct PSysProcessInfo) == 0x3c, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_P_SYS_PROCESS_INFO_INCLUDED_H */ diff --git a/black/PSysRenderParticle.h b/black/PSysRenderParticle.h new file mode 100644 index 0000000..058393f --- /dev/null +++ b/black/PSysRenderParticle.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_P_SYS_RENDER_PARTICLE_INCLUDED_H +#define BW1_DECOMP_P_SYS_RENDER_PARTICLE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "PSysBase.h" /* For struct PSysBase */ + +struct RenderParticle +{ + struct PSysBase super; /* 0x0 */ + uint32_t field_0x14; +}; +static_assert(sizeof(struct RenderParticle) == 0x18, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__14RenderParticle = (struct GameThingVftable*)0x008fac3c; + +#endif /* BW1_DECOMP_P_SYS_RENDER_PARTICLE_INCLUDED_H */ diff --git a/black/ParticleContainer.h b/black/ParticleContainer.h new file mode 100644 index 0000000..5ba2252 --- /dev/null +++ b/black/ParticleContainer.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_PARTICLE_CONTAINER_INCLUDED_H +#define BW1_DECOMP_PARTICLE_CONTAINER_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +struct GParticleContainer +{ + struct GameThingWithPos super; /* 0x0 */ + struct GameThingWithPos* thing; /* 0x28 */ + uint32_t field_0x2c; + uint32_t field_0x30; + float field_0x34; + bool field_0x38; + struct GParticleContainer* next; +}; +static_assert(sizeof(struct GParticleContainer) == 0x40, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__18GParticleContainer = (struct GameThingVftable*)0x008e2a14; + +DECLARE_LH_LIST_HEAD(GParticleContainer); + +#endif /* BW1_DECOMP_PARTICLE_CONTAINER_INCLUDED_H */ diff --git a/black/PathCreator.h b/black/PathCreator.h new file mode 100644 index 0000000..19971f0 --- /dev/null +++ b/black/PathCreator.h @@ -0,0 +1,34 @@ +#ifndef BW1_DECOMP_PATH_CREATOR_INCLUDED_H +#define BW1_DECOMP_PATH_CREATOR_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint8_t */ +#include /* For char16_t */ + +struct PathCreator +{ + char* dev_black; /* 0x0 */ + char* profiles; + char* saved_games; + char* pictures; + char* current; /* 0x10 */ + char* field_0x16; + char field_0x18[0x10]; + uint8_t field_0x28[0xf4]; + char field_0x11c[0x44]; + uint8_t field_0x160[0xbc]; + char16_t* field_0x21c; +}; +static_assert(sizeof(struct PathCreator) == 0x220, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 0078eaa0 mac 1035b570 PathCreator::GetSaveGamePicturesPath__11PathCreatorFPc(char*) +void __fastcall GetSaveGamePicturesPath__11PathCreatorFPc(struct PathCreator* this, const void* edx, char* path); +// win1.41 0078eae0 mac 101ca330 PathCreator::GetCurrentGamePath(char*) +void __fastcall GetCurrentGamePath__11PathCreatorFPc(struct PathCreator* this, const void* edx, char* path); +// win1.41 0078efc0 mac 103655d0 PathCreator::CheckAndRecreateSaveGamePaths(void) +bool __fastcall CheckAndRecreateSaveGamePaths__11PathCreatorFv(struct PathCreator* this); + +#endif /* BW1_DECOMP_PATH_CREATOR_INCLUDED_H */ diff --git a/black/PhysicsObject.h b/black/PhysicsObject.h new file mode 100644 index 0000000..d6094d3 --- /dev/null +++ b/black/PhysicsObject.h @@ -0,0 +1,36 @@ +#ifndef BW1_DECOMP_PHYSICS_OBJECT_INCLUDED_H +#define BW1_DECOMP_PHYSICS_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +struct PhysicsObject +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0x1a0]; + float field_0x1a8; + uint32_t field_0x1ac; + uint32_t field_0x1b0; + uint32_t field_0x1b4; + float field_0x1b8; + uint32_t field_0x1bc; + uint32_t field_0x1c0; + uint32_t field_0x1c4; + float field_0x1c8; + uint32_t field_0x1cc; + uint32_t field_0x1d0; + uint32_t field_0x1d4; + uint32_t field_0x1d8; +}; +static_assert(sizeof(struct PhysicsObject) == 0x1dc, "Data type is of wrong size"); + +static struct BaseVftable* __vt__13PhysicsObject = (struct BaseVftable*)0x00932b94; + +// Constructors + +// win1.41 00644330 mac 10113e20 PhysicsObject::PhysicsObject(void) +struct PhysicsObject* __fastcall __ct__13PhysicsObjectFv(struct PhysicsObject* this); + +#endif /* BW1_DECOMP_PHYSICS_OBJECT_INCLUDED_H */ diff --git a/black/PhysicsSaveInfo.h b/black/PhysicsSaveInfo.h new file mode 100644 index 0000000..6312b1c --- /dev/null +++ b/black/PhysicsSaveInfo.h @@ -0,0 +1,11 @@ +#ifndef BW1_DECOMP_PHYSICS_SAVE_INFO_INCLUDED_H +#define BW1_DECOMP_PHYSICS_SAVE_INFO_INCLUDED_H + +// Forward Declares + +struct GameOSFile; + +// win1.41 005586c0 mac 1030f570 PhysicsSaveInfo::ReadInfo(GameOSFile &) +void __cdecl ReadInfo__15PhysicsSaveInfoFR10GameOSFile(struct GameOSFile* file); + +#endif /* BW1_DECOMP_PHYSICS_SAVE_INFO_INCLUDED_H */ diff --git a/black/PictureRoom.h b/black/PictureRoom.h new file mode 100644 index 0000000..4772406 --- /dev/null +++ b/black/PictureRoom.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_PICTURE_ROOM_INCLUDED_H +#define BW1_DECOMP_PICTURE_ROOM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "TempleRoom.h" /* For struct TempleRoom */ + +struct PictureRoomBase +{ + struct TempleRoom super; /* 0x0 */ + uint8_t field_0xec[0x74]; +}; +static_assert(sizeof(struct PictureRoomBase) == 0x160, "Data type is of wrong size"); + +static struct TempleRoomVftable* __vt__15PictureRoomBase = (struct TempleRoomVftable*)0x0099ed78; + +// Constructors + +// win1.41 0078f110 mac 10114a00 PictureRoomBase::PictureRoomBase(char const *) +struct TempleRoom* __fastcall __ct__15PictureRoomBaseFPCc(struct PictureRoomBase* this, const void* edx, const char* param_1); + +#endif /* BW1_DECOMP_PICTURE_ROOM_INCLUDED_H */ diff --git a/black/PileFood.h b/black/PileFood.h new file mode 100644 index 0000000..7744aea --- /dev/null +++ b/black/PileFood.h @@ -0,0 +1,37 @@ +#ifndef BW1_DECOMP_PILE_FOOD_INCLUDED_H +#define BW1_DECOMP_PILE_FOOD_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "PileResource.h" /* For struct PileResource */ + +// Forward Declares + +struct GPotInfo; +struct MapCoords; +struct MultiMapFixed; +struct Town; + +struct PileFood +{ + struct PileResource super; /* 0x0 */ + struct PileFood* next; /* 0xb4 */ + uint32_t field_0xb8; +}; +static_assert(sizeof(struct PileFood) == 0xbc, "Data type is of wrong size"); + +static struct PotVftable* __vt__8PileFood = (struct PotVftable*)0x0093305c; + +// Constructors + +// win1.41 0066dfe0 mac 1011a450 PileFood::PileFood(void) +struct PileFood* __fastcall __ct__8PileFoodFv(struct PileFood* this); +// win1.41 0066e070 mac 1011a2b0 PileFood::PileFood(MapCoords const &, GPotInfo const *, unsigned long, MultiMapFixed *, Town *, int, float, float) +struct PileFood* __fastcall __ct__8PileFoodFRC9MapCoordsPC8GPotInfoUlP13MultiMapFixedP4Towniff(struct PileFood* this, const void* edx, struct MapCoords* coords, struct GPotInfo* param_2, uint32_t param_3, struct MultiMapFixed* param_4, struct Town* param_5, int param_6, float param_7, float param_8); + +DECLARE_LH_LIST_HEAD(PileFood); + +#endif /* BW1_DECOMP_PILE_FOOD_INCLUDED_H */ diff --git a/black/PileResource.h b/black/PileResource.h new file mode 100644 index 0000000..72d6e23 --- /dev/null +++ b/black/PileResource.h @@ -0,0 +1,46 @@ +#ifndef BW1_DECOMP_PILE_RESOURCE_INCLUDED_H +#define BW1_DECOMP_PILE_RESOURCE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "PotStructure.h" /* For struct PotStructure */ + +// Forward Declares + +struct GPotInfo; +struct MapCoords; +struct MultiMapFixed; +struct Town; + +struct PileResource +{ + struct PotStructure super; /* 0x0 */ + float field_0x84; + float field_0x88; + uint32_t field_0x8c; + uint32_t field_0x90; + uint32_t field_0x94; + uint32_t field_0x98; + uint32_t field_0x9c; + float field_0xa0; + uint32_t field_0xa4; + uint32_t field_0xa8; + uint32_t field_0xac; + uint32_t field_0xb0; +}; +static_assert(sizeof(struct PileResource) == 0xb4, "Data type is of wrong size"); + +static struct PotVftable* __vt__12PileResource = (struct PotVftable*)0x009338d4; + +// Constructors + +// win1.41 0066ec70 mac 10117e50 PileResource::PileResource(MapCoords const &, GPotInfo const *, unsigned long, MultiMapFixed *, Town *, int, float, float) +struct PileResource* __fastcall __ct__12PileResourceFRC9MapCoordsPC8GPotInfoUlP13MultiMapFixedP4Towniff(struct PileResource* this, const void* edx, struct MapCoords* param_1, struct GPotInfo* info, uint32_t param_3, struct MultiMapFixed* param_4, struct Town* param_5, int param_6, float param_7, float param_8); + +// Override methods + +// win1.41 0066e300 mac 10119a80 PileResource::CallVirtualFunctionsForCreation(MapCoords const &) +void __fastcall CallVirtualFunctionsForCreation__12PileResourceFRC9MapCoords(struct PileResource* this, const void* edx, const struct MapCoords* coords); + +#endif /* BW1_DECOMP_PILE_RESOURCE_INCLUDED_H */ diff --git a/black/PileWood.h b/black/PileWood.h new file mode 100644 index 0000000..f0d9851 --- /dev/null +++ b/black/PileWood.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_PILE_WOOD_INCLUDED_H +#define BW1_DECOMP_PILE_WOOD_INCLUDED_H + +#include /* For static_assert */ + +#include "PileResource.h" /* For struct PileResource */ + +struct PileWood +{ + struct PileResource super; /* 0x0 */ +}; +static_assert(sizeof(struct PileWood) == 0xb4, "Data type is of wrong size"); + +static struct PotVftable* __vt__8PileWood = (struct PotVftable*)0x008e5d8c; + +#endif /* BW1_DECOMP_PILE_WOOD_INCLUDED_H */ diff --git a/black/PlannedAbode.h b/black/PlannedAbode.h new file mode 100644 index 0000000..1172234 --- /dev/null +++ b/black/PlannedAbode.h @@ -0,0 +1,38 @@ +#ifndef BW1_DECOMP_PLANNED_ABODE_INCLUDED_H +#define BW1_DECOMP_PLANNED_ABODE_INCLUDED_H + +#include /* For static_assert */ + +#include "PlannedMultiMapFixed.h" /* For struct PlannedMultiMapFixed */ + +// Forward Declares + +struct GMultiMapFixedInfo; +struct MapCoords; +struct Town; + +struct PlannedAbode +{ + struct PlannedMultiMapFixed super; /* 0x0 */ + struct Town* town; /* 0x48 */ +}; +static_assert(sizeof(struct PlannedAbode) == 0x4c, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__12PlannedAbode = (struct GameThingWithPosVftable*)0x008aa3bc; + +// Static methods + +// win1.41 00405600 mac 10479fb0 PlannedAbode::Create(MapCoords const &, GAbodeInfo const *, Town *, float, float) +struct PlannedAbode* __cdecl Create__12PlannedAbodeFRC9MapCoordsPC10GAbodeInfoP4Townff(struct MapCoords* coords, struct GMultiMapFixedInfo* info, struct Town* town, float param_4, float param_5); + +// Constructors + +// win1.41 00405080 mac 103e51a0 PlannedAbode::PlannedAbode(MapCoords const &, GAbodeInfo const *, Town *, float, float) +struct PlannedAbode* __fastcall __ct__12PlannedAbodeFRC9MapCoordsPC10GAbodeInfoP4Townff(struct PlannedAbode* this, const void* edx, const struct MapCoords* coords, const struct GMultiMapFixedInfo* info, struct Town* town, float param_4, float param_5); + +// Non-virtual methods + +// win1.41 004055a0 mac 103e5560 PlannedAbode::Init(Town *) +void __fastcall Init__12PlannedAbodeFP4Town(struct PlannedAbode* this, const void* edx, struct Town* town); + +#endif /* BW1_DECOMP_PLANNED_ABODE_INCLUDED_H */ diff --git a/black/PlannedMultiMapFixed.h b/black/PlannedMultiMapFixed.h new file mode 100644 index 0000000..8d86920 --- /dev/null +++ b/black/PlannedMultiMapFixed.h @@ -0,0 +1,41 @@ +#ifndef BW1_DECOMP_PLANNED_MULTI_MAP_FIXED_INCLUDED_H +#define BW1_DECOMP_PLANNED_MULTI_MAP_FIXED_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +// Forward Declares + +struct GFootpathLink; +struct GMultiMapFixedInfo; +struct GObjectInfo; +struct MapCoords; + +struct PlannedMultiMapFixed +{ + struct GameThingWithPos super; /* 0x0 */ + float field_0x28; + float field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + struct GFootpathLink* footpath_link; + int creation_turn; + struct GObjectInfo* info; /* 0x40 */ + struct PlannedMultiMapFixed* next; +}; +static_assert(sizeof(struct PlannedMultiMapFixed) == 0x48, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__20PlannedMultiMapFixed = (struct GameThingWithPosVftable*)0x008f3154; + +// Constructors + +// win1.41 00648780 mac 10115620 PlannedMultiMapFixed::PlannedMultiMapFixed(MapCoords const &, GMultiMapFixedInfo const *, float, float) +struct PlannedMultiMapFixed* __fastcall __ct__20PlannedMultiMapFixedFRC9MapCoordsPC18GMultiMapFixedInfoff(struct PlannedMultiMapFixed* this, const void* edx, const struct MapCoords* coords, const struct GMultiMapFixedInfo* info, float param_3, float param_4); + +DECLARE_LH_LIST_HEAD(PlannedMultiMapFixed); + +#endif /* BW1_DECOMP_PLANNED_MULTI_MAP_FIXED_INCLUDED_H */ diff --git a/black/PlannedTownCentre.h b/black/PlannedTownCentre.h new file mode 100644 index 0000000..1cb923f --- /dev/null +++ b/black/PlannedTownCentre.h @@ -0,0 +1,32 @@ +#ifndef BW1_DECOMP_PLANNED_TOWN_CENTRE_INCLUDED_H +#define BW1_DECOMP_PLANNED_TOWN_CENTRE_INCLUDED_H + +#include /* For static_assert */ + +#include "PlannedAbode.h" /* For struct PlannedAbode */ + +// Forward Declares + +struct GAbodeInfo; +struct MapCoords; +struct Town; + +struct PlannedTownCentre +{ + struct PlannedAbode super; /* 0x0 */ +}; +static_assert(sizeof(struct PlannedTownCentre) == 0x4c, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__17PlannedTownCentre = (struct GameThingWithPosVftable*)0x008e46dc; + +// Static methods + +// win1.41 007444d0 mac 1055a160 PlannedTownCentre::Create(MapCoords const &, GAbodeInfo const *, Town *, float, float) +struct PlannedTownCentre* __cdecl Create__17PlannedTownCentreFRC9MapCoordsPC10GAbodeInfoP4Townff(const struct MapCoords* coords, const struct GAbodeInfo* info, struct Town* town, float param_4, float param_5); + +// Constructors + +// win1.41 00744460 mac 103e51a0 PlannedTownCentre::PlannedTownCentre(MapCoords const &, GAbodeInfo const *, Town *, float, float) +struct PlannedTownCentre* __fastcall __ct__17PlannedTownCentreFRC9MapCoordsPC10GAbodeInfoP4Townff(struct PlannedTownCentre* this, const void* edx, const struct MapCoords* coords, const struct GAbodeInfo* info, struct Town* town, float param_4, float param_5); + +#endif /* BW1_DECOMP_PLANNED_TOWN_CENTRE_INCLUDED_H */ diff --git a/black/Plasma.h b/black/Plasma.h new file mode 100644 index 0000000..72bbe65 --- /dev/null +++ b/black/Plasma.h @@ -0,0 +1,37 @@ +#ifndef BW1_DECOMP_PLASMA_INCLUDED_H +#define BW1_DECOMP_PLASMA_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For struct LH3DColor */ +#include /* For struct LHPoint, struct Point2D */ + +// Forward Declares + +struct LH3DMaterial; +struct LH3DTexture; + +struct Plasma +{ + struct LHPoint points[0x4f7]; /* 0x0 */ + struct Point2D uvs[0x4f7]; /* 0x3b94 */ + uint32_t indices[0x3][0x960]; /* 0x634c */ + struct LH3DColor colors[0x4f7]; /* 0xd3cc */ + struct LHPoint field_0xe7a8[0x10]; + struct LHPoint field_0xe868[0x10]; + struct LH3DTexture* pin_texture; /* 0xe928 */ + struct LH3DMaterial* pin_material; +}; +static_assert(sizeof(struct Plasma) == 0xe930, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 0053c640 mac 105c4040 Plasma::Init(void) +void __fastcall Init__6PlasmaFv(struct Plasma* this); +// win1.41 0053c840 mac 105c3d50 Plasma::Render(int) +void __fastcall Render__6PlasmaFi(struct Plasma* this, const void* edx, int param_1); +// win1.41 inlined mac 100c9220 Plasma::Close(void) +void __fastcall Close__6PlasmaFv(struct Plasma* this); + +#endif /* BW1_DECOMP_PLASMA_INCLUDED_H */ diff --git a/black/Player.h b/black/Player.h new file mode 100644 index 0000000..5b6e475 --- /dev/null +++ b/black/Player.h @@ -0,0 +1,149 @@ +#ifndef BW1_DECOMP_PLAYER_INCLUDED_H +#define BW1_DECOMP_PLAYER_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t, uintptr_t */ +#include /* For char16_t */ + +#include /* For enum MAGIC_TYPE */ +#include /* For struct LH3DColor */ +#include /* For DECLARE_LH_LIST_HEAD */ +#include /* For bool32_t */ + +#include "GameThing.h" /* For struct GameThing */ +#include "PlayerInfo.h" /* For enum PLAYER_TYPE */ +#include "Town.h" /* For struct Town */ + +// Forward Declares + +struct Citadel; +struct Creature; +struct GAlignment; +struct GInterface; +struct GameStats; + +enum PLAYER_NAME +{ + PLAYER_NAME_PLAYER_ONE = 0x0, + PLAYER_NAME_PLAYER_TWO = 0x1, + PLAYER_NAME_PLAYER_THREE = 0x2, + PLAYER_NAME_PLAYER_FOUR = 0x3, + PLAYER_NAME_PLAYER_FIVE = 0x4, + PLAYER_NAME_PLAYER_SIX = 0x5, + PLAYER_NAME_PLAYER_SEVEN = 0x6, + PLAYER_NAME_NEUTRAL = 0x7, + _PLAYER_NAME_COUNT = 0x8 +}; +static_assert(sizeof(enum PLAYER_NAME) == 0x4, "Data type is of wrong size"); + +static const char* PLAYER_NAME_strs[_PLAYER_NAME_COUNT] = { + "PLAYER_NAME_PLAYER_ONE", + "PLAYER_NAME_PLAYER_TWO", + "PLAYER_NAME_PLAYER_THREE", + "PLAYER_NAME_PLAYER_FOUR", + "PLAYER_NAME_PLAYER_FIVE", + "PLAYER_NAME_PLAYER_SIX", + "PLAYER_NAME_PLAYER_SEVEN", + "PLAYER_NAME_NEUTRAL", +}; + +struct GPlayer +{ + struct GameThing super; /* 0x0 */ + struct GInterface* interfaces[0x1]; /* 0x14 */ + int field_0x18; + uint8_t field_0x1c[0x44]; + struct GAlignment* alignment; /* 0x60 */ + uint32_t field_0x64; + float field_0x68; + float field_0x6c; + float field_0x70; + float field_0x74; + float field_0x78; + float field_0x7c; + float field_0x80; + float field_0x84; + float field_0x88; + float field_0x8c; + float field_0x90; + uint8_t field_0x94[0x20]; + uint8_t field_0xb4; + uint8_t player_number; + uint8_t field_0xb6; + uint8_t field_0xb7; + float field_0xb8; + float field_0xbc; + float field_0xc0; + float field_0xc4; + float field_0xc8; + float field_0xcc; + float field_0xd0; + float field_0xd4; + float field_0xd8; + uint32_t field_0xdc; + uint32_t field_0xe0; + uint32_t field_0xe4; + uint32_t field_0xe8; + uint32_t field_0xec; + uint8_t field_0xf0[0x7f0]; + enum PLAYER_TYPE type; /* 0x8e0 */ + char16_t name[0x1e]; + uint32_t field_0x920; + uint32_t field_0x924; + uint32_t field_0x928; + int field_0x92c; + uint8_t field_0x930[0x14]; + uintptr_t field_0x944; + uint8_t field_0x948[0x28]; + int magic_remainder[0x2a]; /* 0x970 */ + bool magic_enabled[0x2a]; /* 0xa18 */ + struct GameStats* game_stats; /* 0xa44 */ + struct Citadel* citadel; + struct Creature* creature; + struct LHListHead__Town towns; /* 0xa50 */ + uint32_t field_0xa58; + uint32_t field_0xa5c; +}; +static_assert(sizeof(struct GPlayer) == 0xa60, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__7GPlayer = (struct GameThingVftable*)0x00932be8; + +// Static methods + +// win1.41 00649a20 mac 100620c0 GPlayer::ProcessPlayers(void) +void __cdecl ProcessPlayers__7GPlayerFv(void); +// win1.41 0064ab90 mac 10495bf0 GPlayer::PostLoadCleanup(void) +void __cdecl PostLoadCleanup__7GPlayerFv(void); +// win1.41 0064b5e0 mac 10494e00 GPlayer::GetPlayerFromText(char *) +struct GPlayer* __cdecl GetPlayerFromText__7GPlayerFPc(const char* str); + +// Non-virtual methods + +// win1.41 00649190 mac 10497020 GPlayer::Init(PLAYER_TYPE, unsigned char, wchar_t *, unsigned char) +void __fastcall Init__7GPlayerF11PLAYER_TYPEUcPwUc(struct GPlayer* this, const void* edx, enum PLAYER_TYPE type, uint8_t player_number, char16_t* param_3, unsigned char param_4); +// win1.41 006494e0 mac 10036020 GPlayer::Process(void) +void __fastcall Process__7GPlayerFv(struct GPlayer* this); +// win1.41 0064a6b0 mac 104965e0 GPlayer::Birthday(void) +void __fastcall Birthday__7GPlayerFv(struct GPlayer* this); +// win1.41 0064a790 mac 1005c3d0 GPlayer::GetPlayerNumber(void) const +uint8_t __fastcall GetPlayerNumber__7GPlayerCFv(const struct GPlayer* this); +// win1.41 0064ac00 mac 100306d0 GPlayer::IsNeutral(void) +bool __fastcall IsNeutral__7GPlayerFv(const struct GPlayer* this); +// win1.41 0064ad00 mac 1004d120 GPlayer::CalculateInfluencePower(void) +float __fastcall CalculateInfluencePower__7GPlayerFv(struct GPlayer* this); +// win1.41 0064b590 mac 10494ee0 GPlayer::GetPlayer3DColor(void) +struct LH3DColor* __fastcall GetPlayer3DColor__7GPlayerFv(struct GPlayer* this, const void* edx, struct LH3DColor* color); +// win1.41 0064c220 mac 10492490 GPlayer::IsMagicTypeEnabled(MAGIC_TYPE) +bool32_t __fastcall IsMagicTypeEnabled__7GPlayerF10MAGIC_TYPE(struct GPlayer* this, const void* edx, enum MAGIC_TYPE type); +// win1.41 0064d120 mac 10051520 GPlayer::GetRealInterface(unsigned long) +struct GInterface* __fastcall GetRealInterface__7GPlayerFUl(struct GPlayer* this, const void* edx, int param_2); +// win1.41 0064d800 mac 10021970 GPlayer::GetPlayerColour(void) const +struct LH3DColor __fastcall GetPlayerColour__7GPlayerCFv(struct GPlayer* this); + +DECLARE_LH_LIST_HEAD(GPlayer); + +// win1.41 0064d790 mac 100218a0 GetRemapedPlayer(unsigned long) +int __cdecl GetRemapedPlayer__FUl(int index); + +#endif /* BW1_DECOMP_PLAYER_INCLUDED_H */ diff --git a/black/PlayerInfo.h b/black/PlayerInfo.h new file mode 100644 index 0000000..b8213f5 --- /dev/null +++ b/black/PlayerInfo.h @@ -0,0 +1,56 @@ +#ifndef BW1_DECOMP_PLAYER_INFO_INCLUDED_H +#define BW1_DECOMP_PLAYER_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +enum PLAYER_TYPE +{ + PLAYER_TYPE_0 = 0x0, + _PLAYER_TYPE_COUNT = 0x1 +}; +static_assert(sizeof(enum PLAYER_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* PLAYER_TYPE_strs[_PLAYER_TYPE_COUNT] = { + "PLAYER_TYPE_0", +}; + +struct GPlayerInfo +{ + struct GBaseInfo super; /* 0x0 */ + float field_0x10; + float field_0x14; + float field_0x18; + float field_0x1c; + uint32_t field_0x20; + float field_0x24; + float field_0x28; + float field_0x2c; + float field_0x30; + float field_0x34; + float field_0x38; + float field_0x3c; + float field_0x40; + uint32_t field_0x44; + float field_0x48; + float field_0x4c; + uint8_t field_0x50[0x40]; +}; +static_assert(sizeof(struct GPlayerInfo) == 0x90, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__11GPlayerInfo = (struct GBaseInfoVftable*)0x008df730; + +struct PlayerInfo +{ + uint8_t field_0x0[0x8]; +}; +static_assert(sizeof(struct PlayerInfo) == 0x8, "Data type is of wrong size"); + +// Constructors + +// win1.41 00648d50 mac 10375150 PlayerInfo::PlayerInfo(void) +void __fastcall __ct__10PlayerInfoFv(struct PlayerInfo* this); + +#endif /* BW1_DECOMP_PLAYER_INFO_INCLUDED_H */ diff --git a/black/PlayerProfile.h b/black/PlayerProfile.h new file mode 100644 index 0000000..f2be4ee --- /dev/null +++ b/black/PlayerProfile.h @@ -0,0 +1,33 @@ +#ifndef BW1_DECOMP_PLAYER_PROFILE_INCLUDED_H +#define BW1_DECOMP_PLAYER_PROFILE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ +#include /* For char16_t */ + +struct PlayerProfile +{ + char16_t creature_name[0x100]; /* 0x0 */ + char16_t current_profile[0x100]; /* 0x200 */ + char16_t login_name[0x100]; /* 0x400 */ + char16_t login_password[0x100]; /* 0x600 */ + uint32_t stuff; /* 0x800 */ + uint32_t player_symbol; + uint32_t timestarted; + uint32_t numberofsaves; + uint32_t numberofloads; /* 0x810 */ + uint32_t pitchaboutcentre; + uint32_t pushscroll; + uint32_t HAND_ORIENTATION; + uint32_t IMMERSION_KEY; /* 0x820 */ +}; +static_assert(sizeof(struct PlayerProfile) == 0x824, "Data type is of wrong size"); + +// Static methods + +// win1.41 0066b7a0 mac 104cbec0 PlayerProfile::SetCurrentProfile(wchar_t *) +void __cdecl SetCurrentProfile__13PlayerProfileFPw(char16_t* name); +// win1.41 0066bfb0 mac 104cb130 PlayerProfile::ProfileExists(wchar_t *) +uint32_t __cdecl ProfileExists__13PlayerProfileFPw(char16_t* name); + +#endif /* BW1_DECOMP_PLAYER_PROFILE_INCLUDED_H */ diff --git a/black/Pot.h b/black/Pot.h new file mode 100644 index 0000000..595b7d6 --- /dev/null +++ b/black/Pot.h @@ -0,0 +1,57 @@ +#ifndef BW1_DECOMP_POT_INCLUDED_H +#define BW1_DECOMP_POT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t, uintptr_t */ + +#include /* For enum RESOURCE_TYPE */ + +#include "MobileObject.h" /* For struct MobileObject, struct MobileObjectVftable */ + +// Forward Declares + +struct GPotInfo; +struct MapCoords; +struct Town; + +struct PotVftable +{ + struct MobileObjectVftable super; /* 0x0 */ + void (__fastcall* SetSize)(void* param_0); /* 0x85c */ + uintptr_t field_0x860; + uintptr_t field_0x864; +}; +static_assert(sizeof(struct PotVftable) == 0x868, "Data type is of wrong size"); + +union PotBase +{ + struct MobileObject super; + struct PotVftable* vftable; +}; +static_assert(sizeof(union PotBase) == 0x68, "Data type is of wrong size"); + +struct Pot +{ + union PotBase base; /* 0x0 */ + enum RESOURCE_TYPE field_0x68; + uint32_t field_0x6c; + uint32_t field_0x70; + uint8_t field_0x74; +}; +static_assert(sizeof(struct Pot) == 0x78, "Data type is of wrong size"); + +static struct PotVftable* __vt__3Pot = (struct PotVftable*)0x008e6604; + +// Constructors + +// win1.41 inlined mac 1030c590 Pot::Pot(void) +struct Pot* __fastcall __ct__3PotFv(struct Pot* this); +// win1.41 0066ce60 mac 1011cef0 Pot::Pot(MapCoords const &, GPotInfo const *, unsigned long, Town *, float, float) +struct Pot* __fastcall __ct__3PotFRC9MapCoordsPC8GPotInfoUlP4Townff(struct Pot* this, const void* edx, struct MapCoords* param_1, struct GPotInfo* param_2, uint32_t param_3, struct Town* param_4, float param_5, float param_6); + +// Non-virtual methods + +// win1.41 0066cec0 mac 1011ceb0 Pot::SetToZero(void) +void __fastcall SetToZero__3PotFv(struct Pot* this); + +#endif /* BW1_DECOMP_POT_INCLUDED_H */ diff --git a/black/PotStructure.h b/black/PotStructure.h new file mode 100644 index 0000000..a2f22b5 --- /dev/null +++ b/black/PotStructure.h @@ -0,0 +1,38 @@ +#ifndef BW1_DECOMP_POT_STRUCTURE_INCLUDED_H +#define BW1_DECOMP_POT_STRUCTURE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include "Pot.h" /* For struct Pot */ + +// Forward Declares + +struct GPotInfo; +struct MapCoords; +struct MultiMapFixed; +struct Town; + +struct PotStructure +{ + struct Pot super; /* 0x0 */ + struct MultiMapFixed* field_0x78; + uint32_t field_0x7c; + bool field_0x80; +}; +static_assert(sizeof(struct PotStructure) == 0x84, "Data type is of wrong size"); + +static struct PotVftable* __vt__12PotStructure = (struct PotVftable*)0x008f8dcc; + +// Constructors + +// win1.41 0066d910 mac 1011b5e0 PotStructure::PotStructure(MapCoords const &, GPotInfo const *, unsigned long, MultiMapFixed *, Town *, int, float, float) +struct PotStructure* __fastcall __ct__12PotStructureFRC9MapCoordsPC8GPotInfoUlP13MultiMapFixedP4Towniff(struct PotStructure* this, const void* edx, struct MapCoords* coords, struct GPotInfo* param_2, uint32_t param_3, struct MultiMapFixed* param_4, struct Town* param_5, int param_6, float param_7, float param_8); + +// Override methods + +// win1.41 0066db90 mac 1011afa0 PotStructure::CallVirtualFunctionsForCreation(const MapCoords&) +void __fastcall CallVirtualFunctionsForCreation__12PotStructureFRC9MapCoords(struct PotStructure* this, const void* edx, const struct MapCoords* coords); + +#endif /* BW1_DECOMP_POT_STRUCTURE_INCLUDED_H */ diff --git a/black/PrayerIconInfo.h b/black/PrayerIconInfo.h new file mode 100644 index 0000000..b6437fc --- /dev/null +++ b/black/PrayerIconInfo.h @@ -0,0 +1,19 @@ +#ifndef BW1_DECOMP_PRAYER_ICON_INFO_INCLUDED_H +#define BW1_DECOMP_PRAYER_ICON_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "SingleMapFixedInfo.h" /* For struct GSingleMapFixedInfo */ + +struct GPrayerIconInfo +{ + struct GSingleMapFixedInfo super; /* 0x0 */ + uint32_t field_0x100; + uint32_t field_0x104; +}; +static_assert(sizeof(struct GPrayerIconInfo) == 0x108, "Data type is of wrong size"); + +static struct GSingleMapFixedInfoVftable* __vt__15GPrayerIconInfo = (struct GSingleMapFixedInfoVftable*)0x009341c8; + +#endif /* BW1_DECOMP_PRAYER_ICON_INFO_INCLUDED_H */ diff --git a/black/ProfileEditor.h b/black/ProfileEditor.h new file mode 100644 index 0000000..36a18c1 --- /dev/null +++ b/black/ProfileEditor.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_PROFILE_EDITOR_INCLUDED_H +#define BW1_DECOMP_PROFILE_EDITOR_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct ProfileEditor +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x48]; +}; +static_assert(sizeof(struct ProfileEditor) == 0x58, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__13ProfileEditor = (struct DialogBoxBaseVftable*)0x008dec6c; + +#endif /* BW1_DECOMP_PROFILE_EDITOR_INCLUDED_H */ diff --git a/black/PuzzleGame.h b/black/PuzzleGame.h new file mode 100644 index 0000000..044b3a8 --- /dev/null +++ b/black/PuzzleGame.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_PUZZLE_GAME_INCLUDED_H +#define BW1_DECOMP_PUZZLE_GAME_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +struct PuzzleGame +{ + struct GameThingWithPos super; /* 0x0 */ + uint8_t field_0x0x28[0x560]; +}; +static_assert(sizeof(struct PuzzleGame) == 0x588, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__10PuzzleGame = (struct GameThingWithPosVftable*)0x008f2338; + +DECLARE_LH_LIST_HEAD(PuzzleGame); + +#endif /* BW1_DECOMP_PUZZLE_GAME_INCLUDED_H */ diff --git a/black/Rand.h b/black/Rand.h new file mode 100644 index 0000000..20c03ad --- /dev/null +++ b/black/Rand.h @@ -0,0 +1,11 @@ +#ifndef BW1_DECOMP_RAND_INCLUDED_H +#define BW1_DECOMP_RAND_INCLUDED_H + +#include /* For uint32_t */ + +// win1.41 006de510 mac 104cc380 GRand::GameRand(long) +int __cdecl GameRand__5GRandFl(uint32_t max, const char* src_file, uint32_t src_line); +// win1.41 006de530 mac 103d9480 GRand::GameFloatRand(float) +float __cdecl GameFloatRand__5GRandFf(float scale, const char* src_file, uint32_t src_line); + +#endif /* BW1_DECOMP_RAND_INCLUDED_H */ diff --git a/black/Reaction.h b/black/Reaction.h new file mode 100644 index 0000000..013a0cc --- /dev/null +++ b/black/Reaction.h @@ -0,0 +1,59 @@ +#ifndef BW1_DECOMP_REACTION_INCLUDED_H +#define BW1_DECOMP_REACTION_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum REACTION */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct GPlayer; +struct GameThingWithPos; +struct ReactionInfo; + +struct Reaction +{ + struct GameThing super; /* 0x0 */ + struct GameThingWithPos* target; /* 0x14 */ + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + enum REACTION type; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + struct GPlayer* player; + float field_0x3c; + struct Reaction* next; /* 0x40 */ +}; +static_assert(sizeof(struct Reaction) == 0x44, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__8Reaction = (struct GameThingVftable*)0x008f3674; + +// Static methods + +// win1.41 006e3d70 mac 10136010 Reaction::CreateReaction(GameThingWithPos *, unsigned char, GPlayer *, int) +struct Reaction* __cdecl CreateReaction__8ReactionFP16GameThingWithPosUcP7GPlayeri(struct GameThingWithPos* param_1, uint8_t param_2, struct GPlayer* player, int param_4); + +// Non-virtual methods + +// win1.41 006e4700 mac 1008c230 Reaction::GetInfo(void) const +struct ReactionInfo* __fastcall GetInfo__8ReactionCFv(struct Reaction* this); + +DECLARE_LH_LIST_HEAD(Reaction); + +struct ReactionDoneWhen +{ + enum REACTION reaction; /* 0x0 */ + uint32_t start_turn; +}; +static_assert(sizeof(struct ReactionDoneWhen) == 0x8, "Data type is of wrong size"); + +DECLARE_LH_LIST_HEAD(ReactionDoneWhen); + +#endif /* BW1_DECOMP_REACTION_INCLUDED_H */ diff --git a/black/ReactionInfo.h b/black/ReactionInfo.h new file mode 100644 index 0000000..58946b1 --- /dev/null +++ b/black/ReactionInfo.h @@ -0,0 +1,40 @@ +#ifndef BW1_DECOMP_REACTION_INFO_INCLUDED_H +#define BW1_DECOMP_REACTION_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For enum GUIDANCE_ALIGNMENT, enum TOWN_DESIRE_INFO */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +struct ReactionInfo +{ + struct GBaseInfo super; /* 0x0 */ + uint32_t priority; /* 0x10 */ + uint32_t numGameTurnsForNormalThingsToReact; + uint32_t numGameTurnsForNormalThingsBeforeReactingAgain; + uint32_t numGameTurnsForCreatureToReact; + uint32_t numGameTurnsForCreatureBeforeReactingAgain; /* 0x20 */ + uint32_t whetherItImpresses; + uint32_t whetherReactionFinishesIfInitiatorInHand; + float maxReactionDistance; + float howImportantIsDistance; /* 0x30 */ + uint32_t whetherReactionGrows; + float reactionGrowthPerGameTurn; + uint32_t stealthRandomChance; + float minDistanceToRunAwayFromObject; /* 0x40 */ + float maxDistanceToRunAwayFromObject; + float defaultReactionImpressiveMultiplier; + float additionToTownBoredomMultipliers; + enum TOWN_DESIRE_INFO correspondingTownDesire; /* 0x50 */ + enum TOWN_DESIRE_INFO correspondingTownDesireForAlignment; + float alignmentModifier; + enum GUIDANCE_ALIGNMENT alignmentForSFX; + uint32_t missing4bytesfromwhere; /* 0x60 */ +}; +static_assert(sizeof(struct ReactionInfo) == 0x64, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__12ReactionInfo = (struct GBaseInfoVftable*)0x009417ec; + +#endif /* BW1_DECOMP_REACTION_INFO_INCLUDED_H */ diff --git a/black/RegisterBox.h b/black/RegisterBox.h new file mode 100644 index 0000000..f444f29 --- /dev/null +++ b/black/RegisterBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_REGISTER_BOX_INCLUDED_H +#define BW1_DECOMP_REGISTER_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct RegisterBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x18]; +}; +static_assert(sizeof(struct RegisterBox) == 0x28, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__11RegisterBox = (struct DialogBoxBaseVftable*)0x008debcc; + +#endif /* BW1_DECOMP_REGISTER_BOX_INCLUDED_H */ diff --git a/black/Reward.h b/black/Reward.h new file mode 100644 index 0000000..b73f42a --- /dev/null +++ b/black/Reward.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_REWARD_INCLUDED_H +#define BW1_DECOMP_REWARD_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "MobileObject.h" /* For struct MobileObject */ + +struct Reward +{ + struct MobileObject super; /* 0x0 */ + uint8_t field_0x68[0x40]; +}; +static_assert(sizeof(struct Reward) == 0xa8, "Data type is of wrong size"); + +static struct MobileObjectVftable* __vt__6Reward = (struct MobileObjectVftable*)0x00941894; + +DECLARE_LH_LINKED_LIST(Reward); + +#endif /* BW1_DECOMP_REWARD_INCLUDED_H */ diff --git a/black/Rock.h b/black/Rock.h new file mode 100644 index 0000000..7fc96c5 --- /dev/null +++ b/black/Rock.h @@ -0,0 +1,40 @@ +#ifndef BW1_DECOMP_ROCK_INCLUDED_H +#define BW1_DECOMP_ROCK_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uintptr_t */ + +#include "MobileStatic.h" /* For struct MobileStatic */ +#include "MultiMapFixed.h" /* For struct MultiMapFixedVftable */ + +// Forward Declares + +struct GMobileStaticInfo; +struct GPlayer; +struct MapCoords; +struct Object; + +struct RockVftable +{ + struct MultiMapFixedVftable super; /* 0x0 */ + uintptr_t field_0x90c; +}; +static_assert(sizeof(struct RockVftable) == 0x910, "Data type is of wrong size"); + +struct Rock +{ + struct MobileStatic super; /* 0x0 */ + uint32_t field_0x88; + float field_0x8c; + struct GPlayer* player; /* 0x90 */ +}; +static_assert(sizeof(struct Rock) == 0x94, "Data type is of wrong size"); + +static struct RockVftable* __vt__4Rock = (struct RockVftable*)0x008e2100; + +// Constructors + +// win1.41 006e6f70 mac 1013dda0 Rock::Rock(MapCoords const &, GMobileStaticInfo const *, Object *, GPlayer *, float, float) +struct Rock* __fastcall __ct__4RockFRC9MapCoordsPC17GMobileStaticInfoP6ObjectP7GPlayerff(struct Rock* this, const void* edx, struct MapCoords* coords, struct GMobileStaticInfo* info, struct Object* param_3, struct GPlayer* param_4, float param_5, float param_6); + +#endif /* BW1_DECOMP_ROCK_INCLUDED_H */ diff --git a/black/SLobbyBox.h b/black/SLobbyBox.h new file mode 100644 index 0000000..e18e745 --- /dev/null +++ b/black/SLobbyBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_S_LOBBY_BOX_INCLUDED_H +#define BW1_DECOMP_S_LOBBY_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct GSLobbyBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x2a4]; +}; +static_assert(sizeof(struct GSLobbyBox) == 0x2b4, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__10GSLobbyBox = (struct DialogBoxBaseVftable*)0x008deb7c; + +#endif /* BW1_DECOMP_S_LOBBY_BOX_INCLUDED_H */ diff --git a/black/SaveGameRoom.h b/black/SaveGameRoom.h new file mode 100644 index 0000000..4739fa6 --- /dev/null +++ b/black/SaveGameRoom.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_SAVE_GAME_ROOM_INCLUDED_H +#define BW1_DECOMP_SAVE_GAME_ROOM_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include "PictureRoom.h" /* For struct PictureRoomBase */ + +struct SaveGameRoom +{ + struct PictureRoomBase super; /* 0x0 */ +}; +static_assert(sizeof(struct SaveGameRoom) == 0x160, "Data type is of wrong size"); + +static struct TempleRoomVftable* __vt__12SaveGameRoom = (struct TempleRoomVftable*)0x0099edfc; + +// Static methods + +// win1.41 007923a0 mac 104ce930 SaveGameRoom::CreateSaveGameFiles(char*) +bool __stdcall CreateSaveGameFiles__12SaveGameRoomFPc(void); + +// Constructors + +// win1.41 0078f960 mac 104d5aa0 SaveGameRoom::SaveGameRoom(void) +struct SaveGameRoom* __fastcall __ct__12SaveGameRoomFv(struct SaveGameRoom* this); + +#endif /* BW1_DECOMP_SAVE_GAME_ROOM_INCLUDED_H */ diff --git a/black/SaveLoadPtr.h b/black/SaveLoadPtr.h new file mode 100644 index 0000000..d5e819b --- /dev/null +++ b/black/SaveLoadPtr.h @@ -0,0 +1,26 @@ +#ifndef BW1_DECOMP_SAVE_LOAD_PTR_INCLUDED_H +#define BW1_DECOMP_SAVE_LOAD_PTR_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uintptr_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +struct GSaveLoadPtr +{ + uintptr_t ptr; /* 0x0 */ +}; +static_assert(sizeof(struct GSaveLoadPtr) == 0x4, "Data type is of wrong size"); + +// Constructors + +// win1.41 00562320 mac inlined GSaveLoadPtr::GSaveLoadPtr(void*) +struct GSaveLoadPtr* __fastcall __ct__12GSaveLoadPtrFPv(struct GSaveLoadPtr* this, const void* edx, void* ptr); + +DECLARE_LH_LINKED_LIST(GSaveLoadPtr); + +// win1.41 00564420 mac inlined GSaveLoadPtrList::PushBack(GSaveLoadPtr *) +bool __fastcall Push__GSaveLoadPtrListFP12GSaveLoadPtr(struct LHLinkedList__GSaveLoadPtr* this, const void* edx, struct GSaveLoadPtr* ptr); + +#endif /* BW1_DECOMP_SAVE_LOAD_PTR_INCLUDED_H */ diff --git a/black/Scaffold.h b/black/Scaffold.h new file mode 100644 index 0000000..818e3f7 --- /dev/null +++ b/black/Scaffold.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_SCAFFOLD_INCLUDED_H +#define BW1_DECOMP_SCAFFOLD_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "MobileObject.h" /* For struct MobileObject */ + +struct Scaffold +{ + struct MobileObject super; /* 0x0 */ + uint8_t field_0x68[0x34]; +}; +static_assert(sizeof(struct Scaffold) == 0x9c, "Data type is of wrong size"); + +static struct MobileObjectVftable* __vt__8Scaffold = (struct MobileObjectVftable*)0x008e552c; + +#endif /* BW1_DECOMP_SCAFFOLD_INCLUDED_H */ diff --git a/black/Script.h b/black/Script.h new file mode 100644 index 0000000..fca218e --- /dev/null +++ b/black/Script.h @@ -0,0 +1,45 @@ +#ifndef BW1_DECOMP_SCRIPT_INCLUDED_H +#define BW1_DECOMP_SCRIPT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int8_t, uint8_t */ + +#include /* For enum SCRIPT_INTERFACE_LEVEL */ + +#include "Base.h" /* For struct Base */ + +struct GScript +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0xb4]; +}; +static_assert(sizeof(struct GScript) == 0xbc, "Data type is of wrong size"); + +static struct BaseVftable* __vt__7GScript = (struct BaseVftable*)0x00942174; + +// Static methods + +// win1.41 006eb710 mac 104d7e50 GScript::StartScript(char *) +int __stdcall StartScript__7GScriptFPc(char* name); +// win1.41 0070b220 mac 104fcda0 GScript::SetInterfaceInteraction(SCRIPT_INTERFACE_LEVEL) +void __cdecl SetInterfaceInteraction__7GScriptF22SCRIPT_INTERFACE_LEVEL(enum SCRIPT_INTERFACE_LEVEL level); +// win1.41 0070d360 mac 10500750 GScript::DeleteAllScriptCreatedGameThings(void) +void __cdecl DeleteAllScriptCreatedGameThings__7GScriptFv(void); + +// Non-virtual methods + +// win1.41 006eb2d0 mac 104d8160 GScript::Reset(int) +void __fastcall Reset__7GScriptFi(struct GScript* this, const void* edx, int param_2); +// win1.41 006eb610 mac 104d8070 GScript::LoadBinary(char *) +void __fastcall LoadBinary__7GScriptFPc(struct GScript* this, const void* edx, char* binary); +// win1.41 006eb6b0 mac 1007ef10 GScript::Process(void) +void __fastcall Process__7GScriptFv(struct GScript* this); +// win1.41 006eb9d0 mac 10082240 GScript::ProcessFade(bool) +void __fastcall ProcessFade__7GScriptFb(struct GScript* this, const void* edx, bool param_1); +// win1.41 006eba90 mac 104d7670 GScript::SetupScreenFadeTo(uchar,uchar,uchar,char) +void __fastcall SetupScreenFadeTo__7GScriptFUcUcUcSc(struct GScript* this, const void* edx, uint8_t r, uint8_t g, uint8_t b, int8_t a); +// win1.41 006ebbc0 mac 104d7300 GScript::CleanGameForScriptReboot(void) +void __fastcall CleanGameForScriptReboot__7GScriptFv(struct GScript* this); + +#endif /* BW1_DECOMP_SCRIPT_INCLUDED_H */ diff --git a/black/ScriptCreatureCurse.h b/black/ScriptCreatureCurse.h new file mode 100644 index 0000000..81268e7 --- /dev/null +++ b/black/ScriptCreatureCurse.h @@ -0,0 +1,25 @@ +#ifndef BW1_DECOMP_SCRIPT_CREATURE_CURSE_INCLUDED_H +#define BW1_DECOMP_SCRIPT_CREATURE_CURSE_INCLUDED_H + +#include /* For static_assert */ + +// Forward Declares + +struct Creature; + +struct ScriptCreatureCurse +{ + float height; /* 0x0 */ + float strength; + float alignment; +}; +static_assert(sizeof(struct ScriptCreatureCurse) == 0xc, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 006f6190 mac 105e86b0 ScriptCreatureCurse::Init(Creature *) +void __fastcall Init__19ScriptCreatureCurseFP8Creature(struct ScriptCreatureCurse* this, const void* edx, struct Creature* creature); +// win1.41 006f61e0 mac 105e85d0 ScriptCreatureCurse::ResolveLoad(Creature *) +void __fastcall ResolveLoad__19ScriptCreatureCurseFP8Creature(struct ScriptCreatureCurse* this, const void* edx, struct Creature* creature); + +#endif /* BW1_DECOMP_SCRIPT_CREATURE_CURSE_INCLUDED_H */ diff --git a/black/ScriptDLL.h b/black/ScriptDLL.h new file mode 100644 index 0000000..b00162a --- /dev/null +++ b/black/ScriptDLL.h @@ -0,0 +1,86 @@ +#ifndef BW1_DECOMP_SCRIPT_DLL_INCLUDED_H +#define BW1_DECOMP_SCRIPT_DLL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uintptr_t */ + +#include /* For struct LHDLL */ + +// Forward Declares + +struct LHTransport; + +struct ScriptDLL +{ + struct LHDLL super; /* 0x0 */ + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uintptr_t ParseFile; + uintptr_t StartScript; + uintptr_t FindScript; + void (__cdecl* AutoStart)(struct LHTransport* transport); /* 0x40 */ + uintptr_t StopTask; + uintptr_t StopAllTasks; + uintptr_t StopTasksOfType; + uintptr_t POP; /* 0x50 */ + uintptr_t PUSH; + uintptr_t STRING; + int (__cdecl* LoadBinary)(struct LHTransport* transport, const char* path); + uintptr_t SaveBinary; /* 0x60 */ + uintptr_t SaveState; + uintptr_t RestoreState; + uintptr_t Reboot; + uint32_t NumTasks; /* 0x70 */ + uint32_t LineNumber; + uint32_t TaskNumber; + uint32_t TaskName; + uint32_t TaskFilename; /* 0x80 */ + uint32_t GetTaskFilename; + uint32_t GetTaskName; + uint32_t OpCode; + uint32_t GetCurrentScriptType; /* 0x90 */ + uint32_t GetScriptInstructionCount; + uint32_t Mode; + uint32_t Type; + uint32_t Value; /* 0xa0 */ + uint32_t OpCodeName; + uint32_t StopScripts; + uint32_t GetScriptID; + uint32_t Version; /* 0xb0 */ + uint32_t CodeSize; + uint32_t GetNextTask; + uint32_t GetPreviousTask; + uint32_t GetHighestRunningTask; /* 0xc0 */ + uint32_t GetFirstRunningTaskId; + uint32_t LoopTaskVariables; + uint32_t LoopGlobalVariables; + uint32_t GetScriptType; /* 0xd0 */ + uint32_t GetGlobalVariableValue; + uint32_t field_0xd8; +}; +static_assert(sizeof(struct ScriptDLL) == 0xdc, "Data type is of wrong size"); + +static struct LHDLLVftable* __vt__9ScriptDLL = (struct LHDLLVftable*)0x00942200; + +// Static methods + +// win1.41 006f6320 mac 104e8e70 ScriptDLL::Create(char const *) +struct ScriptDLL* __cdecl Create__9ScriptDLLFPCc(char* library_path); + +// Constructors + +// win1.41 inlined mac inlined ScriptDLL::ScriptDLL(const char*) +struct ScriptDLL* __fastcall __ct__9ScriptDLLFPCc(struct ScriptDLL* this, const void* edx, char* library_path); + +// Non-virtual methods + +// win1.41 006f68c0 mac 104e8480 ScriptDLL::AutoStart(void) +void __fastcall AutoStart__9ScriptDLLFv(struct ScriptDLL* this); +// win1.41 006f6910 mac 104e83b0 ScriptDLL::StopAllTasks(void) +void __fastcall StopAllTasks__9ScriptDLLFv(struct ScriptDLL* this); +// win1.41 006f6920 mac 104e8350 ScriptDLL::LoadBinary(char const *) +int __fastcall LoadBinary__9ScriptDLLFPCc(struct ScriptDLL* this, const void* edx, const char* path); + +#endif /* BW1_DECOMP_SCRIPT_DLL_INCLUDED_H */ diff --git a/black/ScriptHighlight.h b/black/ScriptHighlight.h new file mode 100644 index 0000000..8ebb0d0 --- /dev/null +++ b/black/ScriptHighlight.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_SCRIPT_HIGHLIGHT_INCLUDED_H +#define BW1_DECOMP_SCRIPT_HIGHLIGHT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Fixed.h" /* For struct SingleMapFixed */ + +struct ScriptHighlight +{ + struct SingleMapFixed super; /* 0x0 */ + uint8_t field_0x5c[0x30]; +}; +static_assert(sizeof(struct ScriptHighlight) == 0x8c, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__15ScriptHighlight = (struct ObjectVftable*)0x0094228c; + +// Static methods + +// win1.41 0070a460 mac 10055f10 ScriptHighlight::ProcessHighlights(void) +void __cdecl ProcessHighlights__15ScriptHighlightFv(void); + +DECLARE_LH_LIST_HEAD(ScriptHighlight); + +#endif /* BW1_DECOMP_SCRIPT_HIGHLIGHT_INCLUDED_H */ diff --git a/black/ScriptMarker.h b/black/ScriptMarker.h new file mode 100644 index 0000000..6347a0e --- /dev/null +++ b/black/ScriptMarker.h @@ -0,0 +1,16 @@ +#ifndef BW1_DECOMP_SCRIPT_MARKER_INCLUDED_H +#define BW1_DECOMP_SCRIPT_MARKER_INCLUDED_H + +#include /* For static_assert */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +struct ScriptMarker +{ + struct GameThingWithPos super; /* 0x0 */ +}; +static_assert(sizeof(struct ScriptMarker) == 0x28, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__12ScriptMarker = (struct GameThingWithPosVftable*)0x008e10b0; + +#endif /* BW1_DECOMP_SCRIPT_MARKER_INCLUDED_H */ diff --git a/black/ScriptedCamera.h b/black/ScriptedCamera.h new file mode 100644 index 0000000..d1f56c7 --- /dev/null +++ b/black/ScriptedCamera.h @@ -0,0 +1,19 @@ +#ifndef BW1_DECOMP_SCRIPTED_CAMERA_INCLUDED_H +#define BW1_DECOMP_SCRIPTED_CAMERA_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +// Forward Declares + +struct Q27LH3DWay7Running; + +struct ScriptedCamera +{ + uint8_t* data; /* 0x0 */ + struct Q27LH3DWay7Running* field_0x4; + struct Q27LH3DWay7Running* field_0x8; +}; +static_assert(sizeof(struct ScriptedCamera) == 0xc, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_SCRIPTED_CAMERA_INCLUDED_H */ diff --git a/black/Settings.h b/black/Settings.h new file mode 100644 index 0000000..ca7512a --- /dev/null +++ b/black/Settings.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_SETTINGS_INCLUDED_H +#define BW1_DECOMP_SETTINGS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +struct Settings +{ + char quest_path[0x1]; /* 0x0 */ + uint8_t field_0x1[0x103]; +}; +static_assert(sizeof(struct Settings) == 0x104, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00714af0 mac 105e8db0 Settings::ParseConfigFile(char*) +void __fastcall ParseConfigFile__8SettingsFPc(struct Settings* this, const void* edx, char* path); +// win1.41 00714c20 mac 105e8d50 Settings::InitialiseToDefaults(void) +void __fastcall InitialiseToDefaults__8SettingsFv(struct Settings* this); + +#endif /* BW1_DECOMP_SETTINGS_INCLUDED_H */ diff --git a/black/Setup.h b/black/Setup.h new file mode 100644 index 0000000..96c19a0 --- /dev/null +++ b/black/Setup.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_SETUP_INCLUDED_H +#define BW1_DECOMP_SETUP_INCLUDED_H + +#include /* For uint32_t */ + +// Forward Declares + +struct LHScriptPramX_c_; +struct MapCoords; + +// win1.41 00715180 mac 105091d0 GSetup::FeatureMapCommandProcess(long, LHScriptPramX *) +uint32_t __cdecl FeatureMapCommandProcess__6GSetupFlP16LHScriptPramX_c_(uint32_t op, struct LHScriptPramX_c_* script_param); +// win1.41 007180b0 mac 10508ff0 GSetup::LoadMapFeatures(char *) +void __cdecl LoadMapFeatures__6GSetupFPc(char* map_path); +// win1.41 00718250 mac 10508f20 GSetup::GetScriptPos(char *) +struct MapCoords* __cdecl GetScriptPos__6GSetupFPc(struct MapCoords* coords, const char* str); + +#endif /* BW1_DECOMP_SETUP_INCLUDED_H */ diff --git a/black/SetupBigButton.h b/black/SetupBigButton.h new file mode 100644 index 0000000..7006fcc --- /dev/null +++ b/black/SetupBigButton.h @@ -0,0 +1,40 @@ +#ifndef BW1_DECOMP_SETUP_BIG_BUTTON_INCLUDED_H +#define BW1_DECOMP_SETUP_BIG_BUTTON_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ +#include /* For char16_t */ + +#include "SetupButton.h" /* For struct SetupButton */ +#include "SetupRect.h" /* For struct SetupRect */ +#include "SetupThing.h" /* For enum BBSTYLE */ + +struct SetupBigButton +{ + struct SetupButton super; /* 0x0 */ + uint32_t text_position; /* 0x244 */ + enum BBSTYLE style; + struct SetupRect inner_rect; +}; +static_assert(sizeof(struct SetupBigButton) == 0x25c, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__14SetupBigButton = (struct SetupControlVftable*)0x008ab3e0; + +// Constructors + +// win1.41 0040d260 mac 100fd210 SetupBigButton::SetupBigButton(int, int, int, wchar_t *, int, int, int) +struct SetupBigButton* __fastcall __ct__14SetupBigButtonFiiiPwiii(struct SetupBigButton* this, const void* edx, int id, int x, int y, const char16_t* label, int size, uint32_t text_position, enum BBSTYLE style); + +// Override methods + +// win1.41 0040d310 mac 101670b0 SetupBigButton::HitTest(int, int) +bool __fastcall HitTest__14SetupBigButtonFii(struct SetupBigButton* this, const void* edx, int x, int y); +// win1.41 0040ceb0 mac 103deac0 SetupBigButton::Draw(bool, bool) +void __fastcall Draw__14SetupBigButtonFbb(struct SetupBigButton* this, const void* edx, bool hovered, bool selected); +// win1.41 0040d2f0 mac 101689f0 SetupBigButton::KeyDown(int, int) +void __fastcall KeyDown__14SetupBigButtonFii(struct SetupBigButton* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 0040d360 mac 1010fca0 SetupBigButton::~SetupBigButton(void) +struct SetupBigButton* __fastcall __dt__14SetupBigButtonFb(struct SetupBigButton* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_BIG_BUTTON_INCLUDED_H */ diff --git a/black/SetupBox.h b/black/SetupBox.h new file mode 100644 index 0000000..e73a778 --- /dev/null +++ b/black/SetupBox.h @@ -0,0 +1,75 @@ +#ifndef BW1_DECOMP_SETUP_BOX_INCLUDED_H +#define BW1_DECOMP_SETUP_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ +#include /* For char16_t */ + +#include /* For struct Zoomer */ + +// Forward Declares + +struct SetupBox; +struct SetupControl; + +struct SetupBoxVftable +{ + void (__fastcall* field_0x0)(struct SetupBox* this, const void* edx, int param_1, int param_2); +}; +static_assert(sizeof(struct SetupBoxVftable) == 0x4, "Data type is of wrong size"); + +struct SetupBox +{ + struct SetupBoxVftable* vftable; /* 0x0 */ + struct Zoomer zoomer_0x4; + struct Zoomer zoomer_0x34; + uint32_t field_0x64; + struct SetupControl* widgets_0x68; + struct SetupControl* widget_list; + struct SetupControl* focused_widget; /* 0x70 */ + struct SetupControl* widget_0x74; + uint8_t field_0x78; + uint32_t field_0x7c; + uint32_t field_0x80; + float field_0x84; + uint32_t field_0x88; + uint32_t field_0x8c; + uint32_t field_0x90; + uint32_t field_0x94; + uint32_t field_0x98; + uint32_t field_0x9c; + uint32_t field_0xa0; + uint32_t field_0xa4; + uint32_t field_0xa8; + uint32_t default_text_size; + void (__stdcall* field_0xb0)(int param_0, struct SetupBox* param_1, struct SetupControl* param_2, int x, int y); + uint32_t field_0xb4; + uint32_t field_0xb8; + struct SetupControl* field_0xbc; + int field_0xc0; + float field_0xc4; + uint32_t field_0xc8; +}; +static_assert(sizeof(struct SetupBox) == 0xcc, "Data type is of wrong size"); + +static struct SetupBoxVftable* __vt__8SetupBox = (struct SetupBoxVftable*)0x008d85ec; + +// Static methods + +// win1.41 00407ed0 mac 10075ef0 SetupBox::GetCurrentActiveBox(void) +struct SetupBox* __cdecl GetCurrentActiveBox__8SetupBoxFv(void); + +// Non-virtual methods + +// win1.41 00408160 mac 1043c330 SetupBox::FindControl(int) +struct SetupControl* __fastcall FindControl__8SetupBoxFi(struct SetupBox* this, const void* edx, int id); +// win1.41 00409140 mac 10598ed0 SetupBox::SetFocusControl(SetupControl *) +void __fastcall SetFocusControl__8SetupBoxFP12SetupControl(struct SetupBox* this, const void* edx, struct SetupControl* widget); +// win1.41 00411090 mac 1047e3e0 SetupBox::SetFocusNext(SetupBox *) +void __fastcall SetFocusNext__8SetupBoxFv(struct SetupBox* this); +// win1.41 00411100 mac 10478e70 SetupBox::SetFocusPrev(SetupBox *) +void __fastcall SetFocusPrev__8SetupBoxFv(struct SetupBox* this); +// win1.41 00411190 mac 100c3160 SetupBox::MessageBoxA(wchar_t*, MSGBOXSTYLE, ulong) +void __fastcall MessageBoxA__8SetupBoxFPw11MSGBOXSTYLEUl(struct SetupBox* this, const void* edx, const char16_t* param_2, uint32_t param_3, uint32_t param_4); + +#endif /* BW1_DECOMP_SETUP_BOX_INCLUDED_H */ diff --git a/black/SetupButton.h b/black/SetupButton.h new file mode 100644 index 0000000..74872dd --- /dev/null +++ b/black/SetupButton.h @@ -0,0 +1,38 @@ +#ifndef BW1_DECOMP_SETUP_BUTTON_INCLUDED_H +#define BW1_DECOMP_SETUP_BUTTON_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For char16_t */ + +#include "SetupControl.h" /* For struct SetupControl */ + +struct SetupButton +{ + struct SetupControl super; /* 0x0 */ + bool pressed; /* 0x23c */ + int field_0x240; +}; +static_assert(sizeof(struct SetupButton) == 0x244, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__11SetupButton = (struct SetupControlVftable*)0x008ab2b4; + +// Constructors + +// win1.41 004098b0 mac 103dd710 SetupButton::SetupButton(int, int, int, int, int, wchar_t *, int) +struct SetupButton* __fastcall __ct__10SetupButtonFiiiiiPwi(struct SetupButton* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label, int param_8); + +// Override methods + +// win1.41 004097a0 mac 100c7c90 SetupButton::Draw(bool, bool) +void __fastcall Draw__11SetupButtonFbb(struct SetupButton* this, const void* edx, bool hovered, bool selected); +// win1.41 00409900 mac 101104d0 SetupButton::MouseDown(int, int, bool) +void __fastcall MouseDown__10SetupButtonFiib(struct SetupButton* this, const void* edx, int x, int y, bool param_3); +// win1.41 00409910 mac 10172660 SetupButton::MouseUp(int, int, bool) +void __fastcall MouseUp__10SetupButtonFiib(struct SetupButton* this, const void* edx, int x, int y, bool param_3); +// win1.41 00409920 mac 1034a2d0 SetupButton::KeyDown(int, int) +void __fastcall KeyDown__11SetupButtonFii(struct SetupButton* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 00409940 mac 10594240 SetupButton::~SetupButton(void) +struct SetupButton* __fastcall __dt__11SetupButtonFb(struct SetupButton* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_BUTTON_INCLUDED_H */ diff --git a/black/SetupCheckBox.h b/black/SetupCheckBox.h new file mode 100644 index 0000000..9e2f132 --- /dev/null +++ b/black/SetupCheckBox.h @@ -0,0 +1,43 @@ +#ifndef BW1_DECOMP_SETUP_CHECK_BOX_INCLUDED_H +#define BW1_DECOMP_SETUP_CHECK_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ +#include /* For char16_t */ + +#include "SetupButton.h" /* For struct SetupButton */ +#include "SetupRect.h" /* For struct SetupRect */ +#include "SetupThing.h" /* For enum BBSTYLE */ + +struct SetupCheckBox +{ + struct SetupButton super; /* 0x0 */ + uint32_t text_position; /* 0x244 */ + enum BBSTYLE style; + bool checked; + struct SetupRect inner_rect; /* 0x250 */ +}; +static_assert(sizeof(struct SetupCheckBox) == 0x260, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__13SetupCheckBox = (struct SetupControlVftable*)0x008ab588; + +// Constructors + +// win1.41 00410f10 mac 1058b890 SetupCheckBox::SetupCheckBox(int, int, int, bool, int, wchar_t *, int) +struct SetupCheckBox* __fastcall __ct__13SetupCheckBoxFiiibiPwi(struct SetupCheckBox* this, const void* edx, int id, int x, int y, bool checked, enum BBSTYLE style, const char16_t* label, int size); + +// Override methods + +// win1.41 00410f90 mac 10112370 SetupCheckBox::HitTest(int, int) +bool __fastcall HitTest__13SetupCheckBoxFii(struct SetupCheckBox* this, const void* edx, int x, int y); +// win1.41 00410b80 mac 103c4a20 SetupCheckBox::Draw(bool, bool) +void __fastcall Draw__13SetupCheckBoxFbb(struct SetupCheckBox* this, const void* edx, bool hovered, bool selected); +// win1.41 00411020 mac 103dbde0 SetupCheckBox::Click(int, int) +void __fastcall Click__13SetupCheckBoxFii(struct SetupCheckBox* this, const void* edx, int x, int y); +// win1.41 00411050 mac 10599580 SetupCheckBox::KeyDown(int, int) +void __fastcall KeyDown__13SetupCheckBoxFii(struct SetupCheckBox* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 00411070 mac 105893e0 SetupCheckBox::~SetupCheckBox(void) +struct SetupCheckBox* __fastcall __dt__13SetupCheckBoxFb(struct SetupCheckBox* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_CHECK_BOX_INCLUDED_H */ diff --git a/black/SetupColourPicker.h b/black/SetupColourPicker.h new file mode 100644 index 0000000..c0d18e5 --- /dev/null +++ b/black/SetupColourPicker.h @@ -0,0 +1,50 @@ +#ifndef BW1_DECOMP_SETUP_COLOUR_PICKER_INCLUDED_H +#define BW1_DECOMP_SETUP_COLOUR_PICKER_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include /* For struct LH3DColor */ + +#include "SetupButton.h" /* For struct SetupButton */ + +// Forward Declares + +struct LH3DMaterial; + +struct SetupColourPicker +{ + struct SetupButton super; /* 0x0 */ + struct LH3DColor color_0x244; + struct LH3DMaterial* material; + bool brightness_slider; + float slider_position; /* 0x250 */ + struct LH3DColor color; +}; +static_assert(sizeof(struct SetupColourPicker) == 0x258, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__17SetupColourPicker = (struct SetupControlVftable*)0x008ab550; + +// Constructors + +// win1.41 00410ac0 mac 103c6130 SetupColourPicker::SetupColourPicker(int, int, int, int, int, int, LH3DMaterial *) +struct SetupColourPicker* __fastcall __ct__17SetupColourPickerFiiiiiiP12LH3DMaterial(struct SetupColourPicker* this, const void* edx, int id, int x, int y, int width, int height, bool brightness_slider, struct LH3DMaterial* material); + +// Override methods + +// win1.41 00410880 mac 10103e40 SetupColourPicker::Draw(bool, bool) +void __fastcall Draw__17SetupColourPickerFbb(struct SetupColourPicker* this, const void* edx, bool hovered, bool selected); +// win1.41 00410810 mac 1023f300 SetupColourPicker::Drag(int, int) +void __fastcall Drag__17SetupColourPickerFii(struct SetupColourPicker* this, const void* edx, int x, int y); +// win1.41 004107f0 mac 1030b070 SetupColourPicker::MouseDown(int, int, bool) +void __fastcall MouseDown__17SetupColourPickerFiib(struct SetupColourPicker* this, const void* edx, int x, int y, bool param_3); +// win1.41 00410800 mac 101119a0 SetupColourPicker::MouseUp(int, int, bool) +void __fastcall MouseUp__17SetupColourPickerFiib(struct SetupColourPicker* this, const void* edx, int x, int y, bool param_3); +// win1.41 00410b50 mac 100c8de0 SetupColourPicker::Click(int, int) +void __fastcall Click__17SetupColourPickerFii(struct SetupColourPicker* this, const void* edx, int x, int y); +// win1.41 00410b30 mac 1034f250 SetupColourPicker::KeyDown(int, int) +void __fastcall KeyDown__17SetupColourPickerFii(struct SetupColourPicker* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 00410b60 mac 10571d70 SetupColourPicker::~SetupColourPicker(void) +struct SetupColourPicker* __fastcall __dt__17SetupColourPickerFb(struct SetupColourPicker* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_COLOUR_PICKER_INCLUDED_H */ diff --git a/black/SetupControl.h b/black/SetupControl.h new file mode 100644 index 0000000..11d5be3 --- /dev/null +++ b/black/SetupControl.h @@ -0,0 +1,96 @@ +#ifndef BW1_DECOMP_SETUP_CONTROL_INCLUDED_H +#define BW1_DECOMP_SETUP_CONTROL_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ +#include /* For char16_t */ + +#include "SetupRect.h" /* For struct SetupRect */ + +// Forward Declares + +struct SetupBox; +struct SetupControl; + +struct SetupControlVftable +{ + void (__fastcall* SetToolTipUl)(struct SetupControl* this, const void* edx, uint32_t tooltip_id); /* 0x0 */ + void (__fastcall* SetToolTipPw)(struct SetupControl* this, const void* edx, const char16_t* tooltip); + void (__fastcall* Hide)(struct SetupControl* this, const void* edx, bool hidden); + void (__fastcall* SetFocus)(struct SetupControl* this, const void* edx, bool focus); + bool (__fastcall* HitTest)(struct SetupControl* this, const void* edx, int x, int y); /* 0x10 */ + void (__fastcall* Draw)(struct SetupControl* this, const void* edx, bool hovered, bool selected); + void (__fastcall* Drag)(struct SetupControl* this, const void* edx, int x, int y); + void (__fastcall* MouseDown)(struct SetupControl* this, const void* edx, int x, int y, bool param_3); + void (__fastcall* MouseUp)(struct SetupControl* this, const void* edx, int x, int y, bool param_3); /* 0x20 */ + void (__fastcall* Click)(struct SetupControl* this, const void* edx, int x, int y); + void (__fastcall* KeyDown)(struct SetupControl* this, const void* edx, enum LHKey key, enum LHKeyMod mod); + void (__fastcall* Char)(struct SetupControl* this, const void* edx, int character); + struct SetupControl* (__fastcall* __dt)(struct SetupControl* this, const void* edx, bool param_1); /* 0x30 */ +}; +static_assert(sizeof(struct SetupControlVftable) == 0x34, "Data type is of wrong size"); + +struct SetupControl +{ + const struct SetupControlVftable* vftable; /* 0x0 */ + uint32_t field_0x4; + struct SetupRect rect; + int id; /* 0x18 */ + int field_0x1c; + int text_size; /* 0x20 */ + char16_t label[0x100]; + const char16_t* tooltip; /* 0x224 */ + bool focus; + bool hidden; + bool field_0x22a; + bool field_0x22b; + uint32_t field_0x22c; + struct SetupControl* next; /* 0x230 */ + struct SetupBox* setup_box; + void* continue_button_callback; +}; +static_assert(sizeof(struct SetupControl) == 0x23c, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__12SetupControl = (struct SetupControlVftable*)0x008ab27c; + +// Constructors + +// win1.41 00409250 mac 101668d0 SetupControl::SetupControl(int, int, int, int, int, wchar_t *) +struct SetupControl* __fastcall __ct__12SetupControlFiiiiiPw(struct SetupControl* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label); + +// Non-virtual methods + +// win1.41 inlined mac inlined SetupControl::GetTextSize(void) +int __fastcall GetTextSize__12SetupControlFv(const struct SetupControl* this); +// win1.41 00409210 mac 1057a320 SetupControl::SetToolTip(unsigned long) +void __fastcall SetToolTip__12SetupControlFUl(struct SetupControl* this, const void* edx, uint32_t tooltip_id); +// win1.41 004092f0 mac 100c4fd0 SetupControl::SetToolTip(wchar_t *) +void __fastcall SetToolTip__12SetupControlFPw(struct SetupControl* this, const void* edx, const char16_t* tooltip); +// win1.41 004093c0 mac inlined SetupControl::~SetupControl(void) +void __fastcall __dt__12SetupControlFv(struct SetupControl* this); + +// Override methods + +// win1.41 00409300 mac 105a3830 SetupControl::Hide(bool) +void __fastcall Hide__12SetupControlFb(struct SetupControl* this, const void* edx, bool hidden); +// win1.41 00409180 mac 1032c7e0 SetupControl::SetFocus(bool) +void __fastcall SetFocus__12SetupControlFb(struct SetupControl* this, const void* edx, bool focus); +// win1.41 00409310 mac 10310540 SetupControl::HitTest(int, int) +bool __fastcall HitTest__12SetupControlFii(struct SetupControl* this, const void* edx, int x, int y); +// win1.41 00409340 mac inlined SetupControl::Drag(int, int) +void __fastcall Drag__12SetupControlFii(struct SetupControl* this, const void* edx, int x, int y); +// win1.41 00409350 mac 103dbde0 SetupControl::MouseDown(int, int, bool) +void __fastcall MouseDown__12SetupControlFiib(struct SetupControl* this, const void* edx, int x, int y, bool param_3); +// win1.41 00409360 mac 104faf30 SetupControl::MouseUp(int, int, bool) +void __fastcall MouseUp__12SetupControlFiib(struct SetupControl* this, const void* edx, int x, int y, bool param_3); +// win1.41 00409370 mac 103e3120 SetupControl::Click(int, int) +void __fastcall Click__12SetupControlFii(struct SetupControl* this, const void* edx, int x, int y); +// win1.41 00409380 mac 100d4e40 SetupControl::KeyDown(int, int) +void __fastcall KeyDown__12SetupControlFii(struct SetupControl* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 00409390 mac 105049b0 SetupControl::Char(int) +void __fastcall Char__12SetupControlFi(struct SetupControl* this, const void* edx, int character); +// win1.41 004093a0 mac 100c48e0 SetupControl::~SetupControl(bool) +struct SetupControl* __fastcall __dt__12SetupControlFb(struct SetupControl* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_CONTROL_INCLUDED_H */ diff --git a/black/SetupEdit.h b/black/SetupEdit.h new file mode 100644 index 0000000..7820440 --- /dev/null +++ b/black/SetupEdit.h @@ -0,0 +1,72 @@ +#ifndef BW1_DECOMP_SETUP_EDIT_INCLUDED_H +#define BW1_DECOMP_SETUP_EDIT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ +#include /* For char16_t */ + +#include /* For bool32_t */ + +#include "SetupControl.h" /* For struct SetupControl */ + +// Forward Declares + +struct SetupList; + +struct SetupEdit +{ + struct SetupControl super; /* 0x0 */ + struct SetupList* field_0x23c; + int field_0x240; + int field_0x244; + int field_0x248; + int cursor_position; + int select_start; /* 0x250 */ + int select_end; + int field_0x258; + bool32_t editable; + bool masked_text; /* 0x260 */ + char16_t text[0x100]; + uint32_t field_0x464; +}; +static_assert(sizeof(struct SetupEdit) == 0x468, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__9SetupEdit = (struct SetupControlVftable*)0x008ab3a0; + +// Constructors + +// win1.41 0040c220 mac 1014cca0 SetupEdit::SetupEdit(int, int, int, int, int, wchar_t *, int) +struct SetupEdit* __fastcall __ct__9SetupEditFiiiiiPwi(struct SetupEdit* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label, bool editable); + +// Non-virtual methods + +// win1.41 inlined mac inlined SetupEdit::ClampCursor(void) +void __fastcall ClampCursor__9SetupEditFv(struct SetupEdit* this); +// win1.41 inlined mac inlined SetupEdit::FixCursor(void) +void __fastcall FixCursor__9SetupEditFv(struct SetupEdit* this); +// win1.41 inlined mac inlined SetupEdit::FixSelect(void) +void __fastcall FixSelect__9SetupEditFv(struct SetupEdit* this); +// win1.41 0040c090 mac 103dc2c0 SetupEdit::CalcCharpos(int) +int __fastcall CalcCharpos__9SetupEditFi(struct SetupEdit* this, const void* edx, int pos); + +// Override methods + +// win1.41 0040c500 mac 100c1900 SetupEdit::SetFocus(bool) +void __fastcall SetFocus__9SetupEditFb(struct SetupEdit* this, const void* edx, bool focus); +// win1.41 0040c580 mac 1055c840 SetupEdit::Draw(bool, bool) +void __fastcall Draw__9SetupEditFbb(struct SetupEdit* this, const void* edx, bool hovered, bool selected); +// win1.41 0040c150 mac 103dc010 SetupEdit::Drag(int, int) +void __fastcall Drag__9SetupEditFii(struct SetupEdit* this, const void* edx, int x, int y); +// win1.41 0040c170 mac 10430180 SetupEdit::MouseDown(int, int, bool) +void __fastcall MouseDown__9SetupEditFiib(struct SetupEdit* this, const void* edx, int x, int y, bool param_3); +// win1.41 0040c1a0 mac 101178b0 SetupEdit::MouseUp(int, int, bool) +void __fastcall MouseUp__9SetupEditFiib(struct SetupEdit* this, const void* edx, int x, int y, bool param_3); +// win1.41 0040baf0 mac 103813a0 SetupEdit::KeyDown(int) +void __fastcall KeyDown__9SetupEditFii(struct SetupEdit* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 0040b5f0 mac 103e3630 SetupEdit::Char(int) +void __fastcall Char__9SetupEditFi(struct SetupEdit* this, const void* edx, int character); +// win1.41 0040c560 mac 1035a3a0 SetupEdit::~SetupEdit(void) +struct SetupEdit* __fastcall __dt__9SetupEditFb(struct SetupEdit* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_EDIT_INCLUDED_H */ diff --git a/black/SetupHLineGraph.h b/black/SetupHLineGraph.h new file mode 100644 index 0000000..c31730c --- /dev/null +++ b/black/SetupHLineGraph.h @@ -0,0 +1,89 @@ +#ifndef BW1_DECOMP_SETUP_H_LINE_GRAPH_INCLUDED_H +#define BW1_DECOMP_SETUP_H_LINE_GRAPH_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For char16_t */ + +#include /* For struct LH3DColor */ +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "SetupButton.h" /* For struct SetupButton */ +#include "SetupControl.h" /* For struct SetupControlVftable */ + +// Forward Declares + +struct SetupHLineGraph; + +struct HLineData +{ + struct LH3DColor color; /* 0x0 */ + int point_count; + float* points; +}; +static_assert(sizeof(struct HLineData) == 0xc, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac inlined HLineData::HLineData(void) +struct HLineData* __fastcall __ct__9HLineDataFv(struct HLineData* this); + +// Non-virtual methods + +// win1.41 inlined mac inlined HLineData::operator=(const HLineData&) +struct HLineData* __fastcall __as__9HLineDataFRC9HLineData(struct HLineData* this, const void* edx, const struct HLineData* other); +// win1.41 0040da30 mac 10501060 HLineData::SetNum() +void __fastcall SetNum__9HLineDataFi(struct HLineData* this, const void* edx, int num); + +DECLARE_LH_LINKED_LIST(HLineData); + +struct SetupHLineGraphVftable +{ + struct SetupControlVftable super; /* 0x0 */ + void (__fastcall* Reset)(struct SetupHLineGraph* this); /* 0x34 */ + void (__fastcall* SetScale)(struct SetupHLineGraph* this, const void* edx, float max_point, float min_point, bool centered_at_zero); + void (__fastcall* AddLine)(struct SetupHLineGraph* this, const void* edx, const struct HLineData* line); + void (__fastcall* SetLine)(struct SetupHLineGraph* this, const void* edx, int index, const struct HLineData* line); /* 0x40 */ + void (__fastcall* GetLine)(const struct SetupHLineGraph* this, const void* edx, int index, struct HLineData* result); +}; +static_assert(sizeof(struct SetupHLineGraphVftable) == 0x48, "Data type is of wrong size"); + +struct SetupHLineGraph +{ + struct SetupButton super; /* 0x0 */ + struct LHLinkedList__HLineData line_data_list; /* 0x244 */ + float max_point; + float min_point; /* 0x250 */ + bool percent_mode; +}; +static_assert(sizeof(struct SetupHLineGraph) == 0x258, "Data type is of wrong size"); + +static struct SetupHLineGraphVftable* __vt__15SetupHLineGraph = (struct SetupHLineGraphVftable*)0x008ab424; + +// Constructors + +// win1.41 0040e510 mac 103dcbb0 SetupHLineGraph::SetupHLineGraph(int, int, int, int, int, wchar_t *, bool) +struct SetupHLineGraph* __fastcall __ct__15SetupHLineGraphFiiiiiPwb(struct SetupHLineGraph* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label, bool percent_mode); + +// Override methods + +// win1.41 0040dab0 mac 101180e0 SetupHLineGraph::Draw(bool, bool) +void __fastcall Draw__15SetupHLineGraphFbb(struct SetupHLineGraph* this, const void* edx, bool hovered, bool selected); +// win1.41 0040e5a0 mac 101585b0 SetupHLineGraph::MouseUp(int, int, bool) +void __fastcall MouseUp__15SetupHLineGraphFiib(struct SetupHLineGraph* this, const void* edx, int x, int y, bool param_3); +// win1.41 0040e580 mac 10518860 SetupHLineGraph::KeyDown(int, int) +void __fastcall KeyDown__15SetupHLineGraphFii(struct SetupHLineGraph* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 0040e5c0 mac 0040e5c0 SetupHLineGraph::~SetupHLineGraph(void) +struct SetupHLineGraph* __fastcall __dt__15SetupHLineGraphFb(struct SetupHLineGraph* this, const void* edx, bool param_1); +// win1.41 0040e5e0 mac 102a7a10 SetupHLineGraph::Reset(void) +void __fastcall Reset__15SetupHLineGraphFv(struct SetupHLineGraph* this); +// win1.41 0040e650 mac 10211b80 SetupHLineGraph::SetScale(float, float, bool) +void __fastcall SetScale__15SetupHLineGraphFffb(struct SetupHLineGraph* this, const void* edx, float max_point, float min_point, bool centered_at_zero); +// win1.41 0040e730 mac 1010ccb0 SetupHLineGraph::AddLine(HLineData &) +void __fastcall AddLine__15SetupHLineGraphFR9HLineData(struct SetupHLineGraph* this, const void* edx, const struct HLineData* line); +// win1.41 0040e7f0 mac 100c9eb0 SetupHLineGraph::SetLine(int, const HLineData &) +void __fastcall SetLine__15SetupHLineGraphFiR9HLineData(struct SetupHLineGraph* this, const void* edx, int index, const struct HLineData* line); +// win1.41 0040e850 mac 10372050 SetupHLineGraph::GetLine(int, HLineData &) +void __fastcall GetLine__15SetupHLineGraphFiR9HLineData(const struct SetupHLineGraph* this, const void* edx, int index, struct HLineData* result); + +#endif /* BW1_DECOMP_SETUP_H_LINE_GRAPH_INCLUDED_H */ diff --git a/black/SetupHSBarGraph.h b/black/SetupHSBarGraph.h new file mode 100644 index 0000000..1db3f5d --- /dev/null +++ b/black/SetupHSBarGraph.h @@ -0,0 +1,32 @@ +#ifndef BW1_DECOMP_SETUP_HS_BAR_GRAPH_INCLUDED_H +#define BW1_DECOMP_SETUP_HS_BAR_GRAPH_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For char16_t */ + +#include "SetupVBarGraph.h" /* For struct SetupVBarGraph */ + +struct SetupHSBarGraph +{ + struct SetupVBarGraph super; /* 0x0 */ +}; +static_assert(sizeof(struct SetupHSBarGraph) == 0x284, "Data type is of wrong size"); + +static struct SetupVBarGraphVftable* __vt__15SetupHSBarGraph = (struct SetupVBarGraphVftable*)0x008ffee4; + +// Constructors + +// win1.41 inlined mac inlined SetupHSBarGraph::SetupHSBarGraph(int, int, int, int, int, wchar_t *) +struct SetupHSBarGraph* __fastcall __ct__15SetupHSBarGraphFiiiiiPw(struct SetupHSBarGraph* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label); + +// Override methods + +// win1.41 0040d3c0 mac 100df500 SetupHSBarGraph::Draw(bool, bool) +void __fastcall Draw__15SetupHSBarGraphFbb(struct SetupHSBarGraph* this, const void* edx, bool hovered, bool selected); +// win1.41 0056d960 mac 100cd050 SetupHSBarGraph::~SetupHSBarGraph(void) +struct SetupHSBarGraph* __fastcall __dt__15SetupHSBarGraphFb(struct SetupHSBarGraph* this, const void* edx, bool param_1); +// win1.41 0040d9a0 mac 10130720 SetupHSBarGraph::SetScale(float) +void __fastcall SetScale__15SetupHSBarGraphFf(struct SetupHSBarGraph* this, const void* edx, float scale); + +#endif /* BW1_DECOMP_SETUP_HS_BAR_GRAPH_INCLUDED_H */ diff --git a/black/SetupList.h b/black/SetupList.h new file mode 100644 index 0000000..713dfab --- /dev/null +++ b/black/SetupList.h @@ -0,0 +1,106 @@ +#ifndef BW1_DECOMP_SETUP_LIST_INCLUDED_H +#define BW1_DECOMP_SETUP_LIST_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ +#include /* For char16_t */ + +#include /* For struct LH3DColor */ +#include /* For struct LHCoord */ + +#include "SetupControl.h" /* For struct SetupControl, struct SetupControlVftable */ +#include "SetupRect.h" /* For struct SetupRect */ + +// Forward Declares + +struct SetupList; + +struct SetupList__ListBoxDraw_t +{ + uint32_t (__stdcall* function)(struct SetupList* widget, int value, int x_min, int y_min, int x_max, int y_max, int param_7, int style); /* 0x0 */ +}; +static_assert(sizeof(struct SetupList__ListBoxDraw_t) == 0x4, "Data type is of wrong size"); + +struct SetupListVftable +{ + struct SetupControlVftable super; /* 0x0 */ + bool (__fastcall* IsSelected)(struct SetupList* this, const void* edx, int index); /* 0x34 */ +}; +static_assert(sizeof(struct SetupListVftable) == 0x38, "Data type is of wrong size"); + +struct SetupList +{ + struct SetupControl super; /* 0x0 */ + bool field_0x23c; + int scrollback_width; /* 0x240 */ + bool field_0x244; + int selected_index; + int field_0x24c; + int num_items; /* 0x250 */ + int field_0x254; + char16_t (*item_labels)[0x100]; + int* item_heights; + uint32_t* field_0x260; + uint32_t* field_0x264; + struct LH3DColor* color; + struct SetupList__ListBoxDraw_t* ListBoxDraw; + int scroll_distance; /* 0x270 */ + bool show_scrollbar; + int field_0x278; + int scroll_position; + int field_0x280; + bool field_0x284; + bool field_0x285; + struct LHCoord drag_start; + bool use_color_background; /* 0x290 */ + bool draw_highlight_box; + uint8_t field_0x292; + uint8_t field_0x293; + struct LH3DColor box_outline_color; + struct LH3DColor selection_color; + uint8_t field_0x29c; + struct SetupRect selection_rect; /* 0x2a0 */ +}; +static_assert(sizeof(struct SetupList) == 0x2b0, "Data type is of wrong size"); + +static struct SetupListVftable* __vt__9SetupList = (struct SetupListVftable*)0x008ab324; + +// Constructors + +// win1.41 0040a450 mac 10494bc0 SetupList::SetupList(int, int, int, int, int) +struct SetupList* __fastcall __ct__9SetupListFiiiii(struct SetupList* this, const void* edx, int id, int x, int y, int width, int height); + +// Non-virtual methods + +// win1.41 00409dd0 mac 10594000 SetupList::AutoScroll(bool) +void __fastcall AutoScroll__9SetupListFb(struct SetupList* this, const void* edx, bool param_1); +// win1.41 0040aaf0 mac 1056d710 SetupList::UpdateHeights(void) +void __fastcall UpdateHeights__9SetupListFv(struct SetupList* this); +// win1.41 0040ad60 mac 10169200 SetupList::DeleteString(int) +void __fastcall DeleteString__9SetupListFi(struct SetupList* this, const void* edx, int index); +// win1.41 0040ae70 mac 10112d20 SetupList::InsertString(int, wchar_t *) +void __fastcall InsertString__9SetupListFiPw(struct SetupList* this, const void* edx, int index, const char16_t* text); +// win1.41 0040b050 mac 104ea7a0 SetupList::SetNum(int) +void __fastcall SetNum__9SetupListFi(struct SetupList* this, const void* edx, int num); + +// Override methods + +// win1.41 0040a5c0 mac 10388e60 SetupList::Draw(bool, bool) +void __fastcall Draw__9SetupListFbb(struct SetupList* this, const void* edx, bool hovered, bool selected); +// win1.41 0040a110 mac 101c7fc0 SetupList::Drag(int, int) +void __fastcall Drag__9SetupListFii(struct SetupList* this, const void* edx, int x, int y); +// win1.41 0040a370 mac 10478900 SetupList::MouseDown(int, int, bool) +void __fastcall MouseDown__9SetupListFiib(struct SetupList* this, const void* edx, int x, int y, bool param_3); +// win1.41 0040a3f0 mac 100b4690 SetupList::MouseUp(int, int, bool) +void __fastcall MouseUp__9SetupListFiib(struct SetupList* this, const void* edx, int x, int y, bool param_3); +// win1.41 0040a360 mac 100b7170 SetupList::Click(int, int) +void __fastcall Click__9SetupListFii(struct SetupList* this, const void* edx, int x, int y); +// win1.41 00409eb0 mac 103d24f0 SetupList::KeyDown(int, int) +void __fastcall KeyDown__9SetupListFii(struct SetupList* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 0040a540 mac 1056c3d0 SetupList::~SetupList(void) +struct SetupList* __fastcall __dt__9SetupListFb(struct SetupList* this, const void* edx, bool param_1); +// win1.41 0040a520 mac 104e2bb0 SetupList::IsSelected(int) +bool __fastcall IsSelected__9SetupListFi(struct SetupList* this, const void* edx, int index); + +#endif /* BW1_DECOMP_SETUP_LIST_INCLUDED_H */ diff --git a/black/SetupMP3Button.h b/black/SetupMP3Button.h new file mode 100644 index 0000000..2bfaf88 --- /dev/null +++ b/black/SetupMP3Button.h @@ -0,0 +1,36 @@ +#ifndef BW1_DECOMP_SETUP_MP3_BUTTON_INCLUDED_H +#define BW1_DECOMP_SETUP_MP3_BUTTON_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ +#include /* For char16_t */ + +#include /* For struct LH3DColor */ + +#include "SetupButton.h" /* For struct SetupButton */ + +struct SetupMP3Button +{ + struct SetupButton super; /* 0x0 */ + uint32_t field_0x244; + uint32_t field_0x248; + struct LH3DColor color; +}; +static_assert(sizeof(struct SetupMP3Button) == 0x250, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__14SetupMP3Button = (struct SetupControlVftable*)0x00900060; + +// Constructors + +// win1.41 inlined mac inlined SetupMP3Button::SetupMP3Button(int, int, int, int, int, wchar_t *, int, unsigned int) +struct SetupMP3Button* __fastcall __ct__14SetupMP3ButtonFiiiiiPwiUi(struct SetupMP3Button* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label, int param_8, uint32_t param_9); + +// Override methods + +// win1.41 0040cda0 mac 10426080 SetupMP3Button::Draw(bool, bool) +void __fastcall Draw__14SetupMP3ButtonFbb(struct SetupMP3Button* this, const void* edx, bool hovered, bool selected); +// win1.41 00571f30 mac 103547d0 SetupMP3Button::~SetupMP3Button(void) +struct SetupMP3Button* __fastcall __dt__14SetupMP3ButtonFb(struct SetupMP3Button* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_MP3_BUTTON_INCLUDED_H */ diff --git a/black/SetupMultiList.h b/black/SetupMultiList.h new file mode 100644 index 0000000..4b782c9 --- /dev/null +++ b/black/SetupMultiList.h @@ -0,0 +1,34 @@ +#ifndef BW1_DECOMP_SETUP_MULTI_LIST_INCLUDED_H +#define BW1_DECOMP_SETUP_MULTI_LIST_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include "SetupList.h" /* For struct SetupList */ + +struct SetupMultiList +{ + struct SetupList super; /* 0x0 */ + bool* list; /* 0x2b0 */ + int field_0x2b4; + int size; +}; +static_assert(sizeof(struct SetupMultiList) == 0x2bc, "Data type is of wrong size"); + +static struct SetupListVftable* __vt__14SetupMultiList = (struct SetupListVftable*)0x008ab364; + +// Constructors + +// win1.41 0040b420 mac 1014cca0 SetupMultiList::SetupMultiList(int, int, int, int, int, int) +struct SetupMultiList* __fastcall __ct__14SetupMultiListFiiiiii(struct SetupMultiList* this, const void* edx, int id, int x, int y, int width, int height, int size); + +// Override methods + +// win1.41 0040b560 mac 103f18b0 SetupMultiList::Click(int, int) +void __fastcall Click__14SetupMultiListFii(struct SetupMultiList* this, const void* edx, int x, int y); +// win1.41 0040b4a0 mac 103f18b0 SetupMultiList::~SetupMultiList(void) +struct SetupMultiList* __fastcall __dt__14SetupMultiListFb(struct SetupMultiList* this, const void* edx, bool param_1); +// win1.41 0040b530 mac 1047e020 SetupMultiList::IsSelected(int) +bool __fastcall IsSelected__14SetupMultiListFi(struct SetupMultiList* this, const void* edx, int index); + +#endif /* BW1_DECOMP_SETUP_MULTI_LIST_INCLUDED_H */ diff --git a/black/SetupPicture.h b/black/SetupPicture.h new file mode 100644 index 0000000..abddbbb --- /dev/null +++ b/black/SetupPicture.h @@ -0,0 +1,58 @@ +#ifndef BW1_DECOMP_SETUP_PICTURE_INCLUDED_H +#define BW1_DECOMP_SETUP_PICTURE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include /* For struct LH3DColor */ +#include /* For struct Zoomer */ + +#include "SetupButton.h" /* For struct SetupButton */ + +// Forward Declares + +struct LH3DMaterial; + +struct SetupPicture +{ + struct SetupButton super; /* 0x0 */ + int hovered_picture_index; /* 0x244 */ + struct Zoomer zoomer; + struct LH3DMaterial* material; /* 0x278 */ + struct LH3DColor tint; + bool draggable; /* 0x280 */ + bool dragging; + int picture_index; + int num_rows; + int num_pictures; + bool clickable; /* 0x290 */ +}; +static_assert(sizeof(struct SetupPicture) == 0x294, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__12SetupPicture = (struct SetupControlVftable*)0x008ab518; + +// Constructors + +// win1.41 004105d0 mac 101a6a00 SetupPicture::SetupPicture(int, int, int, LH3DMaterial *, int, int, bool, int, bool) +struct SetupPicture* __fastcall __ct__12SetupPictureFiiiP12LH3DMaterialiibib(struct SetupPicture* this, const void* edx, int id, int x, int y, struct LH3DMaterial* material, int picture_index, int num_rows, bool clickable, int size, bool draggable); + +// Override methods + +// win1.41 00410740 mac 102410c0 SetupPicture::SetFocus(bool) +void __fastcall SetFocus__12SetupPictureFb(struct SetupPicture* this, const void* edx, bool focus); +// win1.41 0040fa20 mac 104081c0 SetupPicture::Draw(bool, bool) +void __fastcall Draw__12SetupPictureFbb(struct SetupPicture* this, const void* edx, bool hovered, bool selected); +// win1.41 0040fa10 mac 100e47c0 SetupPicture::Drag(int, int) +void __fastcall Drag__12SetupPictureFii(struct SetupPicture* this, const void* edx, int x, int y); +// win1.41 0040f6b0 mac inlined SetupPicture::MouseDown(int, int, bool) +void __fastcall MouseDown__12SetupPictureFiib(struct SetupPicture* this, const void* edx, int x, int y, bool param_3); +// win1.41 0040f840 mac 1036e5b0 SetupPicture::MouseUp(int, int, bool) +void __fastcall MouseUp__12SetupPictureFiib(struct SetupPicture* this, const void* edx, int x, int y, bool param_3); +// win1.41 00410710 mac 10351210 SetupPicture::Click(int, int) +void __fastcall Click__12SetupPictureFii(struct SetupPicture* this, const void* edx, int x, int y); +// win1.41 004106f0 mac 100fe9d0 SetupPicture::KeyDown(int, int) +void __fastcall KeyDown__12SetupPictureFii(struct SetupPicture* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 00410720 mac 1034f1b0 SetupPicture::~SetupPicture(void) +struct SetupPicture* __fastcall __dt__12SetupPictureFb(struct SetupPicture* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_PICTURE_INCLUDED_H */ diff --git a/black/SetupRect.h b/black/SetupRect.h new file mode 100644 index 0000000..96b883b --- /dev/null +++ b/black/SetupRect.h @@ -0,0 +1,15 @@ +#ifndef BW1_DECOMP_SETUP_RECT_INCLUDED_H +#define BW1_DECOMP_SETUP_RECT_INCLUDED_H + +#include /* For static_assert */ + +#include /* For struct LHCoord */ + +struct SetupRect +{ + struct LHCoord p0; + struct LHCoord p1; +}; +static_assert(sizeof(struct SetupRect) == 0x10, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_SETUP_RECT_INCLUDED_H */ diff --git a/black/SetupSlider.h b/black/SetupSlider.h new file mode 100644 index 0000000..9d6245d --- /dev/null +++ b/black/SetupSlider.h @@ -0,0 +1,44 @@ +#ifndef BW1_DECOMP_SETUP_SLIDER_INCLUDED_H +#define BW1_DECOMP_SETUP_SLIDER_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For char16_t */ + +#include /* For struct LHCoord */ + +#include "SetupControl.h" /* For struct SetupControl */ + +struct SetupSlider +{ + struct SetupControl super; /* 0x0 */ + float value; /* 0x23c */ + float drag_start_value; /* 0x240 */ + struct LHCoord drag_start; + int height; +}; +static_assert(sizeof(struct SetupSlider) == 0x250, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__11SetupSlider = (struct SetupControlVftable*)0x008ab2ec; + +// Constructors + +// win1.41 00409bf0 mac 1043fbc0 SetupSlider::SetupSlider(int, int, int, int, int, float, wchar_t *) +struct SetupSlider* __fastcall __ct__11SetupSliderFiiiiifPw(struct SetupSlider* this, const void* edx, int id, int x, int y, int width, int height, float value, char16_t* label); + +// Override methods + +// win1.41 00409a40 mac 10440200 SetupSlider::Draw(bool, bool) +void __fastcall Draw__11SetupSliderFbb(struct SetupSlider* this, const void* edx, bool hovered, bool selected); +// win1.41 00409c70 mac 1043ff90 SetupSlider::Drag(int, int) +void __fastcall Drag__11SetupSliderFii(struct SetupSlider* this, const void* edx, int x, int y); +// win1.41 00409d60 mac 1043c240 SetupSlider::MouseDown(int, int, bool) +void __fastcall MouseDown__11SetupSliderFiib(struct SetupSlider* this, const void* edx, int x, int y, bool param_3); +// win1.41 00409d90 mac 100b4690 SetupSlider::MouseUp(int, int, bool) +void __fastcall MouseUp__11SetupSliderFiib(struct SetupSlider* this, const void* edx, int x, int y, bool param_3); +// win1.41 00409960 mac 10103d10 SetupSlider::KeyDown(int, int) +void __fastcall KeyDown__11SetupSliderFii(struct SetupSlider* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 00409c50 mac 101c8450 SetupSlider::~SetupSlider(void) +struct SetupSlider* __fastcall __dt__11SetupSliderFb(struct SetupSlider* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_SLIDER_INCLUDED_H */ diff --git a/black/SetupStaticText.h b/black/SetupStaticText.h new file mode 100644 index 0000000..062b9bc --- /dev/null +++ b/black/SetupStaticText.h @@ -0,0 +1,33 @@ +#ifndef BW1_DECOMP_SETUP_STATIC_TEXT_INCLUDED_H +#define BW1_DECOMP_SETUP_STATIC_TEXT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For char16_t */ + +#include "GatheringText.h" /* For enum TEXTJUSTIFY */ +#include "SetupControl.h" /* For struct SetupControl */ + +struct SetupStaticText +{ + struct SetupControl super; /* 0x0 */ + enum TEXTJUSTIFY text_justify; /* 0x23c */ + int display_text_size; /* 0x240 */ +}; +static_assert(sizeof(struct SetupStaticText) == 0x244, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__15SetupStaticText = (struct SetupControlVftable*)0x008ab5c0; + +// Constructors + +// win1.41 inlined mac 10327f40 SetupStaticText::SetupStaticText(int, int, int, int, int, wchar_t *, TEXTJUSTIFY) +struct SetupStaticText* __fastcall __ct__15SetupStaticTextFiiiiiPw11TEXTJUSTIFY(struct SetupStaticText* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label, enum TEXTJUSTIFY text_justify); + +// Override methods + +// win1.41 00409430 mac 105436e0 SetupStaticText::Draw(bool, bool) +void __fastcall Draw__15SetupStaticTextFbb(struct SetupStaticText* this, const void* edx, bool hovered, bool selected); +// win1.41 00411670 mac 100cb300 SetupStaticText::~SetupStaticText(void) +struct SetupStaticText* __fastcall __dt__15SetupStaticTextFb(struct SetupStaticText* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_STATIC_TEXT_INCLUDED_H */ diff --git a/black/SetupStaticTextNoHit.h b/black/SetupStaticTextNoHit.h new file mode 100644 index 0000000..fed800d --- /dev/null +++ b/black/SetupStaticTextNoHit.h @@ -0,0 +1,31 @@ +#ifndef BW1_DECOMP_SETUP_STATIC_TEXT_NO_HIT_INCLUDED_H +#define BW1_DECOMP_SETUP_STATIC_TEXT_NO_HIT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For char16_t */ + +#include "GatheringText.h" /* For enum TEXTJUSTIFY */ +#include "SetupStaticText.h" /* For struct SetupStaticText */ + +struct SetupStaticTextNoHit +{ + struct SetupStaticText super; /* 0x0 */ +}; +static_assert(sizeof(struct SetupStaticTextNoHit) == 0x244, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__20SetupStaticTextNoHit = (struct SetupControlVftable*)0x00900098; + +// Constructors + +// win1.41 inlined mac 10327f40 SetupStaticTextNoHit::SetupStaticTextNoHit(int, int, int, int, int, wchar_t *, TEXTJUSTIFY) +struct SetupStaticTextNoHit* __fastcall __ct__20SetupStaticTextNoHitFiiiiiPw11TEXTJUSTIFY(struct SetupStaticTextNoHit* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label, enum TEXTJUSTIFY text_justify); + +// Override methods + +// win1.41 00571f00 mac 10328c60 SetupStaticTextNoHit::HitTest(int, int) +bool __fastcall HitTest__20SetupStaticTextNoHitFii(struct SetupStaticTextNoHit* this, const void* edx, int x, int y); +// win1.41 00571f10 mac 10328bc0 SetupStaticTextNoHit::~SetupStaticTextNoHit(void) +struct SetupStaticTextNoHit* __fastcall __dt__20SetupStaticTextNoHitFb(struct SetupStaticTextNoHit* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_STATIC_TEXT_NO_HIT_INCLUDED_H */ diff --git a/black/SetupTabButton.h b/black/SetupTabButton.h new file mode 100644 index 0000000..4b24674 --- /dev/null +++ b/black/SetupTabButton.h @@ -0,0 +1,39 @@ +#ifndef BW1_DECOMP_SETUP_TAB_BUTTON_INCLUDED_H +#define BW1_DECOMP_SETUP_TAB_BUTTON_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For char16_t */ + +#include /* For struct LH3DColor */ +#include /* For bool32_t */ + +#include "SetupButton.h" /* For struct SetupButton */ + +struct SetupTabButton +{ + struct SetupButton super; /* 0x0 */ + bool32_t selected; /* 0x244 */ + bool32_t first_in_row; + bool32_t last_in_row; + struct LH3DColor color; /* 0x250 */ +}; +static_assert(sizeof(struct SetupTabButton) == 0x254, "Data type is of wrong size"); + +static struct SetupControlVftable* __vt__14SetupTabButton = (struct SetupControlVftable*)0x008ab4d0; + +// Constructors + +// win1.41 0040f5e0 mac 101995b0 SetupTabButton::SetupTabButton(int, int, int, int, int, wchar_t *, int, int, int) +struct SetupTabButton* __fastcall __ct__14SetupTabButtonFiiiiiPwiii(struct SetupTabButton* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label, bool selected, bool first_in_row, bool last_in_row); + +// Override methods + +// win1.41 0040f3a0 mac 104081c0 SetupTabButton::Draw(bool, bool) +void __fastcall Draw__14SetupTabButtonFbb(struct SetupTabButton* this, const void* edx, bool hovered, bool selected); +// win1.41 0040f670 mac 1037abd0 SetupTabButton::KeyDown(int, int) +void __fastcall KeyDown__14SetupTabButtonFii(struct SetupTabButton* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 0040f690 mac 10369440 SetupTabButton::~SetupTabButton(void) +struct SetupTabButton* __fastcall __dt__14SetupTabButtonFb(struct SetupTabButton* this, const void* edx, bool param_1); + +#endif /* BW1_DECOMP_SETUP_TAB_BUTTON_INCLUDED_H */ diff --git a/black/SetupThing.h b/black/SetupThing.h new file mode 100644 index 0000000..33841c1 --- /dev/null +++ b/black/SetupThing.h @@ -0,0 +1,109 @@ +#ifndef BW1_DECOMP_SETUP_THING_INCLUDED_H +#define BW1_DECOMP_SETUP_THING_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ +#include /* For char16_t */ + +#include /* For struct LH3DColor */ + +#include "GatheringText.h" /* For enum TEXTJUSTIFY */ + +// Forward Declares + +struct LH3DMaterial; + +enum BBSTYLE +{ + BBSTYLE_CHECK_BOX_OFF = 0x0, + BBSTYLE_CHECK_BOX_ON = 0x1, + BBSTYLE_LEFT_ARROW = 0x2, + BBSTYLE_RIGHT_ARROW = 0x3, + BBSTYLE_ROTATION = 0x4, + BBSTYLE_SPEECH = 0x5, + BBSTYLE_NO_SPEECH = 0x6, + BBSTYLE_SPEECH_ARROW = 0x7, + BBSTYLE_EXCLAIM_ARROW = 0x8, + BBSTYLE_ENVELOPE_ARROW = 0x9, + BBSTYLE_ENVELOPE = 0xa, + BBSTYLE_WEATHER_SUNNY = 0xb, + BBSTYLE_WEATHER_PARTIALLY_CLOUDY = 0xc, + BBSTYLE_WEATHER_CLOUDY = 0xd, + BBSTYLE_WEATHER_SCATTERED_SHOWERS = 0xe, + BBSTYLE_WEATHER_SHOWERS = 0xf, + BBSTYLE_WEATHER_SCATTERED_FLURRIES = 0x10, + BBSTYLE_WEATHER_FLURRIES = 0x11, + BBSTYLE_WEATHER_HEAVY_FLURRIES = 0x12, + BBSTYLE_WEATHER_THUNDER_STORMS = 0x13, + BBSTYLE_0x14 = 0x14, + _BBSTYLE_COUNT = 0x15 +}; +static_assert(sizeof(enum BBSTYLE) == 0x4, "Data type is of wrong size"); + +static const char* BBSTYLE_strs[_BBSTYLE_COUNT] = { + "BBSTYLE_CHECK_BOX_OFF", + "BBSTYLE_CHECK_BOX_ON", + "BBSTYLE_LEFT_ARROW", + "BBSTYLE_RIGHT_ARROW", + "BBSTYLE_ROTATION", + "BBSTYLE_SPEECH", + "BBSTYLE_NO_SPEECH", + "BBSTYLE_SPEECH_ARROW", + "BBSTYLE_EXCLAIM_ARROW", + "BBSTYLE_ENVELOPE_ARROW", + "BBSTYLE_ENVELOPE", + "BBSTYLE_WEATHER_SUNNY", + "BBSTYLE_WEATHER_PARTIALLY_CLOUDY", + "BBSTYLE_WEATHER_CLOUDY", + "BBSTYLE_WEATHER_SCATTERED_SHOWERS", + "BBSTYLE_WEATHER_SHOWERS", + "BBSTYLE_WEATHER_SCATTERED_FLURRIES", + "BBSTYLE_WEATHER_FLURRIES", + "BBSTYLE_WEATHER_HEAVY_FLURRIES", + "BBSTYLE_WEATHER_THUNDER_STORMS", + "BBSTYLE_0x14", +}; + +struct SetupThing +{ + struct LH3DMaterial* ui_shadow_material; /* 0x0 */ + uint8_t field_0x4[0xac]; + char16_t WCHAR_00c4cd30[0x4]; /* 0xb0 */ +}; +static_assert(sizeof(struct SetupThing) == 0xb8, "Data type is of wrong size"); + +// Static methods + +// win1.41 00411690 mac 10135530 SetupThing::GetTextHeight(int, int, int, int, int, bool, wchar_t *, int) +float __cdecl GetTextHeight__10SetupThingFiiiiibPwi(int param_1, int param_2, int param_3, int param_4, int param_5, bool param_6, const char16_t* text, int param_8); +// win1.41 00411720 mac 1016ab60 SetupThing::GetTextWidth(wchar_t *, float, int, float) +float __cdecl GetTextWidth__10SetupThingFPwfif(const char16_t* text, float size, int param_3, float param_4); +// win1.41 00411750 mac 1016d490 SetupThing::DrawTextWrap(int, int, int, int, int, bool, wchar_t *, int, LH3DColor *, bool, bool) +float __cdecl DrawTextWrap__10SetupThingFiiiiibPwiP9LH3DColorbb(int x_min, int y_min, int x_max, int y_max, int param_5, bool param_6, const char16_t* text, int param_8, const struct LH3DColor* color, bool param_10, bool param_11); +// win1.41 004119b0 mac 103e1a40 SetupThing::DrawText(int, int, int, TEXTJUSTIFY, wchar_t *, int, LH3DColor *, int) +float __cdecl DrawText__10SetupThingFiii11TEXTJUSTIFYPwiP9LH3DColori(int x, int y, int width, enum TEXTJUSTIFY justify, const char16_t* text, int size, const struct LH3DColor* p_color, int param_8); +// win1.41 00411b40 mac 103e4a50 SetupThing::adjust(int &, int &) +float __cdecl adjust__10SetupThingFRiRi(int* x, int* y); +// win1.41 00411c30 mac 104f62a0 SetupThing::unadjust(int &, int &) +float __cdecl unadjust__10SetupThingFRiRi(int* x, int* y); +// win1.41 00411e70 mac 104f2b70 SetupThing::adjusty(int) +int __cdecl adjusty__10SetupThingFi(int y); +// win1.41 00412030 mac 10174f00 SetupThing::unadjustsize(float) +float __cdecl unadjustsize__10SetupThingFf(float size); +// win1.41 00412150 mac 105882d0 SetupThing::DrawBigButton(int, int, bool, bool, int, BBSTYLE, bool, int, int) +void __cdecl DrawBigButton__10SetupThingFiibbi7BBSTYLEbii(int x, int y, bool centered, bool interacted, int size, enum BBSTYLE style, bool shadowed, int clip_y_start, int clip_y_end); +// win1.41 004125a0 mac 101a2290 SetupThing::DrawLine(int, int, int, int, unsigned long, int, float, float) +void __cdecl DrawLine__10SetupThingFiiiiUliff(int param_1, int param_2, int param_3, int param_4, struct LH3DColor color, int adjust, float param_7, float inv_w); +// win1.41 00412980 mac 10048980 SetupThing::DrawBox(int, int, int, int, float, float, float, float, LH3DMaterial *, LH3DColor *, int, int, int, bool, float) +void __cdecl DrawBox__10SetupThingFiiiiffffP12LH3DMaterialP9LH3DColoriiibf(int x_min, int y_min, int x_max, int y_max, float u_min, float v_min, float u_max, float v_max, struct LH3DMaterial* material, const struct LH3DColor* color, int adjust, int clip_y_start, int clip_y_end, bool depth_test, float inv_w); +// win1.41 00412eb0 mac 1010f3e0 SetupThing::DrawQuad(int, int, int, int, int, int, int, int, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long) +void __cdecl DrawQuad__10SetupThingFiiiiiiiiUlUlUlUlUlUl(int x_1, int y_1, int x_2, int y_2, int x_3, int y_3, int x_4, int y_4, struct LH3DColor color_1, struct LH3DColor color_2, struct LH3DColor color_3, struct LH3DColor color_4, uint32_t use_alpha, uint32_t adjust); +// win1.41 004132c0 mac 1035b610 SetupThing::DrawBox(int, int, int, int, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long) +void __cdecl DrawBox__10SetupThingFiiiiUlUlUlUlUlUl(int x_min, int y_min, int x_max, int y_max, struct LH3DColor color_1, struct LH3DColor color_2, struct LH3DColor color_3, struct LH3DColor color_4, uint32_t use_alpha, uint32_t adjust); +// win1.41 00413360 mac 1013c530 SetupThing::DrawTab(int, int, int, int, int, int, int, wchar_t *, int, int) +void __cdecl DrawTab__10SetupThingFiiiiiiiPwii(int x_min, int y_min, int x_max, int y_max, bool selected, bool first_in_row, bool last_in_row, const char16_t* label, struct LH3DColor color, bool no_blend); +// win1.41 00413c20 mac 10594590 SetupThing::DrawBevBox(int, int, int, int, int, int, int, unsigned long) +void __cdecl DrawBevBox__10SetupThingFiiiiiiiUl(int x_min, int y_min, int x_max, int y_max, uint32_t style, uint32_t outline_thickness, uint32_t horizontal_outline, struct LH3DColor color); + +#endif /* BW1_DECOMP_SETUP_THING_INCLUDED_H */ diff --git a/black/SetupVBarGraph.h b/black/SetupVBarGraph.h new file mode 100644 index 0000000..78112fe --- /dev/null +++ b/black/SetupVBarGraph.h @@ -0,0 +1,88 @@ +#ifndef BW1_DECOMP_SETUP_V_BAR_GRAPH_INCLUDED_H +#define BW1_DECOMP_SETUP_V_BAR_GRAPH_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For char16_t */ + +#include /* For struct LH3DColor */ +#include /* For struct Zoomer */ +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "SetupButton.h" /* For struct SetupButton */ +#include "SetupControl.h" /* For struct SetupControlVftable */ + +// Forward Declares + +struct SetupVBarGraph; + +struct VBarData +{ + struct LH3DColor color; /* 0x0 */ + float value; +}; +static_assert(sizeof(struct VBarData) == 0x8, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac inlined VBarData::VBarData(const VBarData &) +struct VBarData* __fastcall __ct__8VBarDataFRC8VBarData(struct VBarData* this, const void* edx, const struct VBarData* bar); + +// Non-virtual methods + +// win1.41 inlined mac inlined VBarData::operator=(const VBarData &) +struct VBarData* __fastcall __as__8VBarDataFRC8VBarData(struct VBarData* this, const void* edx, const struct VBarData* bar); + +DECLARE_LH_LINKED_LIST(VBarData); + +struct SetupVBarGraphVftable +{ + struct SetupControlVftable super; /* 0x0 */ + void (__fastcall* Reset)(struct SetupVBarGraph* this); /* 0x34 */ + void (__fastcall* SetScale)(struct SetupVBarGraph* this, const void* edx, float scale); + void (__fastcall* AddLine)(struct SetupVBarGraph* this, const void* edx, const struct VBarData* line); + void (__fastcall* SetLine)(struct SetupVBarGraph* this, const void* edx, int index, const struct VBarData* line); /* 0x40 */ + void (__fastcall* GetLine)(const struct SetupVBarGraph* this, const void* edx, int index, struct VBarData* result); +}; +static_assert(sizeof(struct SetupVBarGraphVftable) == 0x48, "Data type is of wrong size"); + +struct SetupVBarGraph +{ + struct SetupButton super; /* 0x0 */ + struct Zoomer zoomer; /* 0x244 */ + struct LHLinkedList__VBarData bar_data_list; /* 0x274 */ + float max_point; + float min_point; /* 0x280 */ +}; +static_assert(sizeof(struct SetupVBarGraph) == 0x284, "Data type is of wrong size"); + +static struct SetupVBarGraphVftable* __vt__14SetupVBarGraph = (struct SetupVBarGraphVftable*)0x008ab480; + +// Constructors + +// win1.41 0040ef00 mac 10354bc0 SetupVBarGraph::SetupVBarGraph(int, int, int, int, int, wchar_t *) +struct SetupVBarGraph* __fastcall __ct__14SetupVBarGraphFiiiiiPw(struct SetupVBarGraph* this, const void* edx, int id, int x, int y, int width, int height, const char16_t* label); + +// Non-virtual methods + +// win1.41 0040f280 mac 103fccd0 SetupVBarGraph::AddBar(const VBarData &) +void __fastcall AddBar__14SetupVBarGraphFRC8VBarData(struct SetupVBarGraph* this, const void* edx, const struct VBarData* bar); +// win1.41 0040f300 mac 10352240 SetupVBarGraph::SetBar(int, const VBarData &) +void __fastcall SetBar__14SetupVBarGraphFiRC8VBarData(struct SetupVBarGraph* this, const void* edx, int index, const struct VBarData* bar); +// win1.41 0040f350 mac 103f1500 SetupVBarGraph::GetBar(int, VBarData &) +void __fastcall GetBar__14SetupVBarGraphFiR8VBarData(const struct SetupVBarGraph* this, const void* edx, int index, struct VBarData* result); + +// Override methods + +// win1.41 0040e8b0 mac 10379480 SetupVBarGraph::Draw(bool, bool) +void __fastcall Draw__14SetupVBarGraphFbb(struct SetupVBarGraph* this, const void* edx, bool hovered, bool selected); +// win1.41 0040ef70 mac 10350e50 SetupVBarGraph::KeyDown(int, int) +void __fastcall KeyDown__14SetupVBarGraphFii(struct SetupVBarGraph* this, const void* edx, enum LHKey key, enum LHKeyMod mod); +// win1.41 0040ef90 mac 103de920 SetupVBarGraph::~SetupVBarGraph(void) +struct SetupVBarGraph* __fastcall __dt__14SetupVBarGraphFb(struct SetupVBarGraph* this, const void* edx, bool param_1); +// win1.41 0040efb0 mac inlined SetupVBarGraph::Reset(vfoid) +void __fastcall Reset__14SetupVBarGraphFv(struct SetupVBarGraph* this); +// win1.41 0040f1b0 mac 10351240 SetupVBarGraph::SetScale(float) +void __fastcall SetScale__14SetupVBarGraphFf(struct SetupVBarGraph* this, const void* edx, float scale); + +#endif /* BW1_DECOMP_SETUP_V_BAR_GRAPH_INCLUDED_H */ diff --git a/black/ShowNeeds.h b/black/ShowNeeds.h new file mode 100644 index 0000000..02747ac --- /dev/null +++ b/black/ShowNeeds.h @@ -0,0 +1,33 @@ +#ifndef BW1_DECOMP_SHOW_NEEDS_INCLUDED_H +#define BW1_DECOMP_SHOW_NEEDS_INCLUDED_H + +#include /* For static_assert */ + +#include "GameThing.h" /* For struct GameThing */ + +// Forward Declares + +struct GameThingWithPos; +struct ShowNeedsVisuals; + +struct ShowNeeds +{ + struct GameThing super; /* 0x0 */ + struct GameThingWithPos* thing; /* 0x14 */ + struct ShowNeedsVisuals* visuals[0x3]; +}; +static_assert(sizeof(struct ShowNeeds) == 0x24, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__9ShowNeeds = (struct GameThingVftable*)0x008ec9ac; + +// Static methods + +// win1.41 00719b60 mac 10145cd0 ShowNeeds::Create(GameThingWithPos *) +struct ShowNeeds* __cdecl Create__9ShowNeedsFP16GameThingWithPos(struct GameThingWithPos* game_thing); + +// Constructors + +// win1.41 00719ab0 mac 10145e60 ShowNeeds::ShowNeeds(GameThingWithPos *) +struct ShowNeeds* __fastcall __ct__9ShowNeedsFP16GameThingWithPos(struct ShowNeeds* this, const void* edx, struct GameThingWithPos* game_thing); + +#endif /* BW1_DECOMP_SHOW_NEEDS_INCLUDED_H */ diff --git a/black/ShowNeedsInfo.h b/black/ShowNeedsInfo.h new file mode 100644 index 0000000..f19494f --- /dev/null +++ b/black/ShowNeedsInfo.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_SHOW_NEEDS_INFO_INCLUDED_H +#define BW1_DECOMP_SHOW_NEEDS_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "ObjectInfo.h" /* For struct GObjectInfo */ + +struct GShowNeedsInfo +{ + struct GObjectInfo super; /* 0x0 */ + uint8_t field_0x100[0x14]; +}; +static_assert(sizeof(struct GShowNeedsInfo) == 0x114, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__14GShowNeedsInfo = (struct ObjectVftable*)0x009572c8; + +#endif /* BW1_DECOMP_SHOW_NEEDS_INFO_INCLUDED_H */ diff --git a/black/ShowNeedsVisuals.h b/black/ShowNeedsVisuals.h new file mode 100644 index 0000000..b3389ae --- /dev/null +++ b/black/ShowNeedsVisuals.h @@ -0,0 +1,49 @@ +#ifndef BW1_DECOMP_SHOW_NEEDS_VISUALS_INCLUDED_H +#define BW1_DECOMP_SHOW_NEEDS_VISUALS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Object.h" /* For struct Object */ + +// Forward Declares + +struct GShowNeedsInfo; +struct GameThing; +struct MapCoords; + +struct ShowNeedsVisuals +{ + struct Object super; /* 0x0 */ + int field_0x54; + uint32_t field_0x58; + uint32_t field_0x5c; + struct GameThing* game_thing; /* 0x60 */ + uint32_t field_0x64; + uint32_t field_0x68; + uint32_t field_0x6c; + uint32_t field_0x70; + uint32_t field_0x74; + uint32_t field_0x78; + uint32_t field_0x7c; + uint32_t field_0x80; + uint32_t field_0x84; + uint32_t field_0x88; + uint32_t field_0x8c; + uint32_t field_0x90; +}; +static_assert(sizeof(struct ShowNeedsVisuals) == 0x94, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__16ShowNeedsVisuals = (struct ObjectVftable*)0x008ecaac; + +// Constructors + +// win1.41 00719d60 mac 10145700 ShowNeedsVisuals::ShowNeedsVisuals(const MapCoords&, GameThing*, const GShowNeedsInfo *) +struct ShowNeedsVisuals* __fastcall __ct__16ShowNeedsVisualsFRC9MapCoordsP9GameThingPC14GShowNeedsInfo(struct ShowNeedsVisuals* this, const void* edx, struct MapCoords* coords, struct GameThing* game_thing, struct GShowNeedsInfo* info); + +// Override methods + +// win1.41 00719e00 mac 10145510 ShowNeedsVisuals::CallVirtualFunctionsForCreation(const MapCoords &) +void __fastcall CallVirtualFunctionsForCreation__16ShowNeedsVisualsFRC9MapCoords(struct ShowNeedsVisuals* this, const void* edx, const struct MapCoords* coords); + +#endif /* BW1_DECOMP_SHOW_NEEDS_VISUALS_INCLUDED_H */ diff --git a/black/SingleMapFixedInfo.h b/black/SingleMapFixedInfo.h new file mode 100644 index 0000000..a13d5c1 --- /dev/null +++ b/black/SingleMapFixedInfo.h @@ -0,0 +1,29 @@ +#ifndef BW1_DECOMP_SINGLE_MAP_FIXED_INFO_INCLUDED_H +#define BW1_DECOMP_SINGLE_MAP_FIXED_INFO_INCLUDED_H + +#include /* For static_assert */ + +#include "ObjectInfo.h" /* For struct GObjectInfo, struct GObjectInfoVftable */ + +struct GSingleMapFixedInfoVftable +{ + struct GObjectInfoVftable super; /* 0x0 */ +}; +static_assert(sizeof(struct GSingleMapFixedInfoVftable) == 0x3c, "Data type is of wrong size"); + +union GSingleMapFixedInfoBase +{ + struct GObjectInfo super; + struct GSingleMapFixedInfoVftable* vftable; +}; +static_assert(sizeof(union GSingleMapFixedInfoBase) == 0x100, "Data type is of wrong size"); + +struct GSingleMapFixedInfo +{ + union GSingleMapFixedInfoBase base; /* 0x0 */ +}; +static_assert(sizeof(struct GSingleMapFixedInfo) == 0x100, "Data type is of wrong size"); + +static struct GSingleMapFixedInfoVftable* __vt__19GSingleMapFixedInfo = (struct GSingleMapFixedInfoVftable*)0x008db6dc; + +#endif /* BW1_DECOMP_SINGLE_MAP_FIXED_INFO_INCLUDED_H */ diff --git a/black/SkipBox.h b/black/SkipBox.h new file mode 100644 index 0000000..0ef7492 --- /dev/null +++ b/black/SkipBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_SKIP_BOX_INCLUDED_H +#define BW1_DECOMP_SKIP_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct SkipBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x14]; +}; +static_assert(sizeof(struct SkipBox) == 0x24, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__7SkipBox = (struct DialogBoxBaseVftable*)0x008deadc; + +#endif /* BW1_DECOMP_SKIP_BOX_INCLUDED_H */ diff --git a/black/SkirmishGameBox.h b/black/SkirmishGameBox.h new file mode 100644 index 0000000..25263a7 --- /dev/null +++ b/black/SkirmishGameBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_SKIRMISH_GAME_BOX_INCLUDED_H +#define BW1_DECOMP_SKIRMISH_GAME_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct SkirmishGameBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x22c]; +}; +static_assert(sizeof(struct SkirmishGameBox) == 0x23c, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__15SkirmishGameBox = (struct DialogBoxBaseVftable*)0x008de94c; + +#endif /* BW1_DECOMP_SKIRMISH_GAME_BOX_INCLUDED_H */ diff --git a/black/SoundGuidance.h b/black/SoundGuidance.h new file mode 100644 index 0000000..0b5c915 --- /dev/null +++ b/black/SoundGuidance.h @@ -0,0 +1,72 @@ +#ifndef BW1_DECOMP_SOUND_GUIDANCE_INCLUDED_H +#define BW1_DECOMP_SOUND_GUIDANCE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct GInterfaceStatus; +struct GameThingWithPos; +struct LH_SamplePlayOptions; + +struct Q29GGuidance10LastThings +{ + struct GameThingWithPos* thing; /* 0x0 */ + uint32_t turn; +}; +static_assert(sizeof(struct Q29GGuidance10LastThings) == 0x8, "Data type is of wrong size"); + +// Constructors + +// win1.41 0071aec0 mac 10511e30 GGuidance::LastThings::LastThings(GameThingWithPos *) +struct Q29GGuidance10LastThings* __fastcall __ct__Q29GGuidance10LastThingsFP16GameThingWithPos(struct Q29GGuidance10LastThings* this, const void* edx, struct GameThingWithPos* thing); + +DECLARE_LH_LINKED_LIST(Q29GGuidance10LastThings); + +struct GGuidance +{ + struct Base super; /* 0x0 */ + struct LH_SamplePlayOptions* play_options; + int field_0xc[0x21]; + struct LHLinkedList__Q29GGuidance10LastThings lastThings; /* 0x90 */ + uint32_t field_0x98; + uint32_t field_0x9c; + uint32_t field_0xa0; + uint32_t field_0xa4; + float field_0xa8; + uint32_t field_0xac; + uint32_t field_0xb0; + uint32_t field_0xb4; + uint32_t field_0xb8; + uint32_t field_0xbc; + uint32_t field_0xc0; + uint32_t field_0xc4; + uint32_t field_0xc8; + struct GInterfaceStatus* interface_status; + uint32_t field_0xd0[0x7]; +}; +static_assert(sizeof(struct GGuidance) == 0xec, "Data type is of wrong size"); + +static struct BaseVftable* __vt__9GGuidance = (struct BaseVftable*)0x009804ac; + +// Static methods + +// win1.41 0071b020 mac 10082330 GGuidance::ProcessTownDesireSFX(GInterfaceStatus &) +void __cdecl ProcessTownDesireSFX__9GGuidanceFR16GInterfaceStatus(struct GInterfaceStatus* status); + +// Constructors + +// win1.41 0071ab10 mac 105126b0 GGuidance::GGuidance(void) +void __fastcall __ct__9GGuidanceFv(struct GGuidance* this); + +// Non-virtual methods + +// win1.41 0071ac70 mac 105122a0 GGuidance::Init(GInterfaceStatus&) +void __fastcall Init__9GGuidanceFR16GInterfaceStatus(struct GGuidance* this, const void* edx, struct GInterfaceStatus* status); + +#endif /* BW1_DECOMP_SOUND_GUIDANCE_INCLUDED_H */ diff --git a/black/SoundMap.h b/black/SoundMap.h new file mode 100644 index 0000000..1895b6b --- /dev/null +++ b/black/SoundMap.h @@ -0,0 +1,31 @@ +#ifndef BW1_DECOMP_SOUND_MAP_INCLUDED_H +#define BW1_DECOMP_SOUND_MAP_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint32_t, uint8_t */ + +#include /* For struct LHPoint */ + +#include "Base.h" /* For struct Base */ +#include "MapCoords.h" /* For struct MapCoords */ + +struct GSoundMap +{ + struct Base super; /* 0x0 */ + uint8_t field_0x8[0xc][0xe]; + uint16_t field_0xb0; + uint32_t field_0xb4[0xe]; + struct LHPoint field_0xec; + struct MapCoords field_0xf8; + uint8_t field_0xfc[0xc]; /* 0x104 */ +}; +static_assert(sizeof(struct GSoundMap) == 0x110, "Data type is of wrong size"); + +static struct BaseVftable* __vt__9GSoundMap = (struct BaseVftable*)0x008df7a0; + +// Constructors + +// win1.41 0054b9d0 mac inlined GSoundMap::GSoundMap(void) +struct GSoundMap* __fastcall __ct__9GSoundMapFv(struct GSoundMap* this); + +#endif /* BW1_DECOMP_SOUND_MAP_INCLUDED_H */ diff --git a/black/SoundTag.h b/black/SoundTag.h new file mode 100644 index 0000000..3bdbc99 --- /dev/null +++ b/black/SoundTag.h @@ -0,0 +1,58 @@ +#ifndef BW1_DECOMP_SOUND_TAG_INCLUDED_H +#define BW1_DECOMP_SOUND_TAG_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint16_t, uint32_t */ + +#include /* For enum AUDIO_SFX_BANK_TYPE */ +#include /* For struct LHPoint */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "LocalBase.h" /* For struct LocalBase */ + +// Forward Declares + +struct GameThingWithPos; + +struct SoundTag +{ + struct LocalBase super; /* 0x0 */ + struct SoundTag* next; + struct GameThingWithPos* game_thing; + struct LHPoint field_0x10; + struct LHPoint field_0x1c; + uint32_t field_0x28; + uint32_t field_0x2c; + bool field_0x30; + int field_0x34; + uint32_t field_0x38; + uint32_t field_0x3c; + int field_0x40; + int field_0x44; + int field_0x48; + uint32_t field_0x4c; + uint16_t field_0x50; +}; +static_assert(sizeof(struct SoundTag) == 0x54, "Data type is of wrong size"); + +static struct BaseVftable* __vt__8SoundTag = (struct BaseVftable*)0x00980538; + +// Static methods + +// win1.41 0071e840 mac 10513e30 SoundTag::Create(GameThingWithPos *, unsigned long, bool, unsigned long, unsigned long, int, int, AUDIO_SFX_BANK_TYPE, int) +struct SoundTag* __cdecl Create__8SoundTagFP16GameThingWithPosUlbUlUlii19AUDIO_SFX_BANK_TYPEi(struct GameThingWithPos* param_1, uint32_t param_2, bool param_3, uint32_t param_4, uint32_t param_5, int param_6, int param_7, enum AUDIO_SFX_BANK_TYPE bank_type, int param_9); + +// Constructors + +// win1.41 0071e300 mac 10514c30 SoundTag::SoundTag(GameThingWithPos *, LHPoint const &, unsigned long, bool, unsigned long, unsigned long, int, int, AUDIO_SFX_BANK_TYPE, int) +struct SoundTag* __fastcall __ct__8SoundTagFP16GameThingWithPosRC7LHPointUlbUlUlii19AUDIO_SFX_BANK_TYPEi(struct SoundTag* this, const void* edx, struct GameThingWithPos* param_1, struct LHPoint* param_2, uint32_t param_3, bool param_4, uint32_t param_5, uint32_t param_6, int param_7, int param_8, enum AUDIO_SFX_BANK_TYPE param_9, int param_10); + +// Non-virtual methods + +// win1.41 0071e4f0 mac 100a0490 SoundTag::Set(GameThingWithPos *, LHPoint const &, LHPoint const &, unsigned long, bool, unsigned long, unsigned long, int, int, unsigned long, int, int) +void __fastcall Set__8SoundTagFP16GameThingWithPosRC7LHPointRC7LHPointUlbUlUliiUlii(struct SoundTag* this, const void* edx, struct GameThingWithPos* param_1, struct LHPoint* param_2, struct LHPoint* param_3, uint32_t param_4, bool param_5, uint32_t param_6, uint32_t param_7, int param_8, int param_9, uint32_t param_10, int param_11, int param_12); + +DECLARE_LH_LIST_HEAD(SoundTag); + +#endif /* BW1_DECOMP_SOUND_TAG_INCLUDED_H */ diff --git a/black/SpecialVillager.h b/black/SpecialVillager.h new file mode 100644 index 0000000..641f9bb --- /dev/null +++ b/black/SpecialVillager.h @@ -0,0 +1,35 @@ +#ifndef BW1_DECOMP_SPECIAL_VILLAGER_INCLUDED_H +#define BW1_DECOMP_SPECIAL_VILLAGER_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include "Villager.h" /* For struct Villager */ + +// Forward Declares + +struct GSpecialVillagerInfo; +struct GVillagerInfo; +struct MapCoords; + +struct SpecialVillager +{ + struct Villager super; /* 0x0 */ + uint32_t field_0x134; /* 0x130 */ +}; +static_assert(sizeof(struct SpecialVillager) == 0x134, "Data type is of wrong size"); + +static struct VillagerVftable* __vt__15SpecialVillager = (struct VillagerVftable*)0x008e15b4; + +// Static methods + +// win1.41 0071f1a0 mac 10147420 SpecialVillager::Create(MapCoords const &, GVillagerInfo const *, unsigned long, int, GSpecialVillagerInfo *) +struct SpecialVillager* __cdecl Create__15SpecialVillagerFRC9MapCoordsPC13GVillagerInfoUliP20GSpecialVillagerInfo(const struct MapCoords* coords, const struct GVillagerInfo* villager_info, uint32_t age, bool skeleton, struct GSpecialVillagerInfo* info); + +// Non-virtual methods + +// win1.41 0071f470 mac 101470a0 SpecialVillager::CanShowName(void) +bool __fastcall CanShowName__15SpecialVillagerFv(struct SpecialVillager* this); + +#endif /* BW1_DECOMP_SPECIAL_VILLAGER_INCLUDED_H */ diff --git a/black/SpecialVillagerInfo.h b/black/SpecialVillagerInfo.h new file mode 100644 index 0000000..de1eb1e --- /dev/null +++ b/black/SpecialVillagerInfo.h @@ -0,0 +1,26 @@ +#ifndef BW1_DECOMP_SPECIAL_VILLAGER_INFO_INCLUDED_H +#define BW1_DECOMP_SPECIAL_VILLAGER_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +struct GSpecialVillagerInfo +{ + struct GBaseInfo super; /* 0x0 */ + char name[0x30]; /* 0x10 */ + uint32_t field_0x40; + uint32_t field_0x44; + uint32_t field_0x48; + uint32_t field_0x4c; + uint32_t field_0x50; + int field_0x54; + uint32_t field_0x58; + uint32_t field_0x5c; +}; +static_assert(sizeof(struct GSpecialVillagerInfo) == 0x60, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__20GSpecialVillagerInfo = (struct GBaseInfoVftable*)0x00980568; + +#endif /* BW1_DECOMP_SPECIAL_VILLAGER_INFO_INCLUDED_H */ diff --git a/black/Spell.h b/black/Spell.h new file mode 100644 index 0000000..56ec0a9 --- /dev/null +++ b/black/Spell.h @@ -0,0 +1,107 @@ +#ifndef BW1_DECOMP_SPELL_INCLUDED_H +#define BW1_DECOMP_SPELL_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint32_t, uint8_t, uintptr_t */ + +#include /* For enum MAGIC_TYPE */ +#include /* For struct LHPoint */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos, struct GameThingWithPosVftable */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct GInterfaceStatus; +struct GameThing; +struct Object; +struct PSysProcessInfo; +struct Spell; +struct SpellCastData; +struct SpellEventInfo; + +struct SpellVftable +{ + struct GameThingWithPosVftable super; /* 0x0 */ + void (__fastcall* ProcessSpellSeed)(struct Spell* this); /* 0x500 */ + void (__fastcall* GetParticleType)(struct Spell* this); + void (__fastcall* DrawSpellSeed)(struct Spell* this); + void (__fastcall* Draw)(struct Spell* this); + void (__fastcall* DebugDraw)(struct Spell* this); /* 0x510 */ + bool (__fastcall* NeedsContinualPackets)(struct Spell* this, const void* edx, const struct GInterfaceStatus* param_1); + void (__fastcall* HasEnoughChantsAndLifeForRecast)(struct Spell* this); + void (__fastcall* UpdateStruckReaction)(struct Spell* this); + void (__fastcall* SetUpDestroyedReaction)(struct Spell* this); /* 0x520 */ + uintptr_t (__fastcall* GetCreatureCastOn)(struct Spell* this); + uint32_t (__fastcall* Process)(struct Spell* this); + void (__fastcall* SpellEvent)(struct Spell* this, const void* edx, const struct SpellEventInfo* param_1); + void (__fastcall* CloseDown)(struct Spell* this); /* 0x530 */ + int32_t (__fastcall* InitWithPos)(struct Spell* this, const void* edx, struct GameThing* param_1, struct MapCoords* param_2, struct SpellCastData* param_3, const struct PSysProcessInfo* param_4); + int32_t (__fastcall* InitWithObject)(struct Spell* this, const void* edx, struct GameThing* param_1, struct Object* param_2, struct SpellCastData* param_3, const struct PSysProcessInfo* param_4); + float (__fastcall* CalculateCostToMaintain)(struct Spell* this); + void (__fastcall* AdjustSpellSeedPos)(struct Spell* this, const void* edx, struct MapCoords* pos); /* 0x540 */ + bool (__fastcall* IsSpellCreature)(struct Spell* this); + bool (__fastcall* IsSpellStormAndTornado)(struct Spell* this); + void (__fastcall* SetMaxObjectsToCreate)(struct Spell* this, const void* edx, int32_t value); + int32_t (__fastcall* GetMaxObjectsToCreate)(struct Spell* this); /* 0x550 */ +}; +static_assert(sizeof(struct SpellVftable) == 0x554, "Data type is of wrong size"); + +struct Spell +{ + struct GameThingWithPos super; /* 0x0 */ + uint32_t field_0x28; + float field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + uint32_t field_0x38; + uint32_t field_0x3c; + uint32_t field_0x40; + uint32_t field_0x44; + uint32_t field_0x48; + uint32_t field_0x4c; + float field_0x50; + float field_0x54; + float field_0x58; + uint8_t field_0x5c; + uint8_t field_0x5d; + uint32_t field_0x60; + struct LHPoint field_0x64; + struct LHPoint field_0x70; + struct LHPoint field_0x7c; + struct LHPoint field_0x88; + float field_0x94; + uint32_t field_0x98; + uint8_t field_0x9c; + struct GameThing* creator; /* 0xa0 */ + struct GameThing* field_0xa4; + struct GameThing* interface_status; + struct GameThing* field_0xac; + uint32_t field_0xb0; + enum MAGIC_TYPE magic_type; + float field_0xb8; + float field_0xbc; + struct MapCoords field_0xc0; + struct MapCoords field_0xcc; + uint32_t field_0xd8; + uint32_t field_0xdc; + uint32_t field_0xe0; + float field_0xe4; + struct Spell* next; +}; +static_assert(sizeof(struct Spell) == 0xec, "Data type is of wrong size"); + +static struct SpellVftable* __vt__5Spell = (struct SpellVftable*)0x009805b0; + +// Constructors + +// win1.41 0071fa30 mac 10519bb0 Spell::Spell(void) +struct Spell* __fastcall __ct__5SpellFv(struct Spell* this); +// win1.41 0071fb40 mac 105198a0 Spell::Spell(MAGIC_TYPE, GameThing *) +struct Spell* __fastcall __ct__5SpellF10MAGIC_TYPEP9GameThing(struct Spell* this, const void* edx, enum MAGIC_TYPE type, struct GameThing* creator); + +DECLARE_LH_LIST_HEAD(Spell); + +#endif /* BW1_DECOMP_SPELL_INCLUDED_H */ diff --git a/black/SpellIcon.h b/black/SpellIcon.h new file mode 100644 index 0000000..d76c98b --- /dev/null +++ b/black/SpellIcon.h @@ -0,0 +1,72 @@ +#ifndef BW1_DECOMP_SPELL_ICON_INCLUDED_H +#define BW1_DECOMP_SPELL_ICON_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For enum SPELL_SEED_TYPE */ +#include /* For bool32_t */ + +#include "LightSheet.h" /* For struct LightSheet */ +#include "MapCoords.h" /* For struct MapCoords */ +#include "MultiMapFixed.h" /* For struct MultiMapFixed */ + +// Forward Declares + +struct GSpellIconInfo; +struct GSpellSeedInfo; +struct SpellSeedGraphic; + +struct Q29SpellIcon13TChargingData +{ + uint8_t field_0x0; + struct LightSheet light_sheet; + uint32_t field_0x64; + uint32_t field_0x68; + uint32_t field_0x6c; + int field_0x70; + uint32_t field_0x74; +}; +static_assert(sizeof(struct Q29SpellIcon13TChargingData) == 0x78, "Data type is of wrong size"); + +// Constructors + +// win1.41 00726690 mac 10524570 SpellIcon::TChargingData::TChargingData(void) +struct Q29SpellIcon13TChargingData* __fastcall __ct__Q29SpellIcon13TChargingDataFv(struct Q29SpellIcon13TChargingData* this); + +struct SpellIcon +{ + struct MultiMapFixed super; /* 0x0 */ + struct SpellSeedGraphic* graphic; /* 0x7c */ + struct GSpellSeedInfo* seed_info; /* 0x80 */ + uint32_t field_0x84; + struct Q29SpellIcon13TChargingData charging_data; + struct MapCoords spell_coords; /* 0x100 */ + uint32_t field_0x10c; +}; +static_assert(sizeof(struct SpellIcon) == 0x110, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__9SpellIcon = (struct MultiMapFixedVftable*)0x008f84ac; + +// Constructors + +// win1.41 00725ff0 mac 105257f0 SpellIcon::SpellIcon(const MapCoords &, const GSpellIconInfo *, const GSpellSeedInfo *, float, float, float, int) +struct SpellIcon* __fastcall __ct__9SpellIconFRC9MapCoordsPC14GSpellIconInfoPC14GSpellSeedInfofffi(struct SpellIcon* this, const void* edx, const struct MapCoords* coords, const struct GSpellIconInfo* icon_info, const struct GSpellSeedInfo* seed_info, float y_angle, float scale, float param_6, int param_7); + +// Non-virtual methods + +// win1.41 007260f0 mac 10525590 SpellIcon::SetToZero(void) +void __fastcall SetToZero__9SpellIconFv(struct SpellIcon* this); +// win1.41 00726310 mac 10524d40 SpellIcon::IsSpellSeed(SPELL_SEED_TYPE) +bool32_t __fastcall IsSpellSeed__9SpellIconF15SPELL_SEED_TYPE(struct SpellIcon* this, const void* edx, enum SPELL_SEED_TYPE type); +// win1.41 00726350 mac 10524e60 SpellIcon::GetSpellSeedInfo(void) const +struct GSpellSeedInfo* __fastcall GetSpellSeedInfo__9SpellIconCFv(const struct SpellIcon* this); +// win1.41 00726360 mac 10524cb0 SpellIcon::GetSpellSeedType(void) +enum SPELL_SEED_TYPE __fastcall GetSpellSeedType__9SpellIconFv(struct SpellIcon* this); + +// Override methods + +// win1.41 00726160 mac 105253c0 SpellIcon::CallVirtualFunctionsForCreation(const MapCoords &) +void __fastcall CallVirtualFunctionsForCreation__9SpellIconFRC9MapCoords(struct SpellIcon* this, const void* edx, const struct MapCoords* coords); + +#endif /* BW1_DECOMP_SPELL_ICON_INCLUDED_H */ diff --git a/black/SpellIconInfo.h b/black/SpellIconInfo.h new file mode 100644 index 0000000..519189a --- /dev/null +++ b/black/SpellIconInfo.h @@ -0,0 +1,20 @@ +#ifndef BW1_DECOMP_SPELL_ICON_INFO_INCLUDED_H +#define BW1_DECOMP_SPELL_ICON_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "MultiMapFixedInfo.h" /* For struct GMultiMapFixedInfo */ + +struct GSpellIconInfo +{ + struct GMultiMapFixedInfo super; /* 0x0 */ + uint32_t field_0x120; + uint32_t field_0x124; + uint32_t field_0x128; +}; +static_assert(sizeof(struct GSpellIconInfo) == 0x12c, "Data type is of wrong size"); + +static struct GMultiMapFixedInfoVftable* __vt__14GSpellIconInfo = (struct GMultiMapFixedInfoVftable*)0x00981a58; + +#endif /* BW1_DECOMP_SPELL_ICON_INFO_INCLUDED_H */ diff --git a/black/SpellSeed.h b/black/SpellSeed.h new file mode 100644 index 0000000..bcd1cbd --- /dev/null +++ b/black/SpellSeed.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_SPELL_SEED_INCLUDED_H +#define BW1_DECOMP_SPELL_SEED_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Object.h" /* For struct Object */ + +struct SpellSeed +{ + struct Object super; /* 0x0 */ + uint8_t field_0x54[0x4c]; +}; +static_assert(sizeof(struct SpellSeed) == 0xa0, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__9SpellSeed = (struct ObjectVftable*)0x00981fc0; + +#endif /* BW1_DECOMP_SPELL_SEED_INCLUDED_H */ diff --git a/black/SpellSeedGraphic.h b/black/SpellSeedGraphic.h new file mode 100644 index 0000000..60f577d --- /dev/null +++ b/black/SpellSeedGraphic.h @@ -0,0 +1,49 @@ +#ifndef BW1_DECOMP_SPELL_SEED_GRAPHIC_INCLUDED_H +#define BW1_DECOMP_SPELL_SEED_GRAPHIC_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For enum POWER_UP_TYPE */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +// Forward Declares + +struct Game3DObject; + +struct SpellSeedGraphic +{ + struct GameThingWithPos super; /* 0x0 */ + uint32_t field_0x28; + int* field_0x2c; + struct Game3DObject* obj; /* 0x30 */ + float field_0x34; + float field_0x38; + float field_0x3c; + float field_0x40; + float field_0x44; + int field_0x48; + uint32_t field_0x4c; + int* field_0x50; + float field_0x54; + float field_0x58; + char field_0x5c; + enum POWER_UP_TYPE power_up_type; /* 0x60 */ + uint32_t field_0x64; + uint32_t field_0x68; + uint32_t field_0x6c; + uint32_t field_0x70; +}; +static_assert(sizeof(struct SpellSeedGraphic) == 0x74, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__16SpellSeedGraphic = (struct GameThingWithPosVftable*)0x00981aa8; + +// Non-virtual methods + +// win1.41 00727060 mac 10523210 SpellSeedGraphic::SetPowerUpType(POWER_UP_TYPE) +void __fastcall SetPowerUpType__16SpellSeedGraphicF13POWER_UP_TYPE(struct SpellSeedGraphic* this, const void* edx, enum POWER_UP_TYPE type); +// win1.41 00727080 mac 10523130 SpellSeedGraphic::CreatePUBand(void) +void __fastcall CreatePUBand__16SpellSeedGraphicFv(struct SpellSeedGraphic* this); + +#endif /* BW1_DECOMP_SPELL_SEED_GRAPHIC_INCLUDED_H */ diff --git a/black/SpellSeedInfo.h b/black/SpellSeedInfo.h new file mode 100644 index 0000000..24c5e12 --- /dev/null +++ b/black/SpellSeedInfo.h @@ -0,0 +1,35 @@ +#ifndef BW1_DECOMP_SPELL_SEED_INFO_INCLUDED_H +#define BW1_DECOMP_SPELL_SEED_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint8_t */ + +#include /* For enum MAGIC_TYPE, enum POWER_UP_TYPE, enum SPELL_SEED_TYPE */ + +#include "ObjectInfo.h" /* For struct GObjectInfo */ + +struct GSpellSeedInfo +{ + struct GObjectInfo super; /* 0x0 */ + uint8_t field_0x100[0x24]; + enum MAGIC_TYPE magic_types[0x4]; /* 0x124 */ + uint8_t field_0x134[0x5c]; +}; +static_assert(sizeof(struct GSpellSeedInfo) == 0x190, "Data type is of wrong size"); + +// Static methods + +// win1.41 0072b090 mac 1052d6f0 GSpellSeedInfo::GetFirstSpellSeedForMagicType(MAGIC_TYPE) +enum SPELL_SEED_TYPE __cdecl GetFirstSpellSeedForMagicType__14GSpellSeedInfoF10MAGIC_TYPE(enum MAGIC_TYPE magic_type); + +// Non-virtual methods + +// win1.41 0072af70 mac 1052dac0 GSpellSeedInfo::GetPowerUpFromMagicType(MAGIC_TYPE) const +enum POWER_UP_TYPE __fastcall GetPowerUpFromMagicType__14GSpellSeedInfoCF10MAGIC_TYPE(struct GSpellSeedInfo* this, const void* edx, enum MAGIC_TYPE magic_type); +// win1.41 0072afc0 mac 1052d9d0 GSpellSeedInfo::GetMagicTypeFromPULevel(POWER_UP_TYPE) const +enum MAGIC_TYPE __fastcall GetMagicTypeFromPULevel__14GSpellSeedInfoCF13POWER_UP_TYPE(const struct GSpellSeedInfo* this, const void* edx, enum POWER_UP_TYPE power_type); +// win1.41 0072b060 mac inlined GSpellSeedInfo::SpellSeedIsOfMagicType(MAGIC_TYPE) const +bool __fastcall SpellSeedIsOfMagicType__14GSpellSeedInfoCF10MAGIC_TYPE(const struct GSpellSeedInfo* this, const void* edx, enum MAGIC_TYPE type); + +#endif /* BW1_DECOMP_SPELL_SEED_INFO_INCLUDED_H */ diff --git a/black/SpellShield.h b/black/SpellShield.h new file mode 100644 index 0000000..be9dd9e --- /dev/null +++ b/black/SpellShield.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_SPELL_SHIELD_INCLUDED_H +#define BW1_DECOMP_SPELL_SHIELD_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "SpellWithObjects.h" /* For struct SpellWithObjects */ + +// Forward Declares + +struct GMagicInfo; + +struct SpellShield +{ + struct SpellWithObjects super; /* 0x0 */ + uint8_t field_0xf4[0x18]; +}; +static_assert(sizeof(struct SpellShield) == 0x10c, "Data type is of wrong size"); + +static struct SpellWithObjectsVftable* __vt__11SpellShield = (struct SpellWithObjectsVftable*)0x009828d8; + +// Non-virtual methods + +// win1.41 0072b820 mac 10532f60 SpellShield::GetMagicInfo(void) const +struct GMagicInfo* __fastcall GetMagicInfo__11SpellShieldCFv(struct SpellShield* this); + +#endif /* BW1_DECOMP_SPELL_SHIELD_INCLUDED_H */ diff --git a/black/SpellWater.h b/black/SpellWater.h new file mode 100644 index 0000000..1938aac --- /dev/null +++ b/black/SpellWater.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_SPELL_WATER_INCLUDED_H +#define BW1_DECOMP_SPELL_WATER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Spell.h" /* For struct Spell */ + +struct SpellWater +{ + struct Spell super; /* 0x0 */ + uint8_t field_0xec[0x8]; +}; +static_assert(sizeof(struct SpellWater) == 0xf4, "Data type is of wrong size"); + +static struct SpellVftable* __vt__10SpellWater = (struct SpellVftable*)0x008f553c; + +#endif /* BW1_DECOMP_SPELL_WATER_INCLUDED_H */ diff --git a/black/SpellWithObjects.h b/black/SpellWithObjects.h new file mode 100644 index 0000000..a7f007d --- /dev/null +++ b/black/SpellWithObjects.h @@ -0,0 +1,25 @@ +#ifndef BW1_DECOMP_SPELL_WITH_OBJECTS_INCLUDED_H +#define BW1_DECOMP_SPELL_WITH_OBJECTS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t, uintptr_t */ + +#include "Spell.h" /* For struct Spell, struct SpellVftable */ + +struct SpellWithObjectsVftable +{ + struct SpellVftable super; /* 0x0 */ + uintptr_t field_0x554; +}; +static_assert(sizeof(struct SpellWithObjectsVftable) == 0x558, "Data type is of wrong size"); + +struct SpellWithObjects +{ + struct Spell super; /* 0x0 */ + uint8_t field_0xec[0x8]; +}; +static_assert(sizeof(struct SpellWithObjects) == 0xf4, "Data type is of wrong size"); + +static struct SpellWithObjectsVftable* __vt__16SpellWithObjects = (struct SpellWithObjectsVftable*)0x008f4530; + +#endif /* BW1_DECOMP_SPELL_WITH_OBJECTS_INCLUDED_H */ diff --git a/black/StandardBuildingSite.h b/black/StandardBuildingSite.h new file mode 100644 index 0000000..c6cd27a --- /dev/null +++ b/black/StandardBuildingSite.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_STANDARD_BUILDING_SITE_INCLUDED_H +#define BW1_DECOMP_STANDARD_BUILDING_SITE_INCLUDED_H + +#include /* For static_assert */ + +#include "BuildingSite.h" /* For struct BuildingSite */ + +// Forward Declares + +struct Pot; + +struct StandardBuildingSite +{ + struct BuildingSite super; /* 0x0 */ + struct Pot* wood_pile; /* 0x644 */ +}; +static_assert(sizeof(struct StandardBuildingSite) == 0x648, "Data type is of wrong size"); + +static struct BuildingSiteVftable* __vt__20StandardBuildingSite = (struct BuildingSiteVftable*)0x008c6df4; + +#endif /* BW1_DECOMP_STANDARD_BUILDING_SITE_INCLUDED_H */ diff --git a/black/StartGameBox.h b/black/StartGameBox.h new file mode 100644 index 0000000..a186f43 --- /dev/null +++ b/black/StartGameBox.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_START_GAME_BOX_INCLUDED_H +#define BW1_DECOMP_START_GAME_BOX_INCLUDED_H + +#include /* For static_assert */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +// Forward Declares + +struct SetupBigButton; +struct SetupButton; +struct SetupList; +struct SetupStaticText; + +struct StartGameBox +{ + struct DialogBoxBase super; /* 0x0 */ + struct SetupStaticText* text; /* 0x10 */ + struct SetupList* list; + struct SetupButton* button; + struct SetupBigButton* big_button; +}; +static_assert(sizeof(struct StartGameBox) == 0x20, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__12StartGameBox = (struct DialogBoxBaseVftable*)0x008de99c; + +#endif /* BW1_DECOMP_START_GAME_BOX_INCLUDED_H */ diff --git a/black/StatsBox.h b/black/StatsBox.h new file mode 100644 index 0000000..321cda2 --- /dev/null +++ b/black/StatsBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_STATS_BOX_INCLUDED_H +#define BW1_DECOMP_STATS_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct StatsBox +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x64]; +}; +static_assert(sizeof(struct StatsBox) == 0x74, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__8StatsBox = (struct DialogBoxBaseVftable*)0x008dea14; + +#endif /* BW1_DECOMP_STATS_BOX_INCLUDED_H */ diff --git a/black/StatsDatabase.h b/black/StatsDatabase.h new file mode 100644 index 0000000..32aabaf --- /dev/null +++ b/black/StatsDatabase.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_STATS_DATABASE_INCLUDED_H +#define BW1_DECOMP_STATS_DATABASE_INCLUDED_H + +#include /* For static_assert */ + +#include "MultiplayerDatabase.h" /* For struct MultiplayerDatabase */ + +struct StatsDatabase +{ + struct MultiplayerDatabase super; /* 0x0 */ +}; +static_assert(sizeof(struct StatsDatabase) == 0x10, "Data type is of wrong size"); + +static struct MultiplayerDatabaseVftable* __vt__13StatsDatabase = (struct MultiplayerDatabaseVftable*)0x00930a0c; + +// Constructors + +// win1.41 006338d0 mac 10109a30 StatsDatabase::StatsDatabase(void) +struct StatsDatabase* __fastcall __ct__13StatsDatabaseFv(struct StatsDatabase* this); + +#endif /* BW1_DECOMP_STATS_DATABASE_INCLUDED_H */ diff --git a/black/StoragePit.h b/black/StoragePit.h new file mode 100644 index 0000000..6f511ba --- /dev/null +++ b/black/StoragePit.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_STORAGE_PIT_INCLUDED_H +#define BW1_DECOMP_STORAGE_PIT_INCLUDED_H + +#include /* For static_assert */ + +#include "Abode.h" /* For struct Abode */ + +// Forward Declares + +struct PileFood; +struct PileResource; +struct PileWood; + +struct StoragePit +{ + struct Abode super; /* 0x0 */ + struct PileFood* pile_food; /* 0xc4 */ + struct PileWood* pile_wood; + struct PileResource* field_0xcc; + struct PileResource* field_0xd0; + struct PileResource* field_0xd4; + struct PileResource* field_0xd8; +}; +static_assert(sizeof(struct StoragePit) == 0xdc, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__10StoragePit = (struct MultiMapFixedVftable*)0x008f7030; + +#endif /* BW1_DECOMP_STORAGE_PIT_INCLUDED_H */ diff --git a/black/Stream.h b/black/Stream.h new file mode 100644 index 0000000..7ba67e7 --- /dev/null +++ b/black/Stream.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_STREAM_INCLUDED_H +#define BW1_DECOMP_STREAM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThing.h" /* For struct GameThing */ + +struct GStream +{ + struct GameThing super; /* 0x0 */ + uint8_t field_0x14[0x14]; +}; +static_assert(sizeof(struct GStream) == 0x28, "Data type is of wrong size"); + +static struct GameThingVftable* __vt__7GStream = (struct GameThingVftable*)0x008ebb48; + +// Static methods + +// win1.41 00733ff0 mac 10154580 GStream::CreateAll(void) +void __cdecl CreateAll__7GStreamFv(void); + +DECLARE_LH_LIST_HEAD(GStream); + +#endif /* BW1_DECOMP_STREAM_INCLUDED_H */ diff --git a/black/StreetLantern.h b/black/StreetLantern.h new file mode 100644 index 0000000..1622e2b --- /dev/null +++ b/black/StreetLantern.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_STREET_LANTERN_INCLUDED_H +#define BW1_DECOMP_STREET_LANTERN_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Object.h" /* For struct Object */ + +struct GStreetLantern +{ + struct Object super; /* 0x0 */ + uint8_t field_0x54[0x10]; +}; +static_assert(sizeof(struct GStreetLantern) == 0x64, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__14GStreetLantern = (struct ObjectVftable*)0x008ea8d8; + +DECLARE_LH_LIST_HEAD(GStreetLantern); + +#endif /* BW1_DECOMP_STREET_LANTERN_INCLUDED_H */ diff --git a/black/StreetLight.h b/black/StreetLight.h new file mode 100644 index 0000000..8f8aad0 --- /dev/null +++ b/black/StreetLight.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_STREET_LIGHT_INCLUDED_H +#define BW1_DECOMP_STREET_LIGHT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +struct GStreetLight +{ + struct GameThingWithPos super; /* 0x0 */ + uint32_t field_0x28; +}; +static_assert(sizeof(struct GStreetLight) == 0x2c, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__12GStreetLight = (struct GameThingWithPosVftable*)0x008eb138; + +DECLARE_LH_LIST_HEAD(GStreetLight); + +#endif /* BW1_DECOMP_STREET_LIGHT_INCLUDED_H */ diff --git a/black/TattooEditor.h b/black/TattooEditor.h new file mode 100644 index 0000000..a9fc501 --- /dev/null +++ b/black/TattooEditor.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_TATTOO_EDITOR_INCLUDED_H +#define BW1_DECOMP_TATTOO_EDITOR_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "DialogBoxBase.h" /* For struct DialogBoxBase */ + +struct TattooEditor +{ + struct DialogBoxBase super; /* 0x0 */ + uint8_t field_0x10[0x3218]; +}; +static_assert(sizeof(struct TattooEditor) == 0x3228, "Data type is of wrong size"); + +static struct DialogBoxBaseVftable* __vt__12TattooEditor = (struct DialogBoxBaseVftable*)0x008debf4; + +#endif /* BW1_DECOMP_TATTOO_EDITOR_INCLUDED_H */ diff --git a/black/Temple.h b/black/Temple.h new file mode 100644 index 0000000..58f579b --- /dev/null +++ b/black/Temple.h @@ -0,0 +1,47 @@ +#ifndef BW1_DECOMP_TEMPLE_INCLUDED_H +#define BW1_DECOMP_TEMPLE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t, uintptr_t */ + +// Forward Declares + +struct TempleRoom; + +struct Temple +{ + struct TempleRoom* rooms[0x7]; /* 0x0 */ + struct TempleRoom* active_room; /* 0x1c */ + uintptr_t field_0x20; + uint32_t field_0x24; + float fov; + float field_0x2c; + float field_0x30; + float field_0x34; + float field_0x38; + float field_0x3c; + float field_0x40; + uint32_t field_0x44; + uint8_t field_0x48; + uint8_t field_0x49; + uint8_t field_0x4a; + uint8_t field_0x4b; + uint8_t field_0x4c; + uint8_t field_0x4d; + uint8_t field_0x4e; + uint8_t field_0x4f; + uint32_t field_0x50; +}; +static_assert(sizeof(struct Temple) == 0x54, "Data type is of wrong size"); + +// Static methods + +// win1.41 00794a30 mac 105362a0 Temple::ProcessGameTurn(void) +void __stdcall ProcessGameTurn__6TempleFv(void); + +// Constructors + +// win1.41 00793ac0 mac 10537d50 Temple::Temple(void) +struct Temple* __fastcall __ct__6TempleFv(struct Temple* this); + +#endif /* BW1_DECOMP_TEMPLE_INCLUDED_H */ diff --git a/black/TempleRoom.h b/black/TempleRoom.h new file mode 100644 index 0000000..be00dfc --- /dev/null +++ b/black/TempleRoom.h @@ -0,0 +1,111 @@ +#ifndef BW1_DECOMP_TEMPLE_ROOM_INCLUDED_H +#define BW1_DECOMP_TEMPLE_ROOM_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint32_t, uint8_t, uintptr_t */ + +// Forward Declares + +struct InnerCamera; +struct InnerRoom; + +enum TempleRoomsEnum +{ + WorldRoom = 0x0, + CreatureRoom = 0x1, + ChallengeRoom = 0x2, + UniverseRoom = 0x3, + GameOptionsRoom = 0x4, + SaveGameRoom = 0x5, + CreditsRoom = 0x6, + _TempleRoomsEnum_COUNT = 0x7 +}; +static_assert(sizeof(enum TempleRoomsEnum) == 0x4, "Data type is of wrong size"); + +static const char* TempleRoomsEnum_strs[_TempleRoomsEnum_COUNT] = { + "WorldRoom", + "CreatureRoom", + "ChallengeRoom", + "UniverseRoom", + "GameOptionsRoom", + "SaveGameRoom", + "CreditsRoom", +}; + +struct TempleRoomVftable +{ + uintptr_t field_0x0; + uintptr_t field_0x4; + uintptr_t field_0x8; + uintptr_t field_0xc; + uintptr_t field_0x10; + uintptr_t field_0x14; + uintptr_t field_0x18; + uintptr_t field_0x1c; + uintptr_t field_0x20; + uintptr_t field_0x24; + uintptr_t field_0x28; + uintptr_t field_0x2c; + uintptr_t field_0x30; + uintptr_t field_0x34; + uintptr_t field_0x38; + uintptr_t field_0x3c; +}; +static_assert(sizeof(struct TempleRoomVftable) == 0x40, "Data type is of wrong size"); + +struct TempleRoom +{ + struct TempleRoomVftable* vftable; /* 0x0 */ + char name[0x20]; + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + int32_t field_0x34; + int32_t field_0x38; + uint8_t field_0x3c[0x40]; + uint32_t field_0x7c; + uint8_t field_0x80[0x40]; + struct InnerRoom* inner_room; /* 0xc0 */ + struct InnerCamera* camera; + int32_t field_0xc8; + uint8_t field_0xcc[0x4]; + uint32_t field_0xd0; + uint32_t field_0xd4; + uint32_t field_0xd8; + uint32_t field_0xdc; + uint32_t field_0xe0; + float field_0xe4; + float field_0xe8; +}; +static_assert(sizeof(struct TempleRoom) == 0xec, "Data type is of wrong size"); + +static struct TempleRoomVftable* __vt__10TempleRoom = (struct TempleRoomVftable*)0x0099eec4; + +// Constructors + +// win1.41 00798870 mac 1053f350 TempleRoom::TempleRoom(const char*) +struct TempleRoom* __fastcall __ct__10TempleRoomFPCc(struct TempleRoom* this, const void* edx, const char* name); + +struct InnerRoom +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; + float field_0xc; + uint8_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; +}; +static_assert(sizeof(struct InnerRoom) == 0x2c, "Data type is of wrong size"); + +// Constructors + +// win1.41 00795030 mac 1053bfb0 InnerRoom::InnerRoom(void) +struct InnerRoom* __fastcall __ct__9InnerRoomFv(struct InnerRoom* this); + +#endif /* BW1_DECOMP_TEMPLE_ROOM_INCLUDED_H */ diff --git a/black/TerrainMap.h b/black/TerrainMap.h new file mode 100644 index 0000000..bc5245c --- /dev/null +++ b/black/TerrainMap.h @@ -0,0 +1,19 @@ +#ifndef BW1_DECOMP_TERRAIN_MAP_INCLUDED_H +#define BW1_DECOMP_TERRAIN_MAP_INCLUDED_H + +#include /* For static_assert */ + +#include "Base.h" /* For struct Base */ +#include "TerrainMapInfo.h" /* For struct TerrainMapInfo */ + +struct GTerrainMap +{ + struct Base super; /* 0x0 */ + struct TerrainMapInfo list[0x400]; + struct TerrainMapInfo map_info; /* 0x4a008 */ +}; +static_assert(sizeof(struct GTerrainMap) == 0x4a130, "Data type is of wrong size"); + +static struct BaseVftable* __vt__11GTerrainMap = (struct BaseVftable*)0x008df820; + +#endif /* BW1_DECOMP_TERRAIN_MAP_INCLUDED_H */ diff --git a/black/TerrainMapInfo.h b/black/TerrainMapInfo.h new file mode 100644 index 0000000..cda4a11 --- /dev/null +++ b/black/TerrainMapInfo.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_TERRAIN_MAP_INFO_INCLUDED_H +#define BW1_DECOMP_TERRAIN_MAP_INFO_INCLUDED_H + +#include /* For static_assert */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ +#include "TerrainMapTypeInfo.h" /* For struct TerrainMapTypeInfo */ + +struct TerrainMapInfo +{ + struct GBaseInfo super; /* 0x0 */ + struct TerrainMapTypeInfo type_info[0xe]; /* 0x10 */ +}; +static_assert(sizeof(struct TerrainMapInfo) == 0x128, "Data type is of wrong size"); + +static struct BaseInfoVftable* __vt__14TerrainMapInfo = (struct BaseInfoVftable*)0x008df870; + +#endif /* BW1_DECOMP_TERRAIN_MAP_INFO_INCLUDED_H */ diff --git a/black/TerrainMapTypeInfo.h b/black/TerrainMapTypeInfo.h new file mode 100644 index 0000000..d622949 --- /dev/null +++ b/black/TerrainMapTypeInfo.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_TERRAIN_MAP_TYPE_INFO_INCLUDED_H +#define BW1_DECOMP_TERRAIN_MAP_TYPE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +struct TerrainMapTypeInfo +{ + struct GBaseInfo super; /* 0x0 */ + uint8_t field_0x10; + uint8_t field_0x11; + uint8_t field_0x12; + uint8_t field_0x13; +}; +static_assert(sizeof(struct TerrainMapTypeInfo) == 0x14, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__18TerrainMapTypeInfo = (struct GBaseInfoVftable*)0x008df840; + +#endif /* BW1_DECOMP_TERRAIN_MAP_TYPE_INFO_INCLUDED_H */ diff --git a/black/Totem.h b/black/Totem.h new file mode 100644 index 0000000..d1f5c6b --- /dev/null +++ b/black/Totem.h @@ -0,0 +1,32 @@ +#ifndef BW1_DECOMP_TOTEM_INCLUDED_H +#define BW1_DECOMP_TOTEM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "Abode.h" /* For struct Abode */ +#include "MapCoords.h" /* For struct MapCoords */ + +// Forward Declares + +struct GAbodeInfo; +struct Town; + +struct Totem +{ + struct Abode super; /* 0x0 */ + struct MapCoords field_0xc4; + struct MapCoords field_0xd0; + uint32_t field_0xdc; + uint32_t field_0xe0; +}; +static_assert(sizeof(struct Totem) == 0xe4, "Data type is of wrong size"); + +static struct AbodeVftable* __vt__5Totem = (struct AbodeVftable*)0x008ef57c; + +// Constructors + +// win1.41 00737390 mac 105435b0 Totem::Totem(MapCoords const &, GAbodeInfo const *, Town *, float, float, float, int) +struct Totem* __fastcall __ct__5TotemFRC9MapCoordsPC10GAbodeInfoP4Townfffi(struct Totem* this, const void* edx, const struct MapCoords* coords, const struct GAbodeInfo* info, struct Town* town, float param_4, float param_5, float param_6, int param_7); + +#endif /* BW1_DECOMP_TOTEM_INCLUDED_H */ diff --git a/black/TotemStatue.h b/black/TotemStatue.h new file mode 100644 index 0000000..6590d7d --- /dev/null +++ b/black/TotemStatue.h @@ -0,0 +1,60 @@ +#ifndef BW1_DECOMP_TOTEM_STATUE_INCLUDED_H +#define BW1_DECOMP_TOTEM_STATUE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For struct Zoomer */ + +#include "MultiMapFixed.h" /* For struct MultiMapFixed */ + +// Forward Declares + +struct GTotemStatueInfo; +struct Game3DObject; +struct MapCoords; +struct TownCentre; + +struct TotemStatue +{ + struct MultiMapFixed super; /* 0x0 */ + struct TownCentre* town_centre; /* 0x7c */ + float worship_speed; /* 0x80 */ + uint32_t field_0x84; + float worship_speed_2; + struct Game3DObject* game_3d_object; + float field_0x90; + float field_0x94; + uint32_t field_0x98; + struct Zoomer zoomer; + uint32_t field_0xcc; + uint32_t field_0xd0; + uint32_t field_0xd4; +}; +static_assert(sizeof(struct TotemStatue) == 0xd8, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__11TotemStatue = (struct MultiMapFixedVftable*)0x008e029c; + +// Static methods + +// win1.41 00737cc0 mac 10544f40 TotemStatue::Create(TownCentre *) +struct TotemStatue* __cdecl Create__11TotemStatueFP10TownCentre(struct TownCentre* this); + +// Constructors + +// win1.41 00737b20 mac 10545880 TotemStatue::TotemStatue(TownCentre *, GTotemStatueInfo const *) +struct TotemStatue* __fastcall __ct__11TotemStatueFP10TownCentrePC16GTotemStatueInfo(struct TotemStatue* this, const void* edx, struct TownCentre* tc, struct GTotemStatueInfo* info); + +// Non-virtual methods + +// win1.41 00738260 mac 10544c70 TotemStatue::GetWorshipSpeed(void) +float __fastcall GetWorshipSpeed__11TotemStatueFv(struct TotemStatue* this); +// win1.41 00738270 mac 10544b90 TotemStatue::SetWorshipPercentage(float) +void __fastcall SetWorshipPercentage__11TotemStatueFf(struct TotemStatue* this, const void* edx, float percentage); + +// Override methods + +// win1.41 00737d60 mac 10544f40 TotemStatue::CallVirtualFunctionsForCreation(MapCoords const &) +void __fastcall CallVirtualFunctionsForCreation__11TotemStatueFRC9MapCoords(struct TotemStatue* this, const void* edx, const struct MapCoords* coords); + +#endif /* BW1_DECOMP_TOTEM_STATUE_INCLUDED_H */ diff --git a/black/TotemStatueInfo.h b/black/TotemStatueInfo.h new file mode 100644 index 0000000..c39f5d2 --- /dev/null +++ b/black/TotemStatueInfo.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_TOTEM_STATUE_INFO_INCLUDED_H +#define BW1_DECOMP_TOTEM_STATUE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "MultiMapFixedInfo.h" /* For struct GMultiMapFixedInfo */ + +struct GTotemStatueInfo +{ + struct GMultiMapFixedInfo super; /* 0x0 */ + uint32_t field_0x120; +}; +static_assert(sizeof(struct GTotemStatueInfo) == 0x124, "Data type is of wrong size"); + +static struct GMultiMapFixedInfoVftable* __vt__16GTotemStatueInfo = (struct GMultiMapFixedInfoVftable*)0x00999a48; + +#endif /* BW1_DECOMP_TOTEM_STATUE_INFO_INCLUDED_H */ diff --git a/black/Town.h b/black/Town.h new file mode 100644 index 0000000..dfd9587 --- /dev/null +++ b/black/Town.h @@ -0,0 +1,225 @@ +#ifndef BW1_DECOMP_TOWN_INCLUDED_H +#define BW1_DECOMP_TOWN_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For MAGIC_TYPE_LAST_142, TOWN_DESIRE_INFO_LAST, enum ABODE_TYPE, enum MAGIC_TYPE, enum TRIBE_TYPE */ +#include /* For DECLARE_LH_LINKED_LIST */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Abode.h" /* For struct Abode */ +#include "Artifact.h" /* For struct TownArtifact */ +#include "Belief.h" /* For struct GBelief */ +#include "BuildingSite.h" /* For struct BuildingSite */ +#include "Container.h" /* For struct Container */ +#include "EffectValues.h" /* For struct EffectValues */ +#include "Field.h" /* For struct Field */ +#include "FishFarm.h" /* For struct FishFarm */ +#include "MapCoords.h" /* For struct MapCoords */ +#include "Object.h" /* For struct Object */ +#include "PlannedMultiMapFixed.h" /* For struct PlannedMultiMapFixed */ +#include "TownDesire.h" /* For struct TownDesire */ +#include "TownSpellIcon.h" /* For struct TownSpellIcon */ +#include "TownStats.h" /* For struct TownStats */ +#include "Villager.h" /* For struct Villager */ + +// Forward Declares + +struct Creche; +struct GPlayer; +struct GTownInfo; +struct GTribeInfo; +struct MultiMapFixed; +struct StoragePit; +struct TotemStatue; +struct TownCentre; +struct TownDesireFlags; + +struct PlayerTownInteract +{ + uint32_t field_0x0; + float field_0x4; + float field_0x8; + uint32_t field_0xc; + float field_0x10; + uint32_t field_0x14[0xa]; + struct EffectValues effect_values; /* 0x3c */ + uint32_t field_0x7c; +}; +static_assert(sizeof(struct PlayerTownInteract) == 0x80, "Data type is of wrong size"); + +// Constructors + +// win1.41 0073e040 mac 1054fa10 PlayerTownInteract::PlayerTownInteract(void) +struct PlayerTownInteract* __fastcall __ct__18PlayerTownInteractFv(struct PlayerTownInteract* this); + +struct Town +{ + struct Container super; /* 0x0 */ + struct StoragePit* storage_pit_list; /* 0x30 */ + struct TownDesire desire; + uint8_t field_0x598[0x18]; + char* field_0x5b0; + uint32_t field_0x5b4; + enum TRIBE_TYPE tribe_type; + uint8_t player_number; + float worship_percentage; /* 0x5c0 */ + uint32_t worship_count; + float influence; + int field_0x5cc; + uint32_t field_0x5d0; + uint32_t field_0x5d4; + float belief_in_neutral_player; + float field_0x5dc; + uint32_t field_0x5e0; + uint32_t field_0x5e4; + uint32_t field_0x5e8; + uint32_t field_0x5ec; + uint32_t field_0x5f0; + uint32_t field_0x5f4; + uint32_t field_0x5f8; + uint32_t field_0x5fc; + uint32_t field_0x600; + uint32_t field_0x604; + uint32_t forests; + uint32_t field_0x60c; + struct TownStats stats; /* 0x610 */ + struct MapCoords field_0x728; + struct MapCoords field_0x734; + uint32_t field_0x740; + struct Creche* creche; + uint32_t field_0x748; + struct Abode* abode_0x74c; + uint32_t field_0x750; + struct LHListHead__Abode abode_list; + struct Town* next; + uint32_t field_0x760; + uint32_t field_0x764; + struct LHLinkedList__Villager homeless_list; + uint32_t field_0x770; + uint32_t field_0x774; + struct LHListHead__TownSpellIcon spell_icon_list; + struct LHLinkedList__Field field_list; /* 0x780 */ + struct LHLinkedList__FishFarm fish_farms; + struct LHListHead__BuildingSite building_site_list; /* 0x790 */ + struct GBelief belief; + uint32_t field_0x968; + uint32_t field_0x96c; + uint32_t field_0x970; + uint32_t field_0x974; + uint32_t field_0x978; + struct LHLinkedList__Object playthings; + uint32_t field_0x984; + uint32_t field_0x988; + uint32_t field_0x98c; + uint32_t field_0x990; + struct LHLinkedList__TownArtifact artifacts; + uint32_t field_0x99c; + uint32_t field_0x9a0; + struct TownCentre* town_centre; + struct LHListHead__PlannedMultiMapFixed planned_list; + struct TownDesireFlags* town_desire_flags[TOWN_DESIRE_INFO_LAST]; /* 0x9b0 */ + uint32_t field_0x9f4; + uint32_t field_0x9f8; + struct PlayerTownInteract field_0x9fc[0x8]; + int magic_remainder[MAGIC_TYPE_LAST_142]; /* 0xdfc */ + uint32_t field_0xea4; + uint32_t field_0xea8; + uint32_t field_0xeac; + uint32_t field_0xeb0; + float field_0xeb4; + float field_0xeb8; + uint32_t field_0xebc; + uint32_t field_0xec0; + uint32_t field_0xec4; + void* field_0xec8[0x10]; + uint32_t field_0xf08; + uint32_t field_0xf0c; + struct MapCoords congregation_pos; /* 0xf10 */ + uint32_t field_0xf1c; + uint32_t field_0xf20; + uint32_t field_0xf24; +}; +static_assert(sizeof(struct Town) == 0xf28, "Data type is of wrong size"); + +static struct ContainerVftable* __vt__4Town = (struct ContainerVftable*)0x00999ae4; + +// Static methods + +// win1.41 0073b170 mac 10554ef0 Town::GetNearestTownToPos(MapCoords const &, TRIBE_TYPE, ABODE_TYPE, float) +struct Town* __cdecl GetNearestTownToPos__4TownFRC9MapCoords10TRIBE_TYPE10ABODE_TYPEf(struct MapCoords* coords, enum TRIBE_TYPE tribe_type, enum ABODE_TYPE abode_type, float max_distance); +// win1.41 0073eac0 mac 1054e290 Town::AsssignTownFeature(void) +void __cdecl AsssignTownFeature__4TownFv(void); +// win1.41 007412f0 mac 100233e0 Town::FindClearArea(MapCoords &, MapCoords &, float, float, float, int (Object::)(void const *, void const *), Object *) +bool __cdecl FindClearArea__4TownFR9MapCoordsR9MapCoordsfffM6ObjectFPCvPCv_iP6Object(struct MapCoords* param_1, struct MapCoords* param_2, float param_3, float param_4, float param_5, bool (__fastcall* callback)(struct Object * param_1), int index, uint32_t param_8, uint32_t param_9, struct Object* obj); +// win1.41 007413d0 mac 10038890 Town::CheckForClearArea(MapCoords &, float, int (Object::)(void const *, void const *), Object *) +bool __cdecl CheckForClearArea__4TownFR9MapCoordsfM6ObjectFPCvPCv_iP6Object(struct MapCoords* param_1, float param_2, bool (__fastcall* callback)(struct Object * param_1), int index, uint32_t param_5, uint32_t param_6, struct Object* obj); + +// Constructors + +// win1.41 00739350 mac 105575b0 Town::__ct(MapCoords const &, GTownInfo const *, GPlayer *, TRIBE_TYPE, char *, unsigned long, int) +struct Town* __fastcall __ct__4TownFRC9MapCoordsPC9GTownInfoP7GPlayer10TRIBE_TYPEPcUli(struct Town* this, const void* edx, struct MapCoords* coords, struct GTownInfo* info, struct GPlayer* player, enum TRIBE_TYPE tribe_type, char* param_5, uint32_t param_6, int param_7); + +// Non-virtual methods + +// win1.41 007399a0 mac 10556850 Town::AddStructureToTown(MultiMapFixed *) +void __fastcall AddStructureToTown__4TownFP13MultiMapFixed(struct Town* this, const void* edx, struct MultiMapFixed* structure); +// win1.41 00739a20 mac 105567f0 Town::AddAbodeToTownStats(Abode *) +void __fastcall AddAbodeToTownStats__4TownFP5Abode(struct Town* this, const void* edx, struct Abode* abode); +// win1.41 0073a090 mac 10556400 Town::AddVillagerToTown(Villager *) +bool __fastcall AddVillagerToTown__4TownFP8Villager(struct Town* this, const void* edx, struct Villager* villager); +// win1.41 0073b370 mac 10554d60 Town::FindAbodeWithSpaceInTown(Villager *, float) +struct Abode* __fastcall FindAbodeWithSpaceInTown__4TownFP8Villagerf(struct Town* this, const void* edx, struct Villager* villager, float min_score); +// win1.41 0073b5b0 mac 100572e0 Town::GetStoragePit(void) +struct StoragePit* __fastcall GetStoragePit__4TownFv(struct Town* this); +// win1.41 0073b5d0 mac 10554b00 Town::Birthday(void) +void __fastcall Birthday__4TownFv(struct Town* this); +// win1.41 0073ba20 mac 10554100 Town::RemoveBuildingSite(MultiMapFixed *) +uint32_t __fastcall RemoveBuildingSite__4TownFP13MultiMapFixed(struct Town* this, const void* edx, struct MultiMapFixed* param_1); +// win1.41 0073ba70 mac 10554050 Town::SetBeliefInPlayer(GPlayer *, float) +void __fastcall SetBeliefInPlayer__4TownFP7GPlayerf(struct Town* this, const void* edx, struct GPlayer* player, float value); +// win1.41 0073c060 mac 105539a0 Town::SetWorshipPercentage(float) +void __fastcall SetWorshipPercentage__4TownFf(struct Town* this, const void* edx, float worship_percentage); +// win1.41 0073c0f0 mac 10552710 Town::AdjustWorshipersWorshipping(long, int, int) +void __fastcall AdjustWorshipersWorshipping__4TownFlii(struct Town* this, const void* edx, long param_1, int param_2, int param_3); +// win1.41 0073c840 mac 1005d020 Town::GetTribe(void) const +struct GTribeInfo* __fastcall GetTribe__4TownCFv(struct Town* this); +// win1.41 0073c860 mac 10092530 Town::GetWorshipersNeeded(int, int, int *) +int __fastcall GetWorshipersNeeded__4TownFiiPi(struct Town* this, const void* edx, int param_1, int param_2, int* result); +// win1.41 0073d080 mac 105516a0 Town::AddPlanned(PlannedMultiMapFixed *) +void __fastcall AddPlanned__4TownFP20PlannedMultiMapFixed(struct Town* this, const void* edx, struct PlannedMultiMapFixed* planned); +// win1.41 0073d150 mac 105514f0 Town::AllVillagersCheckNeedNewAbode(void) +void __fastcall AllVillagersCheckNeedNewAbode__4TownFv(struct Town* this); +// win1.41 0073d360 mac 10550fd0 Town::GetNextSpellIcon(TownSpellIcon *) +struct TownSpellIcon* __fastcall GetNextSpellIcon__4TownFP13TownSpellIcon(const struct Town* this, const void* edx, const struct TownSpellIcon* icon); +// win1.41 0073d380 mac 10550e80 Town::AddMagicTypesHeld(MAGIC_TYPE) +bool __fastcall AddMagicTypesHeld__4TownF10MAGIC_TYPE(struct Town* this, const void* edx, enum MAGIC_TYPE type); +// win1.41 0073d630 mac 10550b00 Town::IsMagicTypeHeld(MAGIC_TYPE) +bool __fastcall IsMagicTypeHeld__4TownF10MAGIC_TYPE(struct Town* this, const void* edx, enum MAGIC_TYPE type); +// win1.41 0073e1d0 mac 1054f6b0 Town::GetTotemStatue(void) +struct TotemStatue* __fastcall GetTotemStatue__4TownFv(struct Town* this); +// win1.41 0073e210 mac 1054f460 Town::RemoveVillager(Villager *) +void __fastcall RemoveVillager__4TownFP8Villager(struct Town* this, const void* edx, struct Villager* villager); +// win1.41 0073eb00 mac 1054dfe0 Town::AssignForestsToTown(void) +void __fastcall AssignForestsToTown__4TownFv(struct Town* this); +// win1.41 007408b0 mac 10008020 Town::GetCongregationPos(void) +struct MapCoords* __fastcall GetCongregationPos__4TownFv(struct Town* this, const void* edx, struct MapCoords* coords); +// win1.41 00741b40 mac 105464d0 Town::MakeScenicForest(void) +void __fastcall MakeScenicForest__4TownFv(struct Town* this); +// win1.41 007437f0 mac 10071340 Town::UpdateAttitudeToCreature(void) +void __fastcall UpdateAttitudeToCreature__4TownFv(struct Town* this); +// win1.41 00747380 mac 100556c0 Town::Process(void) +uint32_t __fastcall Process__4TownFv(struct Town* this); +// win1.41 007477a0 mac 10067510 Town::ProcessTownEmergency(void) +void __fastcall ProcessTownEmergency__4TownFv(struct Town* this); +// win1.41 00747970 mac 1006d3c0 Town::IsInStateOfEmergency(void) +bool __fastcall IsInStateOfEmergency__4TownFv(struct Town* this); +// win1.41 007479a0 mac 105602e0 Town::SetInStateOfEmergency(void) +void __fastcall SetInStateOfEmergency__4TownFv(struct Town* this); + +DECLARE_LH_LINKED_LIST(Town); +DECLARE_LH_LIST_HEAD(Town); + +#endif /* BW1_DECOMP_TOWN_INCLUDED_H */ diff --git a/black/TownCentre.h b/black/TownCentre.h new file mode 100644 index 0000000..b285c4b --- /dev/null +++ b/black/TownCentre.h @@ -0,0 +1,70 @@ +#ifndef BW1_DECOMP_TOWN_CENTRE_INCLUDED_H +#define BW1_DECOMP_TOWN_CENTRE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include /* For enum POWER_UP_TYPE, enum SPELL_SEED_TYPE */ +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "Abode.h" /* For struct Abode */ + +// Forward Declares + +struct GAbodeInfo; +struct LH3DObject; +struct MapCoords; +struct PSysInterface; +struct TotemStatue; +struct Town; +struct TownCentreSpellIcon; + +struct TownCentre +{ + struct Abode super; /* 0x0 */ + struct LH3DObject* game_object; /* 0xc4 */ + struct PSysInterface* psys; + struct TotemStatue* totem_statue; + struct TownCentreSpellIcon* icons[0x6]; /* 0xd0 */ +}; +static_assert(sizeof(struct TownCentre) == 0xe8, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__10TownCentre = (struct MultiMapFixedVftable*)0x008e4bfc; + +// Static methods + +// win1.41 00743c90 mac 1055b520 TownCentre::Create(MapCoords const &, GAbodeInfo const *, Town *, float, float, float, int) +struct TownCentre* __cdecl Create__10TownCentreFRC9MapCoordsPC10GAbodeInfoP4Townfffi(const struct MapCoords* coords, const struct GAbodeInfo* info, struct Town* town, float param_4, float param_5, float param_6, int param_7); + +// Constructors + +// win1.41 00743a60 mac 1055bb20 TownCentre::TownCentre(MapCoords const &, GAbodeInfo const *, Town *, float, float, float, int) +struct TownCentre* __fastcall __ct__10TownCentreFRC9MapCoordsPC10GAbodeInfoP4Townfffi(struct TownCentre* this, const void* edx, const struct MapCoords* coords, const struct GAbodeInfo* info, struct Town* town, float param_4, float param_5, float param_6, int param_7); + +// Non-virtual methods + +// win1.41 0069bc10 mac 104274c0 TownCentre::CreatePSys(void) +void __fastcall CreatePSys__10TownCentreFv(struct TownCentre* this); +// win1.41 0069bcc0 mac 1002d390 TownCentre::ProcessPSys(void) +void __fastcall ProcessPSys__10TownCentreFv(struct TownCentre* this); +// win1.41 00743da0 mac 1055b260 TownCentre::CreateTotemIfNecessary(void) +bool __fastcall CreateTotemIfNecessary__10TownCentreFv(struct TownCentre* this); +// win1.41 00743f20 mac 1055af50 TownCentre::GetTotemPos(void) +struct MapCoords* __fastcall GetTotemPos__10TownCentreFv(struct TownCentre* this, const void* edx, struct MapCoords* coords); +// win1.41 00743fa0 mac 1055ae80 TownCentre::FindSpellIcon(SPELL_SEED_TYPE) +struct TownCentreSpellIcon* __fastcall FindSpellIcon__10TownCentreF15SPELL_SEED_TYPE(struct TownCentre* this, const void* edx, enum SPELL_SEED_TYPE type); +// win1.41 00744010 mac 1055ad20 TownCentre::AddPowerUp(SPELL_SEED_TYPE, POWER_UP_TYPE) +void __fastcall AddPowerUp__10TownCentreF15SPELL_SEED_TYPE13POWER_UP_TYPE(struct TownCentre* this, const void* edx, enum SPELL_SEED_TYPE seed_type, enum POWER_UP_TYPE power_up_type); +// win1.41 00744050 mac 1055aac0 TownCentre::AddSpell(SPELL_SEED_TYPE) +bool __fastcall AddSpell__10TownCentreF15SPELL_SEED_TYPE(struct TownCentre* this, const void* edx, enum SPELL_SEED_TYPE seed_type); + +// Override methods + +// win1.41 00743cf0 mac 1055b3c0 TownCentre::CallVirtualFunctionsForCreation(MapCoords const &) +void __fastcall CallVirtualFunctionsForCreation__10TownCentreFRC9MapCoords(struct TownCentre* this, const void* edx, const struct MapCoords* coords); +// win1.41 00743e80 mac 1055b020 TownCentre::MakeFunctional(void) +void __fastcall MakeFunctional__10TownCentreFv(struct TownCentre* this); + +DECLARE_LH_LINKED_LIST(TownCentre); + +#endif /* BW1_DECOMP_TOWN_CENTRE_INCLUDED_H */ diff --git a/black/TownDesire.h b/black/TownDesire.h new file mode 100644 index 0000000..14469ad --- /dev/null +++ b/black/TownDesire.h @@ -0,0 +1,98 @@ +#ifndef BW1_DECOMP_TOWN_DESIRE_INCLUDED_H +#define BW1_DECOMP_TOWN_DESIRE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For TOWN_DESIRE_INFO_LAST, enum TOWN_DESIRE_INFO */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct Town; +struct Villager; + +struct DesireSort +{ + uint32_t field_0x0; + float field_0x4; + enum TOWN_DESIRE_INFO field_0x8; +}; +static_assert(sizeof(struct DesireSort) == 0xc, "Data type is of wrong size"); + +struct TownDesire__field_0x8 +{ + uint8_t field_0x0[0x8]; +}; +static_assert(sizeof(struct TownDesire__field_0x8) == 0x8, "Data type is of wrong size"); + +struct TownDesire +{ + struct Base super; /* 0x0 */ + struct TownDesire__field_0x8 field_0x8[TOWN_DESIRE_INFO_LAST]; + float field_0x90[TOWN_DESIRE_INFO_LAST]; + float field_0xd4[TOWN_DESIRE_INFO_LAST]; + float field_0x118[TOWN_DESIRE_INFO_LAST]; + uint32_t field_0x15fc; /* 0x15c */ + struct Town* town; /* 0x160 */ + float field_0x164; + float field_0x168[TOWN_DESIRE_INFO_LAST]; + uint32_t field_0x1ac[TOWN_DESIRE_INFO_LAST]; + uint32_t field_0x1f0[TOWN_DESIRE_INFO_LAST]; + uint32_t field_0x234[TOWN_DESIRE_INFO_LAST]; + struct DesireSort sorts[TOWN_DESIRE_INFO_LAST]; /* 0x278 */ + struct DesireSort sorts2[TOWN_DESIRE_INFO_LAST]; /* 0x344 */ + uint32_t field_0x410[TOWN_DESIRE_INFO_LAST]; + float field_0x454[TOWN_DESIRE_INFO_LAST]; + uint32_t field_0x498[TOWN_DESIRE_INFO_LAST]; + float field_0x4dc[TOWN_DESIRE_INFO_LAST]; + uint32_t field_0x520[TOWN_DESIRE_INFO_LAST]; +}; +static_assert(sizeof(struct TownDesire) == 0x564, "Data type is of wrong size"); + +static struct BaseVftable* __vt__10TownDesire = (struct BaseVftable*)0x0099a0c8; + +// Constructors + +// win1.41 00745710 mac 1055ead0 TownDesire::TownDesire(void) +struct TownDesire* __fastcall __ct__10TownDesireFv(struct TownDesire* this); + +// Non-virtual methods + +// win1.41 00745ae0 mac 1005c8d0 TownDesire::Process(void) +void __fastcall Process__10TownDesireFv(struct TownDesire* this); + +struct GTownDesireFunction +{ + const char* name; /* 0x0 */ + uint32_t field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; + float (__fastcall* CalculateDesire)(struct Town* this); /* 0x10 */ + uint32_t field_0x14; + uint32_t field_0x18; + int field_0x1c; + int (__fastcall* CalculateActualNumber)(struct Town* this); /* 0x20 */ + uint32_t field_0x24; + uint32_t field_0x28; + int field_0x2c; + int (__fastcall* CalculateDesiredNumber)(struct Town* this); /* 0x30 */ + uint32_t field_0x34; + uint32_t field_0x38; + int field_0x3c; + bool (__fastcall* CheckSatisfyDesire)(struct Villager* this); /* 0x40 */ + uint32_t field_0x44; + uint32_t field_0x48; + int field_0x4c; + float (__fastcall* GetDesireVillagerModification)(struct Town* this); /* 0x50 */ + uint32_t field_0x54; + uint32_t field_0x58; + uint32_t field_0x5c; + int field_0x60; + uint32_t field_0x64; +}; +static_assert(sizeof(struct GTownDesireFunction) == 0x68, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_TOWN_DESIRE_INCLUDED_H */ diff --git a/black/TownDesireFlags.h b/black/TownDesireFlags.h new file mode 100644 index 0000000..e1b2d74 --- /dev/null +++ b/black/TownDesireFlags.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_TOWN_DESIRE_FLAGS_INCLUDED_H +#define BW1_DECOMP_TOWN_DESIRE_FLAGS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Object.h" /* For struct Object */ + +// Forward Declares + +struct MapCoords; + +struct TownDesireFlags +{ + struct Object super; /* 0x0 */ + uint8_t field_0x54[0x44]; +}; +static_assert(sizeof(struct TownDesireFlags) == 0x98, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__15TownDesireFlags = (struct ObjectVftable*)0x008e9b6c; + +// Override methods + +// win1.41 00746dc0 mac 1055d830 TownDesireFlags::CallVirtualFunctionsForCreation(MapCoords const &) +void __fastcall CallVirtualFunctionsForCreation__15TownDesireFlagsFRC9MapCoords(struct TownDesireFlags* this, const void* edx, const struct MapCoords* coords); + +#endif /* BW1_DECOMP_TOWN_DESIRE_FLAGS_INCLUDED_H */ diff --git a/black/TownDesireInfo.h b/black/TownDesireInfo.h new file mode 100644 index 0000000..ec8e721 --- /dev/null +++ b/black/TownDesireInfo.h @@ -0,0 +1,53 @@ +#ifndef BW1_DECOMP_TOWN_DESIRE_INFO_INCLUDED_H +#define BW1_DECOMP_TOWN_DESIRE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For enum MESH_LIST */ +#include /* For enum VILLAGER_BASIC_INFO */ +#include /* For enum HELP_TEXT */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +// Forward Declares + +struct GPrayerIconInfo; +struct GTownDesireFunction; + +struct GTownDesireInfo +{ + struct GBaseInfo super; /* 0x0 */ + struct GPrayerIconInfo* associatedPrayerSite; /* 0x10 */ + float showsAfterPercent; + float desireTriggersVillagerAction; + float desireTriggersVillagerEmergencyAction; + enum VILLAGER_BASIC_INFO associatedVillagerBirth[0x3]; /* 0x20 */ + enum MESH_LIST worshipSiteMesh; + int worshipSiteSlot; /* 0x30 */ + float worshipSiteScale; + float desireToBeliefScale; + float desireAffectsBeliefAfter; + float desireBuildWonderReducer; /* 0x40 */ + float desireValueGreaterCausesDecayInBelief; + float desireToBeliefThresholdDecay; + float desireAffectsAlignmentAfter; + float howImportantDesireIsToAlignment; /* 0x50 */ + uint32_t maxTimeForAlignmentChange; + float tribeMultiplier[0x9]; + enum HELP_TEXT helpStartEnum; /* 0x7c */ + enum HELP_TEXT helpEndEnum; /* 0x80 */ + enum HELP_TEXT helpStatEnum; + uint32_t helpMessage; + uint32_t helpCondition; +}; +static_assert(sizeof(struct GTownDesireInfo) == 0x90, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__15GTownDesireInfo = (struct GBaseInfoVftable*)0x0099a098; + +// Non-virtual methods + +// win1.41 00746580 mac 1005ebc0 GTownDesireInfo::GetDesireFunctions(void) const +struct GTownDesireFunction* __fastcall GetDesireFunctions__15GTownDesireInfoCFv(const struct GTownDesireInfo* this); + +#endif /* BW1_DECOMP_TOWN_DESIRE_INFO_INCLUDED_H */ diff --git a/black/TownInfo.h b/black/TownInfo.h new file mode 100644 index 0000000..6d26b88 --- /dev/null +++ b/black/TownInfo.h @@ -0,0 +1,34 @@ +#ifndef BW1_DECOMP_TOWN_INFO_INCLUDED_H +#define BW1_DECOMP_TOWN_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "ContainerInfo.h" /* For struct GContainerInfo */ + +struct GTownInfo +{ + struct GContainerInfo super; /* 0x0 */ + float field_0x148; + float field_0x14c; + uint32_t field_0x150; + float field_0x154; + float field_0x158; + float field_0x15c; + uint32_t field_0x160; + float field_0x164; + uint32_t field_0x168; + float field_0x16c; + float field_0x170; + float field_0x174; + float field_0x178; + float field_0x17c; + float field_0x180; + float field_0x184; + float field_0x188; +}; +static_assert(sizeof(struct GTownInfo) == 0x18c, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__9GTownInfo = (struct GBaseInfoVftable*)0x00999ab4; + +#endif /* BW1_DECOMP_TOWN_INFO_INCLUDED_H */ diff --git a/black/TownSpellIcon.h b/black/TownSpellIcon.h new file mode 100644 index 0000000..e108133 --- /dev/null +++ b/black/TownSpellIcon.h @@ -0,0 +1,44 @@ +#ifndef BW1_DECOMP_TOWN_SPELL_ICON_INCLUDED_H +#define BW1_DECOMP_TOWN_SPELL_ICON_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include /* For POWER_UP_TYPE_LAST, enum POWER_UP_TYPE */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "SpellIcon.h" /* For struct SpellIcon */ + +// Forward Declares + +struct Town; + +struct TownSpellIcon +{ + struct SpellIcon super; /* 0x0 */ + struct TownSpellIcon* next; /* 0x110 */ + struct Town* town; +}; +static_assert(sizeof(struct TownSpellIcon) == 0x118, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__13TownSpellIcon = (struct MultiMapFixedVftable*)0x008e7794; + +DECLARE_LH_LIST_HEAD(TownSpellIcon); + +struct TownCentreSpellIcon +{ + struct TownSpellIcon super; /* 0x0 */ + uint32_t field_0x118; + uint32_t power_up_enabled[POWER_UP_TYPE_LAST]; +}; +static_assert(sizeof(struct TownCentreSpellIcon) == 0x128, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00748eb0 mac 105612c0 TownCentreSpellIcon::SetPULevel(POWER_UP_TYPE, bool) +void __fastcall SetPULevel__19TownCentreSpellIconF13POWER_UP_TYPEb(struct TownCentreSpellIcon* this, const void* edx, enum POWER_UP_TYPE power_up_type, bool enabled); +// win1.41 00748ed0 mac 10561210 TownCentreSpellIcon::UpdateGraphicWithPULevels(void) +void __fastcall UpdateGraphicWithPULevels__19TownCentreSpellIconFv(struct TownCentreSpellIcon* this); + +#endif /* BW1_DECOMP_TOWN_SPELL_ICON_INCLUDED_H */ diff --git a/black/TownStats.h b/black/TownStats.h new file mode 100644 index 0000000..dd1dbec --- /dev/null +++ b/black/TownStats.h @@ -0,0 +1,70 @@ +#ifndef BW1_DECOMP_TOWN_STATS_INCLUDED_H +#define BW1_DECOMP_TOWN_STATS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For VILLAGER_DISCIPLE_LAST */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct BaseVftable; +struct PlannedMultiMapFixed; + +struct TownStats +{ + struct Base super; /* 0x0 */ + int num_adults; + int num_children; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + uint32_t field_0x34; + uint32_t field_0x38; + uint32_t field_0x3c; + uint32_t field_0x40; + int field_0x44; + int field_0x48; + uint32_t field_0x4c; + uint32_t field_0x50; + uint32_t field_0x54; + uint32_t field_0x58; + uint32_t field_0x5c[0x8]; + uint32_t field_0x7c[0xa]; + uint32_t field_0xa4[0x9]; + uint8_t num_disciples[VILLAGER_DISCIPLE_LAST]; /* 0xc8 */ + uint32_t field_0xd8; + uint32_t field_0xdc; + uint32_t field_0xe0; + uint32_t field_0xe4; + uint32_t field_0xe8; + float wood_used; + float field_0xf0; + float field_0xf4; + float total_food; + float total_wood; + uint32_t field_0x100; + uint32_t field_0x104; + uint32_t field_0x108; + struct BaseVftable* field_0x10c; + uint32_t field_0x110; + uint32_t field_0x114; +}; +static_assert(sizeof(struct TownStats) == 0x118, "Data type is of wrong size"); + +static struct BaseVftable* __vt__9TownStats = (struct BaseVftable*)0x0099a00c; + +// Non-virtual methods + +// win1.41 00749a60 mac 10562330 TownStats::Add(PlannedMultiMapFixed *) +void __fastcall Add__9TownStatsFP20PlannedMultiMapFixed(struct TownStats* this, const void* edx, struct PlannedMultiMapFixed* planned); + +#endif /* BW1_DECOMP_TOWN_STATS_INCLUDED_H */ diff --git a/black/Tree.h b/black/Tree.h new file mode 100644 index 0000000..ed01c1c --- /dev/null +++ b/black/Tree.h @@ -0,0 +1,62 @@ +#ifndef BW1_DECOMP_TREE_INCLUDED_H +#define BW1_DECOMP_TREE_INCLUDED_H + +#include /* For static_assert */ +#include /* For int16_t, uint32_t */ + +#include /* For DECLARE_LH_LINKED_LIST */ + +#include "Fixed.h" /* For struct SingleMapFixed, struct SingleMapFixedVftable */ + +// Forward Declares + +struct Forest; +struct GTreeInfo; +struct MapCoords; +struct Tree; + +struct TreeVftable +{ + struct SingleMapFixedVftable super; /* 0x0 */ + void (__fastcall* GetWoodValueMultiplier)(struct Tree* this); /* 0x868 */ + struct Forest* (__fastcall* GetForest)(struct Tree* this); + void (__fastcall* SetOnFire)(struct Tree* this, const void* edx, float param_1); /* 0x870 */ +}; +static_assert(sizeof(struct TreeVftable) == 0x874, "Data type is of wrong size"); + +struct Tree +{ + struct SingleMapFixed super; /* 0x0 */ + uint32_t field_0x5c; + int16_t field_0x60; + float field_0x64; + struct Forest* forest; +}; +static_assert(sizeof(struct Tree) == 0x6c, "Data type is of wrong size"); + +static struct TreeVftable* __vt__4Tree = (struct TreeVftable*)0x008e92f4; + +// Static methods + +// win1.41 00749ee0 mac 10158ff0 Tree::Create(MapCoords const &, GTreeInfo const *, Forest *, float, float, float) +struct Tree* __cdecl Create__4TreeFRC9MapCoordsPC9GTreeInfoP6Forestfff(struct MapCoords* coords, const struct GTreeInfo* info, struct Forest* forest, float param_4, float param_5, float param_6); + +// Constructors + +// win1.41 00749e00 mac 101591d0 Tree::Tree(MapCoords const &, GTreeInfo const *, Forest *, float, float, float) +struct Tree* __fastcall __ct__4TreeFRC9MapCoordsPC9GTreeInfoP6Forestfff(struct Tree* this, const void* edx, const struct MapCoords* coords, const struct GTreeInfo* info, struct Forest* forest, float param_4, float param_5, float param_6); + +// Override methods + +// win1.41 0074c5f0 mac 101559c0 Tree::CreateCollideData(void) +void __fastcall CreateCollideData__4TreeFv(struct Tree* this); +// win1.41 0074b810 mac 10157550 Tree::GetWoodValueMultiplier(void) +float __fastcall GetWoodValueMultiplier__4TreeFv(struct Tree* this); +// win1.41 0055d910 mac 100f0c30 Tree::GetForest(void) +struct Forest* __fastcall GetForest__4TreeFv(struct Tree* this); +// win1.41 0074c140 mac 10156370 Tree::SetOnFire(float) +void __fastcall SetOnFire__4TreeFf(struct Tree* this, const void* edx, float param_1); + +DECLARE_LH_LINKED_LIST(Tree); + +#endif /* BW1_DECOMP_TREE_INCLUDED_H */ diff --git a/black/TreeInfo.h b/black/TreeInfo.h new file mode 100644 index 0000000..f4748d1 --- /dev/null +++ b/black/TreeInfo.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_TREE_INFO_INCLUDED_H +#define BW1_DECOMP_TREE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "SingleMapFixedInfo.h" /* For struct GSingleMapFixedInfo */ + +struct GTreeInfo +{ + struct GSingleMapFixedInfo super; /* 0x0 */ + uint8_t field_0x100[0x40]; +}; +static_assert(sizeof(struct GTreeInfo) == 0x140, "Data type is of wrong size"); + +static struct GObjectInfoVftable* __vt__9GTreeInfo = (struct GObjectInfoVftable*)0x0099a124; + +#endif /* BW1_DECOMP_TREE_INFO_INCLUDED_H */ diff --git a/black/TribeInfo.h b/black/TribeInfo.h new file mode 100644 index 0000000..74c4a84 --- /dev/null +++ b/black/TribeInfo.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_TRIBE_INFO_INCLUDED_H +#define BW1_DECOMP_TRIBE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For enum TRIBE_TYPE */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +struct GTribeInfo +{ + struct GBaseInfo super; /* 0x0 */ + enum TRIBE_TYPE type; /* 0x10 */ + uint32_t field_0x14; + uint32_t field_0x18; +}; +static_assert(sizeof(struct GTribeInfo) == 0x1c, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__10GTribeInfo = (struct GBaseInfoVftable*)0x0099a190; + +// Static methods + +// win1.41 0074c940 mac 10159bc0 GTribeInfo::GetTribeFromText(char const *) +struct GTribeInfo* __cdecl GetTribeFromText__10GTribeInfoFPCc(const char* str); + +#endif /* BW1_DECOMP_TRIBE_INFO_INCLUDED_H */ diff --git a/black/Utils.h b/black/Utils.h new file mode 100644 index 0000000..c474176 --- /dev/null +++ b/black/Utils.h @@ -0,0 +1,50 @@ +#ifndef BW1_DECOMP_UTILS_INCLUDED_H +#define BW1_DECOMP_UTILS_INCLUDED_H + +#include /* For bool */ +#include /* For uint16_t, uint32_t */ +#include /* For char16_t */ + +// Forward Declares + +struct JustMapXZ; +struct MapCoords; + +// win1.41 00605cd0 mac 10049550 GUtils::GetDistanceInMetres_2(MapCoords const &, MapCoords const &) +float __cdecl GetDistanceInMetres__6GUtilsFRC9MapCoordsRC9MapCoords_2(const struct MapCoords* this, const struct MapCoords* other); +// win1.41 0074ccb0 mac 100495f0 GUtils::GetDistance(MapCoords const &, MapCoords const &) +void __cdecl GetDistance__6GUtilsFRC9MapCoordsRC9MapCoords(struct MapCoords* param_1, struct MapCoords* param_2); +// win1.41 0074cd70 mac 10049550 GUtils::GetDistanceInMetres(MapCoords const &, MapCoords const &) +float __cdecl GetDistanceInMetres__6GUtilsFRC9MapCoordsRC9MapCoords(struct MapCoords* param_1, struct MapCoords* param_2); +// win1.41 0074d200 mac 1004ed70 GUtils::GetAngleFromDXDZ(long, long) +uint16_t __cdecl GetAngleFromDXDZ__6GUtilsFll(long dx, long dz); +// win1.41 0074d240 mac 1004ede0 GUtils::GetAngleFromXZ(MapCoords const &, MapCoords const &) +uint16_t __cdecl GetAngleFromXZ__6GUtilsFRC9MapCoordsRC9MapCoords(struct MapCoords* param_1, struct MapCoords* param_2); +// win1.41 0074d270 mac 100112f0 GUtils::Get3DAngleFromXZ(MapCoords const &, MapCoords const &) +float __cdecl Get3DAngleFromXZ__6GUtilsFRC9MapCoordsRC9MapCoords(const struct MapCoords* param_1, const struct MapCoords* param_2); +// win1.41 0074d580 mac 10061ba0 GUtils::GetPosFromAngle(float, float) +struct MapCoords* __cdecl GetPosFromAngle__6GUtilsFff(struct MapCoords* coords, float angle, float radius); +// win1.41 0074d7e0 mac 10049ad0 GUtils::Spiral(long &, long &) +const struct JustMapXZ* __cdecl Spiral__6GUtilsFRlRl(int* param_1, int* param_2); +// win1.41 0074d810 mac 10021cd0 GUtils::SpiralIncrement(MapCoords &, long &, long &, float) +void __cdecl SpiralIncrement__6GUtilsFR9MapCoordsRlRlf(struct MapCoords* param_1, int* param_2, int* param_3, float param_4); +// win1.41 0074dc50 mac 1004cd50 GUtils::ConvertGameAngleTo3D(long) +float __cdecl ConvertGameAngleTo3D__6GUtilsFl(uint32_t angle); +// win1.41 0074dcc0 mac 10032220 GUtils::ConvertWholeDistanceToMeters(long) +float __cdecl ConvertWholeDistanceToMeters__6GUtilsFl(int param_1); +// win1.41 0074e3a0 mac 104fa7f0 GUtils::FindNearestDrinkingWater(MapCoords &, MapCoords &, float) +bool __cdecl FindNearestDrinkingWater__6GUtilsFR9MapCoordsR9MapCoordsf(struct MapCoords* param_1, struct MapCoords* param_2, float max_dist); +// win1.41 0074f170 mac 10067300 GUtils::SigmoidThreshold(float, float) +float __cdecl SigmoidThreshold__6GUtilsFff(float param_1, float param_2); +// win1.41 0074f290 mac 100673e0 GUtils::GetDistanceModifier(float float) +float __stdcall GetDistanceModifier__6GUtilsFff(float param_1, float param_2); +// win1.41 0074f520 mac 10022930 GUtils::GetMapCellSpiralSizeFromRadius(float) +int __stdcall GetMapCellSpiralSizeFromRadius__6GUtilsFf(float param_1); +// win1.41 0074f540 mac 100027c0 GUtils::GetIncrementSpiralSizeFromRadius(float, float) +int __stdcall GetIncrementSpiralSizeFromRadius__6GUtilsFff(float param_1, float param_2); +// win1.41 0074f620 mac inlined FUN_0074f620 +float __cdecl FUN_0074f620(uint32_t param_1); +// win1.41 008300a0 mac 1000f700 CHAR2WCHAR(char *) +char16_t* __cdecl CHAR2WCHAR__FPc(const char* param_1); + +#endif /* BW1_DECOMP_UTILS_INCLUDED_H */ diff --git a/black/ValueSpinner.h b/black/ValueSpinner.h new file mode 100644 index 0000000..33d0fdd --- /dev/null +++ b/black/ValueSpinner.h @@ -0,0 +1,39 @@ +#ifndef BW1_DECOMP_VALUE_SPINNER_INCLUDED_H +#define BW1_DECOMP_VALUE_SPINNER_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ +#include /* For char16_t */ + +#include /* For struct LH3DColor */ +#include /* For struct LHPoint */ + +#include "DrawingObject.h" /* For struct DrawingObject */ + +// Forward Declares + +struct ValueSpinner; + +struct ValueSpinnerVftable +{ + void (__fastcall* UpdatePosition)(struct ValueSpinner* this, const void* edx, float param_1); /* 0x0 */ + uint32_t (__fastcall* __dt)(struct ValueSpinner* this, const void* edx, bool param_1); +}; +static_assert(sizeof(struct ValueSpinnerVftable) == 0x8, "Data type is of wrong size"); + +struct ValueSpinner +{ + struct DrawingObject super; /* 0x0 */ + struct ValueSpinner* next; + struct LHPoint point; + uint32_t field_0x14; + float field_0x18; + struct LH3DColor color; + char16_t text[0x40]; /* 0x20 */ +}; +static_assert(sizeof(struct ValueSpinner) == 0xa0, "Data type is of wrong size"); + +static struct ValueSpinnerVftable* __vt__12ValueSpinner = (struct ValueSpinnerVftable*)0x008c589c; + +#endif /* BW1_DECOMP_VALUE_SPINNER_INCLUDED_H */ diff --git a/black/Villager.h b/black/Villager.h new file mode 100644 index 0000000..ec8b0a1 --- /dev/null +++ b/black/Villager.h @@ -0,0 +1,246 @@ +#ifndef BW1_DECOMP_VILLAGER_INCLUDED_H +#define BW1_DECOMP_VILLAGER_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int16_t, uint16_t, uint32_t, uint8_t */ + +#include /* For RESOURCE_TYPE_LAST */ +#include /* For VILLAGER_STATE_LAST_STATE, enum VILLAGER_STATES */ +#include /* For DECLARE_LH_LINKED_LIST */ +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThing.h" /* For struct GameThing */ +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ +#include "Living.h" /* For struct Living, struct LivingVftable */ +#include "LivingAction.h" /* For enum LIVING_ACTION_INDEX, struct Living__StateTableEntry */ +#include "Object.h" /* For struct Object */ + +// Forward Declares + +struct Abode; +struct BuildingSite; +struct FireEffect; +struct Football; +struct GPlayer; +struct GVillagerInfo; +struct GameThingVftable; +struct GameThingWithPosVftable; +struct MapCoords; +struct ObjectVftable; +struct Town; +struct Villager; + +struct Villager__StateTable +{ + struct Living__StateTableEntry entries[VILLAGER_STATE_LAST_STATE]; /* 0x0 */ +}; +static_assert(sizeof(struct Villager__StateTable) == 0x8f70, "Data type is of wrong size"); + +struct VillagerVftable +{ + struct LivingVftable super; /* 0x0 */ + const char* (__fastcall* GetVillagerName)(struct Villager* this); /* 0xb40 */ + uint32_t (__fastcall* DrawVillagerInfo)(struct Villager* this); +}; +static_assert(sizeof(struct VillagerVftable) == 0xb48, "Data type is of wrong size"); + +union VillagerBase +{ + struct Living super; + struct GameThing super_gamething; + struct GameThingWithPos super_gamethingwithpos; + struct Object super_object; + struct VillagerVftable* villager_vftable; + struct LivingVftable* living_vftable; + struct ObjectVftable* vftable_object; + struct GameThingVftable* gameThing_vftable; + struct GameThingWithPosVftable* vftable_gameThingWithPos; +}; +static_assert(sizeof(union VillagerBase) == 0xe0, "Data type is of wrong size"); + +struct Villager +{ + union VillagerBase base; /* 0x0 */ + uint16_t field_0xe0; + struct Villager* next; + float food; + int last_check_turn; + bool food_speed_up; /* 0xf0 */ + uint8_t field_0xf1; + uint8_t disciple_type; + uint8_t field_0xf3; + int16_t resource_held[RESOURCE_TYPE_LAST]; + int16_t is_pregnant; + int16_t field_0xfa; + struct BuildingSite* building_site; + struct Villager* mother; /* 0x100 */ + struct GPlayer* last_player_to_interact; + float field_0x108; + float field_0x10c; + uint32_t field_0x110; + struct FireEffect* fire_effect; + struct GameThing* target_thing; + struct Football* football; + uint32_t field_0x120; + uint32_t field_0x124; + struct Abode* home; + struct Town* town; +}; +static_assert(sizeof(struct Villager) == 0x130, "Data type is of wrong size"); + +static struct VillagerVftable* __vt__8Villager = (struct VillagerVftable*)0x008f7960; + +// Static methods + +// win1.41 inlined mac 1061e41c Villager::GetStateTable(void) +struct Living__StateTableEntry* __cdecl GetStateTable__8VillagerFv(enum VILLAGER_STATES state); +// win1.41 0074fbe0 mac 10571750 Villager::Create(MapCoords const &, GVillagerInfo const *, unsigned long, int) +struct Villager* __cdecl Create__8VillagerFRC9MapCoordsPC13GVillagerInfoUli(struct MapCoords* coords, struct GVillagerInfo* info, uint32_t age, bool skeleton); + +// Constructors + +// win1.41 0055c8a0 mac 1030baa0 Villager::Villager(void) +struct Villager* __fastcall __ct__8VillagerFv(struct Villager* this); +// win1.41 0074f950 mac 10571a90 Villager::Villager(MapCoords const &, GVillagerInfo const *, unsigned long, int) +struct Villager* __fastcall __ct__8VillagerFRC9MapCoordsPC13GVillagerInfoUli(struct Villager* this, const void* edx, struct MapCoords* coords, struct GVillagerInfo* info, uint32_t age, bool skeleton); + +// Non-virtual methods + +// win1.41 inlined mac inlined Villager::CallValidate(uchar) +uint32_t __fastcall CallValidate__8VillagerFUc(struct Villager* this, const void* edx, enum LIVING_ACTION_INDEX index); +// win1.41 0074fb20 mac 10571a20 Villager::SetToZero(void) +void __fastcall SetToZero__8VillagerFv(struct Villager* this); +// win1.41 0074fd60 mac 10571210 Villager::DeleteDependancys(void) +void __fastcall DeleteDependancys__8VillagerFv(struct Villager* this); +// win1.41 00750060 mac 1009a920 Villager::FinishedIntoOutOfAnimation(void) +void __fastcall FinishedIntoOutOfAnimation__8VillagerFv(struct Villager* this); +// win1.41 00750060 mac 1004b510 Villager::CheckEveryTime(void) +int __fastcall CheckEveryTime__8VillagerFv(struct Villager* this); +// win1.41 00750ed0 mac 10068820 Villager::SetSpeed__8VillagerFli(int, int) +void __fastcall SetSpeed__8VillagerFli(struct Villager* this, const void* edx, int base_speed, int scale_speed); +// win1.41 00751110 mac 1056f4c0 Villager::IsAMother(void) +bool __fastcall IsAMother__8VillagerFv(struct Villager* this); +// win1.41 007516e0 mac 10003bb0 Villager::CheckTakeResourcesToStoragePit(void) +bool __fastcall CheckTakeResourcesToStoragePit__8VillagerFv(struct Villager* this); +// win1.41 00751720 mac 1056e1f0 Villager::DiscipleDecideWhatToDo(void) +bool __fastcall DiscipleDecideWhatToDo__8VillagerFv(struct Villager* this); +// win1.41 00751f40 mac 1056d040 Villager::GetVillagerAvailableState(void) +enum VILLAGER_STATES __fastcall GetVillagerAvailableState__8VillagerFv(struct Villager* this); +// win1.41 00752120 mac 1007c3b0 Villager::CanPauseForASecond(unsigned char) +uint32_t __fastcall CanPauseForASecond__8VillagerFUc(struct Villager* this, const void* edx, enum VILLAGER_STATES state); +// win1.41 00752160 mac 1000a960 Villager::GetAbode(void) +struct Abode* __fastcall GetAbode__8VillagerFv(const struct Villager* this); +// win1.41 007521d0 mac 1004b330 Villager::CallState(void) +uint32_t __fastcall CallState__8VillagerFv(struct Villager* this); +// win1.41 00752210 mac 10020260 Villager::IsPregnant(void) +bool __fastcall IsPregnant__8VillagerFv(struct Villager* this); +// win1.41 00752290 mac 1056c8b0 Villager::IsVillagerAvailable(void) +bool __fastcall IsVillagerAvailable__8VillagerFv(struct Villager* this); +// win1.41 007523d0 mac 10075c50 Villager::CallEntryStateFunction(unsigned char) +bool __fastcall CallEntryStateFunction__8VillagerFUc(struct Villager* this, const void* edx, enum VILLAGER_STATES state); +// win1.41 00752440 mac 1007b1b0 Villager::CallEntryStateFunction(unsigned char, unsigned char) +bool __fastcall CallEntryStateFunction__8VillagerFUcUc(struct Villager* this, const void* edx, enum VILLAGER_STATES current, enum VILLAGER_STATES destination); +// win1.41 00752600 mac 1001ff70 Villager::IsHungry(void) +bool __fastcall IsHungry__8VillagerFv(struct Villager* this); +// win1.41 00753430 mac 10051360 Villager::ProcessFoodSpeedup(void) +void __fastcall ProcessFoodSpeedup__8VillagerFv(struct Villager* this); +// win1.41 00753560 mac 1006a5f0 Villager::AdjustTownModifier(VILLAGER_STATES, int) +void __fastcall AdjustTownModifier__8VillagerF15VILLAGER_STATESi(struct Villager* this, const void* edx, enum VILLAGER_STATES state, int param_2); +// win1.41 00753b50 mac 10099cf0 Villager::SetupNothingToDo(void) +uint32_t __fastcall SetupNothingToDo__8VillagerFv(struct Villager* this); +// win1.41 00753c70 mac 1000e4e0 Villager::GetChillOutPos(MapCoords &) +uint32_t __fastcall GetChillOutPos__8VillagerFR9MapCoords(struct Villager* this, const void* edx, struct MapCoords* coords); +// win1.41 00753d50 mac 100096d0 Villager::GetPosOutsideMyHouse(MapCoords &) +int __fastcall GetPosOutsideMyHouse__8VillagerFR9MapCoords(const struct Villager* this, const void* edx, struct MapCoords* coords); +// win1.41 00753dd0 mac 10569aa0 Villager::VillagerCreated(void) +uint32_t __fastcall VillagerCreated__8VillagerFv(struct Villager* this); +// win1.41 007562c0 mac 105652e0 Villager::SetSkeleton(int) +void __fastcall SetSkeleton__8VillagerFi(struct Villager* this, const void* edx, bool param_1); +// win1.41 00756be0 mac 10563bb0 Villager::FindChildrenAndOrphanThem(void) +void __fastcall FindChildrenAndOrphanThem__8VillagerFv(struct Villager* this); +// win1.41 007579f0 mac 10573ed0 Villager::ChildGotoCreche(void) +uint32_t __fastcall ChildGotoCreche__8VillagerFv(struct Villager* this); +// win1.41 00757e80 mac 10084940 Villager::CheckChild(void) +uint32_t __fastcall CheckChild__8VillagerFv(struct Villager* this); +// win1.41 00757ec0 mac 10573a80 Villager::ChildDecideWhatToDo(void) +bool __fastcall ChildDecideWhatToDo__8VillagerFv(struct Villager* this); +// win1.41 00757f40 mac 10095500 Villager::IsMotherAlive(void) +bool __fastcall IsMotherAlive__8VillagerFv(struct Villager* this); +// win1.41 007580d0 mac 105733f0 Villager::MakeChildOrphaned(Villager *) +uint32_t __fastcall MakeChildOrphaned__8VillagerFP8Villager(struct Villager* this, const void* edx, struct Villager* param_1); +// win1.41 007581a0 mac 1007dae0 Villager::CheckNeededForTownDesire(void) +uint32_t __fastcall CheckNeededForTownDesire__8VillagerFv(struct Villager* this); +// win1.41 00758990 mac 10575f70 Villager::ArrivesAtStoragePitForBuildingMaterials(void) +uint32_t __fastcall ArrivesAtStoragePitForBuildingMaterials__8VillagerFv(struct Villager* this); +// win1.41 00758af0 mac 10575ab0 Villager::ArrivesAtBuildingSite(void) +uint32_t __fastcall ArrivesAtBuildingSite__8VillagerFv(struct Villager* this); +// win1.41 0075bb50 mac 10087950 Villager::GetDesireForFood(void) +float __fastcall GetDesireForFood__8VillagerFv(struct Villager* this); +// win1.41 0075ff80 mac 1000a8c0 Villager::CheckNeededForSomething(void) +bool __fastcall CheckNeededForSomething__8VillagerFv(struct Villager* this); +// win1.41 00760270 mac 1009edb0 Villager::GoHome(void) +bool __fastcall GoHome__8VillagerFv(struct Villager* this); +// win1.41 00760280 mac 1009a4b0 Villager::DoGoingHome(VILLAGER_STATES, VILLAGER_STATES) +bool __fastcall DoGoingHome__8VillagerF15VILLAGER_STATES15VILLAGER_STATES(struct Villager* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); +// win1.41 007604f0 mac 10588e30 Villager::GetTentPos(MapCoords&) +struct Town* __fastcall GetTentPos__8VillagerFR9MapCoords(struct Villager* this, const void* edx, struct MapCoords* coords); +// win1.41 007606e0 mac 10588820 Villager::Landed(void) +uint32_t __fastcall Landed__8VillagerFv(struct Villager* this); +// win1.41 00760930 mac 1000c320 Villager::ArrivesHome(void) +uint32_t __fastcall ArrivesHome__8VillagerFv(struct Villager* this); +// win1.41 00760b10 mac 10004a80 Villager::AtHome(void) +uint32_t __fastcall AtHome__8VillagerFv(struct Villager* this); +// win1.41 00765320 mac 10590720 Villager::ArrivesAtPickupBallReaction(void) +uint32_t __fastcall ArrivesAtPickupBallReaction__8VillagerFv(struct Villager* this); +// win1.41 00769620 mac 10096900 Villager::GotoStoragePitForDropOff(void) +uint32_t __fastcall GotoStoragePitForDropOff__8VillagerFv(struct Villager* this); +// win1.41 007696d0 mac 100062f0 Villager::ArrivesAtStoragePitForDropOff(void) +uint32_t __fastcall ArrivesAtStoragePitForDropOff__8VillagerFv(struct Villager* this); +// win1.41 00769830 mac 10096ac0 Villager::GotoStoragePitForFood(void) +uint32_t __fastcall GotoStoragePitForFood__8VillagerFv(struct Villager* this); +// win1.41 007698b0 mac 1059c070 Villager::ArrivesAtStoragePitForFood(void) +uint32_t __fastcall ArrivesAtStoragePitForFood__8VillagerFv(struct Villager* this); +// win1.41 00769b30 mac 1059bbc0 Villager::ArrivesAtHomeWithFood(void) +uint32_t __fastcall ArrivesAtHomeWithFood__8VillagerFv(struct Villager* this); +// win1.41 0076a780 mac inlined Villager::Drowning(void) +uint32_t __fastcall Drowning__8VillagerFv(struct Villager* this); +// win1.41 0076b090 mac 1009deb0 Villager::SetupPauseForASecond(VILLAGER_STATES) +uint32_t __fastcall SetupPauseForASecond__8VillagerF15VILLAGER_STATES(struct Villager* this, const void* edx, enum VILLAGER_STATES state); +// win1.41 0076b3f0 mac 1001b410 Villager::GoAndChilloutOutsideHome(void) +bool __fastcall GoAndChilloutOutsideHome__8VillagerFv(struct Villager* this); +// win1.41 0076b570 mac 10005660 Villager::EnterSitAndChillOut(unsigned char, unsigned char) +int __fastcall EnterSitAndChillOut__8VillagerFUcUc(struct Villager* this, const void* edx, enum VILLAGER_STATES state_1, enum VILLAGER_STATES state_2); +// win1.41 0076b610 mac 100118e0 Villager::GetMeToMyChillOutPos(int (Villager::)(void const *, void* , MapCoords &), MapCoords &, float, MapCoords const &) +void __fastcall GetMeToMyChillOutPos__8VillagerFM8VillagerFPCvPvR9MapCoords_iR9MapCoordsfRC9MapCoords(struct Villager* this, const void* edx, int (__fastcall* callback)(const struct Villager * param_1, const void * param_2, struct MapCoords * param_3), const void* unused_1, const void* unused_2, const void* unused_3, struct MapCoords* param_5, float param_6, struct MapCoords* param_7); + +// Override methods + +// win1.41 007521b0 mac 1056caa0 Villager::ToBeDeleted(int) +void __fastcall ToBeDeleted__8VillagerFi(struct Villager* this, const void* edx, int param_1); +// win1.41 0074ff70 mac 1004b3c0 Villager::ProcessState(void) +uint32_t __fastcall ProcessState__8VillagerFv(struct Villager* this); +// win1.41 007515c0 mac 10098ff0 Villager::DecideWhatToDo(void) +bool __fastcall DecideWhatToDo__8VillagerFv(struct Villager* this); +// win1.41 007528c0 mac 1056b4c0 Villager::SetAge(unsigned long) +void __fastcall SetAge__8VillagerFUl(struct Villager* this, const void* edx, uint32_t age); +// win1.41 007520e0 mac 10087ab0 Villager::SetCurrentAndDestinationState(unsigned char, unsigned char) +int __fastcall SetCurrentAndDestinationState__8VillagerFUcUc(struct Villager* this, const void* edx, enum VILLAGER_STATES current, enum VILLAGER_STATES destination); +// win1.41 00752010 mac 1007bba0 Villager::SetTopState(unsigned char) +int __fastcall SetTopState__8VillagerFUc(struct Villager* this, const void* edx, enum VILLAGER_STATES state); +// win1.41 00753690 mac 1006a4d0 Villager::SetState(unsigned long, unsigned char) +void __fastcall SetState__8VillagerFUlUc(struct Villager* this, const void* edx, enum LIVING_ACTION_INDEX index, enum VILLAGER_STATES state); +// win1.41 00751dd0 mac 1004ec00 Villager::GetFinalState(void) const +enum VILLAGER_STATES __fastcall GetFinalState__8VillagerCFv(struct Villager* this); +// win1.41 0055ca40 mac 100c54f0 Villager::GetVillagerName(void) +const char* __fastcall GetVillagerName__8VillagerFv(struct Villager* this); +// win1.41 0051b510 mac 10057c40 Villager::DrawVillagerInfo(void) +uint32_t __fastcall DrawVillagerInfo__8VillagerFv(struct Villager* this); + +DECLARE_LH_LINKED_LIST(Villager); +DECLARE_LH_LIST_HEAD(Villager); + +// win1.41 00d09198 mac inlined get_villager_state_table +struct Villager__StateTable* __cdecl get_villager_state_table(void); + +#endif /* BW1_DECOMP_VILLAGER_INCLUDED_H */ diff --git a/black/VillagerInfo.h b/black/VillagerInfo.h new file mode 100644 index 0000000..a04ef26 --- /dev/null +++ b/black/VillagerInfo.h @@ -0,0 +1,132 @@ +#ifndef BW1_DECOMP_VILLAGER_INFO_INCLUDED_H +#define BW1_DECOMP_VILLAGER_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint32_t */ + +#include /* For enum ANIM_LIST, enum MESH_LIST */ +#include /* For enum JOB_INFO, enum SEX_TYPE, enum TOWN_DESIRE_INFO, enum TRIBE_TYPE, enum VILLAGER_NUMBER */ + +#include "LivingInfo.h" /* For struct GLivingInfo */ + +struct DiscipleInfo +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + enum TOWN_DESIRE_INFO desire_i_fulfil; + uint32_t field_0x18; +}; +static_assert(sizeof(struct DiscipleInfo) == 0x1c, "Data type is of wrong size"); + +struct AgeToScale +{ + float values[0x14]; /* 0x0 */ +}; +static_assert(sizeof(struct AgeToScale) == 0x50, "Data type is of wrong size"); + +struct GVillagerInfo +{ + struct GLivingInfo super; /* 0x0 */ + enum TRIBE_TYPE tribeType; /* 0x1f4 */ + enum SEX_TYPE sex; + enum VILLAGER_NUMBER villagerNumber; + enum MESH_LIST superMesh; /* 0x200 */ + enum MESH_LIST childMeshHigh; + enum MESH_LIST childMeshMedium; + enum MESH_LIST childMeshLow; + enum MESH_LIST highDetail; /* 0x210 */ + enum MESH_LIST stdDetail; + enum MESH_LIST lowDetail; + enum JOB_INFO primaryJob; + enum JOB_INFO secondaryJob; /* 0x220 */ + float jobEfficency; + uint32_t startHavingSexAge; + uint32_t stopHavingSexAge; + int wantSexSpring; /* 0x230 */ + int wantSexSummer; + int wantSexAutumn; + int wantSexWinter; + uint32_t timePregnantFor; /* 0x240 */ + uint32_t lookForJobDelay; + uint32_t waitAtHome; + uint32_t restAtHomeTime; + float restAtHomeRestoresLifeBy; /* 0x250 */ + float pregnancyChance; + uint32_t inheritence; + uint32_t boyGirlChance; + float aveageHeightOfAdult; /* 0x260 */ + uint32_t maxFoodCarried; + uint32_t maxWoodCarried; + uint32_t minWoodToShowGraphic; + uint32_t minFoodToShowGraphic; /* 0x270 */ + uint32_t maxTraderFoodCarried; + uint32_t maxTraderWoodCarried; + float woodUsedPerBuildCycle; + float repairAmount; /* 0x280 */ + uint32_t jobSpeed; + float percentLazy; + float chantLifeRate; + uint32_t dyingTimeWithoutGraveyard; /* 0x290 */ + uint32_t dyingTimeWithGraveyard; + uint32_t timeForFootballChance; + uint32_t footballWinGoalTime; + uint32_t footballLostGoalTime; /* 0x2a0 */ + float lookAheadDistance; + uint32_t scaredStiffTime; + uint32_t waitForDinner; + uint32_t housewifeGossipTime; /* 0x2b0 */ + uint32_t housewifeWaits; + float foodNurishmentMultiplier; + float gameTurnReducesFoodInBellyBy; + float hungryForFood; /* 0x2c0 */ + float starvingForFood; + float happyWithFood; + float fullWithFood; + float hungerToLifeMultiplier; /* 0x2d0 */ + float starvingToLifeMultiplier; + uint32_t foodReqiredForDinner; + uint32_t processChecksEvery; + uint32_t havingSexTime; /* 0x2e0 */ + uint32_t dancingSpeed; + struct AgeToScale ageToScale; + enum ANIM_LIST lAttractAnim[0x3]; /* 0x338 */ + enum ANIM_LIST lNeedAnim[0x3]; /* 0x344 */ + float maxDistCarryFoodPit; /* 0x350 */ + float maxDistCarryWoodPit; + uint32_t allowFaceSubstitution; + float damageThresholdToGoHome; + float damageThresholdToSleepUntil; /* 0x360 */ + uint32_t numGameTurnsAfterAggressionInterestedInShield; + float pauseForASecondChance; + float baseForTownNeedsSpeedMod; + float divisorForTownNeedsSpeedMod; /* 0x370 */ + float speedModWhenFullLoadOfWood; + float speedModWhenFullLoadOfFood; + float lifeWhenWalksWounded; + float lifeWhenCrawlsWounded; /* 0x380 */ + uint32_t amountOfWoodPerBuilderWanted; + uint32_t keepMeshWhenChangeTown; + float ownDesireThreshold; + float maxDistanceFromArtifactDanceCanBe; /* 0x390 */ + uint16_t initialChillOutTime; + uint16_t subsequentChillOutTime; + uint16_t timeToWaitForArtifactDance; + uint16_t drowningTime; + float foodPowerupIncrease; + float missionaryImpressiveValue; /* 0x3a0 */ +}; +static_assert(sizeof(struct GVillagerInfo) == 0x3a4, "Data type is of wrong size"); + +static struct GObjectInfoVftable* __vt__13GVillagerInfo = (struct GObjectInfoVftable*)0x0099a3e4; + +// Static methods + +// win1.41 007519e0 mac 1056df60 GVillagerInfo::GetInfoFromText(char *) +int __cdecl GetInfoFromText__13GVillagerInfoFPc(const char* text); +// win1.41 00752650 mac 1056be30 GVillagerInfo::Find(TRIBE_TYPE, VILLAGER_NUMBER) +struct GVillagerInfo* __cdecl Find__13GVillagerInfoF10TRIBE_TYPE15VILLAGER_NUMBER(enum TRIBE_TYPE type, int villager_number); + +#endif /* BW1_DECOMP_VILLAGER_INFO_INCLUDED_H */ diff --git a/black/VillagerNameBlock.h b/black/VillagerNameBlock.h new file mode 100644 index 0000000..a21836a --- /dev/null +++ b/black/VillagerNameBlock.h @@ -0,0 +1,63 @@ +#ifndef BW1_DECOMP_VILLAGER_NAME_BLOCK_INCLUDED_H +#define BW1_DECOMP_VILLAGER_NAME_BLOCK_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ +#include /* For char16_t */ + +#include /* For struct LH3DColor */ +#include /* For struct LHPoint */ + +#include "DrawingObject.h" /* For struct DrawingObject */ + +// Forward Declares + +struct VillagerName; + +struct VillagerNameVftable +{ + void (__fastcall* AddDrawing)(struct VillagerName* this); /* 0x0 */ +}; +static_assert(sizeof(struct VillagerNameVftable) == 0x4, "Data type is of wrong size"); + +struct VillagerName +{ + struct DrawingObject super; /* 0x0 */ + float left; + float top; + float right; + float bottom; /* 0x10 */ + float arrow_x; + float arrow_y; + float depth; + float text_size; /* 0x20 */ + float field_0x24; + int num_lines; + float text_padding; + char16_t field_0x30[0x100]; + uint8_t field_0x230[0x200]; + char16_t* lines[0x8]; /* 0x430 */ + struct LH3DColor color; /* 0x450 */ + struct LHPoint point; + struct VillagerName* next; /* 0x460 */ +}; +static_assert(sizeof(struct VillagerName) == 0x464, "Data type is of wrong size"); + +static struct DrawingObjectVftable* __vt__12VillagerName = (struct DrawingObjectVftable*)0x0099a9bc; + +// Static methods + +// win1.41 007629e0 mac 1058b1a0 VillagerName::Add(float, LHPoint, wchar_t *, LH3DColor &) +struct VillagerName* __cdecl Add__12VillagerNameFf7LHPointPwR9LH3DColor(float text_size, struct LHPoint point, const char16_t* text, const struct LH3DColor* p_color); + +// Override methods + +// win1.41 007628a0 mac 100b5250 VillagerName::AddDrawing(void) +void __fastcall AddDrawing__12VillagerNameFv(struct VillagerName* this); + +// win1.41 00762720 mac 1058ba90 VillagerNameBlock::Alloc(void) +struct VillagerName* __cdecl Alloc__17VillagerNameBlockFv(void); +// win1.41 00762780 mac 1058b960 VillagerNameBlock::Delete(VillagerName *) +void __cdecl Delete__17VillagerNameBlockFP12VillagerName(struct VillagerName* name); + +#endif /* BW1_DECOMP_VILLAGER_NAME_BLOCK_INCLUDED_H */ diff --git a/black/VillagerStateTableInfo.h b/black/VillagerStateTableInfo.h new file mode 100644 index 0000000..8d4b55d --- /dev/null +++ b/black/VillagerStateTableInfo.h @@ -0,0 +1,58 @@ +#ifndef BW1_DECOMP_VILLAGER_STATE_TABLE_INFO_INCLUDED_H +#define BW1_DECOMP_VILLAGER_STATE_TABLE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For bool32_t */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +struct GVillagerStateTableInfo +{ + struct GBaseInfo super; /* 0x0 */ + uint32_t field_0x10; + int field_0x14; + float field_0x18; + bool32_t isFinalState; + int field_0x20; + uint32_t field_0x24; + uint32_t isScriptState; + uint32_t isScriptInterruptableState; + int field_0x30; + uint32_t field_0x34; + char name[0x80]; + int field_0xb8; + uint32_t field_0xbc; + uint32_t field_0xc0; + uint32_t field_0xc4; + int field_0xc8; + uint32_t field_0xcc; + int field_0xd0; + int field_0xd4; + float field_0xd8; + float field_0xdc; + uint32_t field_0xe0; + uint32_t field_0xe4; + uint32_t field_0xe8; + int field_0xec; + uint32_t field_0xf0; + uint32_t field_0xf4; + uint32_t field_0xf8; + uint32_t field_0xfc; + uint32_t field_0x100; + uint32_t field_0x104; + float field_0x108; + float field_0x10c; + uint32_t field_0x110; +}; +static_assert(sizeof(struct GVillagerStateTableInfo) == 0x114, "Data type is of wrong size"); + +static struct BaseVftable* __vt__23GVillagerStateTableInfo = (struct BaseVftable*)0x0099aa24; + +// Static methods + +// win1.41 inlined mac 1004aff0 GVillagerStateTableInfo::GetInfo(void) +struct GVillagerStateTableInfo* __cdecl GetInfo__23GVillagerStateTableInfoFv(void); + +#endif /* BW1_DECOMP_VILLAGER_STATE_TABLE_INFO_INCLUDED_H */ diff --git a/black/VirtualInfluence.h b/black/VirtualInfluence.h new file mode 100644 index 0000000..ff56565 --- /dev/null +++ b/black/VirtualInfluence.h @@ -0,0 +1,46 @@ +#ifndef BW1_DECOMP_VIRTUAL_INFLUENCE_INCLUDED_H +#define BW1_DECOMP_VIRTUAL_INFLUENCE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "Base.h" /* For struct Base */ + +// Forward Declares + +struct GInterfaceStatus; + +struct GVirtualInfluence +{ + struct Base super; /* 0x0 */ + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + float field_0x30; + float field_0x34; + struct GInterfaceStatus* interface_status; + uint32_t field_0x3c; + float field_0x40; + uint32_t field_0x44; + uint32_t field_0x48; + uint32_t field_0x4c; + uint32_t field_0x50; + uint8_t field_0x54[0xc]; +}; +static_assert(sizeof(struct GVirtualInfluence) == 0x60, "Data type is of wrong size"); + +static struct BaseVftable* __vt__17GVirtualInfluence = (struct BaseVftable*)0x0099aa70; + +// Constructors + +// win1.41 0076cca0 mac 1015a6f0 GVirtualInfluence::GVirtualInfluence(GInterfaceStatus *) +void __fastcall __ct__17GVirtualInfluenceFP16GInterfaceStatus(struct GVirtualInfluence* this, const void* edx, struct GInterfaceStatus* status); + +#endif /* BW1_DECOMP_VIRTUAL_INFLUENCE_INCLUDED_H */ diff --git a/black/ViscousLiquid.h b/black/ViscousLiquid.h new file mode 100644 index 0000000..d299fd1 --- /dev/null +++ b/black/ViscousLiquid.h @@ -0,0 +1,62 @@ +#ifndef BW1_DECOMP_VISCOUS_LIQUID_INCLUDED_H +#define BW1_DECOMP_VISCOUS_LIQUID_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct FragMesh; +struct GameOSFile; +struct LH3DMesh; +struct LH3DPrimitive; + +struct FragVertex +{ + uint8_t field_0x0[0x14]; +}; +static_assert(sizeof(struct FragVertex) == 0x14, "Data type is of wrong size"); + +// Constructors + +// win1.41 0076d970 mac 1015ce60 FragVertex::FragVertex(void) +struct FragVertex* __fastcall __ct__10FragVertexFv(struct FragVertex* this); + +struct FragTriangle +{ + uint32_t field_0x0; + struct FragVertex vertices[0x3]; + uint8_t field_0x40[0x18]; +}; +static_assert(sizeof(struct FragTriangle) == 0x58, "Data type is of wrong size"); + +struct FragPrimitive +{ + struct LH3DPrimitive* lh3d_primitive; /* 0x0 */ + uint32_t field_0x4[0x3]; + struct FragTriangle* triangle; /* 0x10 */ +}; +static_assert(sizeof(struct FragPrimitive) == 0x14, "Data type is of wrong size"); + +// Constructors + +// win1.41 0076d7a0 mac 1015de30 FragPrimitive::FragPrimitive(GameOSFile &, LH3DMesh *) +struct FragMesh* __fastcall __ct__13FragPrimitiveFR10GameOSFileP8LH3DMesh(struct FragPrimitive* this, const void* edx, struct GameOSFile* file, struct LH3DMesh* mesh); + +struct FragMesh +{ + uint32_t field_0x0; + uint32_t count; + uint32_t field_0x8; + struct FragPrimitive* primitives; + uint32_t field_0x10; + uint8_t field_0x14[0x14]; +}; +static_assert(sizeof(struct FragMesh) == 0x28, "Data type is of wrong size"); + +// Constructors + +// win1.41 0076d520 mac 1015e3a0 FragMesh::FragMesh(GameOSFile &, LH3DMesh *) +struct FragMesh* __fastcall __ct__8FragMeshFR10GameOSFileP8LH3DMesh(struct FragMesh* this, const void* edx, struct GameOSFile* file, struct LH3DMesh* mesh); + +#endif /* BW1_DECOMP_VISCOUS_LIQUID_INCLUDED_H */ diff --git a/black/Waterfall.h b/black/Waterfall.h new file mode 100644 index 0000000..a0c27b6 --- /dev/null +++ b/black/Waterfall.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_WATERFALL_INCLUDED_H +#define BW1_DECOMP_WATERFALL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "Object.h" /* For struct Object */ + +struct GWaterfall +{ + struct Object super; /* 0x0 */ + uint8_t field_0x54[0x4]; +}; +static_assert(sizeof(struct GWaterfall) == 0x58, "Data type is of wrong size"); + +static struct ObjectVftable* __vt__10GWaterfall = (struct ObjectVftable*)0x008ec14c; + +DECLARE_LH_LIST_HEAD(GWaterfall); + +#endif /* BW1_DECOMP_WATERFALL_INCLUDED_H */ diff --git a/black/Waypoint.h b/black/Waypoint.h new file mode 100644 index 0000000..10553d6 --- /dev/null +++ b/black/Waypoint.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_WAYPOINT_INCLUDED_H +#define BW1_DECOMP_WAYPOINT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +struct Waypoint +{ + struct GameThingWithPos super; /* 0x0 */ + uint8_t field_0x28[0x4]; +}; +static_assert(sizeof(struct Waypoint) == 0x2c, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__8Waypoint = (struct GameThingWithPosVftable*)0x0099b4ac; + +DECLARE_LH_LIST_HEAD(Waypoint); + +#endif /* BW1_DECOMP_WAYPOINT_INCLUDED_H */ diff --git a/black/WeatherInfo.h b/black/WeatherInfo.h new file mode 100644 index 0000000..34520d5 --- /dev/null +++ b/black/WeatherInfo.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_WEATHER_INFO_INCLUDED_H +#define BW1_DECOMP_WEATHER_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "BaseInfo.h" /* For struct GBaseInfo */ + +struct WeatherInfo +{ + struct GBaseInfo super; /* 0x0 */ + uint8_t field_0x10[0x54]; +}; +static_assert(sizeof(struct WeatherInfo) == 0x64, "Data type is of wrong size"); + +static struct GBaseInfoVftable* __vt__11WeatherInfo = (struct GBaseInfoVftable*)0x0099b9b8; + +#endif /* BW1_DECOMP_WEATHER_INFO_INCLUDED_H */ diff --git a/black/WeatherThing.h b/black/WeatherThing.h new file mode 100644 index 0000000..0d8fdc3 --- /dev/null +++ b/black/WeatherThing.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_WEATHER_THING_INCLUDED_H +#define BW1_DECOMP_WEATHER_THING_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "GameThingWithPos.h" /* For struct GameThingWithPos */ + +struct WeatherThing +{ + struct GameThingWithPos super; /* 0x0 */ + uint8_t field_0x28[0x60]; +}; +static_assert(sizeof(struct WeatherThing) == 0x88, "Data type is of wrong size"); + +static struct GameThingWithPosVftable* __vt__12WeatherThing = (struct GameThingWithPosVftable*)0x008ebc48; + +DECLARE_LH_LIST_HEAD(WeatherThing); + +#endif /* BW1_DECOMP_WEATHER_THING_INCLUDED_H */ diff --git a/black/Whale.h b/black/Whale.h new file mode 100644 index 0000000..f447fdb --- /dev/null +++ b/black/Whale.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_WHALE_INCLUDED_H +#define BW1_DECOMP_WHALE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "MobileObject.h" /* For struct MobileObject */ + +struct Whale +{ + struct MobileObject super; /* 0x0 */ + uint8_t field_0x68[0xc]; +}; +static_assert(sizeof(struct Whale) == 0x74, "Data type is of wrong size"); + +static struct MobileObjectVftable* __vt__5Whale = (struct MobileObjectVftable*)0x008febec; + +DECLARE_LH_LIST_HEAD(Whale); + +#endif /* BW1_DECOMP_WHALE_INCLUDED_H */ diff --git a/black/Wonder.h b/black/Wonder.h new file mode 100644 index 0000000..d0fd1d7 --- /dev/null +++ b/black/Wonder.h @@ -0,0 +1,43 @@ +#ifndef BW1_DECOMP_WONDER_INCLUDED_H +#define BW1_DECOMP_WONDER_INCLUDED_H + +#include /* For static_assert */ + +#include "Abode.h" /* For struct Abode */ + +// Forward Declares + +struct GAbodeInfo; +struct MapCoords; +struct Town; + +struct Wonder +{ + struct Abode super; /* 0x0 */ + float power; /* 0xc4 */ +}; +static_assert(sizeof(struct Wonder) == 0xc8, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__6Wonder = (struct MultiMapFixedVftable*)0x008df96c; + +// Static methods + +// win1.41 00778e80 mac 101619e0 Wonder::Create(const MapCoords&, const GAbodeInfo*, Town*, float, float, float, int) +struct Wonder* __cdecl Create__6WonderFRC9MapCoordsPC10GAbodeInfoP4Townfffi(const struct MapCoords* coords, const struct GAbodeInfo* info, struct Town* town, float y_angle, float scale, float food, int wood); + +// Constructors + +// win1.41 00778e00 mac 10161c40 Wonder::Wonder(MapCoords const &, GAbodeInfo const *, Town *, float, float, float, int) +struct Wonder* __fastcall __ct__6WonderFRC9MapCoordsPC10GAbodeInfoP4Townfffi(struct Wonder* this, const void* edx, const struct MapCoords* coords, const struct GAbodeInfo* info, struct Town* town, float y_angle, float scale, float food, int wood); + +// Non-virtual methods + +// win1.41 00779060 mac inlined Wonder::SetZero(void) +void __fastcall SetZero__6WonderFv(struct Wonder* this); + +// Override methods + +// win1.41 00779160 mac 101613c0 Wonder::CallVirtualFunctionsForCreation(const MapCoords&) +void __fastcall CallVirtualFunctionsForCreation__6WonderFRC9MapCoords(struct Wonder* this, const void* edx, const struct MapCoords* coords); + +#endif /* BW1_DECOMP_WONDER_INCLUDED_H */ diff --git a/black/Workshop.h b/black/Workshop.h new file mode 100644 index 0000000..8e74ccd --- /dev/null +++ b/black/Workshop.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_WORKSHOP_INCLUDED_H +#define BW1_DECOMP_WORKSHOP_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "Abode.h" /* For struct Abode */ + +struct Workshop +{ + struct Abode super; /* 0x0 */ + uint8_t field_0xc4[0x24]; +}; +static_assert(sizeof(struct Workshop) == 0xe8, "Data type is of wrong size"); + +static struct AbodeVftable* __vt__8Workshop = (struct AbodeVftable*)0x0099bb20; + +#endif /* BW1_DECOMP_WORKSHOP_INCLUDED_H */ diff --git a/black/WorshipSite.h b/black/WorshipSite.h new file mode 100644 index 0000000..92c52c1 --- /dev/null +++ b/black/WorshipSite.h @@ -0,0 +1,66 @@ +#ifndef BW1_DECOMP_WORSHIP_SITE_INCLUDED_H +#define BW1_DECOMP_WORSHIP_SITE_INCLUDED_H + +#include /* For static_assert */ +#include /* For int16_t, uint32_t, uint8_t */ + +#include /* For enum SPELL_SEED_TYPE */ + +#include "CitadelPart.h" /* For struct CitadelPart */ +#include "WorshipSpellIcon.h" /* For struct WorshipSpellIcon */ + +// Forward Declares + +struct Dance; +struct GTribeInfo; +struct MapCoords; +struct ShowNeeds; +struct Town; +struct WorshipTotem; + +struct WorshipSite +{ + struct CitadelPart super; /* 0x0 */ + struct GTribeInfo* tribe_info; /* 0x8c */ + struct ShowNeeds* show_needs; /* 0x90 */ + uint32_t field_0x94; + uint32_t field_0x98; + uint32_t field_0x9c; + struct Dance* dance; /* 0xa0 */ + uint8_t field_0xa4[0x14]; + int* field_0xb8; + uint8_t field_0xbc[0xc]; + int field_0xc8; + uint8_t field_0xcc[0xc]; + int field_0xd8; + struct WorshipTotem* totem; + struct LHListHead__WorshipSpellIcon icon_list; /* 0xe0 */ + uint8_t field_0xe8[0x2c]; + float field_0x114; + float field_0x118; + float field_0x11c; + uint32_t field_0x120; + int num_villagers_requesting_to_go_home; +}; +static_assert(sizeof(struct WorshipSite) == 0x128, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__11WorshipSite = (struct MultiMapFixedVftable*)0x008f2840; + +// Non-virtual methods + +// win1.41 0077afc0 mac 105b28e0 WorshipSite::GetSpellIconPosFromSlot(unsigned long, float) +struct MapCoords* __fastcall GetSpellIconPosFromSlot__11WorshipSiteFUlf(struct WorshipSite* this, const void* edx, struct MapCoords* coords, uint32_t slot, float angle); +// win1.41 0077b080 mac 105b26e0 WorshipSite::GetSpellIconPos(short &) +struct MapCoords* __fastcall GetSpellIconPos__11WorshipSiteFRs(struct WorshipSite* this, const void* edx, struct MapCoords* coords, int16_t* slot); +// win1.41 0077c430 mac 105b01e0 WorshipSite::AddSpellIcon(WorshipSpellIcon *) +void __fastcall AddSpellIcon__11WorshipSiteFP16WorshipSpellIcon(struct WorshipSite* this, const void* edx, struct WorshipSpellIcon* icon); +// win1.41 0077c910 mac 105af7f0 WorshipSite::AddTownSpells(Town *) +void __fastcall AddTownSpells__11WorshipSiteFP4Town(struct WorshipSite* this, const void* edx, struct Town* town); +// win1.41 0077c9e0 mac 105af540 WorshipSite::AddSpellIconIfNecessary(SPELL_SEED_TYPE) +void __fastcall AddSpellIconIfNecessary__11WorshipSiteF15SPELL_SEED_TYPE(struct WorshipSite* this, const void* edx, enum SPELL_SEED_TYPE seed_type); +// win1.41 0077cf30 mac 105aeaa0 WorshipSite::GetTotemPos(void) +struct MapCoords* __fastcall GetTotemPos__11WorshipSiteFv(struct WorshipSite* this, const void* edx, struct MapCoords* coords); +// win1.41 0077e260 mac 105aba40 WorshipSite::GetNumVillagersRequestingToGoHome(void) +int __fastcall GetNumVillagersRequestingToGoHome__11WorshipSiteFv(struct WorshipSite* this); + +#endif /* BW1_DECOMP_WORSHIP_SITE_INCLUDED_H */ diff --git a/black/WorshipSiteInfo.h b/black/WorshipSiteInfo.h new file mode 100644 index 0000000..2e5076c --- /dev/null +++ b/black/WorshipSiteInfo.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_WORSHIP_SITE_INFO_INCLUDED_H +#define BW1_DECOMP_WORSHIP_SITE_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "CitadelPartInfo.h" /* For struct GCitadelPartInfo */ + +struct GWorshipSiteInfo +{ + struct GCitadelPartInfo super; /* 0x0 */ + float field_0x134; + uint32_t field_0x138; + uint32_t field_0x13c; + uint32_t field_0x140; + float field_0x144; + float field_0x148; + uint32_t field_0x14c; + float field_0x150; + float field_0x154; + uint32_t field_0x158; + float field_0x15c; +}; +static_assert(sizeof(struct GWorshipSiteInfo) == 0x160, "Data type is of wrong size"); + +static struct GMultiMapFixedInfoVftable* __vt__16GWorshipSiteInfo = (struct GMultiMapFixedInfoVftable*)0x0099c478; + +#endif /* BW1_DECOMP_WORSHIP_SITE_INFO_INCLUDED_H */ diff --git a/black/WorshipSpellIcon.h b/black/WorshipSpellIcon.h new file mode 100644 index 0000000..b4adda6 --- /dev/null +++ b/black/WorshipSpellIcon.h @@ -0,0 +1,64 @@ +#ifndef BW1_DECOMP_WORSHIP_SPELL_ICON_INCLUDED_H +#define BW1_DECOMP_WORSHIP_SPELL_ICON_INCLUDED_H + +#include /* For static_assert */ +#include /* For int16_t, uint32_t */ + +#include /* For DECLARE_LH_LIST_HEAD */ + +#include "SpellIcon.h" /* For struct SpellIcon */ + +// Forward Declares + +struct GSpellIconInfo; +struct GSpellSeedInfo; +struct MapCoords; +struct WorshipSite; + +struct WorshipSpellIcon +{ + struct SpellIcon super; /* 0x0 */ + struct WorshipSpellIcon* next; /* 0x110 */ + int16_t field_0x114; + uint32_t site; + float field_0x11c; + uint32_t field_0x120; + int field_0x124; + uint32_t field_0x128; + uint32_t field_0x12c; + uint32_t field_0x130; + float field_0x134; + uint32_t field_0x138; + int16_t slot; +}; +static_assert(sizeof(struct WorshipSpellIcon) == 0x140, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__16WorshipSpellIcon = (struct MultiMapFixedVftable*)0x0099d878; + +// Static methods + +// win1.41 0077f2b0 mac 105b6cf0 WorshipSpellIcon::Create(MapCoords const &, GSpellIconInfo const *, GSpellSeedInfo const *, WorshipSite *, short, float, int) +struct WorshipSpellIcon* __cdecl Create__16WorshipSpellIconFRC9MapCoordsPC14GSpellIconInfoPC14GSpellSeedInfoP11WorshipSitesfi(struct MapCoords* coords, struct GSpellIconInfo* icon_info, struct GSpellSeedInfo* seed_info, struct WorshipSite* site, int16_t slot, float param_6, int param_7); + +// Constructors + +// win1.41 0077f140 mac 105b7070 WorshipSpellIcon::WorshipSpellIcon(MapCoords const &, GSpellIconInfo const *, GSpellSeedInfo const *, WorshipSite *, short, float, int) +struct WorshipSpellIcon* __fastcall __ct__16WorshipSpellIconFRC9MapCoordsPC14GSpellIconInfoPC14GSpellSeedInfoP11WorshipSitesfi(struct WorshipSpellIcon* this, const void* edx, const struct MapCoords* coords, const struct GSpellIconInfo* icon_info, const struct GSpellSeedInfo* seed_info, struct WorshipSite* site, int16_t slot, float param_6, int param_7); + +// Non-virtual methods + +// win1.41 0077f1f0 mac inlined WorshipSpellIcon::SetZero(void) +void __fastcall SetZero__16WorshipSpellIconFv(struct WorshipSpellIcon* this); +// win1.41 0077f320 mac 105b6bf0 WorshipSpellIcon::UpdateGraphicsWithPULevels(void) +void __fastcall UpdateGraphicsWithPULevels__16WorshipSpellIconFv(struct WorshipSpellIcon* this); +// win1.41 0077ff40 mac 105b4ff0 WorshipSpellIcon::StopRemoveFromPlayer(void) +void __fastcall StopRemoveFromPlayer__16WorshipSpellIconFv(struct WorshipSpellIcon* this); + +// Override methods + +// win1.41 0077f290 mac 105b6e40 WorshipSpellIcon::CallVirtualFunctionsForCreation(const MapCoords &) +void __fastcall CallVirtualFunctionsForCreation__16WorshipSpellIconFRC9MapCoords(struct WorshipSpellIcon* this, const void* edx, const struct MapCoords* coords); + +DECLARE_LH_LIST_HEAD(WorshipSpellIcon); + +#endif /* BW1_DECOMP_WORSHIP_SPELL_ICON_INCLUDED_H */ diff --git a/black/WorshipTotem.h b/black/WorshipTotem.h new file mode 100644 index 0000000..d0e23f9 --- /dev/null +++ b/black/WorshipTotem.h @@ -0,0 +1,56 @@ +#ifndef BW1_DECOMP_WORSHIP_TOTEM_INCLUDED_H +#define BW1_DECOMP_WORSHIP_TOTEM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "CitadelPart.h" /* For struct CitadelPart */ +#include "LightSheet.h" /* For struct LightSheet */ + +// Forward Declares + +struct MapCoords; +struct WorshipSite; + +struct Q212WorshipTotem13TChargingData +{ + uint8_t field_0x0; + struct LightSheet light_sheet; + uint32_t field_0x64; + uint32_t field_0x68; + uint32_t field_0x6c; +}; +static_assert(sizeof(struct Q212WorshipTotem13TChargingData) == 0x70, "Data type is of wrong size"); + +// Constructors + +// win1.41 00780af0 mac inlined WorshipTotem::TChargingData::TChargingData(void) +struct Q212WorshipTotem13TChargingData* __fastcall __ct__Q212WorshipTotem13TChargingDataFv(struct Q212WorshipTotem13TChargingData* this); + +struct WorshipTotem +{ + struct CitadelPart super; /* 0x0 */ + uint32_t field_0x8c; + struct Q212WorshipTotem13TChargingData charging_data; /* 0x90 */ + struct WorshipSite* site; /* 0x100 */ +}; +static_assert(sizeof(struct WorshipTotem) == 0x104, "Data type is of wrong size"); + +static struct MultiMapFixedVftable* __vt__12WorshipTotem = (struct MultiMapFixedVftable*)0x0099e1bc; + +// Static methods + +// win1.41 00780930 mac 105b8440 WorshipTotem::Create(WorshipSite *) +struct WorshipTotem* __cdecl Create__12WorshipTotemFP11WorshipSite(struct WorshipSite* site); + +// Constructors + +// win1.41 00780840 mac 105b8640 WorshipTotem::WorshipTotem(WorshipSite *) +struct WorshipTotem* __fastcall __ct__12WorshipTotemFP11WorshipSite(struct WorshipTotem* this, const void* edx, struct WorshipSite* site); + +// Override methods + +// win1.41 00780ab0 mac 105b81d0 WorshipTotem::CallVirtualFunctionsForCreation(MapCoords const &) +void __fastcall CallVirtualFunctionsForCreation__12WorshipTotemFRC9MapCoords(struct WorshipTotem* this, const void* edx, const struct MapCoords* coords); + +#endif /* BW1_DECOMP_WORSHIP_TOTEM_INCLUDED_H */ diff --git a/globals.h b/globals.h new file mode 100644 index 0000000..e276766 --- /dev/null +++ b/globals.h @@ -0,0 +1,457 @@ +#ifndef BW1_DECOMP_GLOBALS_INCLUDED_H +#define BW1_DECOMP_GLOBALS_INCLUDED_H + +#include /* For IDirect3DDevice7 */ +#include /* For D3DMATRIX */ +#include /* For bool */ +#include /* For int32_t, uint32_t, uint8_t */ +#include /* For char16_t */ + +#include /* For struct GAbodeInfo */ +#include /* For struct GCitadelHeartInfo */ +#include /* For struct GDanceInfo */ +#include /* For struct GFieldTypeInfo */ +#include /* For struct GameBlock */ +#include /* For struct GMagicEffectInfo */ +#include /* For struct GMagicInfo */ +#include /* For struct JustMapXZ */ +#include /* For struct GShowNeedsInfo */ +#include /* For struct GSpellSeedInfo */ +#include /* For struct GTotemStatueInfo */ +#include /* For struct GTownDesireFunction */ +#include /* For struct GTownDesireInfo */ +#include /* For struct GTribeInfo */ +#include /* For struct DiscipleInfo, struct GVillagerInfo */ +#include /* For struct GVillagerStateTableInfo */ +#include /* For struct GWorshipSiteInfo */ +#include /* For enum TRIBE_TYPE */ +#include /* For struct LH3DColor */ +#include /* For struct LandBlock */ +#include /* For struct LHMatrix */ +#include /* For struct LHScriptCommandX_c_ */ +#include /* For RTL_CRITICAL_SECTION, bool32_t */ + +// Forward Declares + +struct Animal__StateTable; +struct CircleHugStateInfoT; +struct CircleHugStateInfo_field_0x44_node_list; +struct FrontEnd; +struct GGame; +struct GGameInfo; +struct GGlobal; +struct GPlayer; +struct GSpellIconInfo; +struct GTownInfo; +struct GameThingWithPos; +struct GameThing_t; +struct GatheringText; +struct HelpTextDataBase; +struct InfoTransform; +struct LH3DCamera; +struct LH3DMaterial; +struct LH3DMem_t; +struct LH3DMist_namespace; +struct LH3DObject_region; +struct LH3DSubMesh; +struct LH3DTexture; +struct LHPlane; +struct LHPoint; +struct LHPoint2D; +struct LHReleasedFile; +struct LHSys; +struct LiquidParticleGroup; +struct MPFEConnectionStatus; +struct MapCoords; +struct PlayerProfile; +struct ScriptDLL; +struct SetRenderModeData; +struct SetupBox_t; +struct SetupRect; +struct SetupThing; +struct SetupThingDraw_t; +struct VillagerName; +struct Villager__StateTable; +struct ape_hair_t; +struct custom_footpath_display_control_t; +struct g_anim_pack_t; +struct g_pack_t; +struct globals_Script; +struct std__map__pMobileWallHug__ulong_node_list; +struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_node_list; +struct std__set__pMobileWallHug_node_list; + +struct globals_t +{ + const struct LH3DColor (*LH3DColor_ARRAY_008ab250)[0x4]; + struct DiscipleInfo (*DiscipleInfo_ARRAY_0099a1f8)[0xd]; + struct SetupThingDraw_t* SetupThingDraw; /* 0x009c8078 */ + uint32_t* DAT_00be026c; + int* INT_00bec27c; + bool* DAT_00bec280; + uint32_t* DAT_00bec994; + float* DAT_00bf3380; + float* FLOAT_00bf33f0; + int* DAT_00bf42c8; + int* DAT_00bf42cc; + int* DAT_00bfe88c; + int* DAT_00bfe914; + const struct LH3DColor (*LH3DColor_ARRAY_00bff0b8)[0x8]; + int* DAT_00c0297c; + uint32_t* DAT_00c20d54; + enum TRIBE_TYPE* DAT_00c20d58; + const struct LHScriptCommandX_c_ (*ScriptSignatures)[0x69]; /* 0x00c20f00 */ + float (*SigmoidTable)[0x29]; /* 0x00c23284 */ + float* FLOAT_00c2a150; + float* g_maxX; /* 0x00c2ab00 */ + float* g_maxY; /* 0x00c2ab04 */ + int32_t (*sin_lookup_table)[0x800]; /* 0x00c31614 */ + int32_t (*cos_lookup_table)[0x800]; /* 0x00c31e14 */ + char (*s_parsed_line)[0x200]; /* 0x00c341c0 */ + float* DAT_00c371d4; + uint32_t* g_delta_time__8LH3DTech; /* 0x00c38134 */ + uint32_t* DAT_00c386d0; + uint32_t* DAT_00c38714; + struct GAbodeInfo (*GAbodeInfo_ARRAY_00c3c690)[0x93]; + struct SetupThing* SetupThing; /* 0x00c4cc80 */ + struct SetupRect* SetupRect_00c4ccb8; + struct LH3DColor (*LH3DColor_ARRAY_00c4ccd8)[0x5]; + struct LH3DColor* LH3DColor_00c4ccf8; + bool* DAT_00c4cd00; + struct SetupBox_t* SetupBox; /* 0x00c4cd1c */ + struct GatheringText** PTR_00c4cd2c; + char16_t* WCHAR_00c4cd30; + uint32_t* UINT_00c58604; + struct GCitadelHeartInfo (*GCitadelHeartInfo_ARRAY_00c5e270)[0x1]; + struct LHLinkedList__Creature* CreatureList; /* 0x00c5fcf8 */ + struct GDanceInfo (*GDanceInfo_ARRAY_00cc4b80)[0x19]; + struct GMagicEffectInfo (*GMagicEffectInfo_ARRAY_00cc6630)[0x42]; + struct GFieldTypeInfo (*GFieldTypeInfo_00ccf070)[0x6]; + char (*CHAR_ARRAY_00cd035c)[0x100]; + uint32_t* DAT_00cd0488; + struct FrontEnd* FrontEnd_00cd0620; + char16_t (*UNICODE_00cd3a18)[0x2]; + uint32_t* DAT_00cd3ae8; + uint8_t* DAT_00cd3aec; + struct GGlobal* global; /* 0x00cd3b20 */ + uint32_t (*ARRAY_00d0143c)[0xa]; + uint32_t (*ARRAY_00d01464)[0x64]; + struct GGame** game; /* 0x00d0195c */ + int* DAT_00d01978; + int* INT_00d0197c; + struct globals_Script* Script; /* 0x00d019a4 */ + int* DAT_00d019b4; + int* DAT_00d019b8; + int* DAT_00d019bc; + struct GGameInfo* GGameInfo_00d019f8; + struct GameThing_t* GameThing; /* 0x00d06080 */ + struct Villager__StateTable* StateTable_00d09198; + struct Animal__StateTable* StateTable_00d12108; + void** DAT_00d13f3c; + struct HelpTextDataBase* HelpTextDataBasePatch; /* 0x00d17ca0 */ + struct HelpTextDataBase* HelpTextDataBase_00d17ca8; + struct GameBlock* (*GameBlock_ARRAY_00d189d8)[0x20][0x20]; + struct GameBlock* GameBlock_00d199e0; + float (*FLOAT_ARRAY_00d1a280)[0x8]; + struct GMagicInfo* (*MagicInfoTable)[0x2a]; /* 0x00d37d10 */ + struct LHPoint2D* Point2D_00d3ee60; + struct LHPoint2D* Point2D_00d3ee68; + struct LHPoint2D* Point2D_00d3ee70; + struct CircleHugStateInfoT* CircleHugStateInfoT_00d3ee78; + bool* DAT_00d3eed0; + uint8_t* DAT_00d3eed1; + struct std__map__pMobileWallHug__ulong_node_list* DAT_00d3eed4; + struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_node_list* DAT_00d3eedc; + struct std__set__pMobileWallHug_node_list* DAT_00d3eee4; + struct CircleHugStateInfo_field_0x44_node_list* DAT_00d3eef4; + struct ape_hair_t* ape_hair; /* 0x00d3f004 */ + struct MPFEConnectionStatus* MPFEConnectionStatus_00d40e20; + char (*CHAR_ARRAY_00d414d8)[0x80]; + bool* ARGS_NEWGAME; /* 0x00d46ab9 */ + bool* ARGS_MULTIPLAYER; /* 0x00d46aba */ + bool* ARGS_LAND; /* 0x00d46abb */ + bool* ARGS_SKIRMISH; /* 0x00d46abc */ + bool* ARGS_PREINTROVIDEO; /* 0x00d46abd */ + bool* ARGS_FORCEINETCONN; /* 0x00d46abe */ + bool* ARGS_NOINETCONN; /* 0x00d46abf */ + bool* ARGS_EDITOR; /* 0x00d46ac0 */ + bool* ARGS_CONVERT; /* 0x00d46ac1 */ + bool* ARGS_VERSION; /* 0x00d46ac2 */ + bool* ARGS_NOLOADMUSIC; /* 0x00d46ac3 */ + bool* ARGS_SETTINGS; /* 0x00d46ac4 */ + struct PlayerProfile* PlayerProfile_00d4bd38; + struct GPlayer** DAT_00d4f594; + char (*ReactionInfo_ARRAY_00d4f6b0)[0x29]; + uint32_t* DAT_00d95c0c; + struct ScriptDLL** script_dll; /* 0x00d95c10 */ + char (*ARGS_SETTINGS_PATH)[0x108]; /* 0x00d9927c */ + struct GameThingWithPos** DAT_00d99380; + struct GameThingWithPos** PTR_00d99384; + float* script_version; /* 0x00d9957c */ + char (*CHAR_ARRAY_00d99580)[0xc8]; + char (*CHAR_ARRAY_00d99648)[0x80]; + struct MapCoords** PTR_00d99724; + struct GShowNeedsInfo (*GShowNeedsInfo_ARRAY_00d99738)[0x4]; + struct GSpellIconInfo* GSpellIconInfo_00d9d3e8; + struct GSpellSeedInfo (*GSpellSeedInfo_ARRAY_00d9d678)[0x1e]; + struct GTotemStatueInfo (*GTotemStatueInfo_ARRAY_00da1d18)[0x9]; + struct GTownInfo* GTownInfo_00da2780; + struct GTownDesireInfo (*GTownDesireInfo_ARRAY_00da2930)[0x11]; + struct GTownDesireFunction (*GTownDesireFunction_ARRAY_00da32c8)[0x11]; + struct GTribeInfo (*GTribeInfo_ARRAY_00da57a8)[0x9]; + struct JustMapXZ (*JustMapXZ_ARRAY_00da59fc)[0x4]; + uint32_t (*UINT_ARRAY_00da5a10)[0x400]; + struct GVillagerInfo (*GVillagerInfo_ARRAY_00da6be8)[0x54]; + struct VillagerName** PTR_00db9e28; + struct GVillagerStateTableInfo (*GVillagerStateTableInfo_ARRAY_00db9e68)[0xff]; + struct GWorshipSiteInfo (*GWorshipSiteInfo_ARRAY_00dcbd30)[0x9]; + uint32_t* DAT_00e06020; + float* near_clipping; /* 0x00e839e0 */ + struct InfoTransform* g_info_transform; /* 0x00e839e4 */ + int* DAT_00e83a20; + struct LHSys* LHSys; /* 0x00e85040 */ + RTL_CRITICAL_SECTION* lpCriticalSection_00e8c118; + RTL_CRITICAL_SECTION* lpCriticalSection_00e90650; + struct LH3DMist_namespace* LH3DMist; /* 0x00e9a11c */ + struct LandBlock* (*g_ptr_blocks__10LH3DIsland)[0x100]; /* 0x00e9c564 */ + uint8_t (*g_index_block__10LH3DIsland)[0x20][0x20]; /* 0x00e9c964 */ + struct LHMatrix (*LH3DMesh_g_current_list_matrix)[0x100]; /* 0x00e9ce28 */ + struct g_pack_t** LH3DMesh_g_pack; /* 0x00e9fe34 */ + struct LHMatrix** LH3DMesh_g_current_matrix; /* 0x00e9fe48 */ + bool* LH3DMesh_g_b_dont_care_about_texture; /* 0x00e9fe54 */ + struct LH3DObject_region* LH3DObject; /* 0x00ea1a88 */ + struct LHPoint* grosse_merde_pos; /* 0x00ea1b58 */ + struct LHPoint* grosse_merde_foc; /* 0x00ea1b68 */ + struct LHMatrix* g_camera_to_world; /* 0x00ea1cf8 */ + struct LHMatrix* g_world_to_camera; /* 0x00ea1d28 */ + struct LHMatrix* g_copy_of_world_to_clipping; /* 0x00ea1d58 */ + struct LHMatrix* g_mat_paper; /* 0x00ea1d88 */ + struct LH3DCamera* g_camera; /* 0x00ea1db8 */ + struct LHMatrix* g_clipping_to_world; /* 0x00ea9de0 */ + struct LHMatrix* g_local_to_clipping; /* 0x00ea9e10 */ + struct LHMatrix* g_world_to_clipping; /* 0x00ea9e40 */ + struct LHPlane* field_0x00ea9e70; + struct LHPoint* LHPoint_00ea9e70; + struct LHPlane* g_sun_light_clipping; /* 0x00ea9e80 */ + struct LHPlane* field_0x00ea9e90; + struct LHMatrix** g_current_matrix; /* 0x00ea9ea0 */ + uint32_t* current_time_maybe; /* 0x00ea9eb0 */ + uint32_t* g_view_configuration; /* 0x00ea9ebc */ + uint32_t* DAT_00ea9ec0; + uint32_t* merde_focus; /* 0x00ea9ecc */ + void (__fastcall** DAT_00eb9a98)(void* this, const void* edx, struct MobileWallHug* param_3); + D3DMATRIX* g_d3d_view2proj; /* 0x00ec7fd0 */ + D3DMATRIX* g_d3d_world2view; /* 0x00ec8010 */ + uint32_t (*UINT_ARRAY_00ec81f0)[0x800]; + uint32_t (*UINT_ARRAY_00eca1f0)[0x99]; + bool32_t* LH3DRender__g_b_need_tilling; /* 0x00eca614 */ + struct SetRenderModeData** PTR_00eca618; + IDirect3DDevice7** Direct3DDevice7; /* 0x00eca638 */ + struct LH3DMaterial** DAT_00eca64c; + uint32_t* DAT_00eca654; + struct GatheringText** game_font; /* 0x00eccd08 */ + struct LH3DMaterial** DAT_00ed92dc; + uint8_t* DAT_00edc34c; + struct LH3DMaterial** PTR_00edc368; + struct LHReleasedFile* g_cached_tex_file; /* 0x00edd3e0 */ + struct LH3DTexture** LH3DTexture_first; /* 0x00edd460 */ + struct LH3DMaterial** PTR_00edd494; + struct LHReleasedFile* LH3DAnim_file; /* 0x00edd498 */ + struct g_anim_pack_t** PTR_g_pack; /* 0x00edd508 */ + struct LH3DMem_t* LH3DMem; /* 0x00ef6540 */ + struct LiquidParticleGroup** LiquidParticleGroup_first; /* 0x00ef7538 */ + uint32_t* DAT_00f05220; + uint32_t* DAT_00f05420; + int32_t* INT_00fa51c4; + void (__cdecl** PTR_00fa51d0)(int param_0, int param_1); + struct LH3DSubMesh** LH3DSubMesh_g_current_sub_mesh; /* 0x00fa93bc */ + struct custom_footpath_display_control_t* custom_footpath_display_control; /* 0x00fae800 */ +}; + +volatile static struct globals_t globals = { + .LH3DColor_ARRAY_008ab250 = (const struct LH3DColor (*)[4])0x008ab250, + .DiscipleInfo_ARRAY_0099a1f8 = (struct DiscipleInfo (*)[13])0x0099a1f8, + .SetupThingDraw = (struct SetupThingDraw_t*)0x009c8078, + .DAT_00be026c = (uint32_t*)0x00be026c, + .INT_00bec27c = (int*)0x00bec27c, + .DAT_00bec280 = (bool*)0x00bec280, + .DAT_00bec994 = (uint32_t*)0x00bec994, + .DAT_00bf3380 = (float*)0x00bf3380, + .FLOAT_00bf33f0 = (float*)0x00bf33f0, + .DAT_00bf42c8 = (int*)0x00bf42c8, + .DAT_00bf42cc = (int*)0x00bf42cc, + .DAT_00bfe88c = (int*)0x00bfe88c, + .DAT_00bfe914 = (int*)0x00bfe914, + .LH3DColor_ARRAY_00bff0b8 = (const struct LH3DColor (*)[8])0x00bff0b8, + .DAT_00c0297c = (int*)0x00c0297c, + .DAT_00c20d54 = (uint32_t*)0x00c20d54, + .DAT_00c20d58 = (enum TRIBE_TYPE*)0x00c20d58, + .ScriptSignatures = (const struct LHScriptCommandX_c_ (*)[105])0x00c20f00, + .SigmoidTable = (float (*)[41])0x00c23284, + .FLOAT_00c2a150 = (float*)0x00c2a150, + .g_maxX = (float*)0x00c2ab00, + .g_maxY = (float*)0x00c2ab04, + .sin_lookup_table = (int32_t (*)[2048])0x00c31614, + .cos_lookup_table = (int32_t (*)[2048])0x00c31e14, + .s_parsed_line = (char (*)[512])0x00c341c0, + .DAT_00c371d4 = (float*)0x00c371d4, + .g_delta_time__8LH3DTech = (uint32_t*)0x00c38134, + .DAT_00c386d0 = (uint32_t*)0x00c386d0, + .DAT_00c38714 = (uint32_t*)0x00c38714, + .GAbodeInfo_ARRAY_00c3c690 = (struct GAbodeInfo (*)[147])0x00c3c690, + .SetupThing = (struct SetupThing*)0x00c4cc80, + .SetupRect_00c4ccb8 = (struct SetupRect*)0x00c4ccb8, + .LH3DColor_ARRAY_00c4ccd8 = (struct LH3DColor (*)[5])0x00c4ccd8, + .LH3DColor_00c4ccf8 = (struct LH3DColor*)0x00c4ccf8, + .DAT_00c4cd00 = (bool*)0x00c4cd00, + .SetupBox = (struct SetupBox_t*)0x00c4cd1c, + .PTR_00c4cd2c = (struct GatheringText**)0x00c4cd2c, + .WCHAR_00c4cd30 = (char16_t*)0x00c4cd30, + .UINT_00c58604 = (uint32_t*)0x00c58604, + .GCitadelHeartInfo_ARRAY_00c5e270 = (struct GCitadelHeartInfo (*)[1])0x00c5e270, + .CreatureList = (struct LHLinkedList__Creature*)0x00c5fcf8, + .GDanceInfo_ARRAY_00cc4b80 = (struct GDanceInfo (*)[25])0x00cc4b80, + .GMagicEffectInfo_ARRAY_00cc6630 = (struct GMagicEffectInfo (*)[66])0x00cc6630, + .GFieldTypeInfo_00ccf070 = (struct GFieldTypeInfo (*)[6])0x00ccf070, + .CHAR_ARRAY_00cd035c = (char (*)[256])0x00cd035c, + .DAT_00cd0488 = (uint32_t*)0x00cd0488, + .FrontEnd_00cd0620 = (struct FrontEnd*)0x00cd0620, + .UNICODE_00cd3a18 = (char16_t (*)[2])0x00cd3a18, + .DAT_00cd3ae8 = (uint32_t*)0x00cd3ae8, + .DAT_00cd3aec = (uint8_t*)0x00cd3aec, + .global = (struct GGlobal*)0x00cd3b20, + .ARRAY_00d0143c = (uint32_t (*)[10])0x00d0143c, + .ARRAY_00d01464 = (uint32_t (*)[100])0x00d01464, + .game = (struct GGame**)0x00d0195c, + .DAT_00d01978 = (int*)0x00d01978, + .INT_00d0197c = (int*)0x00d0197c, + .Script = (struct globals_Script*)0x00d019a4, + .DAT_00d019b4 = (int*)0x00d019b4, + .DAT_00d019b8 = (int*)0x00d019b8, + .DAT_00d019bc = (int*)0x00d019bc, + .GGameInfo_00d019f8 = (struct GGameInfo*)0x00d019f8, + .GameThing = (struct GameThing_t*)0x00d06080, + .StateTable_00d09198 = (struct Villager__StateTable*)0x00d09198, + .StateTable_00d12108 = (struct Animal__StateTable*)0x00d12108, + .DAT_00d13f3c = (void**)0x00d13f3c, + .HelpTextDataBasePatch = (struct HelpTextDataBase*)0x00d17ca0, + .HelpTextDataBase_00d17ca8 = (struct HelpTextDataBase*)0x00d17ca8, + .GameBlock_ARRAY_00d189d8 = (struct GameBlock* (*)[32][32])0x00d189d8, + .GameBlock_00d199e0 = (struct GameBlock*)0x00d199e0, + .FLOAT_ARRAY_00d1a280 = (float (*)[8])0x00d1a280, + .MagicInfoTable = (struct GMagicInfo* (*)[42])0x00d37d10, + .Point2D_00d3ee60 = (struct LHPoint2D*)0x00d3ee60, + .Point2D_00d3ee68 = (struct LHPoint2D*)0x00d3ee68, + .Point2D_00d3ee70 = (struct LHPoint2D*)0x00d3ee70, + .CircleHugStateInfoT_00d3ee78 = (struct CircleHugStateInfoT*)0x00d3ee78, + .DAT_00d3eed0 = (bool*)0x00d3eed0, + .DAT_00d3eed1 = (uint8_t*)0x00d3eed1, + .DAT_00d3eed4 = (struct std__map__pMobileWallHug__ulong_node_list*)0x00d3eed4, + .DAT_00d3eedc = (struct std__map__pQ210NewCollide3Obj__std__set__pMobileWallHug_node_list*)0x00d3eedc, + .DAT_00d3eee4 = (struct std__set__pMobileWallHug_node_list*)0x00d3eee4, + .DAT_00d3eef4 = (struct CircleHugStateInfo_field_0x44_node_list*)0x00d3eef4, + .ape_hair = (struct ape_hair_t*)0x00d3f004, + .MPFEConnectionStatus_00d40e20 = (struct MPFEConnectionStatus*)0x00d40e20, + .CHAR_ARRAY_00d414d8 = (char (*)[128])0x00d414d8, + .ARGS_NEWGAME = (bool*)0x00d46ab9, + .ARGS_MULTIPLAYER = (bool*)0x00d46aba, + .ARGS_LAND = (bool*)0x00d46abb, + .ARGS_SKIRMISH = (bool*)0x00d46abc, + .ARGS_PREINTROVIDEO = (bool*)0x00d46abd, + .ARGS_FORCEINETCONN = (bool*)0x00d46abe, + .ARGS_NOINETCONN = (bool*)0x00d46abf, + .ARGS_EDITOR = (bool*)0x00d46ac0, + .ARGS_CONVERT = (bool*)0x00d46ac1, + .ARGS_VERSION = (bool*)0x00d46ac2, + .ARGS_NOLOADMUSIC = (bool*)0x00d46ac3, + .ARGS_SETTINGS = (bool*)0x00d46ac4, + .PlayerProfile_00d4bd38 = (struct PlayerProfile*)0x00d4bd38, + .DAT_00d4f594 = (struct GPlayer**)0x00d4f594, + .ReactionInfo_ARRAY_00d4f6b0 = (char (*)[41])0x00d4f6b0, + .DAT_00d95c0c = (uint32_t*)0x00d95c0c, + .script_dll = (struct ScriptDLL**)0x00d95c10, + .ARGS_SETTINGS_PATH = (char (*)[264])0x00d9927c, + .DAT_00d99380 = (struct GameThingWithPos**)0x00d99380, + .PTR_00d99384 = (struct GameThingWithPos**)0x00d99384, + .script_version = (float*)0x00d9957c, + .CHAR_ARRAY_00d99580 = (char (*)[200])0x00d99580, + .CHAR_ARRAY_00d99648 = (char (*)[128])0x00d99648, + .PTR_00d99724 = (struct MapCoords**)0x00d99724, + .GShowNeedsInfo_ARRAY_00d99738 = (struct GShowNeedsInfo (*)[4])0x00d99738, + .GSpellIconInfo_00d9d3e8 = (struct GSpellIconInfo*)0x00d9d3e8, + .GSpellSeedInfo_ARRAY_00d9d678 = (struct GSpellSeedInfo (*)[30])0x00d9d678, + .GTotemStatueInfo_ARRAY_00da1d18 = (struct GTotemStatueInfo (*)[9])0x00da1d18, + .GTownInfo_00da2780 = (struct GTownInfo*)0x00da2780, + .GTownDesireInfo_ARRAY_00da2930 = (struct GTownDesireInfo (*)[17])0x00da2930, + .GTownDesireFunction_ARRAY_00da32c8 = (struct GTownDesireFunction (*)[17])0x00da32c8, + .GTribeInfo_ARRAY_00da57a8 = (struct GTribeInfo (*)[9])0x00da57a8, + .JustMapXZ_ARRAY_00da59fc = (struct JustMapXZ (*)[4])0x00da59fc, + .UINT_ARRAY_00da5a10 = (uint32_t (*)[1024])0x00da5a10, + .GVillagerInfo_ARRAY_00da6be8 = (struct GVillagerInfo (*)[84])0x00da6be8, + .PTR_00db9e28 = (struct VillagerName**)0x00db9e28, + .GVillagerStateTableInfo_ARRAY_00db9e68 = (struct GVillagerStateTableInfo (*)[255])0x00db9e68, + .GWorshipSiteInfo_ARRAY_00dcbd30 = (struct GWorshipSiteInfo (*)[9])0x00dcbd30, + .DAT_00e06020 = (uint32_t*)0x00e06020, + .near_clipping = (float*)0x00e839e0, + .g_info_transform = (struct InfoTransform*)0x00e839e4, + .DAT_00e83a20 = (int*)0x00e83a20, + .LHSys = (struct LHSys*)0x00e85040, + .lpCriticalSection_00e8c118 = (RTL_CRITICAL_SECTION*)0x00e8c118, + .lpCriticalSection_00e90650 = (RTL_CRITICAL_SECTION*)0x00e90650, + .LH3DMist = (struct LH3DMist_namespace*)0x00e9a11c, + .g_ptr_blocks__10LH3DIsland = (struct LandBlock* (*)[256])0x00e9c564, + .g_index_block__10LH3DIsland = (uint8_t (*)[32][32])0x00e9c964, + .LH3DMesh_g_current_list_matrix = (struct LHMatrix (*)[256])0x00e9ce28, + .LH3DMesh_g_pack = (struct g_pack_t**)0x00e9fe34, + .LH3DMesh_g_current_matrix = (struct LHMatrix**)0x00e9fe48, + .LH3DMesh_g_b_dont_care_about_texture = (bool*)0x00e9fe54, + .LH3DObject = (struct LH3DObject_region*)0x00ea1a88, + .grosse_merde_pos = (struct LHPoint*)0x00ea1b58, + .grosse_merde_foc = (struct LHPoint*)0x00ea1b68, + .g_camera_to_world = (struct LHMatrix*)0x00ea1cf8, + .g_world_to_camera = (struct LHMatrix*)0x00ea1d28, + .g_copy_of_world_to_clipping = (struct LHMatrix*)0x00ea1d58, + .g_mat_paper = (struct LHMatrix*)0x00ea1d88, + .g_camera = (struct LH3DCamera*)0x00ea1db8, + .g_clipping_to_world = (struct LHMatrix*)0x00ea9de0, + .g_local_to_clipping = (struct LHMatrix*)0x00ea9e10, + .g_world_to_clipping = (struct LHMatrix*)0x00ea9e40, + .field_0x00ea9e70 = (struct LHPlane*)0x00ea9e70, + .LHPoint_00ea9e70 = (struct LHPoint*)0x00ea9e70, + .g_sun_light_clipping = (struct LHPlane*)0x00ea9e80, + .field_0x00ea9e90 = (struct LHPlane*)0x00ea9e90, + .g_current_matrix = (struct LHMatrix**)0x00ea9ea0, + .current_time_maybe = (uint32_t*)0x00ea9eb0, + .g_view_configuration = (uint32_t*)0x00ea9ebc, + .DAT_00ea9ec0 = (uint32_t*)0x00ea9ec0, + .merde_focus = (uint32_t*)0x00ea9ecc, + .DAT_00eb9a98 = (void (__fastcall**)(void* this, const void* edx, struct MobileWallHug* param_3))0x00eb9a98, + .g_d3d_view2proj = (D3DMATRIX*)0x00ec7fd0, + .g_d3d_world2view = (D3DMATRIX*)0x00ec8010, + .UINT_ARRAY_00ec81f0 = (uint32_t (*)[2048])0x00ec81f0, + .UINT_ARRAY_00eca1f0 = (uint32_t (*)[153])0x00eca1f0, + .LH3DRender__g_b_need_tilling = (bool32_t*)0x00eca614, + .PTR_00eca618 = (struct SetRenderModeData**)0x00eca618, + .Direct3DDevice7 = (IDirect3DDevice7**)0x00eca638, + .DAT_00eca64c = (struct LH3DMaterial**)0x00eca64c, + .DAT_00eca654 = (uint32_t*)0x00eca654, + .game_font = (struct GatheringText**)0x00eccd08, + .DAT_00ed92dc = (struct LH3DMaterial**)0x00ed92dc, + .DAT_00edc34c = (uint8_t*)0x00edc34c, + .PTR_00edc368 = (struct LH3DMaterial**)0x00edc368, + .g_cached_tex_file = (struct LHReleasedFile*)0x00edd3e0, + .LH3DTexture_first = (struct LH3DTexture**)0x00edd460, + .PTR_00edd494 = (struct LH3DMaterial**)0x00edd494, + .LH3DAnim_file = (struct LHReleasedFile*)0x00edd498, + .PTR_g_pack = (struct g_anim_pack_t**)0x00edd508, + .LH3DMem = (struct LH3DMem_t*)0x00ef6540, + .LiquidParticleGroup_first = (struct LiquidParticleGroup**)0x00ef7538, + .DAT_00f05220 = (uint32_t*)0x00f05220, + .DAT_00f05420 = (uint32_t*)0x00f05420, + .INT_00fa51c4 = (int32_t*)0x00fa51c4, + .PTR_00fa51d0 = (void (__cdecl**)(int param_0, int param_1))0x00fa51d0, + .LH3DSubMesh_g_current_sub_mesh = (struct LH3DSubMesh**)0x00fa93bc, + .custom_footpath_display_control = (struct custom_footpath_display_control_t*)0x00fae800, +}; + +#endif /* BW1_DECOMP_GLOBALS_INCLUDED_H */ diff --git a/libs/chlasm/AllMeshes.h b/libs/chlasm/AllMeshes.h new file mode 100644 index 0000000..528daca --- /dev/null +++ b/libs/chlasm/AllMeshes.h @@ -0,0 +1,1201 @@ +#ifndef _ALL_MESHES_AND_ANIMS_H_ +#define _ALL_MESHES_AND_ANIMS_H_ + +// 704 Meshes. +// 471 Anims. +// 0 with substitution. +// 0 with dummy object. + +enum MESH_LIST +{ + MSH_INVALID = -1, // + MSH_DUMMY = 0, // + MSH_A_CROC_1 = 1, // + MSH_A_CROC_2 = 2, // + MSH_A_CROC_3 = 3, // + MSH_DOLPHIN_BONED = 4, // + MSH_B_CREATURE_DOJO = 5, // + MSH_B_CREATURE_DOJO_HEADS_BASE = 6, // + MSH_B_CREATURE_RACE_PILLER = 7, // + MSH_B_CREATURE_STADIUM_2_5 = 8, // + MSH_B_DOJO_APE = 9, // + MSH_B_DOJO_BEAR = 10, // + MSH_B_DOJO_CHICK = 11, // + MSH_B_DOJO_CHIMP = 12, // + MSH_B_DOJO_COW = 13, // + MSH_B_DOJO_CROC = 14, // + MSH_B_DOJO_GORILLA = 15, // + MSH_B_DOJO_HORSE = 16, // + MSH_B_DOJO_LEOPARD = 17, // + MSH_B_DOJO_LION = 18, // + MSH_B_DOJO_MANDRILL = 19, // + MSH_B_DOJO_POLAR_BEAR = 20, // + MSH_B_DOJO_RHINO = 21, // + MSH_B_DOJO_SHEEP = 22, // + MSH_B_DOJO_TIGER = 23, // + MSH_B_DOJO_TORTOISE = 24, // + MSH_B_DOJO_WOLF = 25, // + MSH_B_DOJO_ZEBRA = 26, // + MSH_LH_BASE_BATS = 27, // + MSH_LH_BASE_CREATURE_FIGHT = 28, // + MSH_LH_BASE_CREATURE_SPEED = 29, // + MSH_LH_BASE_CREATURE_SWAP = 30, // + MSH_LH_BASE_FUNGUS = 31, // + MSH_LH_BASE_ICE = 32, // + MSH_LH_BASE_NO_ENCOUNTER = 33, // + MSH_LH_BASE_SWAMP = 34, // + MSH_LH_BASE_TELEPORT = 35, // + MSH_I_MINISCROLL_FIGHT = 36, // + MSH_I_MINISCROLL_GOLD_BROTHERHOOD = 37, // + MSH_I_MINISCROLL_GOLD_CANCEL = 38, // + MSH_I_MINISCROLL_SILVER_CANCEL = 39, // + MSH_I_MINISCROLL_SWAP = 40, // + MSH_I_POINTER_HAND = 41, // + MSH_BROTHERHOODRING01 = 42, // + MSH_BROTHERHOODRING02 = 43, // + MSH_BROTHERHOODRING03 = 44, // + MSH_EGGTREE_COMPANION1 = 45, // + MSH_EGGTREE_COMPANION2 = 46, // + MSH_EGGTREE_COMPANION3 = 47, // + MSH_LH_BASE_BROTHERHOOD = 48, // + MSH_LH_BASE_BROTHERHOOD_HALF_SIZE = 49, // + MSH_MARBLE_C1 = 50, // + MSH_MARBLE_C2 = 51, // + MSH_MARBLE_C3 = 52, // + MSH_MARBLE_C4 = 53, // + MSH_MARBLE_C5 = 54, // + MSH_MARBLE_C6 = 55, // + MSH_MARBLE_S1 = 56, // + MSH_MARBLE_S2 = 57, // + MSH_MARBLE_S3 = 58, // + MSH_MARBLE_S4 = 59, // + MSH_MARBLE_S5 = 60, // + MSH_MARBLE_S6 = 61, // + MSH_O_BALISTA_BALISTA = 62, // + MSH_O_BALISTA_PIVOT = 63, // + MSH_O_BALISTA_TOWER = 64, // + MSH_O_EGG = 65, // + MSH_O_EGGTREE = 66, // + MSH_O_FISH = 67, // + MSH_O_FISH_IN_HAND = 68, // + MSH_O_FOOTY_BALL = 69, // + MSH_O_GRASS_DETAIL = 70, // + MSH_O_INFO_SIGN_NOMARK = 71, // + MSH_O_INFO_SIGN_NOMARK_BIG = 72, // + MSH_O_MARBLES_BASE = 73, // + MSH_O_PADIFIELD = 74, // + MSH_O_PUCK = 75, // + MSH_O_SPECIALCROPS = 76, // + MSH_O_WATER = 77, // + MSH_O_WATER_CANNON_BASE = 78, // + MSH_O_WATER_CANNON_CANNON = 79, // + MSH_SUNFLOWERSFINAL = 80, // + MSH_S_PHILE_ANTI_MIRACLE = 81, // + MSH_S_PHILE_CREATURE_SPEED = 82, // + MSH_P_EGPT_M_BUST = 83, // + MSH_P_MULE_MAN = 84, // + MSH_P_PIG_THING = 85, // + MSH_A_BAT_1 = 86, // + MSH_A_BAT_2 = 87, // + MSH_A_CROW_1 = 88, // + MSH_A_CROW_2 = 89, // + MSH_A_DOVE_1 = 90, // + MSH_A_DOVE_2 = 91, // + MSH_A_PIGEON_1 = 92, // + MSH_A_PIGEON_2 = 93, // + MSH_A_SEAGULL_1 = 94, // + MSH_A_SEAGULL_2 = 95, // + MSH_A_SPELL_DOVE = 96, // + MSH_A_SWALLOW_1 = 97, // + MSH_A_SWALLOW_2 = 98, // + MSH_A_VULTURE_1 = 99, // + MSH_A_VULTURE_2 = 100, // + MSH_A_COW_1 = 101, // + MSH_A_COW_2 = 102, // + MSH_A_COW_3 = 103, // + MSH_A_HORSE_1 = 104, // + MSH_A_HORSE_2 = 105, // + MSH_A_HORSE_3 = 106, // + MSH_A_LEOPARD_1 = 107, // + MSH_A_LEOPARD_2 = 108, // + MSH_A_LEOPARD_3 = 109, // + MSH_A_LION_1 = 110, // + MSH_A_LION_2 = 111, // + MSH_A_LION_3 = 112, // + MSH_A_PIG_1 = 113, // + MSH_A_PIG_2 = 114, // + MSH_A_PIG_3 = 115, // + MSH_SHARK_BONED = 116, // + MSH_A_SHEEP_1 = 117, // + MSH_A_SHEEP_2 = 118, // + MSH_A_SHEEP_3 = 119, // + MSH_A_TIGER_1 = 120, // + MSH_A_TIGER_2 = 121, // + MSH_A_TIGER_3 = 122, // + MSH_A_TORTOISE_1 = 123, // + MSH_A_TORTOISE_2 = 124, // + MSH_A_TORTOISE_3 = 125, // + MSH_A_WOLF_1 = 126, // + MSH_A_WOLF_2 = 127, // + MSH_A_WOLF_3 = 128, // + MSH_A_ZEBRA_1 = 129, // + MSH_A_ZEBRA_2 = 130, // + MSH_A_ZEBRA_3 = 131, // + MSH_B_AMCN_1 = 132, // + MSH_B_AMCN_1_A = 133, // + MSH_B_AMCN_2 = 134, // + MSH_B_AMCN_2_A = 135, // + MSH_B_AMCN_3 = 136, // + MSH_B_AMCN_3_A = 137, // + MSH_B_AMCN_4 = 138, // + MSH_B_AMCN_5 = 139, // + MSH_B_AMCN_CRECHE = 140, // + MSH_B_AMCN_FENCE = 141, // + MSH_B_AMCN_GRAVEYARD = 142, // + MSH_B_AMCN_TOTEM = 143, // + MSH_B_AMCN_WONDER = 144, // + MSH_B_AMCN_WORKSHOP = 145, // + MSH_B_AZTC_1 = 146, // + MSH_B_AZTC_2 = 147, // + MSH_B_AZTC_3 = 148, // + MSH_B_AZTC_4 = 149, // + MSH_B_AZTC_5 = 150, // + MSH_B_AZTC_CRECHE = 151, // + MSH_B_AZTC_GRAVEYARD = 152, // + MSH_B_AZTC_OLMECHEAD = 153, // + MSH_B_AZTC_STATUE = 154, // + MSH_B_AZTC_TEMPLE = 155, // + MSH_B_AZTC_TOTEM = 156, // + MSH_B_AZTC_WONDER = 157, // + MSH_B_AZTC_WORKSHOP = 158, // + MSH_B_CELT_1 = 159, // + MSH_B_CELT_2 = 160, // + MSH_B_CELT_3 = 161, // + MSH_B_CELT_4 = 162, // + MSH_B_CELT_5 = 163, // + MSH_B_CELT_5A = 164, // + MSH_B_CELT_CRECHE = 165, // + MSH_B_CELT_FENCE_SHORT = 166, // + MSH_B_CELT_FENCE_TALL = 167, // + MSH_B_CELT_GRAVEYARD = 168, // + MSH_B_CELT_GRAVE_01 = 169, // + MSH_B_CELT_GRAVE_02 = 170, // + MSH_B_CELT_GRAVE_03 = 171, // + MSH_B_CELT_TOTEM = 172, // + MSH_B_CELT_WALLGATE_SPELL = 173, // + MSH_B_CELT_WALLTOWER_SPELL = 174, // + MSH_B_CELT_WALL_SPELL = 175, // + MSH_B_CELT_WONDER = 176, // + MSH_B_CELT_WORKSHOP = 177, // + MSH_B_CITADEL_AMCN_ALTAR = 178, // + MSH_B_CITADEL_AZTC_ALTAR = 179, // + MSH_B_CITADEL_CELT_ALTAR = 180, // + MSH_B_CITADEL_DESIRE_HUNGRY = 181, // + MSH_B_CITADEL_DESIRE_SLEEP = 182, // + MSH_B_CITADEL_EGPT_ALTAR = 183, // + MSH_B_CITADEL_GREK_ALTAR = 184, // + MSH_B_CITADEL_JAPN_ALTAR = 185, // + MSH_B_CITADEL_NORS_ALTAR = 186, // + MSH_B_CITADEL_POP_COUNTER_BEAD = 187, // + MSH_B_CITADEL_TIBT_ALTAR = 188, // + MSH_B_EGPT_1 = 189, // + MSH_B_EGPT_1_A = 190, // + MSH_B_EGPT_2 = 191, // + MSH_B_EGPT_2_A = 192, // + MSH_B_EGPT_3 = 193, // + MSH_B_EGPT_4 = 194, // + MSH_B_EGPT_5 = 195, // + MSH_B_EGPT_5_A = 196, // + MSH_B_EGPT_BARREL = 197, // + MSH_B_EGPT_CART = 198, // + MSH_B_EGPT_CRECHE = 199, // + MSH_B_EGPT_GRAVEYARD = 200, // + MSH_B_EGPT_NEEDLE = 201, // + MSH_B_EGPT_POT_A = 202, // + MSH_B_EGPT_POT_B = 203, // + MSH_B_EGPT_TOTEM = 204, // + MSH_B_EGPT_WELL = 205, // + MSH_B_EGPT_WINDMILL = 206, // + MSH_B_EGPT_WONDER = 207, // + MSH_B_EGPT_WORKSHOP = 208, // + MSH_B_GREK_1 = 209, // + MSH_B_GREK_2 = 210, // + MSH_B_GREK_2_A = 211, // + MSH_B_GREK_3 = 212, // + MSH_B_GREK_4 = 213, // + MSH_B_GREK_5 = 214, // + MSH_B_GREK_5A = 215, // + MSH_B_GREK_CRECHE = 216, // + MSH_B_GREK_GRAVEYARD = 217, // + MSH_B_GREK_SAIL = 218, // + MSH_B_GREK_STATUE = 219, // + MSH_B_GREK_TOTEM = 220, // + MSH_B_GREK_WONDER = 221, // + MSH_B_GREK_WORKSHOP = 222, // + MSH_B_JAPN_1 = 223, // + MSH_B_JAPN_2 = 224, // + MSH_B_JAPN_3 = 225, // + MSH_B_JAPN_4 = 226, // + MSH_B_JAPN_5 = 227, // + MSH_B_JAPN_CRECHE = 228, // + MSH_B_JAPN_GRAVEYARD = 229, // + MSH_B_JAPN_TOTEM = 230, // + MSH_B_JAPN_WONDER = 231, // + MSH_B_JAPN_WORKSHOP = 232, // + MSH_B_CAMPFIRE = 233, // + MSH_B_CREATURE_PEN_LEASH_POLE = 234, // + MSH_B_FOOTBALL_CENTRECIRCLE = 235, // + MSH_B_FOOTBALL_CORNERFLAG = 236, // + MSH_B_FOOTBALL_GOAL = 237, // + MSH_B_FOOTBALL_PITCH = 238, // + MSH_B_FOOTBALL_PITCH_BIG = 239, // + MSH_B_MINE_ENTRANCE = 240, // + MSH_B_PIER = 241, // + MSH_B_SCAFFOLD_01 = 242, // + MSH_B_SCAFFOLD_02 = 243, // + MSH_B_SCAFFOLD_03 = 244, // + MSH_B_XANDO_BASE = 245, // + MSH_B_XANDO_O = 246, // + MSH_B_XANDO_X = 247, // + MSH_PIPER_ENTRANCE_PHYS_1 = 248, // + MSH_B_AMCN_VILLAGECENTRE = 249, // + MSH_B_AZTC_VILLAGECENTRE = 250, // + MSH_B_CELT_VILLAGECENTRE = 251, // + MSH_B_DESIRE_FLAG_ABODE = 252, // + MSH_B_DESIRE_FLAG_CHILDREN = 253, // + MSH_B_DESIRE_FLAG_CIVIC_BUILDING = 254, // + MSH_B_DESIRE_FLAG_FOOD = 255, // + MSH_B_DESIRE_FLAG_PLAYTIME = 256, // + MSH_B_DESIRE_FLAG_PROTECTION = 257, // + MSH_B_DESIRE_FLAG_RAIN = 258, // + MSH_B_DESIRE_FLAG_SUN = 259, // + MSH_B_DESIRE_FLAG_WOOD = 260, // + MSH_B_EGPT_VILLAGECENTRE = 261, // + MSH_B_GREK_VILLAGECENTRE = 262, // + MSH_B_JAPN_VILLAGECENTRE = 263, // + MSH_B_NORS_VILLAGECENTRE = 264, // + MSH_B_PLAYER_ICON01 = 265, // + MSH_B_PLAYER_ICON01_PLINTH = 266, // + MSH_B_PLAYER_ICON_APE = 267, // + MSH_B_PLAYER_ICON_BEAR = 268, // + MSH_B_PLAYER_ICON_COW = 269, // + MSH_B_PLAYER_ICON_HORSE = 270, // + MSH_B_PLAYER_ICON_LEOPARD = 271, // + MSH_B_PLAYER_ICON_LION = 272, // + MSH_B_PLAYER_ICON_PLINTH_AMCN = 273, // + MSH_B_PLAYER_ICON_PLINTH_AZTC = 274, // + MSH_B_PLAYER_ICON_PLINTH_CELT = 275, // + MSH_B_PLAYER_ICON_PLINTH_EGPT = 276, // + MSH_B_PLAYER_ICON_PLINTH_GREK = 277, // + MSH_B_PLAYER_ICON_PLINTH_JAPN = 278, // + MSH_B_PLAYER_ICON_PLINTH_NORS = 279, // + MSH_B_PLAYER_ICON_PLINTH_TIBT = 280, // + MSH_B_PLAYER_ICON_POLARBEAR = 281, // + MSH_B_PLAYER_ICON_SHEEP = 282, // + MSH_B_PLAYER_ICON_TIGER = 283, // + MSH_B_PLAYER_ICON_TORTOISE = 284, // + MSH_B_PLAYER_ICON_WOLF = 285, // + MSH_B_PLAYER_ICON_ZEBRA = 286, // + MSH_B_TIBT_VILLAGECENTRE = 287, // + MSH_B_VILLAGECENTRE_SPELLHAND = 288, // + MSH_B_NORS_1 = 289, // + MSH_B_NORS_2 = 290, // + MSH_B_NORS_2_A = 291, // + MSH_B_NORS_3 = 292, // + MSH_B_NORS_3_A = 293, // + MSH_B_NORS_4 = 294, // + MSH_B_NORS_5 = 295, // + MSH_B_NORS_CRECHE = 296, // + MSH_B_NORS_GATE = 297, // + MSH_B_NORS_GRAVEYARD = 298, // + MSH_B_NORS_PIGPEN = 299, // + MSH_B_NORS_TEMPLE = 300, // + MSH_B_NORS_TOTEM = 301, // + MSH_B_NORS_WONDER = 302, // + MSH_B_NORS_WORKSHOP = 303, // + MSH_NORS_GATE_PHYS_1 = 304, // + MSH_NORS_GATE_PHYS_2 = 305, // + MSH_B_AMCN_STORAGE_PIT = 306, // + MSH_B_AZTC_STORAGE_PIT = 307, // + MSH_B_CELT_STORAGE_PIT = 308, // + MSH_B_EGPT_STORAGE_PIT = 309, // + MSH_B_GRAIN = 310, // + MSH_B_GREK_STORAGE_PIT = 311, // + MSH_B_JAPN_STORAGE_PIT = 312, // + MSH_B_NORS_STORAGE_PIT = 313, // + MSH_B_TIBT_STORAGE_PIT = 314, // + MSH_B_WOOD_00 = 315, // + MSH_B_WOOD_01 = 316, // + MSH_B_WOOD_02 = 317, // + MSH_B_WOOD_03 = 318, // + MSH_B_WOOD_04 = 319, // + MSH_B_WOOD_OUTSIDE = 320, // + MSH_B_TIBT_1 = 321, // + MSH_B_TIBT_2 = 322, // + MSH_B_TIBT_3 = 323, // + MSH_B_TIBT_3_A = 324, // + MSH_B_TIBT_4 = 325, // + MSH_B_TIBT_5 = 326, // + MSH_B_TIBT_5_A = 327, // + MSH_B_TIBT_CRECHE = 328, // + MSH_B_TIBT_GRAVEYARD = 329, // + MSH_B_TIBT_LARGE_PILLER = 330, // + MSH_B_TIBT_MINI_TEMPLE = 331, // + MSH_B_TIBT_TOTEM = 332, // + MSH_B_TIBT_WONDER = 333, // + MSH_B_TIBT_WORKSHOP = 334, // + MSH_B_SPELLHAND = 335, // + MSH_B_WORSHIPGRAIN = 336, // + MSH_B_WORSHIPSITE_01_NEUTRAL = 337, // + MSH_BOULDER1_CHALK = 338, // + MSH_BOULDER1_LIME = 339, // + MSH_BOULDER1_SAND = 340, // + MSH_BOULDER1_VOLCANIC = 341, // + MSH_BOULDER2_CHALK = 342, // + MSH_BOULDER2_LIME = 343, // + MSH_BOULDER2_SAND = 344, // + MSH_BOULDER2_VOLCANIC = 345, // + MSH_BOULDER3_CHALK = 346, // + MSH_BOULDER3_LIME = 347, // + MSH_BOULDER3_SAND = 348, // + MSH_BOULDER3_VOLCANIC = 349, // + MSH_FAT_PILAR_CHALK = 350, // + MSH_FAT_PILAR_LIME = 351, // + MSH_FAT_PILAR_SAND = 352, // + MSH_FAT_PILAR_VOLCANIC = 353, // + MSH_F_CREATURE_CAVE = 354, // + MSH_F_FOREST = 355, // + MSH_F_FOREST01 = 356, // + MSH_F_FOREST02 = 357, // + MSH_F_FOREST03 = 358, // + MSH_F_FOREST_BOOK01 = 359, // + MSH_F_GIANTSKELETON = 360, // + MSH_F_GIANTSKULL = 361, // + MSH_F_IDOL = 362, // + MSH_F_PIPER_CAVE = 363, // + MSH_F_RIB1 = 364, // + MSH_F_RIB2 = 365, // + MSH_F_SPOUTHOLE = 366, // + MSH_F_VERTABRAE = 367, // + MSH_PILAR2_CHALK = 368, // + MSH_PILAR2_LIME = 369, // + MSH_PILAR2_SAND = 370, // + MSH_PILAR2_VOLCANIC = 371, // + MSH_PILAR3_CHALK = 372, // + MSH_PILAR3_LIME = 373, // + MSH_PILAR3_SAND = 374, // + MSH_PILAR3_VOLCANIC = 375, // + MSH_PILAR_CHALK = 376, // + MSH_PILAR_LIME = 377, // + MSH_PILAR_SAND = 378, // + MSH_PILAR_VOLCANIC = 379, // + MSH_PUZZLE_1 = 380, // + MSH_PUZZLE_2 = 381, // + MSH_PUZZLE_3 = 382, // + MSH_PUZZLE_4 = 383, // + MSH_PUZZLE_5 = 384, // + MSH_SPIKEY_PILAR_CHALK = 385, // + MSH_SPIKEY_PILAR_LIME = 386, // + MSH_SPIKEY_PILAR_SAND = 387, // + MSH_SPIKEY_PILAR_VOLCANIC = 388, // + MSH_Z_PHONEBOX = 389, // + MSH_I_BLAST = 390, // + MSH_I_FIREBALL = 391, // + MSH_I_FOOD = 392, // + MSH_I_FOOTBALL = 393, // + MSH_I_FOREST = 394, // + MSH_I_HEAL = 395, // + MSH_I_LIGHTNING = 396, // + MSH_I_LIGHTNING2 = 397, // + MSH_I_MINISCROLL = 398, // + MSH_I_MINISCROLL_ACTIVE = 399, // + MSH_I_MINISCROLL_BRONZE = 400, // + MSH_I_MINISCROLL_BRONZE_ACTIVE = 401, // + MSH_I_MINISCROLL_GOLD = 402, // + MSH_I_MINISCROLL_GOLD_ACTIVE = 403, // + MSH_I_MINISCROLL_SILVER = 404, // + MSH_I_MINISCROLL_SILVER_ACTIVE = 405, // + MSH_I_OFFERING_BEDROLL = 406, // + MSH_I_OFFERING_FERTILITY = 407, // + MSH_I_OFFERING_FOOD = 408, // + MSH_I_OFFERING_PLAY = 409, // + MSH_I_OFFERING_PROTECTION = 410, // + MSH_I_OFFERING_SKULL = 411, // + MSH_I_OFFERING_VILLAGE_IMPROVE = 412, // + MSH_I_OFFERING_WATER = 413, // + MSH_I_OFFERING_WOOD = 414, // + MSH_I_PRIEST = 415, // + MSH_I_SHIELD = 416, // + MSH_I_SKELETON = 417, // + MSH_I_SPELLGEM = 418, // + MSH_I_TREES = 419, // + MSH_I_WALL = 420, // + MSH_BOWLINGTHING = 421, // + MSH_GATE_TOTEM_PLINTHE_PHYS_1 = 422, // + MSH_GATE_TOTEM_PLINTHE_PHYS_2 = 423, // + MSH_GATE_TOTEM_PLINTHE_PHYS_3 = 424, // + MSH_O_ARK = 425, // + MSH_O_ARK_DRY_DOCK = 426, // + MSH_O_ARK_WRECK = 427, // + MSH_O_AXE = 428, // + MSH_O_BAG = 429, // + MSH_O_BALL = 430, // + MSH_O_BELLTOWER = 431, // + MSH_O_BOX_FRAME = 432, // + MSH_O_BRANCH_EVERGREEN_INHAND = 433, // + MSH_O_BRANCH_FRUIT_INHAND = 434, // + MSH_O_BRANCH_HARDWOOD_INHAND = 435, // + MSH_O_BURNT_TREE = 436, // + MSH_O_CAULDRON = 437, // + MSH_O_CHAMPI = 438, // + MSH_O_CREATURE_TURD = 439, // + MSH_O_CROOK = 440, // + MSH_O_FISHINGROD = 441, // + MSH_O_FLATROCK_CHALK = 442, // + MSH_O_FLATROCK_LIMESTONE = 443, // + MSH_O_FLATROCK_SANDSTONE = 444, // + MSH_O_FLATROCK_VOLCANIC = 445, // + MSH_O_FLOWER_BED_1 = 446, // + MSH_O_FLOWER_BED_2 = 447, // + MSH_O_GATE_TOTEM_APE = 448, // + MSH_O_GATE_TOTEM_BLANK = 449, // + MSH_O_GATE_TOTEM_COW = 450, // + MSH_O_GATE_TOTEM_PLINTHE = 451, // + MSH_O_GATE_TOTEM_TIGER = 452, // + MSH_O_HAMMER = 453, // + MSH_O_INFO_SIGN = 454, // + MSH_O_JAPN_STONETHING = 455, // + MSH_O_LARGE_FISH_DEAD = 456, // + MSH_O_LIGHT_BULB = 457, // + MSH_O_LOGS_INHAND = 458, // + MSH_O_LONGROCK_CHALK = 459, // + MSH_O_LONGROCK_LIMESTONE = 460, // + MSH_O_LONGROCK_SANDSTONE = 461, // + MSH_O_LONGROCK_VOLCANIC = 462, // + MSH_O_MAGIC_MUSHROOM = 463, // + MSH_O_MALLET_HEAVY = 464, // + MSH_O_MOSES_BASKET = 465, // + MSH_O_ROCK_CHALK = 466, // + MSH_O_ROCK_LIMESTONE = 467, // + MSH_O_ROCK_SANDSTONE = 468, // + MSH_O_ROCK_VOLCANIC = 469, // + MSH_O_SAW = 470, // + MSH_O_SCYTHE = 471, // + MSH_O_SHARPROCK_CHALK = 472, // + MSH_O_SHARPROCK_LIMESTONE = 473, // + MSH_O_SHARPROCK_SANDSTONE = 474, // + MSH_O_SHARPROCK_VOLCANIC = 475, // + MSH_O_SKULL_TOTEM = 476, // + MSH_O_SPADE = 477, // + MSH_O_SQUAREROCK_CHALK = 478, // + MSH_O_SQUAREROCK_LIMESTONE = 479, // + MSH_O_SQUAREROCK_SANDSTONE = 480, // + MSH_O_SQUAREROCK_VOLCANIC = 481, // + MSH_O_TICKERTAPE = 482, // + MSH_O_TOADSTOOL = 483, // + MSH_O_TOMBSTONE = 484, // + MSH_O_TOWNLIGHT = 485, // + MSH_O_TOY_BALL = 486, // + MSH_O_TOY_BOWLING_BALL = 487, // + MSH_O_TOY_CUDDLY = 488, // + MSH_O_TOY_DIE = 489, // + MSH_O_TOY_SKITTLE = 490, // + MSH_O_WHEAT_ENCLOSURE = 491, // + MSH_O_WHEAT_INHAND = 492, // + MSH_O_WOOD_INHAND = 493, // + MSH_REWARD_CHEST_EXPLODE = 494, // + MSH_SCULPTURE_IN_PROGRESS = 495, // + MSH_SINGING_STONE_CENTER = 496, // + MSH_SINGING_STONE = 497, // + MSH_NEW_SHAOLIN = 498, // + MSH_P_AMCN_F_A_1 = 499, // + MSH_P_AMCN_F_A_2 = 500, // + MSH_P_AMCN_F_A_3 = 501, // + MSH_P_AMCN_M_A_1 = 502, // + MSH_P_AMCN_M_A_2 = 503, // + MSH_P_AMCN_M_A_3 = 504, // + MSH_P_ANIMAL_BREEDER = 505, // + MSH_P_ANIMAL_TRAINER = 506, // + MSH_P_AZTC_F_A_1 = 507, // + MSH_P_AZTC_F_A_2 = 508, // + MSH_P_AZTC_F_A_3 = 509, // + MSH_P_AZTC_LEADER = 510, // + MSH_P_AZTC_M_A_1 = 511, // + MSH_P_AZTC_M_A_2 = 512, // + MSH_P_AZTC_M_A_3 = 513, // + MSH_P_BANDIT = 514, // + MSH_P_BOY_BLACK_1 = 515, // + MSH_P_BOY_BLACK_2 = 516, // + MSH_P_BOY_BLACK_3 = 517, // + MSH_P_BOY_ORIENTAL_1 = 518, // + MSH_P_BOY_ORIENTAL_2 = 519, // + MSH_P_BOY_ORIENTAL_3 = 520, // + MSH_P_BOY_TAN_1 = 521, // + MSH_P_BOY_TAN_2 = 522, // + MSH_P_BOY_TAN_3 = 523, // + MSH_P_BOY_WHITE_1 = 524, // + MSH_P_BOY_WHITE_2 = 525, // + MSH_P_BOY_WHITE_3 = 526, // + MSH_P_CELT_FOOTBALLER = 527, // + MSH_P_CELT_F_A_1 = 528, // + MSH_P_CELT_F_A_2 = 529, // + MSH_P_CELT_F_A_3 = 530, // + MSH_P_CELT_M_A_1 = 531, // + MSH_P_CELT_M_A_2 = 532, // + MSH_P_CELT_M_A_3 = 533, // + MSH_P_CRUSADER = 534, // + MSH_P_CULT_PRIEST = 535, // + MSH_P_CULT_PRIESTESS = 536, // + MSH_P_EGPT_F_A_1 = 537, // + MSH_P_EGPT_F_A_2 = 538, // + MSH_P_EGPT_F_A_3 = 539, // + MSH_P_EGPT_M_A_1 = 540, // + MSH_P_EGPT_M_A_2 = 541, // + MSH_P_EGPT_M_A_3 = 542, // + MSH_P_ENGINEER = 543, // + MSH_P_GIRL_BLACK_1 = 544, // + MSH_P_GIRL_BLACK_2 = 545, // + MSH_P_GIRL_BLACK_3 = 546, // + MSH_P_GIRL_ORIENTAL_1 = 547, // + MSH_P_GIRL_ORIENTAL_2 = 548, // + MSH_P_GIRL_ORIENTAL_3 = 549, // + MSH_P_GIRL_TAN_1 = 550, // + MSH_P_GIRL_TAN_2 = 551, // + MSH_P_GIRL_TAN_3 = 552, // + MSH_P_GIRL_WHITE_1 = 553, // + MSH_P_GIRL_WHITE_2 = 554, // + MSH_P_GIRL_WHITE_3 = 555, // + MSH_P_GREK_F_A_1 = 556, // + MSH_P_GREK_F_A_2 = 557, // + MSH_P_GREK_F_A_3 = 558, // + MSH_P_GREK_M_A_1 = 559, // + MSH_P_GREK_M_A_2 = 560, // + MSH_P_GREK_M_A_3 = 561, // + MSH_P_HERMIT = 562, // + MSH_P_HIPPY = 563, // + MSH_P_IDOL_BUILDER = 564, // + MSH_P_INTRO_F = 565, // + MSH_P_INTRO_M = 566, // + MSH_P_JAPANESE_F_A_2 = 567, // + MSH_P_JAPANESE_F_A_3 = 568, // + MSH_P_JAPANESE_M_A_1 = 569, // + MSH_P_JAPANESE_M_A_2 = 570, // + MSH_P_JAPANESE_M_A_3 = 571, // + MSH_P_JAPN_F_A_1 = 572, // + MSH_P_JAPN_F_A_2 = 573, // + MSH_P_JAPN_F_A_3 = 574, // + MSH_P_JAPN_M_A_1 = 575, // + MSH_P_JAPN_M_A_2 = 576, // + MSH_P_JAPN_M_A_3 = 577, // + MSH_P_NOMAD = 578, // + MSH_P_NORS_FOOTBALLER = 579, // + MSH_P_NORS_F_A_1 = 580, // + MSH_P_NORS_F_A_2 = 581, // + MSH_P_NORS_F_A_3 = 582, // + MSH_P_NORS_M_A_1 = 583, // + MSH_P_NORS_M_A_2 = 584, // + MSH_P_NORS_M_A_3 = 585, // + MSH_P_NORS_SAILOR = 586, // + MSH_P_PIED_PIPER = 587, // + MSH_P_SAILOR_ACCORDIAN = 588, // + MSH_P_SCULPTOR = 589, // + MSH_P_SHAOLIN_MONK = 590, // + MSH_P_SHEPERD = 591, // + MSH_P_SKELETON_F = 592, // + MSH_P_SKELETON_M = 593, // + MSH_P_TIBETAN_F_A_2 = 594, // + MSH_P_TIBETAN_F_A_3 = 595, // + MSH_P_TIBETAN_M_A_1 = 596, // + MSH_P_TIBETAN_M_A_2 = 597, // + MSH_P_TIBETAN_M_A_3 = 598, // + MSH_P_TIBT_F_A_1 = 599, // + MSH_P_TIBT_F_A_2 = 600, // + MSH_P_TIBT_F_A_3 = 601, // + MSH_P_TIBT_M_A_1 = 602, // + MSH_P_TIBT_M_A_2 = 603, // + MSH_P_TIBT_M_A_3 = 604, // + MSH_CREED = 605, // + MSH_S_BLAST_CONE = 606, // + MSH_S_BLAST_CENTRE = 607, // + MSH_S_BLAST_INNER = 608, // + MSH_S_BLAST_OUTER = 609, // + MSH_S_COLUMN = 610, // + MSH_S_FIREBALL_TAIL = 611, // + MSH_S_HEAL_MESH = 612, // + MSH_S_GRAIN_PILE = 613, // + MSH_S_HORN_OF_PLENTY = 614, // + MSH_S_PHILE = 615, // + MSH_S_PHILE_ANGRY = 616, // + MSH_S_PHILE_BIG = 617, // + MSH_S_PHILE_FAT = 618, // + MSH_S_PHILE_FREEZE = 619, // + MSH_S_PHILE_FRIGHTEN = 620, // + MSH_S_PHILE_HUNGRY = 621, // + MSH_S_PHILE_ILL = 622, // + MSH_S_PHILE_INVISIBLE = 623, // + MSH_S_PHILE_ITCHY = 624, // + MSH_S_PHILE_LOVE = 625, // + MSH_S_PHILE_SMALL = 626, // + MSH_S_PHILE_STRONG = 627, // + MSH_S_PHILE_THIN = 628, // + MSH_S_PHILE_THIRSTY = 629, // + MSH_S_PHILE_TIRED = 630, // + MSH_S_PHILE_WEAK = 631, // + MSH_S_RAIN_CONE = 632, // + MSH_S_SHIELDMAGICLOWPOLY = 633, // + MSH_S_SOLID_SHIELD = 634, // + MSH_S_SPELLBALLSURFACE02 = 635, // + MSH_S_SKULL_ICON = 636, // + MSH_S_SPELL_CREATOR = 637, // + MSH_S_VORTEXCYLINDER = 638, // + MSH_S_ZCHEATBOX = 639, // + MSH_S_PULSE_IN = 640, // + MSH_S_PULSE_OUT = 641, // + MSH_A_WORM = 642, // + MSH_B_DUMMY_CITADEL = 643, // + MSH_Z_APPLE_BARREL = 644, // + MSH_Z_ARROW = 645, // + MSH_Z_SPELLROCK01 = 646, // + MSH_Z_SPELLROCK02 = 647, // + MSH_T_COPSE = 648, // + MSH_T_COPSE_A = 649, // + MSH_T_BEECH = 650, // + MSH_T_BIRCH = 651, // + MSH_T_BUSH = 652, // + MSH_T_BUSH_A = 653, // + MSH_T_BUSH_B = 654, // + MSH_T_CEDAR = 655, // + MSH_T_CONIFER = 656, // + MSH_T_CONIFER_A = 657, // + MSH_T_CYPRESS = 658, // + MSH_T_CYPRESS_A = 659, // + MSH_T_HEDGE = 660, // + MSH_T_HEDGE_A = 661, // + MSH_T_OAK = 662, // + MSH_T_OAK_A = 663, // + MSH_T_OLIVE = 664, // + MSH_T_PALM = 665, // + MSH_T_PALM_A = 666, // + MSH_T_PALM_B = 667, // + MSH_T_PALM_C = 668, // + MSH_T_PINE = 669, // + MSH_T_RICE = 670, // + MSH_T_ROOTS = 671, // + MSH_T_ROOTS_PILE = 672, // + MSH_T_WHEAT = 673, // + MSH_U_AXE = 674, // + MSH_U_BAG = 675, // + MSH_U_BALL = 676, // + MSH_U_BENCH = 677, // + MSH_U_BUCKET = 678, // + MSH_U_BUCKET02 = 679, // + MSH_U_CART = 680, // + MSH_U_CHEST = 681, // + MSH_U_CHEST_TOP = 682, // + MSH_U_CROOK = 683, // + MSH_U_FISHING_ROD = 684, // + MSH_U_FRAME = 685, // + MSH_U_FRAME_SKIN = 686, // + MSH_U_HAMMER = 687, // + MSH_U_MALLET_HEAVY = 688, // + MSH_U_SAW = 689, // + MSH_U_SCYTHE = 690, // + MSH_U_SPADE = 691, // + MSH_U_STOOL = 692, // + MSH_U_STOOL01 = 693, // + MSH_U_TABLE = 694, // + MSH_U_TROUGH = 695, // + MSH_U_WASHING_LINE_AMCN = 696, // + MSH_U_WASHING_LINE_AZTC = 697, // + MSH_U_WASHING_LINE_CELT = 698, // + MSH_U_WASHING_LINE_EGPT = 699, // + MSH_U_WASHING_LINE_GREK = 700, // + MSH_U_WASHING_LINE_JAPN = 701, // + MSH_U_WASHING_LINE_NORS = 702, // + MSH_U_WASHING_LINE_TIBT = 703, // + MAX_COUNT_3D_MESHES = 704, // +}; + + +enum ANIM_LIST +{ + ANM_DONT_DRAW = -4, // + ANM_NO_MOVE_ANIM_SET = -3, // + ANM_NO_ANIM_SET = -2, // + ANM_INVALID = -1, // + ANM_DOLPHIN_DIVE_JUMP_SUMMERSAULT = 0, // + ANM_DOLPHIN_DIVE_SURFACE = 1, // + ANM_DOLPHIN_DIVE_SURFACE_HEAD = 2, // + ANM_DOLPHIN_DIVE_SURFACE_ON_TAIL = 3, // + ANM_DOLPHIN_DOWN_FROM_TAIL = 4, // + ANM_DOLPHIN_HEAD_BOB = 5, // + ANM_DOLPHIN_ON_TAIL = 6, // + ANM_DOLPHIN_SWIM = 7, // + ANM_DOLPHIN_SWIM_GLIDE = 8, // + ANM_DOLPHIN_SWIM_JUMP = 9, // + ANM_DOLPHIN_SWIM_TURN180 = 10, // + ANM_DOLPHIN_SWIM_TURN_90LEFT = 11, // + ANM_DOLPHIN_SWIM_TURN_90RIGHT = 12, // + ANM_BALISTA_BALISTA_PULLBACK = 13, // + ANM_BALISTA_BALISTA_SHOOT = 14, // + ANM_WATER_CANNON_PUMP = 15, // + ANM_WATER_CANNON_SHOOT = 16, // + ANM_P_FLYING_MULE_DUDE = 17, // + ANM_P_MISSIONARY_IT_S_VERY_BIG = 18, // + ANM_P_MISSIONARY_MONKEY_MIMIC = 19, // + ANM_P_MISSIONARY_RECIEVES_SLAPS = 20, // + ANM_P_MISSIONARY_RIGHT_LEFT_PUNCH = 21, // + ANM_P_MISSIONARY_RIGHT_LEFT_SLAP = 22, // + ANM_P_SLEEPING_RESTLESS_1 = 23, // + ANM_P_SLEEPING_RESTLESS_2 = 24, // + ANM_BAT_ERATICGLIDE = 25, // + ANM_BAT_FLAP = 26, // + ANM_BAT_GLIDE = 27, // + ANM_CROW_FLAP = 28, // + ANM_CROW_GLIDE = 29, // + ANM_CROW_LANDING = 30, // + ANM_CROW_SIT = 31, // + ANM_CROW_TAKEOFF = 32, // + ANM_DOVE_FLAP = 33, // + ANM_DOVE_GLIDE = 34, // + ANM_DOVE_LANDING = 35, // + ANM_DOVE_SIT = 36, // + ANM_DOVE_TAKEOFF = 37, // + ANM_PIGEON_FLAP = 38, // + ANM_PIGEON_GLIDE = 39, // + ANM_PIGEON_LANDING = 40, // + ANM_PIGEON_SIT = 41, // + ANM_PIGEON_TAKEOFF = 42, // + ANM_SEAGULL_FLAP = 43, // + ANM_SEAGULL_GENTLEFLAP = 44, // + ANM_SEAGULL_GLIDE = 45, // + ANM_SEAGULL_LANDING = 46, // + ANM_SEAGULL_TAKEOFF = 47, // + ANM_SPELL_DOVE_FLAP = 48, // + ANM_SPELL_DOVE_GLIDE = 49, // + ANM_SWALLOW_CALMGLIDE = 50, // + ANM_SWALLOW_ERATICGLIDE = 51, // + ANM_SWALLOW_FLAP = 52, // + ANM_A_COW_DEAD = 53, // + ANM_A_COW_DEAD_ON_LHS = 54, // + ANM_A_COW_DEAD_ON_RHS = 55, // + ANM_A_COW_DIE = 56, // + ANM_A_COW_DOWNED_ON_LHS = 57, // + ANM_A_COW_DOWNED_ON_RHS = 58, // + ANM_A_COW_DROWNING = 59, // + ANM_A_COW_EAT_1 = 60, // + ANM_A_COW_EAT_2 = 61, // + ANM_A_COW_GOTO_EAT = 62, // + ANM_A_COW_IN_HAND = 63, // + ANM_A_COW_LANDED_LEFT_SIDE = 64, // + ANM_A_COW_LANDED_RIGHT_SIDE = 65, // + ANM_A_COW_RUN = 66, // + ANM_A_COW_STAND = 67, // + ANM_A_COW_THROWN = 68, // + ANM_A_COW_UPFROM_EAT = 69, // + ANM_A_COW_WALK = 70, // + ANM_A_HORSE_DEADLHS = 71, // + ANM_A_HORSE_DEADRHS = 72, // + ANM_A_HORSE_EAT1 = 73, // + ANM_A_HORSE_EAT2 = 74, // + ANM_A_HORSE_FALL_DEADLHS = 75, // + ANM_A_HORSE_FALL_DEADRHS = 76, // + ANM_A_HORSE_GOTO_EAT = 77, // + ANM_A_HORSE_IN_HAND = 78, // + ANM_A_HORSE_LAND_GET_UPLHS = 79, // + ANM_A_HORSE_LAND_GET_UPRHS = 80, // + ANM_A_HORSE_RUN = 81, // + ANM_A_HORSE_STAND = 82, // + ANM_A_HORSE_THROWN = 83, // + ANM_A_HORSE_TROT = 84, // + ANM_A_HORSE_UP_FROM_EAT = 85, // + ANM_A_HORSE_WALK = 86, // + ANM_A_LEOPARD_DEAD = 87, // + ANM_A_LEOPARD_DEAD_ON_LEFT = 88, // + ANM_A_LEOPARD_DEAD_ON_RIGHT = 89, // + ANM_A_LEOPARD_DIE = 90, // + ANM_A_LEOPARD_EAT = 91, // + ANM_A_LEOPARD_GET_UP_FROM_LEFT = 92, // + ANM_A_LEOPARD_GET_UP_FROM_RIGHT = 93, // + ANM_A_LEOPARD_GOTO_EAT = 94, // + ANM_A_LEOPARD_GOTO_SIT = 95, // + ANM_A_LEOPARD_GOTO_SLEEP = 96, // + ANM_A_LEOPARD_IN_HAND = 97, // + ANM_A_LEOPARD_POUNCE = 98, // + ANM_A_LEOPARD_POUNCE_HI = 99, // + ANM_A_LEOPARD_POUNCE_LO = 100, // + ANM_A_LEOPARD_PROWL = 101, // + ANM_A_LEOPARD_RUN = 102, // + ANM_A_LEOPARD_SIT = 103, // + ANM_A_LEOPARD_SLEEP = 104, // + ANM_A_LEOPARD_STAND = 105, // + ANM_A_LEOPARD_THROWN = 106, // + ANM_A_LEOPARD_UPFROM_EAT = 107, // + ANM_A_LEOPARD_UPFROM_SIT = 108, // + ANM_A_LEOPARD_UPFROM_SLEEP = 109, // + ANM_A_LEOPARD_WALK = 110, // + ANM_A_LION_DEAD = 111, // + ANM_A_LION_DEAD_ON_LEFT = 112, // + ANM_A_LION_DEAD_ON_RIGHT = 113, // + ANM_A_LION_DIE = 114, // + ANM_A_LION_DOWNED_ON_LHS = 115, // + ANM_A_LION_DOWNED_ON_RHS = 116, // + ANM_A_LION_EAT = 117, // + ANM_A_LION_GET_UP_FROM_LEFT = 118, // + ANM_A_LION_GET_UP_FROM_RIGHT = 119, // + ANM_A_LION_GOTO_EAT = 120, // + ANM_A_LION_GOTO_SIT = 121, // + ANM_A_LION_GOTO_SLEEP = 122, // + ANM_A_LION_IN_HAND = 123, // + ANM_A_LION_POUNCE = 124, // + ANM_A_LION_POUNCE_HI = 125, // + ANM_A_LION_POUNCE_LO = 126, // + ANM_A_LION_PROWL = 127, // + ANM_A_LION_RUN = 128, // + ANM_A_LION_SIT = 129, // + ANM_A_LION_SLEEP = 130, // + ANM_A_LION_STAND = 131, // + ANM_A_LION_THROWN = 132, // + ANM_A_LION_TURN_LEFT_90_DEGREES = 133, // + ANM_A_LION_TURN_RIGHT_90_DEGREES = 134, // + ANM_A_LION_UPFROM_EAT = 135, // + ANM_A_LION_UPFROM_SIT = 136, // + ANM_A_LION_UPFROM_SLEEP = 137, // + ANM_A_LION_WALK = 138, // + ANM_A_PIG_DEADLHS = 139, // + ANM_A_PIG_DEADRHS = 140, // + ANM_A_PIG_EAT1 = 141, // + ANM_A_PIG_EAT2 = 142, // + ANM_A_PIG_FALL_DEADLHS = 143, // + ANM_A_PIG_FALL_DEADRHS = 144, // + ANM_A_PIG_GOTO_EAT = 145, // + ANM_A_PIG_IN_HAND = 146, // + ANM_A_PIG_LAND_GET_UPLHS = 147, // + ANM_A_PIG_LAND_GET_UPRHS = 148, // + ANM_A_PIG_OUT_OF_EAT = 149, // + ANM_A_PIG_RUN = 150, // + ANM_A_PIG_STAND = 151, // + ANM_A_PIG_THROWN = 152, // + ANM_A_PIG_WALK = 153, // + ANM_SHARK_BONED_SWIM = 154, // + ANM_A_SHEEP_DEAD_LHS = 155, // + ANM_A_SHEEP_DEAD_RHS = 156, // + ANM_A_SHEEP_EAT1 = 157, // + ANM_A_SHEEP_EAT2 = 158, // + ANM_A_SHEEP_FALL_DEADLHS = 159, // + ANM_A_SHEEP_FALL_DEADRHS = 160, // + ANM_A_SHEEP_GOTO_EAT = 161, // + ANM_A_SHEEP_IN_HAND = 162, // + ANM_A_SHEEP_LANDED_GETUPLHS = 163, // + ANM_A_SHEEP_LANDED_GETUPRHS = 164, // + ANM_A_SHEEP_OUT_OF_EAT = 165, // + ANM_A_SHEEP_RUN = 166, // + ANM_A_SHEEP_STAND = 167, // + ANM_A_SHEEP_THROWN = 168, // + ANM_A_SHEEP_TROT = 169, // + ANM_A_SHEEP_WALK = 170, // + ANM_A_TIGER_DEAD = 171, // + ANM_A_TIGER_DEAD_ON_LEFT = 172, // + ANM_A_TIGER_DEAD_ON_RIGHT = 173, // + ANM_A_TIGER_DIE = 174, // + ANM_A_TIGER_EAT = 175, // + ANM_A_TIGER_GET_UP_FROM_LEFT = 176, // + ANM_A_TIGER_GET_UP_FROM_RIGHT = 177, // + ANM_A_TIGER_GOTO_EAT = 178, // + ANM_A_TIGER_GOTO_SIT = 179, // + ANM_A_TIGER_GOTO_SLEEP = 180, // + ANM_A_TIGER_IN_HAND = 181, // + ANM_A_TIGER_POUNCE = 182, // + ANM_A_TIGER_POUNCE_HI = 183, // + ANM_A_TIGER_POUNCE_LO = 184, // + ANM_A_TIGER_PROWL = 185, // + ANM_A_TIGER_RUN = 186, // + ANM_A_TIGER_SIT = 187, // + ANM_A_TIGER_SLEEP = 188, // + ANM_A_TIGER_STAND = 189, // + ANM_A_TIGER_THROWN = 190, // + ANM_A_TIGER_UPFROM_EAT = 191, // + ANM_A_TIGER_UPFROM_SIT = 192, // + ANM_A_TIGER_UPFROM_SLEEP = 193, // + ANM_A_TIGER_WALK = 194, // + ANM_A_TORTOISE_DEAD = 195, // + ANM_A_TORTOISE_STAND = 196, // + ANM_A_TORTOISE_WALK = 197, // + ANM_A_WOLF_DIE = 198, // + ANM_A_WOLF_EAT = 199, // + ANM_A_WOLF_GOTO_EAT = 200, // + ANM_A_WOLF_GOTO_SIT = 201, // + ANM_A_WOLF_GOTO_SLEEP = 202, // + ANM_A_WOLF_HOWL = 203, // + ANM_A_WOLF_POUNCE = 204, // + ANM_A_WOLF_PROWL = 205, // + ANM_A_WOLF_RUN = 206, // + ANM_A_WOLF_SIT = 207, // + ANM_A_WOLF_SLEEP = 208, // + ANM_A_WOLF_STAND = 209, // + ANM_A_WOLF_UPFROM_EAT = 210, // + ANM_A_WOLF_UPFROM_SIT = 211, // + ANM_A_WOLF_UPFROM_SLEEP = 212, // + ANM_A_WOLF_WALK = 213, // + ANM_MINE_ENTRANCE = 214, // + ANM_PLAYER_ICON01_PLINTH = 215, // + ANM_NORS_GATE = 216, // + ANM_PHONEBOX = 217, // + ANM_PIPER_CAVE_CLOSING = 218, // + ANM_PIPER_CAVE_OPENING = 219, // + ANM_GATE_TOTEM_PLINTHE = 220, // + ANM_PIED_PIPER_DANCE_STAND = 221, // + ANM_PIED_PIPER_DANCE_STAND_SPIN = 222, // + ANM_PIED_PIPER_DANCE_WALK = 223, // + ANM_PIED_PIPER_DANCE_WALK_SPIN = 224, // + ANM_PIED_PIPER_SUMMON = 225, // + ANM_PIED_PIPER_WALK = 226, // + ANM_P_AFRICAN_DRUMMER = 227, // + ANM_P_AMBIENT1 = 228, // + ANM_P_AMBIENT2 = 229, // + ANM_P_ARSONIST = 230, // + ANM_P_ATTACKED_BY_LION = 231, // + ANM_P_ATTRACT_YOUR_ATTENTION = 232, // + ANM_P_AVOID_OBJECT_DIVE = 233, // + ANM_P_AVOID_OBJECT_DODGE = 234, // + ANM_P_BECKON = 235, // + ANM_P_BLOW_RASPBERRY = 236, // + ANM_P_CARRYING_BAG = 237, // + ANM_P_CARRYING_POT = 238, // + ANM_P_CARRYING_STICKS = 239, // + ANM_P_CARRY_AXE = 240, // + ANM_P_CARRY_OBJECT_RUN = 241, // + ANM_P_CHOPPING_TREE = 242, // + ANM_P_CLAP_1 = 243, // + ANM_P_CLAP_2 = 244, // + ANM_P_CLAP_3 = 245, // + ANM_P_CLAP_4 = 246, // + ANM_P_CONDUCT_MEETING = 247, // + ANM_P_CONFUSED_MALE1 = 248, // + ANM_P_CONFUSED_MALE2 = 249, // + ANM_P_CONFUSED_MALE3 = 250, // + ANM_P_CONFUSED_MALE4 = 251, // + ANM_P_CONFUSED_MALE5 = 252, // + ANM_P_COUPLE_KISS_MAN = 253, // + ANM_P_COUPLE_KISS_WOMAN = 254, // + ANM_P_CRAWL_INJURED = 255, // + ANM_P_CRAWL_INJURED_INTO = 256, // + ANM_P_CROWD_IMPRESSED_1 = 257, // + ANM_P_CROWD_IMPRESSED_2 = 258, // + ANM_P_CROWD_LOST = 259, // + ANM_P_CROWD_LOST_2 = 260, // + ANM_P_CROWD_MEXICAN_WAVE = 261, // + ANM_P_CROWD_UNIMPRESSED_1 = 262, // + ANM_P_CROWD_UNIMPRESSED_2 = 263, // + ANM_P_CROWD_WON = 264, // + ANM_P_CROWD_WON_2 = 265, // + ANM_P_DANCE_PISS_TAKE_ = 266, // + ANM_P_DANCE_STAND = 267, // + ANM_P_DANCE_TOGETHER_ARMLINK = 268, // + ANM_P_DANCE_TOGETHER_CIRCLING = 269, // + ANM_P_DANCE_TOGETHER_CIRCLING_PARTNER = 270, // + ANM_P_DANCE_X = 271, // + ANM_P_DANCE_X_PARTNER = 272, // + ANM_P_DEAD1 = 273, // + ANM_P_DEAD1_GOTO_HEAVEN = 274, // + ANM_P_DEAD1_GOTO_HELL = 275, // + ANM_P_DEAD2 = 276, // + ANM_P_DEAD2_GOTO_HEAVEN = 277, // + ANM_P_DEAD2_GOTO_HELL = 278, // + ANM_P_DEAD_DROWNED = 279, // + ANM_P_DEAD_IN_HAND = 280, // + ANM_P_DRIBBLE_BALL = 281, // + ANM_P_DROWNING = 282, // + ANM_P_DYING = 283, // + ANM_P_EAT = 284, // + ANM_P_FAKE_FOUL_FALL = 285, // + ANM_P_FARMER = 286, // + ANM_P_FARMER_HARVESTING = 287, // + ANM_P_FARMER_SHOO_SHEEP = 288, // + ANM_P_FARMER_SOWING_SEEDS = 289, // + ANM_P_FARMER_STOKE_SHEEP = 290, // + ANM_P_FARMER_TURNING_SOIL = 291, // + ANM_P_FISHERMAN = 292, // + ANM_P_FRIGHT_DUCK = 293, // + ANM_P_FRIGHT_JUMP = 294, // + ANM_P_F_DANCE_A = 295, // + ANM_P_F_DANCE_B = 296, // + ANM_P_F_DANCE_C = 297, // + ANM_P_GIVE_BIRTH = 298, // + ANM_P_GOALKEEPER = 299, // + ANM_P_GOALKEEPER_2 = 300, // + ANM_P_GOALKEEPER_3 = 301, // + ANM_P_GOSSIP_MAN = 302, // + ANM_P_GOSSIP_WOMAN_1 = 303, // + ANM_P_GOSSIP_WOMAN_2 = 304, // + ANM_P_GOSSIP_WOMAN_3 = 305, // + ANM_P_HAMMERING = 306, // + ANM_P_HELP_SOMEONE_HELPEE = 307, // + ANM_P_HELP_SOMEONE_HELPER = 308, // + ANM_P_HUG = 309, // + ANM_P_INSPECT_OBJECT_1 = 310, // + ANM_P_INSPECT_OBJECT_2 = 311, // + ANM_P_INSPECT_OBJECT_3 = 312, // + ANM_P_INTO_DEAD_DROWNED = 313, // + ANM_P_INTO_HAMMERING = 314, // + ANM_P_INTO_MOURNING = 315, // + ANM_P_INTO_POINTING = 316, // + ANM_P_INTO_PRAY = 317, // + ANM_P_INTO_PULL_OBJECT = 318, // + ANM_P_INTO_PUSH_OBJECT = 319, // + ANM_P_INTO_RUN_MAN = 320, // + ANM_P_INTO_RUN_WOMAN = 321, // + ANM_P_INTO_SAW_WOOD = 322, // + ANM_P_INTO_SLEDGEHAMMER = 323, // + ANM_P_INTO_SLEEP = 324, // + ANM_P_INTO_SPRINT_MAN = 325, // + ANM_P_INTO_SPRINT_WOMAN = 326, // + ANM_P_INTO_WALK_MAN = 327, // + ANM_P_INTO_WALK_WOMAN = 328, // + ANM_P_JUMP_A = 329, // + ANM_P_JUMP_AT_HAND = 330, // + ANM_P_JUMP_AT_HAND_2 = 331, // + ANM_P_KICK_BALL = 332, // + ANM_P_KICK_BALL_PASS = 333, // + ANM_P_KICK_BALL_PASS_PT1 = 334, // + ANM_P_KICK_BALL_PASS_PT2 = 335, // + ANM_P_LANDED = 336, // + ANM_P_LANDED_FROM_BACK = 337, // + ANM_P_LANDED_FROM_FEET = 338, // + ANM_P_LANDED_FROM_FEET_CARRY_OBJECT = 339, // + ANM_P_LOOKING_FOR_SOMETHING = 340, // + ANM_P_LOOK_AT_HAND = 341, // + ANM_P_LOVING_TOUCH = 342, // + ANM_P_MOURNING = 343, // + ANM_P_M_DANCE_A = 344, // + ANM_P_M_DANCE_B = 345, // + ANM_P_M_DANCE_C = 346, // + ANM_P_ON_FIRE_DIE = 347, // + ANM_P_ON_FIRE_DOUSED = 348, // + ANM_P_ON_FIRE_RUN = 349, // + ANM_P_OUT_OF_HAMMERING = 350, // + ANM_P_OUT_OF_MOURNING = 351, // + ANM_P_OUT_OF_POINTING = 352, // + ANM_P_OUT_OF_PRAY = 353, // + ANM_P_OUT_OF_PULL_OBJECT = 354, // + ANM_P_OUT_OF_PUSH_OBJECT = 355, // + ANM_P_OUT_OF_RUN_MAN = 356, // + ANM_P_OUT_OF_RUN_WOMAN = 357, // + ANM_P_OUT_OF_SAW_WOOD = 358, // + ANM_P_OUT_OF_SLEDGEHAMMER = 359, // + ANM_P_OUT_OF_SLEEP = 360, // + ANM_P_OUT_OF_WALK_WOMAN = 361, // + ANM_P_OVERWORKED1 = 362, // + ANM_P_OVERWORKED2 = 363, // + ANM_P_PANIC_MAN = 364, // + ANM_P_PANIC_WOMAN = 365, // + ANM_P_PICKUP_BALL_PT1 = 366, // + ANM_P_PICKUP_BALL_PT2 = 367, // + ANM_P_PICK_UP_BAG = 368, // + ANM_P_PICK_UP_POT_ON_HEAD = 369, // + ANM_P_PICK_UP_STICKS = 370, // + ANM_P_PLAY_ACCORDIAN = 371, // + ANM_P_POISONED = 372, // + ANM_P_PRAY = 373, // + ANM_P_PROD_CAMPFIRE = 374, // + ANM_P_PULL_OBJECT = 375, // + ANM_P_PUSH_OBJECT = 376, // + ANM_P_PUT_DOWN_BAG = 377, // + ANM_P_PUT_DOWN_STICKS = 378, // + ANM_P_PUT_OUT_FIRE = 379, // + ANM_P_PUZZLED = 380, // + ANM_P_RUN_MAN = 381, // + ANM_P_RUN_WITH_BALL = 382, // + ANM_P_RUN_WOMAN = 383, // + ANM_P_SAW_WOOD = 384, // + ANM_P_SCARED_STIFF = 385, // + ANM_P_SCARED_STIFF_2 = 386, // + ANM_P_SCORE_GOAL = 387, // + ANM_P_SCRIPT1 = 388, // + ANM_P_SCRUBBS = 389, // + ANM_P_SCULPTOR = 390, // + ANM_P_SHAKE_FIST_FEMALE = 391, // + ANM_P_SHOOT_AT_GOAL = 392, // + ANM_P_SHOOT_AT_GOAL_2 = 393, // + ANM_P_SHOOT_AT_GOAL_PT_1 = 394, // + ANM_P_SHOOT_AT_GOAL_PT_2 = 395, // + ANM_P_SHRUG_SHOULDERS = 396, // + ANM_P_SITTING_DOWN1_INTO = 397, // + ANM_P_SITTING_DOWN1_OUT_OF = 398, // + ANM_P_SITTING_DOWN1_SITTING = 399, // + ANM_P_SITTING_DOWN2_INTO = 400, // + ANM_P_SITTING_DOWN2_OUT_OF = 401, // + ANM_P_SITTING_DOWN2_SITTING = 402, // + ANM_P_SITTING_DOWN_DANCE_SAILING1 = 403, // + ANM_P_SITTING_DOWN_DANCE_SAILING2 = 404, // + ANM_P_SITTING_DOWN_DANCE_SAILING3 = 405, // + ANM_P_SITTING_DOWN_MALE1 = 406, // + ANM_P_SITTING_DOWN_MALE2 = 407, // + ANM_P_SITTING_SWINGING_LEGS = 408, // + ANM_P_SKIP02 = 409, // + ANM_P_SLEDGEHAMMER = 410, // + ANM_P_SLEEP = 411, // + ANM_P_SLEEPING = 412, // + ANM_P_SPRINT_RUN_MAN = 413, // + ANM_P_SPRINT_RUN_WOMAN = 414, // + ANM_P_STAND = 415, // + ANM_P_STAND_DESPAIR_1 = 416, // + ANM_P_STAND_DESPAIR_2 = 417, // + ANM_P_STAND_DESPAIR_3 = 418, // + ANM_P_STIR_POT01 = 419, // + ANM_P_SWIM2 = 420, // + ANM_P_TALK1_FEMALE = 421, // + ANM_P_TALK1_MALE = 422, // + ANM_P_TALK2_FEMALE = 423, // + ANM_P_TALK2_MALE = 424, // + ANM_P_TALKING_AND_POINTING = 425, // + ANM_P_TALK_TO_NEIGHBOUR = 426, // + ANM_P_THANK_YOU = 427, // + ANM_P_THANK_YOU_FEMALE = 428, // + ANM_P_THROWN = 429, // + ANM_P_THROWN_DEAD = 430, // + ANM_P_THROWN_VORTEX = 431, // + ANM_P_THROW_BALL_PT_1 = 432, // + ANM_P_THROW_BALL_PT_2 = 433, // + ANM_P_THROW_ROCK = 434, // + ANM_P_THROW_WATER = 435, // + ANM_P_TITANIC = 436, // + ANM_P_TURN_180 = 437, // + ANM_P_TURN_90_LEFT = 438, // + ANM_P_TURN_90_RIGHT = 439, // + ANM_P_TURN_ON_THE_SPOT_LEFT = 440, // + ANM_P_TURN_ON_THE_SPOT_RIGHT = 441, // + ANM_P_WAITING_FOR_BALL = 442, // + ANM_P_WAITING_FOR_BALL_2 = 443, // + ANM_P_WAITING_FOR_KICK_OFF = 444, // + ANM_P_WAITING_FOR_KICK_OFF_2 = 445, // + ANM_P_WAITING_FOR_KICK_OFF_3 = 446, // + ANM_P_WAITING_FOR_KICK_OFF_4 = 447, // + ANM_P_WAITING_IMPATEINTLY = 448, // + ANM_P_WALK_BECKON02 = 449, // + ANM_P_WALK_DESPAIR_AWAY_1 = 450, // + ANM_P_WALK_DESPAIR_AWAY_2 = 451, // + ANM_P_WALK_DESPAIR_AWAY_3 = 452, // + ANM_P_WALK_DESPAIR_TO_1 = 453, // + ANM_P_WALK_DESPAIR_TO_2 = 454, // + ANM_P_WALK_DESPAIR_TO_3 = 455, // + ANM_P_WALK_INJURED = 456, // + ANM_P_WALK_MAN = 457, // + ANM_P_WALK_POINT = 458, // + ANM_P_WALK_TIRED_EYES = 459, // + ANM_P_WALK_TO_STAND_WOMAN = 460, // + ANM_P_WALK_WOMAN = 461, // + ANM_P_WELL_DONE__FEMALE = 462, // + ANM_P_WHITTLING_AT_STICK = 463, // + ANM_P_YANKED_UNDERGROUND = 464, // + ANM_P_YANKED_UNDERGROUND2 = 465, // + ANM_P_YANKED_UNDERGROUND3 = 466, // + ANM_P_YAWN = 467, // + ANM_P_YAWN2 = 468, // + ANM_S_PRIEST_SUCK_LIFE_FORCE = 469, // + ANM_A_WORM = 470, // + MAX_COUNT_3D_ANIMS = 471, // +}; + + +#endif diff --git a/libs/chlasm/AudioMusic.h b/libs/chlasm/AudioMusic.h new file mode 100644 index 0000000..02c58e5 --- /dev/null +++ b/libs/chlasm/AudioMusic.h @@ -0,0 +1,124 @@ +#ifndef __AUDIOMUSIC_H__ +#define __AUDIOMUSIC_H__ + +//------------------------------------------------------------------------------------------------------------------------ +enum MUSIC_TYPE +{ + MUSIC_TYPE_NONE, + MUSIC_TYPE_GENERIC_EVIL, + MUSIC_TYPE_GENERIC_NEUTRAL, + MUSIC_TYPE_GENERIC_GOOD, + MUSIC_TYPE_CELTIC_TOWN_EVIL, + MUSIC_TYPE_CELTIC_TOWN_NEUTRAL, + MUSIC_TYPE_CELTIC_TOWN_GOOD, + MUSIC_TYPE_AZTEC_TOWN_EVIL, + MUSIC_TYPE_AZTEC_TOWN_NEUTRAL, + MUSIC_TYPE_AZTEC_TOWN_GOOD, + MUSIC_TYPE_JAPANESE_TOWN_EVIL, + MUSIC_TYPE_JAPANESE_TOWN_NEUTRAL, + MUSIC_TYPE_JAPANESE_TOWN_GOOD, + MUSIC_TYPE_INDIAN_TOWN_EVIL, + MUSIC_TYPE_INDIAN_TOWN_NEUTRAL, + MUSIC_TYPE_INDIAN_TOWN_GOOD, + MUSIC_TYPE_EGYPTIAN_TOWN_EVIL, + MUSIC_TYPE_EGYPTIAN_TOWN_NEUTRAL, + MUSIC_TYPE_EGYPTIAN_TOWN_GOOD, + MUSIC_TYPE_GREEK_TOWN_EVIL, + MUSIC_TYPE_GREEK_TOWN_NEUTRAL, + MUSIC_TYPE_GREEK_TOWN_GOOD, + MUSIC_TYPE_NORSE_TOWN_EVIL, + MUSIC_TYPE_NORSE_TOWN_NEUTRAL, + MUSIC_TYPE_NORSE_TOWN_GOOD, + MUSIC_TYPE_TIBETAN_TOWN_EVIL, + MUSIC_TYPE_TIBETAN_TOWN_NEUTRAL, + MUSIC_TYPE_TIBETAN_TOWN_GOOD, + MUSIC_TYPE_CELTIC_CHANT, + MUSIC_TYPE_CELTIC_CHANT_VOX, + MUSIC_TYPE_AZTEC_CHANT, + MUSIC_TYPE_AZTEC_CHANT_VOX, + MUSIC_TYPE_JAPANESE_CHANT, + MUSIC_TYPE_JAPANESE_CHANT_VOX, + MUSIC_TYPE_INDIAN_CHANT, + MUSIC_TYPE_INDIAN_CHANT_VOX, + MUSIC_TYPE_EGYPTIAN_CHANT, + MUSIC_TYPE_EGYPTIAN_CHANT_VOX, + MUSIC_TYPE_GREEK_CHANT, + MUSIC_TYPE_GREEK_CHANT_VOX, + MUSIC_TYPE_NORSE_CHANT, + MUSIC_TYPE_NORSE_CHANT_VOX, + MUSIC_TYPE_TIBETAN_CHANT, + MUSIC_TYPE_TIBETAN_CHANT_VOX, + MUSIC_TYPE_CITADEL_EVIL, + MUSIC_TYPE_CITADEL_NEUTRAL, + MUSIC_TYPE_CITADEL_GOOD, + MUSIC_TYPE_SCRIPT_PIPER_TUNE, + MUSIC_TYPE_SCRIPT_PIPER_CAVE_TUNE, + MUSIC_TYPE_SCRIPT_HERMIT, + MUSIC_TYPE_SCRIPT_MISSIONARIES_BACKGROUND, + MUSIC_TYPE_SCRIPT_MISSIONARIES_VERSE_1, + MUSIC_TYPE_SCRIPT_MISSIONARIES_VERSE_2, + MUSIC_TYPE_SCRIPT_MISSIONARIES_VERSE_3, + MUSIC_TYPE_SCRIPT_INTRO, + MUSIC_TYPE_SCRIPT_SINGING_STONE_CIRCLE, + MUSIC_TYPE_SCRIPT_WELCOME_DANCE, + MUSIC_TYPE_SCRIPT_GENERIC_01, //Happy + MUSIC_TYPE_SCRIPT_GENERIC_02, //Sinister + MUSIC_TYPE_SCRIPT_GENERIC_03, //Sad + MUSIC_TYPE_SCRIPT_GENERIC_04, //Spooky + MUSIC_TYPE_SCRIPT_EPIC_01, //Biblical + MUSIC_TYPE_SCRIPT_EPIC_02, //Glorious + MUSIC_TYPE_SCRIPT_EPIC_03, //Sad + MUSIC_TYPE_SCRIPT_EPIC_04, //Short sting + MUSIC_TYPE_SCRIPT_CREATURE_CHOSEN, + MUSIC_TYPE_SCRIPT_FUNERAL, + MUSIC_TYPE_SCRIPT_CREATURE_GUIDE, + MUSIC_TYPE_SCRIPT_KHAZAR, + MUSIC_TYPE_SCRIPT_NEMESIS, + MUSIC_TYPE_SCRIPT_TWINKLE, + MUSIC_TYPE_SCRIPT_WHISTLE_FUNERAL, + MUSIC_TYPE_SCRIPT_WHISTLE_TWINKLE, + MUSIC_TYPE_SCRIPT_SLEG, + MUSIC_TYPE_CREATURE_FIGHT, + MUSIC_TYPE_CREATURE_BIG_FIGHT, + MUSIC_TYPE_SCRIPT_GUARDIAN_STONES, + MUSIC_TYPE_OUTRO, + MUSIC_TYPE_SCRIPT_FAILURE, + MUSIC_TYPE_SCRIPT_GREGORIAN, + MUSIC_TYPE_SCRIPT_CHRISTMAS, + MUSIC_TYPE_SCRIPT_GREGORIAN_3D, + MUSIC_TYPE_SCRIPT_CIRCUS, + MUSIC_TYPE_SCRIPT_CIRCUS_3D, + MUSIC_TYPE_SCRIPT_CREATURE_END_SEQUENCE, + MUSIC_TYPE_SCRIPT_MISSIONARIES_INTRO, + MUSIC_TYPE_SCRIPT_MISSIONARIES_CAMP_FIRE, + MUSIC_TYPE_SCRIPT_BROTHERHOOD_INTRO, + MUSIC_TYPE_SCRIPT_RACE_MUSIC, + MUSIC_TYPE_SCRIPT_SKELETON_GRAB, + MUSIC_TYPE_SCRIPT_MARAUDER_CHANT, + MUSIC_TYPE_SCRIPT_MISSIONARIES_BLOW_SCRIPT, + MUSIC_TYPE_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum MUSIC_ALIGNMENT +{ + MUSIC_ALIGNMENT_EVIL=0, + MUSIC_ALIGNMENT_NEUTRAL, + MUSIC_ALIGNMENT_GOOD, + MUSIC_ALIGNMENT_LAST +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum MUSIC_STYLE +{ + MUSIC_STYLE_NONE=-1, + MUSIC_STYLE_ALIGNMENT=0, + MUSIC_STYLE_CHANT, + MUSIC_STYLE_CITADEL_INTERIOR, + MUSIC_STYLE_SCRIPT, + MUSIC_STYLE_LAST, +}; + + + +#endif //__AUDIOMUSIC_H__ \ No newline at end of file diff --git a/libs/chlasm/AudioSFX.h b/libs/chlasm/AudioSFX.h new file mode 100644 index 0000000..b9d0a55 --- /dev/null +++ b/libs/chlasm/AudioSFX.h @@ -0,0 +1,24 @@ +#ifndef __AUDIOSFX_H__ +#define __AUDIOSFX_H__ + +//------------------------------------------------------------------------------------------------------------------------ +enum AUDIO_SFX_BANK_TYPE +{ + AUDIO_SFX_BANK_TYPE_NONE, + AUDIO_SFX_BANK_TYPE_IN_GAME, + AUDIO_SFX_BANK_TYPE_EDITOR, + AUDIO_SFX_BANK_TYPE_SPELL, + AUDIO_SFX_BANK_TYPE_CREATURE_GENERIC, + AUDIO_SFX_BANK_TYPE_SCRIPT_SFX, + AUDIO_SFX_BANK_TYPE_HELP_SPRITES, + AUDIO_SFX_BANK_TYPE_VILLAGERS, + AUDIO_SFX_BANK_TYPE_VILLAGERS_BANTER, + AUDIO_SFX_BANK_TYPE_SPELL_DIALOG, + AUDIO_SFX_BANK_TYPE_GUIDANCE, + AUDIO_SFX_BANK_TYPE_CI_VILLAGERS, + AUDIO_SFX_BANK_TYPE_CI_HELP_SPRITES, + AUDIO_SFX_BANK_TYPE_CI_SPELL_DIALOGUE, + AUDIO_SFX_BANK_TYPE_LAST, +}; + +#endif //__AUDIOSFX_H__ \ No newline at end of file diff --git a/libs/chlasm/CameraPosEnum.h b/libs/chlasm/CameraPosEnum.h new file mode 100644 index 0000000..a4d799d --- /dev/null +++ b/libs/chlasm/CameraPosEnum.h @@ -0,0 +1,662 @@ +#pragma once + +enum ScriptCameraPosition +{ + ALLY_SPEAKST00_000, + ALLY_SPEAKST00_001, + ALLY_SPEAKST00_002, + ALLY_SPEAKST00_003, + ALLY_SPEAKST00_004, + ALLY_SPEAKST00_005, + BEGIN_LAND2T00_000, + BEGIN_LAND2T00_001, + BEGIN_LAND2T00_002, + BEGIN_LAND2T00_003, + BEGIN_LAND2T00_004, + BEGIN_LAND2T00_005, + BEGIN_LAND2T00_006, + BEGIN_LAND2T00_007, + BIG_WHALET00_000, + BIG_WHALET00_001, + BIG_WHALET00_002, + BLIND_WOMANT00_000, + BLIND_WOMANT00_001, + BLIND_WOMANT00_002, + BLIND_WOMANT00_003, + BLIND_WOMANT00_004, + BLIND_WOMANT00_005, + BLIND_WOMANT00_006, + BLIND_WOMANT00_007, + BLIND_WOMANT00_008, + BLIND_WOMANT00_009, + BLIND_WOMANT00_010, + BLIND_WOMANT00_011, + BLIND_WOMANT00_012, + BLIND_WOMANT00_013, + BLIND_WOMANT00_014, + BLIND_WOMANT00_015, + BLIND_WOMANT00_016, + BLIND_WOMANT00_017, + BLIND_WOMANT00_018, + BLIND_WOMANT00_019, + BLIND_WOMANT00_020, + BLIND_WOMANT00_021, + BLIND_WOMANT00_022, + BLIND_WOMANT00_023, + BLIND_WOMANT00_024, + BLIND_WOMANT00_025, + BLIND_WOMANT01_000, + BLIND_WOMANT01_001, + BLIND_WOMANT01_002, + BLIND_WOMANT01_003, + BLIND_WOMANT01_004, + BLIND_WOMANT01_005, + BLIND_WOMANT01_006, + BLIND_WOMANT01_007, + BLIND_WOMANT01_008, + BLIND_WOMANT01_009, + BLIND_WOMANT01_010, + BLIND_WOMANT01_011, + BLIND_WOMANT01_012, + BLIND_WOMANT01_013, + BLIND_WOMANT01_014, + BLIND_WOMANT01_015, + BLIND_WOMANT01_016, + BLIND_WOMANT01_017, + BLIND_WOMANT01_018, + BLIND_WOMANT01_019, + BLIND_WOMANT02_000, + BLIND_WOMANT02_001, + BLIND_WOMANT02_002, + BLIND_WOMANT02_003, + BLIND_WOMANT02_004, + BLIND_WOMANT02_005, + BLIND_WOMANT02_006, + BLIND_WOMANT02_007, + BLIND_WOMANT02_008, + BLIND_WOMANT02_009, + BLIND_WOMANT02_010, + BLIND_WOMANT02_011, + BLIND_WOMANT02_012, + BLIND_WOMANT02_013, + BLIND_WOMANT02_014, + BLIND_WOMANT02_015, + BLIND_WOMANT02_016, + BLIND_WOMANT02_017, + BLIND_WOMANT02_018, + BLIND_WOMANT02_019, + BLIND_WOMANT02_020, + BLIND_WOMANT02_021, + BLIND_WOMANT02_022, + BLIND_WOMANT03_000, + BLIND_WOMANT03_001, + BLIND_WOMANT03_002, + BLIND_WOMANT03_003, + BLIND_WOMANT03_004, + BLIND_WOMANT03_005, + BLIND_WOMANT03_006, + BLIND_WOMANT03_007, + BLIND_WOMANT03_008, + BLIND_WOMANT03_009, + BLIND_WOMANT03_010, + BLIND_WOMANT04_000, + BLIND_WOMANT04_001, + BLIND_WOMANT04_002, + BLIND_WOMANT04_003, + BLIND_WOMANT04_004, + BLIND_WOMANT04_005, + BLIND_WOMANT04_006, + BLIND_WOMANT04_007, + BLIND_WOMANT04_008, + BUILD_CITADELT00_000, + BUILD_CITADELT00_001, + BUILD_CITADELT00_002, + BUILD_CITADELT00_003, + BUILD_CITADELT00_004, + BUILD_CITADELT00_005, + BUILD_CITADELT00_006, + BUILD_CITADELT00_007, + BUILD_CITADELT00_008, + BUILD_CITADELT00_009, + BUILD_CITADELT00_010, + BUILD_CITADELT00_011, + BUILD_CITADELT00_012, + CREATURE_DEVELOPMENT_TESTT00_000, + CREATURE_DEVELOPMENT_TESTT00_001, + CREATURE_DEVELOPMENT_TESTT00_002, + CREATURE_DEVELOPMENT_TESTT00_003, + CREATURE_DEVELOPMENT_TESTT00_004, + CREATURE_DEVELOPMENT_TESTT00_005, + CREATURE_DEVELOPMENT_TESTT00_006, + CREATURE_DEVELOPMENT_TESTT00_007, + CREATURE_GUARDIANT00_000, + CREATURE_GUARDIANT00_001, + CREATURE_GUARDIANT00_002, + CREATURE_GUARDIANT00_003, + CREATURE_GUARDIANT00_004, + CREATURE_GUARDIANT00_005, + CREATURE_GUARDIANT00_006, + CREATURE_GUARDIANT00_007, + CREATURE_GUARDIANT00_008, + CREATURE_GUARDIANT00_009, + CREATURE_GUARDIANT00_010, + CREATURE_GUARDIANT00_011, + CREATURE_GUARDIANT00_012, + CREATURE_GUARDIANT00_013, + CREATURE_GUARDIANT00_014, + CREATURE_RETRIEVET00_000, + CREATURE_RETRIEVET00_001, + CREATURE_RETRIEVET00_002, + CREATURE_RETRIEVET00_003, + CREATURE_RETRIEVET00_004, + CREATURE_RETRIEVET00_005, + CREATURE_RETRIEVET00_006, + CREATURE_RETRIEVET00_007, + CREATURE_RETRIEVET00_008, + CREATURE_RETRIEVET01_000, + CREATURE_RETRIEVET01_001, + CREATURE_RETRIEVET01_002, + CREATURE_RETRIEVET01_003, + CREATURE_RETRIEVET01_004, + CREATURE_RETRIEVET01_005, + CREATURE_RETRIEVET01_006, + CREATURE_RETRIEVET01_007, + CREATURE_RETRIEVET01_008, + CREATURE_RETRIEVET01_009, + CREATURE_RETRIEVET01_010, + CREATURE_RETRIEVET01_011, + ChooseYourCreatureT00_000, + ChooseYourCreatureT00_001, + ChooseYourCreatureT00_002, + ChooseYourCreatureT00_003, + ChooseYourCreatureT00_004, + ChooseYourCreatureT00_005, + ChooseYourCreatureT00_006, + ChooseYourCreatureT00_007, + ChooseYourCreatureT00_008, + ChooseYourCreatureT00_009, + ChooseYourCreatureT00_010, + ChooseYourCreatureT00_011, + DEV_SEE_HOMET00_000, + DEV_SEE_HOMET00_001, + DEV_SEE_HOMET00_002, + DEV_SEE_HOMET00_003, + DEV_SEE_HOMET01_000, + DEV_SEE_HOMET02_000, + DEV_SEE_HOMET03_000, + DEV_SEE_HOMET03_001, + DEV_SEE_HOMET03_002, + DEV_SEE_HOMET03_003, + DEV_SEE_HOMET03_004, + DEV_SEE_HOMET03_005, + DEV_SEE_HOMET03_006, + DEV_SEE_HOMET04_000, + DEV_SEE_HOMET05_000, + DEV_SEE_HOMET05_001, + DEV_SEE_HOMET05_002, + DEV_SEE_HOMET05_003, + DEV_SEE_HOMET05_004, + DEV_SEE_HOMET05_005, + DEV_SEE_HOMET06_000, + DEV_SEE_HOMET06_001, + DEV_SEE_HOMET06_002, + DEV_SEE_HOMET06_003, + FollowUsT00_000, + FollowUsT00_001, + FollowUsT00_002, + FollowUsT00_003, + FollowUsT00_004, + FollowUsT00_005, + FollowUsT00_006, + FollowUsT00_007, + FollowUsT00_008, + FollowUsT00_009, + FollowUsT00_010, + FollowUsT00_011, + FollowUsT00_012, + FollowUsT00_013, + FollowUsT00_014, + FollowUsT00_015, + FollowUsT02_000, + FollowUsT02_001, + FollowUsT02_002, + FollowUsT02_003, + FollowUsT02_004, + FollowUsT02_005, + FollowUsT03_000, + FollowUsT03_001, + FollowUsT03_002, + FollowUsT03_003, + FollowUsT03_004, + FollowUsT03_005, + FollowUsT03_006, + FollowUsT03_007, + FollowUsT03_008, + FollowUsT04_000, + FollowUsT04_001, + FollowUsT04_002, + FollowUsT04_003, + FollowUsT04_004, + FollowUsT04_005, + FollowUsT04_006, + FollowUsT04_007, + FollowUsT04_008, + FollowUsT04_009, + FollowUsT05_000, + FollowUsT05_001, + FollowUsT05_002, + FollowUsT05_003, + FollowUsT05_004, + FollowUsT05_005, + FollowUsT05_006, + FollowUsT05_007, + FollowUsT05_008, + FollowUsT05_009, + FollowUsT05_010, + FollowUsT05_011, + FollowUsT05_012, + FollowUsT05_013, + FollowUsT05_014, + FollowUsT05_015, + FollowUsT05_016, + FollowUsT05_017, + FollowUsT05_018, + FollowUsT05_019, + FollowUsT05_020, + FollowUsT05_021, + FollowUsT05_022, + FollowUsT06_000, + FollowUsT06_001, + FollowUsT06_002, + FollowUsT06_003, + FollowUsT06_004, + FollowUsT06_005, + FollowUsT06_006, + FollowUsT06_007, + FollowUsT06_008, + FollowUsT06_009, + FollowUsT06_010, + FollowUsT06_011, + FollowUsT06_012, + FollowUsT06_013, + FollowUsT06_014, + FollowUsT06_015, + FollowUsT06_016, + FollowUsT06_017, + FollowUsT06_018, + FollowUsT06_019, + FollowUsT06_020, + FollowUsT06_021, + FollowUsT06_022, + FollowUsT06_023, +// GRADUATIONT00_000, //<- CI +// GRADUATIONT00_001, //<- CI +// GRADUATIONT00_002, //<- CI +// GRADUATIONT00_003, //<- CI +// GRADUATIONT00_004, //<- CI +// GRADUATIONT00_005, //<- CI +// GRADUATIONT00_006, //<- CI +// GRADUATIONT00_007, //<- CI +// GRADUATIONT00_008, //<- CI +// GRADUATIONT00_009, //<- CI +// GRADUATIONT00_010, //<- CI +// GRADUATIONT00_011, //<- CI +// GRADUATIONT00_012, //<- CI +// GRADUATIONT00_013, //<- CI +// GRADUATIONT00_014, //<- CI +// GRADUATIONT00_015, //<- CI +// GRADUATIONT00_016, //<- CI +// GRADUATIONT00_017, //<- CI +// GRADUATIONT00_018, //<- CI +// GRADUATIONT00_019, //<- CI +// GRADUATIONT00_020, //<- CI +// GRADUATIONT00_021, //<- CI +// GRADUATIONT00_022, //<- CI +// GRADUATIONT00_023, //<- CI +// GRADUATION2T00_000, //<- CI +// GRADUATION2T00_001, //<- CI +// GRADUATION2T00_002, //<- CI +// GRADUATION2T00_003, //<- CI +// GRADUATION2T00_004, //<- CI +// GRADUATION2T00_005, //<- CI + GUIDE_HOLDING_MY_CREATURET00_000, + GUIDE_HOLDING_MY_CREATURET00_001, + GUIDE_HOLDING_MY_CREATURET00_002, + GUIDE_HOLDING_MY_CREATURET00_003, + GUIDE_HOLDING_MY_CREATURET00_004, + GUIDE_HOLDING_MY_CREATURET00_005, + IntroT00_000, + IntroT00_001, + IntroT00_002, + IntroT00_003, + IntroT00_004, + IntroT00_005, + IntroT00_006, + IntroT00_007, + IntroT00_008, + IntroT00_009, + IntroT00_010, + IntroT00_011, + IntroT00_012, + IntroT00_013, + IntroT00_014, + IntroT00_015, + IntroT00_016, + IntroT00_017, + IntroT00_018, + IntroT00_019, + IntroT00_020, + IntroT00_021, + IntroT00_022, + IntroT00_023, + IntroT00_024, + IntroT00_025, + IntroT00_026, + IntroT00_027, + IntroT00_028, + IntroT00_029, + IntroT00_030, + IntroT00_031, + IntroT00_032, + IntroT00_033, + IntroT00_034, + IntroT00_035, + IntroT00_036, + IntroT00_037, + IntroT00_038, + IntroT00_039, + IntroT00_040, + IntroT00_041, + IntroT00_042, + IntroT00_043, + IntroT00_044, + IntroT00_045, + IntroT00_046, + IntroT00_047, + IntroT00_048, + IntroT00_049, + LANDSLIDET00_000, + LANDSLIDET00_001, + LANDSLIDET00_002, + LAND_4_METEORITEST01_000, + LAND_4_METEORITEST01_001, + LAND_4_METEORITEST01_002, + LAND_4_METEORITEST01_003, + LAND_4_METEORITEST01_004, + LAND_4_METEORITEST01_005, + LAND_4_METEORITEST02_000, + LAND_4_METEORITEST02_001, + LAND_4_METEORITEST02_002, + LAND_4_METEORITEST07_000, + LAND_4_METEORITEST07_001, + LAND_4_METEORITEST07_002, + LAND_4_METEORITEST07_003, + LEARN_GESTUREST00_000, + LEARN_GESTUREST00_001, + LEARN_GESTUREST00_002, + LEARN_GESTUREST00_003, + LEARN_GESTUREST00_004, + LEARN_GESTUREST00_005, + LEARN_GESTUREST00_006, + LEARN_GESTUREST00_007, + LEARN_GESTUREST00_008, + LEARN_INFLUENCET00_000, + LEARN_INFLUENCET00_001, + LEARN_INFLUENCET00_002, + LEARN_INFLUENCET00_003, + LEARN_INFLUENCET00_004, + LEARN_INFLUENCET00_005, + LEARN_INFLUENCET00_006, + LEARN_INFLUENCET00_007, + LEARN_WORSHIPPINGT00_000, + LEARN_WORSHIPPINGT00_001, + LEARN_WORSHIPPINGT00_002, + LEARN_WORSHIPPINGT00_003, + LEARN_WORSHIPPINGT00_004, + LEARN_WORSHIPPINGT00_005, + LEARN_WORSHIPPINGT00_006, + LEARN_WORSHIPPINGT00_007, + LEARN_WORSHIPPINGT00_008, + LEASH_INTROT00_000, + LEASH_INTROT00_001, + LEASH_INTROT00_002, + LEASH_INTROT00_003, + LEASH_INTROT00_004, + LEASH_INTROT00_005, + LEASH_INTROT01_000, + LEASH_INTROT01_001, + LEASH_INTROT01_002, + LEASH_INTROT01_003, + LEAVE_THROUGH_VORTEX_LAND1T00_000, + LEAVE_THROUGH_VORTEX_LAND1T00_001, + LEAVE_THROUGH_VORTEX_LAND1T00_002, + LEAVE_THROUGH_VORTEX_LAND1T00_003, + LEAVE_THROUGH_VORTEX_LAND1T00_004, + LEAVE_THROUGH_VORTEX_LAND1T00_005, + LEAVE_THROUGH_VORTEX_LAND1T00_006, + LEAVE_THROUGH_VORTEX_LAND1T00_007, + LEAVE_THROUGH_VORTEX_LAND1T00_008, + LEAVE_THROUGH_VORTEX_LAND1T00_009, + LEAVE_THROUGH_VORTEX_LAND1T00_010, + LEAVE_THROUGH_VORTEX_LAND1T00_011, + LEAVE_THROUGH_VORTEX_LAND1T00_012, + LEAVE_THROUGH_VORTEX_LAND2T00_000, + LEAVE_THROUGH_VORTEX_LAND2T00_001, + LEAVE_THROUGH_VORTEX_LAND2T00_002, + LEAVE_THROUGH_VORTEX_LAND2T00_003, + LEAVE_THROUGH_VORTEX_LAND2T00_004, + LEAVE_THROUGH_VORTEX_LAND2T00_005, + LEAVE_THROUGH_VORTEX_LAND2T00_006, + LEAVE_THROUGH_VORTEX_LAND2T00_007, + LEAVE_THROUGH_VORTEX_LAND2T00_008, + LEAVE_THROUGH_VORTEX_LAND2T00_009, + LEAVE_THROUGH_VORTEX_LAND2T00_010, + LEAVE_THROUGH_VORTEX_LAND2T00_011, + LEAVE_THROUGH_VORTEX_LAND2T00_012, + LEAVE_THROUGH_VORTEX_LAND3T00_000, + LEAVE_THROUGH_VORTEX_LAND3T00_001, + LEAVE_THROUGH_VORTEX_LAND3T00_002, + LEAVE_THROUGH_VORTEX_LAND3T00_003, + LEAVE_THROUGH_VORTEX_LAND3T00_004, + LEAVE_THROUGH_VORTEX_LAND3T00_005, + LEAVE_THROUGH_VORTEX_LAND3T00_006, + LEAVE_THROUGH_VORTEX_LAND4T00_000, + LEAVE_THROUGH_VORTEX_LAND4T00_001, + LEAVE_THROUGH_VORTEX_LAND4T00_002, + LEAVE_THROUGH_VORTEX_LAND4T00_003, + LOST_BROTHERT00_000, + LOST_BROTHERT00_001, + LOST_BROTHERT00_002, + LOST_BROTHERT00_003, + MISSIONARIES_RETURNEDT00_000, + MISSIONARIES_RETURNEDT00_001, + MISSIONARIES_RETURNEDT00_002, + MISSIONARIES_RETURNEDT00_003, + MISSIONARIES_RETURNEDT00_004, + MISSIONARIES_RETURNEDT00_005, + OLD_CHOOSE_YOUR_CREATURET00_000, + OLD_CHOOSE_YOUR_CREATURET00_001, + OLD_CHOOSE_YOUR_CREATURET00_002, + OLD_CHOOSE_YOUR_CREATURET00_003, + OLD_CHOOSE_YOUR_CREATURET00_004, + OLD_CHOOSE_YOUR_CREATURET00_005, + OLD_CHOOSE_YOUR_CREATURET00_006, + OLD_CHOOSE_YOUR_CREATURET00_007, + OLD_CHOOSE_YOUR_CREATURET00_008, + OLD_CHOOSE_YOUR_CREATURET00_009, + OLD_CHOOSE_YOUR_CREATURET00_010, + OLD_CHOOSE_YOUR_CREATURET00_011, + OLD_CHOOSE_YOUR_CREATURET00_012, + OLD_CHOOSE_YOUR_CREATURET00_013, + OLD_CHOOSE_YOUR_CREATURET00_014, + OLD_CHOOSE_YOUR_CREATURET00_015, + OLD_CHOOSE_YOUR_CREATURET00_016, + OLD_CREATURE_CHOOSET00_000, + OLD_CREATURE_CHOOSET00_001, + OLD_CREATURE_CHOOSET00_002, + OLD_CREATURE_CHOOSET00_003, + OLD_CREATURE_CHOOSET00_004, + OLD_CREATURE_CHOOSET00_005, + OLD_CREATURE_CHOOSET00_008, + OLD_CREATURE_CHOOSET00_009, + OLD_CREATURE_CHOOSET00_011, + OLD_CREATURE_CHOOSET00_014, + SHAOLINT00_000, + SHAOLINT00_001, + SHAOLINT00_002, + SHAOLINT00_003, + SHAOLINT00_004, + SHAOLINT00_005, + SHAOLINT00_006, + SHAOLINT00_007, + SINGING_STONES_AT00_000, + SINGING_STONES_AT00_001, + SINGING_STONES_AT00_002, + SINGING_STONES_AT01_000, + SINGING_STONES_AT01_001, + SINGING_STONES_AT01_002, + SINGING_STONES_AT01_003, + SINGING_STONES_AT01_004, + SINGING_STONES_AT01_005, + SINGING_STONES_AT01_006, + SINGING_STONES_AT01_007, + SINGING_STONES_CIRCLET00_000, + SINGING_STONES_CIRCLET00_001, + SINGING_STONES_CIRCLET00_002, + SINGING_STONES_CIRCLET00_003, + SINGING_STONES_CIRCLET00_004, + SINGING_STONES_CIRCLET00_005, + SINGING_STONES_CIRCLET00_006, + TEST_WEATHER_AND_DAYT00_000, + TEST_WEATHER_AND_DAYT00_001, + TEST_WEATHER_AND_DAYT00_002, + TEST_WEATHER_AND_DAYT00_003, + TEST_WEATHER_AND_DAYT00_004, + TEST_WEATHER_AND_DAYT00_005, + TEST_WEATHER_AND_DAYT00_006, + THE_MISSIONARIEST00_000, + THE_MISSIONARIEST00_001, + THE_MISSIONARIEST00_002, + THE_MISSIONARIEST00_003, + THE_MISSIONARIEST00_004, + THE_MISSIONARIEST00_005, + THE_MISSIONARIEST00_006, + THE_MISSIONARIEST00_007, + THE_MISSIONARIEST00_008, + THE_MISSIONARIEST01_000, + THE_MISSIONARIEST01_001, + THE_MISSIONARIEST01_002, + THE_MISSIONARIEST01_003, + THE_MISSIONARIEST01_004, + THE_MISSIONARIEST01_005, + THE_MISSIONARIEST01_006, + THE_MISSIONARIEST01_007, + THE_MISSIONARIEST01_008, + THE_MISSIONARIEST01_009, + THE_MISSIONARIEST01_010, + THE_MISSIONARIEST01_011, + THE_MISSIONARIEST01_012, + THE_MISSIONARIEST01_013, + THE_MISSIONARIEST01_014, + THE_MISSIONARIEST01_015, + THE_MISSIONARIEST01_016, + THROWING_STONEST00_000, + THROWING_STONEST00_001, + THROWING_STONEST00_002, + THROWING_STONEST00_003, + THROWING_STONEST00_004, + THROWING_STONEST00_005, + THROWING_STONEST00_006, + THROWING_STONEST00_007, + THROWING_STONEST00_008, + THROWING_STONEST00_009, + THROWING_STONEST00_010, + THROWING_STONEST00_011, + TestEditorCameraT00_000, + TestEditorCameraT00_001, + TestEditorCameraT00_002, + TestEditorCameraT00_003, + TestEditorCameraT00_004, + TestEditorCameraT00_005, + ZOOM_TO_CREATURERace, + ZOOM_TO_CREATURET00_000, + ZOOM_TO_CREATURET00_001, + ZOOM_TO_CREATURET00_002, + ZOOM_TO_CREATURET00_003, + ZOOM_TO_CREATURET00_004, + ZOOM_TO_CREATURET00_005, + ZOOM_TO_CREATURET00_006, + ZOOM_TO_CREATURET00_007, + ZOOM_TO_CREATURET00_008, + ZOOM_TO_CREATURET00_009, + ZOOM_TO_CREATURET01_000, + ZOOM_TO_CREATURET01_001, + ZOOM_TO_CREATURET01_002, + ZOOM_TO_CREATURET01_003, + ZOOM_TO_CREATURET01_004, + ZOOM_TO_CREATURET01_005, + ZOOM_TO_CREATURET01_006, + ZOOM_TO_CREATURET01_007, + ZOOM_TO_CREATURET01_008, + ZOOM_TO_CREATURET01_009, +}; + +enum SCRIPT_PATH +{ + ALLY_SPEAKSTRACK00, + BEGIN_LAND2TRACK00, + BIG_WHALETRACK00, + BLIND_WOMANTRACK04, + BLIND_WOMANTRACK03, + BLIND_WOMANTRACK02, + BLIND_WOMANTRACK01, + BLIND_WOMANTRACK00, + BUILD_CITADELTRACK00, + CREATURE_DEVELOPMENT_TESTTRACK00, + CREATURE_GUARDIANTRACK00, + CREATURE_RETRIEVETRACK01, + CREATURE_RETRIEVETRACK00, + ChooseYourCreatureTRACK00, + DEV_SEE_HOMETRACK06, + DEV_SEE_HOMETRACK05, + DEV_SEE_HOMETRACK03, + DEV_SEE_HOMETRACK00, + FollowUsTRACK06, + FollowUsTRACK05, + FollowUsTRACK04, + FollowUsTRACK03, + FollowUsTRACK02, + FollowUsTRACK00, +// GRADUATIONTRACK00, //<- CI +// GRADUATION2TRACK00, //<- CI + GUIDE_HOLDING_MY_CREATURETRACK00, + IntroTRACK00, + LANDSLIDETRACK00, + LAND_4_METEORITESTRACK07, + LAND_4_METEORITESTRACK02, + LAND_4_METEORITESTRACK01, + LEARN_GESTURESTRACK00, + LEARN_INFLUENCETRACK00, + LEARN_WORSHIPPINGTRACK00, + LEASH_INTROTRACK01, + LEASH_INTROTRACK00, + LEAVE_THROUGH_VORTEX_LAND1TRACK00, + LEAVE_THROUGH_VORTEX_LAND2TRACK00, + LEAVE_THROUGH_VORTEX_LAND3TRACK00, + LEAVE_THROUGH_VORTEX_LAND4TRACK00, + LOST_BROTHERTRACK00, + MISSIONARIES_RETURNEDTRACK00, + OLD_CHOOSE_YOUR_CREATURETRACK00, + OLD_CREATURE_CHOOSETRACK00, + SHAOLINTRACK00, + SINGING_STONES_ATRACK01, + SINGING_STONES_ATRACK00, + SINGING_STONES_CIRCLETRACK00, + TEST_WEATHER_AND_DAYTRACK00, + THE_MISSIONARIESTRACK01, + THE_MISSIONARIESTRACK00, + THROWING_STONESTRACK00, + TestEditorCameraTRACK00, + ZOOM_TO_CREATURETRACK01, + ZOOM_TO_CREATURETRACK00, +}; diff --git a/libs/chlasm/CreatureEnum.h b/libs/chlasm/CreatureEnum.h new file mode 100644 index 0000000..07400e3 --- /dev/null +++ b/libs/chlasm/CreatureEnum.h @@ -0,0 +1,808 @@ +#pragma once +#ifndef __CREATURE_ENUM_H__ +#define __CREATURE_ENUM_H__ + +// Last Saved,#2001-09-13 14:44:43#,"Richard Evans" + +//***************************************************************************** +// ENUM Values: CREATURE_TYPE +//***************************************************************************** +enum CREATURE_TYPE +{ + CREATURE_TYPE_APE = 0 , + CREATURE_TYPE_COW = 1 , + CREATURE_TYPE_TIGER = 2 , + CREATURE_TYPE_LEOPARD = 3 , + CREATURE_TYPE_WOLF = 4 , + CREATURE_TYPE_LION = 5 , + CREATURE_TYPE_HORSE = 6 , + CREATURE_TYPE_TORTOISE = 7 , + CREATURE_TYPE_ZEBRA = 8 , + CREATURE_TYPE_BEAR = 9 , + CREATURE_TYPE_POLAR_BEAR = 10 , + CREATURE_TYPE_SHEEP = 11 , + CREATURE_TYPE_CHIMP = 12 , + CREATURE_TYPE_OGRE = 13 , + CREATURE_TYPE_MANDRILL = 14 , + CREATURE_TYPE_RHINO = 15 , + CREATURE_TYPE_GORILLA = 16 , + CREATURE_TYPE_CHICKEN = 17 , + CREATURE_TYPE_CROCODILE = 18 , + CREATURE_TYPE_LAST = 19 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_DESIRE_SOURCE +//***************************************************************************** +enum CREATURE_DESIRE_SOURCE +{ + IMPRESS_FROM_WATCHING_PLAYER = 0 , + IMPRESS_FROM_SEEING_OBJECTS_WHICH_DESERVE_IT = 1 , + COMPASSION_FROM_WATCHING_PLAYER = 2 , + COMPASSION_FROM_SEEING_OBJECTS_WHICH_DESERVE_IT = 3 , + COMPASSION_FROM_BEING_CONTENT = 4 , + COMPASSION_INNATE_NICENESS = 5 , + ANGER_FROM_WATCHING_PLAYER = 6 , + ANGER_FROM_SEEING_OBJECTS_WHICH_DESERVE_IT = 7 , + ANGER_FROM_BEING_DISSATISFIED = 8 , + ANGER_FROM_BEING_DAMAGED = 9 , + ANGER_FROM_SADNESS = 10 , + ANGER_INNATE_AGGRESSION = 11 , + TO_PLAY_FROM_WATCHING_PLAYER = 12 , + TO_PLAY_FROM_WATCHING_VILLAGERS = 13 , + HUNGER_FROM_ENERGY = 14 , + HUNGER_FROM_WATCHING_VILLAGERS = 15 , + HUNGER_FROM_SADNESS = 16 , + FEAR_FROM_DARKNESS = 17 , + FEAR_FROM_BEING_DAMAGED = 18 , + FEAR_FROM_SEEING_SCAREY_MAGIC = 19 , + CURIOSITY = 20 , + TO_POO_FROM_PHYSICAL_POO = 21 , + TIREDNESS_FROM_EXHAUSTION = 22 , + TIREDNESS_FROM_LAZINESS = 23 , + TIREDNESS_FROM_NIGHT_TIME = 24 , + TIREDNESS_FROM_SADNESS = 25 , + TIREDNESS_INNATE_LETHARGY = 26 , + TO_IDLE_AROUND_WITH_PLAYER = 27 , + WANDERLUST = 28 , + TO_PUKE = 29 , + TO_BUILD_HOME = 30 , + TO_BRING_STUFF_HOME = 31 , + FOR_WATER_FROM_DEHYDRATION = 32 , + TO_RESTORE_HEALTH_FROM_LIFE = 33 , + TO_BE_FRIENDS = 34 , + TO_BE_FRIENDS_INNATE_FRIENDLINESS = 35 , + TO_ATTRACT_PLAYERS_ATTENTION_FROM_LONELINESS = 36 , + TO_ATTRACT_PLAYERS_ATTENTION_FROM_LACK_OF_INTERACTION + = 37 , + TO_MANIFEST_STATE = 38 , + TO_MANIFEST_STATE_INNATE_COMMUNICATIVENESS = 39 , + TO_GET_WARMER = 40 , + TO_GET_COLDER = 41 , + TO_SCRATCH = 42 , + TO_RUN_AWAY_FROM_PLAYER = 43 , + TO_REST = 44 , + TO_OBEY_PLAYER = 45 , + ILLNESS = 46 , + TO_OBEY_CREATURE = 47 , + SADNESS = 48 , + TO_GO_HOME = 49 , + TO_TELL_PLAYER_WHAT_YOU_THINK_OF_HIM = 50 , + TO_PLAY_WITH_PLAYER = 51 , + TO_TELL_CREATURE_WHAT_YOU_THINK_OF_HIM = 52 , + TO_EDUCATE_FRIEND = 53 , + TO_FOLLOW_PLAYER_DESIRE = 54 , + TO_GET_HIGH = 55 , + TO_HANG_AROUND_AT_HOME = 56 , + SOURCE_FOR_MENTAL_ILLNESS = 57 , + TO_MISS_FRIEND = 58 , + TO_LOOK_AROUND = 59 , + TO_STEAL = 60 , + NUM_CREATURE_DESIRE_SOURCES = 61 , + INVALID_CREATURE_DESIRE_SOURCE = 61 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_DESIRE_ACTION_SIZE +//***************************************************************************** +enum CREATURE_DESIRE_ACTION_SIZE +{ + MAX_NUM_SOURCES_FOR_EACH_DESIRE = 8 , + MAX_NUM_ACTIONS_FOR_EACH_DESIRE = 30 , + MAX_NUM_SOURCES_FOR_EACH_ACTION = 5 , + MAX_NUM_MIMICKING_ACTIONS = 6 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_ACTION +//***************************************************************************** +enum CREATURE_ACTION +{ + CREATURE_ERROR = 0 , + FIRST_CREATURE_ACTION = 0 , + NO_ACTION_SPECIFIED = 0 , + CREATURE_MOVE_TO_POS = 1 , + CREATURE_FLEE_FROM_OBJECT = 2 , + CREATURE_LOOK_AT_OBJECT = 3 , + CREATURE_FOLLOW_OBJECT = 4 , + CREATURE_INSPECT_OBJECT = 5 , + CREATURE_FLYING = 6 , + CREATURE_LANDED = 7 , + CREATURE_LOOK_AT_HAND = 8 , + CREATURE_DEAD = 9 , + CREATURE_EXAMINE_BY_PICKING_UP = 10 , + CREATURE_EAT_ALIVE = 11 , + CREATURE_EAT_AFTER_EXAMINING = 12 , + CREATURE_STOMP_AND_EAT = 13 , + CREATURE_STONE_AND_EAT = 14 , + CREATURE_HURL = 15 , + CREATURE_RUN_AWAY_FROM_OBJECT = 16 , + CREATURE_SLEEP = 17 , + CREATURE_STOMP = 18 , + CREATURE_POO = 19 , + CREATURE_EXAMINE_BY_LOOKING = 20 , + CREATURE_FIGHT = 21 , + CREATURE_FOLLOW_PLAYER = 22 , + CREATURE_COMMUNICATE_STATE = 23 , + CREATURE_SHOW_PLAYER_AN_OBJECT = 24 , + CREATURE_GO_TO_TOP_OF_HILL_AND_LOOK = 25 , + CREATURE_GO_TO_HILL_AND_SIT = 26 , + CREATURE_GO_TO_HILL_AND_WALK_ALONG_RIDGE = 27 , + CREATURE_GIVE_FOOD_FROM_FIELD_TO_STORAGE_PIT = 28 , + CREATURE_GIVE_FISH_TO_STORAGE_PIT = 29 , + CREATURE_GIVE_FRUIT_FROM_TREE_TO_STORAGE_PIT = 30 , + CREATURE_GIVE_MAGIC_FOOD_TO_STORAGE_PIT = 31 , + CREATURE_GIVE_WOOD_FROM_TREE_TO_STORAGE_PIT = 32 , + CREATURE_GIVE_MAGIC_WOOD_TO_STORAGE_PIT = 33 , + CREATURE_HELP_BUILD_HOUSE = 34 , + CREATURE_HELP_REPAIR_HOUSE = 35 , + CREATURE_BRING_OBJECT_TO_TOWN = 36 , + CREATURE_PUT_OUT_FIRE = 37 , + CREATURE_STROKE = 38 , + CREATURE_SHOW_IMPRESSIVE_ANIMATION = 39 , + CREATURE_CAST_IMPRESSIVE_SPELL = 40 , + CREATURE_DANCE_WITH_VILLAGERS = 41 , + CREATURE_THROW_IN_THE_SEA = 42 , + CREATURE_PULL_SILLY_FACES = 43 , + CREATURE_LOOK_AT_REFLECTION = 44 , + CREATURE_CAST_LIGHTNING_BOLT = 45 , + CREATURE_CAST_FIREBALL = 46 , + CREATURE_CAST_EXPLOSION = 47 , + CREATURE_CAST_MAGIC_FOOD = 48 , + CREATURE_CAST_MAGIC_FOREST = 49 , + CREATURE_PUKE = 50 , + CREATURE_THROW_STONES_IN_SEA_WITH_FRIEND = 51 , + CREATURE_PRACTICE_THROW = 52 , + CREATURE_DESTROY_AGGRESSOR = 53 , + CREATURE_CAST_SHIELD = 54 , + CREATURE_DRINK_FROM_THE_SEA = 55 , + CREATURE_RAISE_TOTEM_POLE = 56 , + CREATURE_LOWER_TOTEM_POLE = 57 , + CREATURE_HEAL_HIMSELF = 58 , + CREATURE_REST_TO_GET_BETTER = 59 , + CREATURE_SMILE_AT_FRIEND = 60 , + CREATURE_FOLLOW_FRIEND_AROUND = 61 , + CREATURE_DANCE_WITH_FRIEND = 62 , + CREATURE_INSPECT_CREATURE = 63 , + CREATURE_HOLD_OBJECT = 64 , + CREATURE_EAT_FROM_STORAGE_PIT = 65 , + CREATURE_EAT_FROM_FIELD = 66 , + CREATURE_PUT_DOWN = 67 , + CREATURE_GIVE_TO_CREATURE = 68 , + CREATURE_THROW_AT_CAMERA = 69 , + CREATURE_RUN_AWAY_FROM_PLAYER = 70 , + CREATURE_SNEEZE = 71 , + CREATURE_SHIVER = 72 , + CREATURE_START_FIRE = 73 , + CREATURE_SHOW_HOTNESS = 74 , + CREATURE_SCRATCH = 75 , + CREATURE_EXPLORE_COAST = 76 , + CREATURE_EXPLORE_TOWNS = 77 , + CREATURE_SLEEP_BY_OBJECT = 78 , + CREATURE_EXAMINE_BY_FOLLOWING = 79 , + CREATURE_LOOK_AT_FLYING_OBJECT = 80 , + CREATURE_SIT = 81 , + CREATURE_LOOK_AT_CAMERA = 82 , + CREATURE_BUILD_HOME = 83 , + CREATURE_BRING_HOME = 84 , + CREATURE_SLEEP_AT_POS = 85 , + CREATURE_SHOW_LEARNT_LESSON = 86 , + CREATURE_PRACTICE_DANCE = 87 , + CREATURE_GO_TO_MIDDLE_OF_SCREEN = 88 , + CREATURE_GO_TO_HAND = 89 , + CREATURE_WAVE_AT_PLAYER = 90 , + CREATURE_WAVE_AT_OBJECT = 91 , + CREATURE_LOOK_CONFUSED = 92 , + CREATURE_PLAY_GAME_WITH_CREATURE_MAIN_PART = 93 , + CREATURE_EAT_FROM_TREE = 94 , + CREATURE_CAST_LIGHTNING_STORM = 95 , + CREATURE_CAST_FIREBALL_PU1 = 96 , + CREATURE_CAST_FIREBALL_PU2 = 97 , + CREATURE_CAST_MAGIC_FOOD_PU1 = 98 , + CREATURE_CAST_LIGHTNING_BOLT_PU1 = 99 , + CREATURE_CAST_LIGHTNING_BOLT_PU2 = 100 , + CREATURE_CAST_HEAL_SPELL = 101 , + CREATURE_CAST_HEAL_SPELL_PU1 = 102 , + CREATURE_CAST_TORNADO = 103 , + CREATURE_CAST_MAGIC_WOOD = 104 , + CREATURE_CAST_FREEZE_ON_CREATURE = 105 , + CREATURE_CAST_SMALL_ON_CREATURE = 106 , + CREATURE_CAST_BIG_ON_CREATURE = 107 , + CREATURE_CAST_WEAK_ON_CREATURE = 108 , + CREATURE_CAST_STRONG_ON_CREATURE = 109 , + CREATURE_CAST_FAT_ON_CREATURE = 110 , + CREATURE_CAST_THIN_ON_CREATURE = 111 , + CREATURE_CAST_INVSIBLE_ON_CREATURE = 112 , + CREATURE_CAST_COMPASSION_ON_CREATURE = 113 , + CREATURE_CAST_ANGRY_ON_CREATURE = 114 , + CREATURE_CAST_HUNGRY_ON_CREATURE = 115 , + CREATURE_CAST_FRIGHTENED_ON_CREATURE = 116 , + CREATURE_CAST_TIRED_ON_CREATURE = 117 , + CREATURE_CAST_ILL_ON_CREATURE = 118 , + CREATURE_CAST_THIRSTY_ON_CREATURE = 119 , + CREATURE_CAST_ITCHY_ON_CREATURE = 120 , + CREATURE_CREATE_HOME = 121 , + CREATURE_RUN_TO_OBJECT = 122 , + CREATURE_RUN_AROUND_RACE_TRACK = 123 , + CREATURE_OBEY_CREATURE = 124 , + CREATURE_SHOW_FRIEND_SPELL_FIREBALL = 125 , + CREATURE_SHOW_FRIEND_SPELL_LIGHTNING_BOLT = 126 , + CREATURE_SHOW_FRIEND_SPELL_LIGHTNING_STORM = 127 , + CREATURE_SHOW_FRIEND_SPELL_MAGIC_FOOD = 128 , + CREATURE_SHOW_FRIEND_SPELL_MAGIC_WOOD = 129 , + CREATURE_SHOW_FRIEND_OBJECT = 130 , + CREATURE_SHOW_FRIEND_HOME = 131 , + CREATURE_SHOW_FRIEND_CITADEL = 132 , + CREATURE_KISS_FRIEND = 133 , + CREATURE_GO_TO_TELEPORT = 134 , + CREATURE_GIVE_FOOD_TO_CREATURE = 135 , + CREATURE_CAST_WARMING_SPELL_ON_CREATURE = 136 , + CREATURE_CAST_COOLING_SPELL_ON_CREATURE = 137 , + CREATURE_CURE_ILLNESS_ON_CREATURE = 138 , + CREATURE_RUN_RACE_WITH_FRIEND = 139 , + CREATURE_PLAY_GAME_OF_THROWING_STONES_AT_CAN_WITH_FRIEND + = 140 , + CREATURE_SIT_ON_TOP_OF_HILL_WITH_FRIEND = 141 , + CREATURE_TAKE_OBJECT_FROM_HAND = 142 , + CREATURE_GESTURE_TYPE_FULL_CIRCLE = 143 , + CREATURE_GESTURE_TYPE_STAR = 144 , + CREATURE_GESTURE_TYPE_SPIRAL = 145 , + CREATURE_GESTURE_TYPE_SQUARE_WAVE = 146 , + CREATURE_GESTURE_TYPE_KISS = 147 , + CREATURE_GESTURE_TYPE_SQUARE = 148 , + CREATURE_GESTURE_TYPE_TRIANGLE = 149 , + CREATURE_GESTURE_TYPE_S_SHAPE = 150 , + CREATURE_GESTURE_TYPE_V_BALL = 151 , + CREATURE_GESTURE_TYPE_MOON = 152 , + CREATURE_GESTURE_TYPE_HEART = 153 , + CREATURE_GESTURE_TYPE_BOW_TIE = 154 , + CREATURE_FISH_AND_EAT = 155 , + CREATURE_RUN_AWAY_FROM_POS = 156 , + CREATURE_EXAMINE_POS = 157 , + CREATURE_EAT_FROM_MAGIC_FOOD_PILE = 158 , + CREATURE_SMASH_STONES_IN_HALF = 159 , + CREATURE_BE_SAD = 160 , + CREATURE_IDLE = 161 , + CREATURE_GO_HOME = 162 , + CREATURE_POINT_AT_OBJECT = 163 , + CREATURE_BRING_FOOD_HOME = 164 , + CREATURE_HANG_AROUND_AT_HOME = 165 , + CREATURE_GO_OUT_AND_LOOK_FOR_FOOD = 166 , + CREATURE_SHOW_PLAYER_HOW_NICE_YOU_THINK_HE_IS = 167 , + CREATURE_POINT_AT_CAMERA = 168 , + CREATURE_POINT_AT_HAND = 169 , + CREATURE_RUN_HOME = 170 , + CREATURE_PLAY_THROWING_GAME_WITH_PLAYER = 171 , + CREATURE_BE_SILLY_WITH_PLAYER = 172 , + CREATURE_SHOW_HOW_NICE_YOU_THINK_CREATURE_IS = 173 , + CREATURE_BE_FRIGHTENED_ON_THE_SPOT = 174 , + CREATURE_POO_DISCRETELY = 175 , + CREATURE_WATCH_TELLY = 176 , + CREATURE_FART = 177 , + CREATURE_REST_ON_THE_SPOT = 178 , + CREATURE_GO_HOME_TO_RECOVER = 179 , + CREATURE_FOLLOW_PLAYER_DESIRE = 180 , + CREATURE_GET_HIGH = 181 , + CREATURE_CAST_TELEPORT = 182 , + CREATURE_CAST_SHIELD_PU1 = 183 , + CREATURE_CAST_PHYSICAL_SHIELD = 184 , + CREATURE_CAST_EXPLOSION_PU1 = 185 , + CREATURE_CAST_EXPLOSION_PU2 = 186 , + CREATURE_SWAP_MIND_WITH_OTHER_CREATURE = 187 , + CREATURE_LOOK_BUT_DONT_APPROACH = 188 , + CREATURE_LOOK_FOREVER = 189 , + CREATURE_LOOK_AT_CITADEL = 190 , + CREATURE_LOOK_AT_MOUNTAINS = 191 , + CREATURE_LOOK_OUT_TO_SEA = 192 , + CREATURE_LOOK_AT_SUN = 193 , + CREATURE_LOOK_AT_MOON = 194 , + CREATURE_LOOK_DOWN_CLIFF = 195 , + CREATURE_EXPLORE_AND_CAST_TELEPORT = 196 , + CREATURE_HURL_OBJECT_IN_HAND = 197 , + CREATURE_EAT_WITH_FRIEND = 198 , + CREATURE_DRINK_WITH_FRIEND = 199 , + CREATURE_POO_WITH_FRIEND = 200 , + CREATURE_SIT_WITH_FRIEND = 201 , + CREATURE_HAPPY_WITH_FRIEND = 202 , + CREATURE_SLEEP_WITH_FRIEND = 203 , + CREATURE_GO_TO_BEACH_WITH_FRIEND = 204 , + CREATURE_ENTER_CITADEL = 205 , + CREATURE_BE_PATHETIC_TO_PLAYER = 206 , + CREATURE_CROSS_WITH_PLAYER = 207 , + CREATURE_KISS_FRIENDS_ARSE = 208 , + CREATURE_ARGUE_WITH_FRIEND = 209 , + CREATURE_MOPE_ABOUT_WITH_FRIEND = 210 , + CREATURE_CONFUSE_FRIEND = 211 , + CREATURE_SHOW_OFF_TO_FRIEND = 212 , + CREATURE_BEHAVE_STRANGELY = 213 , + CREATURE_PINE_FOR_FRIEND = 214 , + CREATURE_LOOK_FOR_FRIEND = 215 , + CREATURE_CAST_TELEPORT_AND_USE_IT_TO_MOVE_TO_OBJECT + = 216 , + CREATURE_DIE_PERMANENTLY = 217 , + CREATURE_SIT_DOWN_ON_BEACH = 218 , + CREATURE_SHOW_CREATURE_YOU_HATE_HIM = 219 , + CREATURE_FOOTBALL_ATTACKER_THROW_BALL_AT_GOAL = 220 , + CREATURE_FOOTBALL_ATTACKER_KICK_BALL_AT_GOAL = 221 , + CREATURE_FOOTBALL_DEFENDER_STOMP_ON_BALL = 222 , + CREATURE_FOOTBALL_DEFENDER_CLEAR_BALL = 223 , + CREATURE_FOOTBALL_GOALIE_CATCH_BALL = 224 , + CREATURE_FOOTBALL_GOALIE_FOUL = 225 , + CREATURE_FOOTBALL_CELEBRATE = 226 , + CREATURE_FOOTBALL_COMMISERATE = 227 , + CREATURE_CAST_ONE_OFF_SPELL_IN_HAND_AGGRESSIVE = 228 , + CREATURE_CAST_ONE_OFF_SPELL_IN_HAND_COMPASSIONATE + = 229 , + CREATURE_CAST_ONE_OFF_SPELL_IN_HAND_PLAYFUL = 230 , + CREATURE_CAST_ONE_OFF_SPELL_IN_HAND_TO_RESTORE_HEALTH + = 231 , + CREATURE_PICK_UP_AND_CAST_ONE_OFF_SPELL_AGGRESSIVE + = 232 , + CREATURE_PICK_UP_AND_CAST_ONE_OFF_SPELL_COMPASSIONATE + = 233 , + CREATURE_PICK_UP_AND_CAST_ONE_OFF_SPELL_PLAYFUL = 234 , + CREATURE_PICK_UP_AND_CAST_ONE_OFF_SPELL_TO_RESTORE_HEALTH + = 235 , + CREATURE_KICK = 236 , + CREATURE_CATCH = 237 , + CREATURE_PUT_OUT_FIRE_WITH_MAGIC_WATER = 238 , + CREATURE_SPRINKLE_MAGIC_WATER_ON_CROPS = 239 , + CREATURE_PUT_OUT_FIRE_ON_MYSELF = 240 , + CREATURE_PLAY_THROWING_GAME_WITH_FRIEND = 241 , + CREATURE_NOTICE_HELPFUL_ACTION = 242 , + CREATURE_NOTICE_AGGRESSIVE_ACTION = 243 , + CREATURE_NOTICE_ACTION = 244 , + CREATURE_PUT_FOOD_FROM_FIELD_BY_WORSHIP_SITE = 245 , + CREATURE_CAST_MAGIC_FOOD_BY_WORSHIP_SITE = 246 , + CREATURE_GIVE_WOOD_FROM_TREE_TO_BUILDING_SITE = 247 , + CREATURE_CAST_MAGIC_WOOD_BY_BUILDING_SITE = 248 , + CREATURE_PLANT_TREE = 249 , + CREATURE_DANCE_OUTSIDE_WORSHIP_SITE = 250 , + CREATURE_DANCE_AROUND_ARTEFACT = 251 , + CREATURE_THROW_TO_IMPRESS = 252 , + CREATURE_STEAL_SPELL = 253 , + CREATURE_STEAL_SCAFFOLDING = 254 , + CREATURE_CATCH_FIREBALL_AND_THROW_BACK = 255 , + CREATURE_TELL_CREATURE_TO_SOD_OFF = 256 , + CREATURE_ORDER_FRIEND_AROUND = 257 , + CREATURE_TAKE_FOOD_FROM_FIELD_TO_HOME = 258 , + CREATURE_TAKE_FISH_FROM_SEA_TO_HOME = 259 , + CREATURE_WAVE_AT_FRIEND = 260 , + CREATURE_DEAD_FOREVER = 261 , + CREATURE_GIVE_WOOD_FROM_TREE_TO_WORKSHOP = 262 , + CREATURE_THROW_AROUND = 263 , + CREATURE_STEAL_OBJECT_AND_PUT_IN_TOWN = 264 , + CREATURE_STEAL_OBJECT_AND_PUT_BY_CITADEL = 265 , + CREATURE_BREAK_ROCK = 266 , + CREATURE_NOTICE_STEALING_ACTION = 267 , + CREATURE_NOTICE_PLAYFUL_ACTION = 268 , + CREATURE_EAT_FROM_FIELD_WITH_FRIEND = 269 , + CREATURE_GET_FRIEND_TO_GIVE_ME_FOOD_FROM_FIELD = 270 , + CREATURE_EAT_FISH_WITH_FRIEND = 271 , + CREATURE_GET_FRIEND_TO_GIVE_ME_FISH = 272 , + CREATURE_ATTACK_WITH_FRIEND = 273 , + CREATURE_HELP_TOWN_WITH_FRIEND = 274 , + CREATURE_EXAMINE_OBJECT_IN_HAND = 275 , + CREATURE_EAT_OBJECT_IN_HAND = 276 , + CREATURE_STROKE_OBJECT_IN_HAND = 277 , + CREATURE_THROW_OBJECT_IN_HAND = 278 , + CREATURE_GET_ATTENTION_FROM_FRIEND = 279 , + CREATURE_EXAMINE_OTHER_CREATURE_WITH_FRIEND = 280 , + CREATURE_GIVE_FRIEND_TOY = 281 , + CREATURE_SACRIFICE = 282 , + CREATURE_SET_FIRE_TO_OBJECT = 283 , + CREATURE_WATCH_PLAYER_WHILE_HE_HAS_YOUR_ATTENTION + = 284 , + CREATURE_DROP_COW_IN_STORAGE_PIT = 285 , + CREATURE_CAST_SHIELD_AROUND_TOWN = 286 , + CREATURE_MAKE_BREEDER_DISCIPLE = 287 , + CREATURE_PLAY_GAME_WITH_VILLAGERS = 288 , + CREATURE_TAKE_VILLAGER_HOME_TO_SLEEP = 289 , + CREATURE_KICK_BALL_AROUND = 290 , + CREATURE_THROW_BALL_AT_OBJECT = 291 , + CREATURE_DANCE_ON_YOUR_OWN_BY_THE_SEA = 292 , + CREATURE_DANCE_PLAYFULLY_WITH_VILLAGERS_WATCHING= 293 , + CREATURE_DANCE_PLAYFULLY_WITH_VILLAGERS_PARTICIPATING + = 294 , + CREATURE_TELL_VILLAGERS_A_STORY = 295 , + CREATURE_PLAYFULLY_FRIGHTEN_VILLAGERS = 296 , + CREATURE_CAST_AMUSING_SPELL_ON_CREATURE = 297 , + CREATURE_KICK_TREE = 298 , + CREATURE_PLAYFULLY_INTERACT_WITH_VILLAGER = 299 , + CREATURE_PUT_FISH_BY_WORSHIP_SITE = 300 , + CREATURE_PLAYFULLY_KISS_VILLAGER = 301 , + CREATURE_CAST_MAGIC_WOOD_BY_WORKSHOP = 302 , + CREATURE_BRING_VILLAGERS_TO_WORSHIP_SITE = 303 , + CREATURE_WATER_TREE = 304 , + CREATURE_WATER_FIELD = 305 , + CREATURE_STEAL_FOOD_FROM_FARM = 306 , + CREATURE_STEAL_FOOD_FROM_STORAGE_PIT = 307 , + CREATURE_STEAL_WOOD_FROM_STORAGE_PIT = 308 , + CREATURE_DANCE_AMOROUSLY_WITH_VILLAGERS = 309 , + CREATURE_STEAL_SPELL_SEED = 310 , + CREATURE_STEAL_ANIMAL = 311 , + CREATURE_STEAL_VILLAGER = 312 , + CREATURE_SLEEP_ON_THE_SPOT = 313 , + CREATURE_LOOK_AT_CAMERA_IN_WIDE_SCREEN = 314 , + CREATURE_HOWL_AT_FRIEND = 315 , + CREATURE_HOWL_AT_PLAYER = 316 , + CREATURE_TELL_FRIEND_A_JOKE = 317 , + CREATURE_PRAY_TO_PLAYER = 318 , + CREATURE_PRAY_AT_CITADEL = 319 , + CREATURE_TALK_TO_FRIEND = 320 , + CREATURE_POINT_OUT_HIGHLIGHT = 321 , + CREATURE_TAKE_TOY_HOME = 322 , + CREATURE_STROKE_TOY = 323 , + CREATURE_THROW_DIE = 324 , + CREATURE_SPRINKLE_MAGIC_WATER_PU1_ON_CROPS = 325 , + CREATURE_WATER_TREE_FOR_TOWN = 326 , + CREATURE_WATER_TREE_PU1_FOR_TOWN = 327 , + NUM_CREATURE_ACTIONS = 328 , + // CREATURE_CREATE_PLANNED_ABODE = 328 , + // CREATURE_CREATE_PLANNED_CIVIC_BUILDING = 329 , + // CREATURE_PLAY_SINGLE_PLAYER_DICE_GAME = 330 , + // CREATURE_PLAY_TWO_PLAYER_DICE_GAME = 331 , + // CREATURE_CAST_ANTI_SPELL = 332 , + // CREATURE_CAST_FAST_SPELL = 333 , + // CREATURE_KICK_AT_POS = 334 , + // CREATURE_BOWL = 335 , + // CREATURE_TELL_CREATURE_TO_GO_AWAY = 336 , + // NUM_CREATURE_ACTIONS = 337 , +}; + +//***************************************************************************** +// ENUM Values: ATTRIBUTE_TYPE +//***************************************************************************** +enum ATTRIBUTE_TYPE +{ + ATTRIBUTE_TYPE_FIRST = 0 , + ATTRIBUTE_TYPE_ALLEGIANCE = 0 , + ATTRIBUTE_TYPE_ORIGIN = 1 , + ATTRIBUTE_TYPE_ANIMATE = 2 , + ATTRIBUTE_TYPE_PLAYER_NUMBER = 3 , + ATTRIBUTE_TYPE_HARDER_THAN_ME = 4 , + ATTRIBUTE_TYPE_CREATURE_TYPE = 5 , + ATTRIBUTE_TYPE_TYPE = 6 , + ATTRIBUTE_TYPE_LIFE = 7 , + ATTRIBUTE_TYPE_TRIBE = 8 , + ATTRIBUTE_TYPE_RELIGIOUS_BELIEF_IN_YOU = 9 , + ATTRIBUTE_TYPE_TOWN_NEEDS_MOST = 10 , + ATTRIBUTE_TYPE_TOWN_SIZE = 11 , + ATTRIBUTE_TYPE_CREATURE_DOMINANT_DESIRE = 12 , + ATTRIBUTE_TYPE_CREATURE_HEIGHT = 13 , + ATTRIBUTE_TYPE_CREATURE_SPELL_KNOWLEDGE = 14 , + ATTRIBUTE_TYPE_CREATURE_CARRYING = 15 , + ATTRIBUTE_TYPE_FOREST_SIZE = 16 , + ATTRIBUTE_TYPE_VILLAGER_JOB = 17 , + ATTRIBUTE_TYPE_SEX = 18 , + ATTRIBUTE_TYPE_MOBILE_OBJECT_TYPE = 19 , + ATTRIBUTE_TYPE_ABODE_TYPE = 20 , + ATTRIBUTE_TYPE_ABODE_BEING_BUILT = 21 , + ATTRIBUTE_TYPE_ABODE_ON_FIRE = 22 , + ATTRIBUTE_TYPE_LAST = 23 , + ATTRIBUTE_TYPE_ERROR = 23 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_DESIRE_ATTRIBUTE_SIZE +//***************************************************************************** +enum CREATURE_DESIRE_ATTRIBUTE_SIZE +{ + MAX_NUM_ATTRIBUTES_TO_CONSIDER = 10 , +}; + +//***************************************************************************** +// ENUM Values: DEVELOPMENT_PHASE +//***************************************************************************** +enum DEVELOPMENT_PHASE +{ + DEVELOPMENT_PHASE_INITIAL = 0 , + DEVELOPMENT_PHASE_FIRST = 0 , + DEVELOPMENT_PHASE_LEARN_TO_TAKE_FROM_PLAYER_AND_EAT + = 1 , + DEVELOPMENT_PHASE_PUNISHMENT = 2 , + DEVELOPMENT_PHASE_LEASH_PULL_AND_PICKUP = 3 , + DEVELOPMENT_PHASE_LEASH_ATTACH_TO_HOUSE = 4 , + DEVELOPMENT_PHASE_MEET_GUIDE = 5 , + DEVELOPMENT_PHASE_FRIENDS_WITH_GUIDE = 6 , + DEVELOPMENT_PHASE_GUIDE_EXPLAINS_HISTORY = 7 , + DEVELOPMENT_PHASE_GUIDE_TEACHES_SPELLS = 8 , + DEVELOPMENT_PHASE_IMPRESS_TOWN = 9 , + DEVELOPMENT_PHASE_LEARN_TO_FIGHT = 10 , + DEVELOPMENT_PHASE_HELP_TOWN = 11 , + DEVELOPMENT_PHASE_LEASH_GOOD_AND_EVIL = 12 , + DEVELOPMENT_PHASE_FULLY_MATURE = 13 , + DEVELOPMENT_PHASE_LAST = 14 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_NUM_DESIRES_IN_DEVELOPMENT_PHASE +//***************************************************************************** +enum CREATURE_NUM_DESIRES_IN_DEVELOPMENT_PHASE +{ + MAX_NUM_DESIRES_TO_ADD = 10 , + MAX_NUM_DESIRES_TO_REMOVE = 4 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_TUTORIAL +//***************************************************************************** +enum CREATURE_TUTORIAL +{ + CREATURE_TUTORIAL_SELECT = 0 , + CREATURE_TUTORIAL_RUN = 1 , + CREATURE_TUTORIAL_HAND_OVER = 2 , + CREATURE_TUTORIAL_DESELECT = 3 , + CREATURE_TUTORIAL_MORE_ROCKS_NEEDED_FOR_HOME = 4 , + CREATURE_TUTORIAL_PICK_UP = 5 , + CREATURE_TUTORIAL_HELP_BUILD = 6 , + CREATURE_TUTORIAL_DROP = 7 , + CREATURE_TUTORIAL_EAT = 8 , + CREATURE_TUTORIAL_REWARD_PUNISH = 9 , + CREATURE_TUTORIAL_DRINK = 10 , + CREATURE_TUTORIAL_POO = 11 , + CREATURE_TUTORIAL_LAST = 12 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_HELP_TYPE +//***************************************************************************** +enum CREATURE_HELP_TYPE +{ + CREATURE_HELP_TYPE_SHOW_LESSON_INCREASE_SOURCE = 0 , + CREATURE_HELP_TYPE_SHOW_LESSON_DECREASE_SOURCE = 1 , + CREATURE_HELP_TYPE_SHOW_LESSON_INCREASE_DESIRE = 2 , + CREATURE_HELP_TYPE_SHOW_LESSON_DECREASE_DESIRE = 3 , + CREATURE_HELP_TYPE_SHOW_LESSON_INCREASE_OPINION = 4 , + CREATURE_HELP_TYPE_SHOW_LESSON_DECREASE_OPINION = 5 , + CREATURE_HELP_TYPE_SHOW_LESSON_LEARN_NORMAL_ACTION + = 6 , + CREATURE_HELP_TYPE_SHOW_LESSON_LEARN_MAGIC_ACTION + = 7 , + CREATURE_HELP_TYPE_SHOW_LESSON_NEARLY_LEARNT_NORMAL_ACTION + = 8 , + CREATURE_HELP_TYPE_SHOW_LESSON_NEARLY_LEARNT_MAGIC_ACTION + = 9 , + CREATURE_HELP_TYPE_SHOW_LESSON_CANT_LEARN_NORMAL_ACTION_YET + = 10 , + CREATURE_HELP_TYPE_SHOW_LESSON_CANT_LEARN_MAGIC_ACTION_YET + = 11 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_INITIAL = 12 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_LEARN_TO_TAKE_FROM_PLAYER_AND_EAT + = 13 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_PUNISHMENT = 14 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_LEASH_PULL_AND_PICKUP + = 15 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_LEASH_ATTACH_TO_HOUSE + = 16 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_MEET_GUIDE = 17 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_FRIENDS_WITH_GUIDE + = 18 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_GUIDE_EXPLAINS_HISTORY + = 19 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_GUIDE_TEACHES_SPELLS + = 20 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_IMPRESS_TOWN + = 21 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_LEARN_TO_FIGHT + = 22 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_HELP_TOWN = 23 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_LEASH_GOOD_AND_EVIL + = 24 , + CREATURE_HELP_TYPE_DEVELOPMENT_PHASE_FULLY_MATURE + = 25 , + CREATURE_HELP_TYPE_RECEIVED_SPELL = 26 , + CREATURE_HELP_TYPE_FINISHED_RECEIVING_SPELL = 27 , + CREATURE_HELP_TYPE_TUTORIAL = 28 , + CREATURE_HELP_TYPE_SHOW_CURRENT_SOURCE = 29 , + CREATURE_HELP_TYPE_SHOW_PHYSICAL_PROBLEM = 30 , + CREATURE_HELP_TYPE_SHOW_MENTAL_PROBLEM = 31 , + CREATURE_HELP_TYPE_PROMPT_HASNT_LEARNT_NORMAL_ACTION + = 32 , + CREATURE_HELP_TYPE_SHOW_TOWN_ATTITUDE_TO_CREATURE + = 33 , + CREATURE_HELP_TYPE_CANNOT_LEARN_ACTION_IN_THIS_DEVELOPMENT_PHASE + = 34 , + CREATURE_HELP_TYPE_SHOW_DEVELOPMENT_CRITERIA = 35 , + CREATURE_HELP_TYPE_SOMETHING_INTERESTING_OFF_SCREEN + = 36 , + CREATURE_HELP_TYPE_MISCELLANEOUS_STACKED = 37 , + CREATURE_HELP_TYPE_MISCELLANEOUS_UNSTACKED = 38 , + CREATURE_HELP_TYPE_ACTION_MESSED_UP = 39 , + CREATURE_HELP_TYPE_FAILURE_EXPLANATION = 40 , + CREATURE_HELP_TYPE_CURRENT_DESIRE = 41 , + CREATURE_HELP_TYPE_LAST = 42 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_MISCELLANEOUS_HELP_STACKED +//***************************************************************************** +enum CREATURE_MISCELLANEOUS_HELP_STACKED +{ + CREATURE_MISCELLANEOUS_HELP_STACKED_NICE_MUSIC = 0 , + CREATURE_MISCELLANEOUS_HELP_STACKED_NASTY_MUSIC = 1 , + CREATURE_MISCELLANEOUS_HELP_STACKED_FRIGHTENING_MUSIC + = 2 , + CREATURE_MISCELLANEOUS_HELP_STACKED_CREATURE_HAS_FAINTED + = 3 , + CREATURE_MISCELLANEOUS_HELP_STACKED_PLAYER_STROKE_BUT_NOT_LEARNING + = 4 , + CREATURE_MISCELLANEOUS_HELP_STACKED_PLAYER_SLAP_BUT_NOT_LEARNING + = 5 , + CREATURE_MISCELLANEOUS_HELP_STACKED_CREATURE_TRANSPORTED_HOME + = 6 , + CREATURE_MISCELLANEOUS_HELP_STACKED_CREATURE_CANNOT_PICK_UP + = 7 , + CREATURE_MISCELLANEOUS_HELP_STACKED_TYKE_CANNOT_MIMIC + = 8 , + CREATURE_MISCELLANEOUS_HELP_STACKED_LAST = 9 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_MISCELLANEOUS_HELP_UNSTACKED +//***************************************************************************** +enum CREATURE_MISCELLANEOUS_HELP_UNSTACKED +{ + CREATURE_MISCELLANEOUS_HELP_UNSTACKED_OFF_SCREEN_INTERESTINGNESS + = 0 , + CREATURE_MISCELLANEOUS_HELP_UNSTACKED_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_MESSED_UP +//***************************************************************************** +enum CREATURE_MESSED_UP +{ + CREATURE_MESSED_UP_ACTION_THROW = 0 , + CREATURE_MESSED_UP_ACTION_SPELL = 1 , + CREATURE_MESSED_UP_ACTION_FISH = 2 , + CREATURE_MESSED_UP_ACTION_DANCE_WITH_VILLAGERS = 3 , + CREATURE_MESSED_UP_ACTION_MAKE_FIRE = 4 , + CREATURE_MESSED_UP_ACTION_IMPRESS_VILLAGERS = 5 , + CREATURE_MESSED_UP_ACTION_RAISE_TOTEM = 6 , + CREATURE_MESSED_UP_ACTION_LAST = 7 , +}; + +//***************************************************************************** +// ENUM Values: SCRIPT_PERFORMED_ACTION +//***************************************************************************** +enum SCRIPT_PERFORMED_ACTION +{ + SCRIPT_PERFORMED_ACTION_EAT = 0 , + SCRIPT_PERFORMED_ACTION_DESTROY = 1 , + SCRIPT_PERFORMED_ACTION_SAVE = 2 , + SCRIPT_PERFORMED_ACTION_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_FAILURE_EXPLANATION +//***************************************************************************** +enum CREATURE_FAILURE_EXPLANATION +{ + CREATURE_FAILURE_EXPLANATION_DOESNT_WANT_TO_FIGHT_BECAUSE_DAMAGED + = 0 , + CREATURE_FAILURE_EXPLANATION_CANT_FIND_ROUTE = 1 , + CREATURE_FAILURE_EXPLANATION_ROUTE_BLOCKED = 2 , + CREATURE_FAILURE_EXPLANATION_ROUTE_INACCESSIBLE = 3 , + CREATURE_FAILURE_EXPLANATION_OPPONENT_REFUSED_TO_FIGHT + = 4 , + CREATURE_FAILURE_EXPLANATION_OPPONENT_REFUSED_TO_PLAY + = 5 , + CREATURE_FAILURE_EXPLANATION_OPPONENT_REFUSED_TO_BE_FRIENDS + = 6 , + CREATURE_FAILURE_EXPLANATION_LEASH_STOPPED_CREATURE + = 7 , + CREATURE_FAILURE_EXPLANATION_CREATURE_LOST_OBJECT_HE_WAS_TRACKING + = 8 , + CREATURE_FAILURE_EXPLANATION_LAST = 9 , +}; + +//***************************************************************************** +// ENUM Values: THING_TO_LOOK_AT_TYPE +//***************************************************************************** +enum THING_TO_LOOK_AT_TYPE +{ + THING_TO_LOOK_AT_TYPE_OBJECT = 0 , + THING_TO_LOOK_AT_TYPE_MOUNTAIN = 1 , + THING_TO_LOOK_AT_TYPE_SEA = 2 , + THING_TO_LOOK_AT_TYPE_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: MIMIC_STAGE +//***************************************************************************** +enum MIMIC_STAGE +{ + MIMIC_STAGE_NOTICE = 0 , + MIMIC_STAGE_COPY_ACTION = 1 , + MIMIC_STAGE_COPY_DESIRE = 2 , + MIMIC_STAGE_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: DETECTED_PLAYER_ACTION +//***************************************************************************** +enum DETECTED_PLAYER_ACTION +{ + DETECTED_PLAYER_ACTION_PUT_FOOD_IN_WORSHIP_SITE = 0 , + DETECTED_PLAYER_ACTION_CAST_MAGIC_FOOD_IN_WORSHIP_SITE + = 1 , + DETECTED_PLAYER_ACTION_PUT_FOOD_IN_STORAGE_PIT = 2 , + DETECTED_PLAYER_ACTION_CAST_MAGIC_FOOD_IN_STORAGE_PIT + = 3 , + DETECTED_PLAYER_ACTION_PUT_WOOD_IN_STORAGE_PIT = 4 , + DETECTED_PLAYER_ACTION_CAST_MAGIC_WOOD_IN_STORAGE_PIT + = 5 , + DETECTED_PLAYER_ACTION_BUILD_HOUSE = 6 , + DETECTED_PLAYER_ACTION_PUT_WOOD_IN_BUILDING_SITE= 7 , + DETECTED_PLAYER_ACTION_CAST_MAGIC_WOOD_BY_BUILDING_SITE + = 8 , + DETECTED_PLAYER_ACTION_PUT_WOOD_IN_WORKSHOP = 9 , + DETECTED_PLAYER_ACTION_CAST_MAGIC_WOOD_BY_WORKSHOP + = 10 , + DETECTED_PLAYER_ACTION_PLANT_TREE = 11 , + DETECTED_PLAYER_ACTION_GIVE_TOWN_PROTECTION_WITH_SHIELD + = 12 , + DETECTED_PLAYER_ACTION_BRING_PEOPLE_TO_WORSHIP = 13 , + DETECTED_PLAYER_ACTION_MAKE_ARTEFACT = 14 , + DETECTED_PLAYER_ACTION_DAMAGE_BY_THROWING = 15 , + DETECTED_PLAYER_ACTION_DAMAGE_BY_THROWING_AT = 16 , + DETECTED_PLAYER_ACTION_DAMAGE_WITH_FIRE = 17 , + DETECTED_PLAYER_ACTION_DAMAGE_WITH_MAGIC = 18 , + DETECTED_PLAYER_ACTION_IMPRESS_BY_THROWING = 19 , + DETECTED_PLAYER_ACTION_IMPRESS_WITH_MAGIC = 20 , + DETECTED_PLAYER_ACTION_THROW_IN_THE_SEA = 21 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_FARMER = 22 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_FORESTER = 23 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_FISHERMAN = 24 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_BUILDER = 25 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_BREEDER = 26 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_PROTECTION = 27 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_MISSIONARY = 28 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_CRAFTSMAN = 29 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_CHANGE_HOUSE + = 30 , + DETECTED_PLAYER_ACTION_MAKE_DISCIPLE_WORSHIP = 31 , + DETECTED_PLAYER_ACTION_TAKE_OBJECT_HOME = 32 , + DETECTED_PLAYER_ACTION_CAST_WATER_ON_CROPS = 33 , + DETECTED_PLAYER_ACTION_CAST_WATER_TO_PUT_OUT_FIRE + = 34 , + DETECTED_PLAYER_ACTION_STEAL_OBJECT_AND_PUT_IN_TOWN + = 35 , + DETECTED_PLAYER_ACTION_STEAL_OBJECT_AND_PUT_BY_CITADEL + = 36 , + DETECTED_PLAYER_ACTION_BREAK_ROCKS = 37 , + DETECTED_PLAYER_ACTION_THROW_FOOTBALL_IN_GOAL = 38 , + DETECTED_PLAYER_ACTION_CATCH_FOOTBALL = 39 , + DETECTED_PLAYER_ACTION_SACRIFICE = 40 , + DETECTED_PLAYER_ACTION_PLAY_WITH_TOY = 41 , + DETECTED_PLAYER_ACTION_HEAL = 42 , + DETECTED_PLAYER_ACTION_STEAL_FOOD_FROM_FARM = 43 , + DETECTED_PLAYER_ACTION_STEAL_FOOD_FROM_STORAGE_PIT + = 44 , + DETECTED_PLAYER_ACTION_STEAL_WOOD_FROM_STORAGE_PIT + = 45 , + DETECTED_PLAYER_ACTION_LAST = 46 , +}; + +#endif diff --git a/libs/chlasm/CreatureSpec.h b/libs/chlasm/CreatureSpec.h new file mode 100644 index 0000000..f2d9ed5 --- /dev/null +++ b/libs/chlasm/CreatureSpec.h @@ -0,0 +1,242 @@ +// Creature Animation Header + +#ifndef __CREATURE_SPEC_H__ +#define __CREATURE_SPEC_H__ + +enum CREATURE_ANIMATIONS +{ + C_MOVE_STAND, // 0 + C_MOVE_WALK, // 1 + C_MOVE_RUN, // 2 + C_MOVE_R_SPIN_0, // 3 + C_MOVE_R_SPIN_90, // 4 + C_MOVE_R_SPIN_180, // 5 + C_MOVE_L_SPIN_0, // 6 + C_MOVE_L_SPIN_90, // 7 + C_MOVE_L_SPIN_180, // 8 + C_MOVE_R_JUMP_L, // 9 + C_MOVE_R_STEP_0, // 10 + C_MOVE_R_STEP_90, // 11 + C_MOVE_R_STEP_180, // 12 + C_MOVE_L_STEP_0, // 13 + C_MOVE_L_STEP_90, // 14 + C_MOVE_L_STEP_180, // 15 + C_FACE_SMILE, // 16 + C_FACE_GRIMACE, // 17 + C_FACE_GROWL, // 18 + C_FACE_SCARED, // 19 + C_FACE_SAD, // 20 + C_FACE_AMAZED, // 21 + C_FACE_PUZZLED, // 22 + C_FACE_LAUGH, // 23 + C_FACE_OOH, // 24 + C_FACE_AAH, // 25 + C_FACE_SPARE1, // 26 + C_FACE_SPARE2, // 27 + C_STATIC_START_SLEEP, // 28 + C_STATIC_SLEEP, // 29 + C_STATIC_END_SLEEP, // 30 + C_STATIC_START_POO, // 31 + C_STATIC_POO, // 32 + C_STATIC_END_POO, // 33 + C_STATIC_START_PUKE, // 34 + C_STATIC_PUKE, // 35 + C_STATIC_END_PUKE, // 36 + C_STATIC_START_SIT, // 37 + C_STATIC_SIT, // 38 + C_STATIC_END_SIT, // 39 + C_STATIC_START_CAST, // 40 + C_STATIC_CAST, // 41 + C_STATIC_END_CAST, // 42 + C_STATIC_START_CAST_UP, // 43 + C_STATIC_CAST_UP, // 44 + C_STATIC_END_CAST_UP, // 45 + C_STATIC_START_SCATTER, // 46 + C_STATIC_SCATTER, // 47 + C_STATIC_END_SCATTER, // 48 + C_STATIC_START_SPARE, // 49 + C_STATIC_SPARE, // 50 + C_STATIC_END_SPARE, // 51 + C_INDIVIDUAL_SUMMON, // 52 + C_INDIVIDUAL_ANGRY, // 53 + C_INDIVIDUAL_HUNGRY, // 54 + C_INDIVIDUAL_HAPPY, // 55 + C_INDIVIDUAL_SAD, // 56 + C_INDIVIDUAL_TIRED, // 57 + C_INDIVIDUAL_HOT, // 58 + C_INDIVIDUAL_COLD, // 59 + C_INDIVIDUAL_SCRATCH, // 60 + C_INDIVIDUAL_FRIGHTENED, // 61 + C_INDIVIDUAL_SNEEZE, // 62 + C_INDIVIDUAL_CONFUSED, // 63 + C_INDIVIDUAL_FEELING_NICE, // 64 + C_INDIVIDUAL_IMPRESS, // 65 + C_INDIVIDUAL_NEED_A_POO, // 66 + C_INDIVIDUAL_FEEL_PLAYFUL, // 67 + C_INDIVIDUAL_PLAY_ACTION, // 68 + C_INDIVIDUAL_LOOK_AT_ME, // 69 + C_INDIVIDUAL_TAUNT, // 70 + C_INDIVIDUAL_DRINK, // 71 + C_INDIVIDUAL_FRIENDLY_WAVE, // 72 + C_INDIVIDUAL_EMBARRASSED, // 73 + C_INDIVIDUAL_PICK_ME, // 74 + C_LOOK_RIGHT_LEFT, // 75 + C_LOOK_DOWN_UP, // 76 + C_LOOK_SIT_R_L, // 77 + C_LOOK_SIT_D_U, // 78 + C_LOOK_HATE_LOVE, // 79 + C_LOOK_SEEK_ARM, // 80 + C_PICKUP_FRONT_RIGHT, // 81 + C_PICKUP_FRONT_LEFT, // 82 + C_PICKUP_BACK_RIGHT, // 83 + C_PICKUP_BACK_LEFT, // 84 + C_PICKUP_HOLD, // 85 + C_PICKUP_FROM_HAND, // 86 + C_PICKUP_SPARE0, // 87 + C_PICKUP_SPARE1, // 88 + C_PICKUP_SPARE2, // 89 + C_PICKUP_SPARE3, // 90 + C_THROW_HURL_FLAT, // 91 + C_THROW_HURL_HIGH, // 92 + C_THROW_BOWL, // 93 + C_THROW_SPARE2, // 94 + C_OBJECT_REMOVE_DISCARD, // 95 + C_OBJECT_REMOVE_EAT, // 96 + C_OBJECT_REMOVE_PUT_DOWN, // 97 + C_OBJECT_REMOVE_GENTLE_LOB, // 98 + C_OBJECT_REMOVE_SPARE, // 99 + C_OBJECT_KEEP_STROKE, // 100 + C_OBJECT_KEEP_SHAKE, // 101 + C_OBJECT_KEEP_SMELL, // 102 + C_OBJECT_KEEP_EXAMINE, // 103 + C_OBJECT_KEEP_SPARE1, // 104 + C_OBJECT_KEEP_SPARE2, // 105 + C_FIGHT_EXTRA_FAINT, // 106 + C_FIGHT_EXTRA_GET_UP, // 107 + C_FIGHT_EXTRA_SPARE0, // 108 + C_FIGHT_EXTRA_CREATION, // 109 + C_FIGHT_EXTRA_START_CAST, // 110 + C_FIGHT_EXTRA_CAST, // 111 + C_FIGHT_EXTRA_END_CAST, // 112 + C_DESTROY_FRONT_RIGHT, // 113 + C_DESTROY_FRONT_LEFT, // 114 + C_DESTROY_BACK_RIGHT, // 115 + C_DESTROY_BACK_LEFT, // 116 + C_DESTROY_KICK_LOW, // 117 + C_DESTROY_SPARE0, // 118 + C_EXTRA_STANDS_RELAXED, // 119 + C_EXTRA_STANDS_SPARE1, // 120 + C_EXTRA_STANDS_SPARE2, // 121 + C_FIGHT_START, // 122 + C_FIGHT_STANCE, // 123 + C_FIGHT_FINISH, // 124 + C_FIGHT_ATTACK_HIGH, // 125 + C_FIGHT_ATTACK_EYE, // 126 + C_FIGHT_ATTACK_BELLY, // 127 + C_FIGHT_ATTACK_PELVIS, // 128 + C_FIGHT_ATTACK_KNEE, // 129 + C_FIGHT_ATTACK_SPECIAL, // 130 + C_FIGHT_ATTACK_HIGH2, // 131 + C_FIGHT_ATTACK_EYE2, // 132 + C_FIGHT_ATTACK_BELLY2, // 133 + C_FIGHT_ATTACK_PELVIS2, // 134 + C_FIGHT_ATTACK_KNEE2, // 135 + C_FIGHT_ATTACK_SPECIAL2, // 136 + C_FIGHT_STEP_FORWARD, // 137 + C_FIGHT_STEP_BACK, // 138 + C_FIGHT_STEP_RIGHT, // 139 + C_FIGHT_STEP_LEFT, // 140 + C_FIGHT_SPARE3, // 141 + C_FIGHT_START_BLOCK, // 142 + C_FIGHT_BLOCK, // 143 + C_FIGHT_END_BLOCK, // 144 + C_DANCE_START, // 145 + C_DANCE_FINISH, // 146 + C_DANCE_A, // 147 + C_DANCE_B, // 148 + C_DANCE_C, // 149 + C_DANCE_D, // 150 + C_DANCE_E, // 151 + C_DANCE_SPARE1, // 152 + C_DANCE_SPARE2, // 153 + C_REWARD_HEAD, // 154 + C_REWARD_ARMPIT_R, // 155 + C_REWARD_NO_1, // 156 + C_REWARD_BELLY, // 157 + C_REWARD_GROIN, // 158 + C_REWARD_FOOT_R, // 159 + C_REWARD_NO_2, // 160 + C_REWARD_HAND_R, // 161 + C_REWARD_NO_3, // 162 + C_REWARD_SPARE1, // 163 + C_REWARD_SPARE2, // 164 + C_PUNISH_HEAD_SLAP_R, // 165 + C_PUNISH_NO_1, // 166 + C_PUNISH_WAIST_SLAP_R, // 167 + C_PUNISH_NO_2, // 168 + C_PUNISH_FEET_SLAP_R, // 169 + C_PUNISH_NO_3, // 170 + C_PUNISH_HEAD_GENTLE_R, // 171 + C_PUNISH_NO_4, // 172 + C_PUNISH_WAIST_GENTLE_R, // 173 + C_PUNISH_NO_5, // 174 + C_PUNISH_FEET_GENTLE_R, // 175 + C_PUNISH_NO_6, // 176 + C_PUNISH_SPARE1, // 177 + C_PUNISH_SPARE2, // 178 + C_RECOIL_HI, // 179 + C_RECOIL_HI_R, // 180 + C_RECOIL_HI_L, // 181 + C_RECOIL_HI_T, // 182 + C_RECOIL_HI_B, // 183 + C_RECOIL_MI, // 184 + C_RECOIL_MI_R, // 185 + C_RECOIL_MI_L, // 186 + C_RECOIL_MI_T, // 187 + C_RECOIL_MI_B, // 188 + C_RECOIL_LO, // 189 + C_RECOIL_LO_R, // 190 + C_RECOIL_LO_L, // 191 + C_RECOIL_LO_T, // 192 + C_RECOIL_LO_B, // 193 + C_RECOIL_HI_R_L, // 194 + C_RECOIL_HI_F_B, // 195 + C_RECOIL_LO_R_L, // 196 + C_RECOIL_LO_F_B, // 197 + C_RECOIL_BLOCK, // 198 + C_RECOIL_SPARE, // 199 + C_CONCURRENT_NOD, // 200 + C_CONCURRENT_SHAKE, // 201 + C_CONCURRENT_YAWN, // 202 + C_CONCURRENT_THIRSTY, // 203 + C_CONCURRENT_SQUIRT_WATER, // 204 + C_CONCURRENT_TALK, // 205 + C_CONCURRENT_SPARE1, // 206 + C_CONCURRENT_SPARE2, // 207 + C_POINT_LO_LEFT, // 208 + C_POINT_LO_RIGHT, // 209 + C_POINT_HI_LEFT, // 210 + C_POINT_HI_RIGHT, // 211 + C_MISC_KISS_HI, // 212 + C_MISC_KISS_LO, // 213 + C_MISC_SCRIPT1, // 214 + C_MISC_SCRIPT2, // 215 + C_MISC_SCRIPT3, // 216 + C_MISC_HOWL, // 217 + C_MISC_LAUGH, // 218 + C_MISC_CRY, // 219 + C_MISC_AHA, // 220 + C_MISC_PRAY, // 221 + C_MISC_FUCK_YOU, // 222 + C_MISC_SPARE1, // 223 + C_MISC_SPARE2, // 224 + C_CATCH_STEP_RIGHT, // 225 + C_CATCH_STEP_BACK, // 226 + C_CATCH_STEP_FRONT, // 227 + C_CATCH_HI_R, // 228 + C_CATCH_HI_L, // 229 + C_CATCH_LO_R, // 230 + C_CATCH_LO_L, // 231 +}; + +#endif diff --git a/libs/chlasm/Enum.h b/libs/chlasm/Enum.h new file mode 100644 index 0000000..afdc6a5 --- /dev/null +++ b/libs/chlasm/Enum.h @@ -0,0 +1,2939 @@ +#pragma once +#ifndef __ENUM_H__ +#define __ENUM_H__ +// From https://github.com/Daniels118/blackandwhite/tree/main/chlasm/headers +// Last Saved,#2001-11-15 15:39:30#,"Jonty Barnes" + +//***************************************************************************** +// ENUM Values: VARIABLES +//***************************************************************************** +enum VARIABLES +{ + NUMBER_OF_STORY_LANDS = 5 , +}; + +//***************************************************************************** +// ENUM Values: OBJECT_TYPE +//***************************************************************************** +enum OBJECT_TYPE +{ + OBJECT_TYPE_INVALID = -2 , + OBJECT_TYPE_ANY = -1 , + OBJECT_TYPE_ABODE = 0 , + OBJECT_TYPE_CREATURE = 1 , + OBJECT_TYPE_VILLAGER = 2 , + OBJECT_TYPE_MAGIC = 3 , + OBJECT_TYPE_ANIMAL = 4 , + OBJECT_TYPE_LIGHTNING = 5 , + OBJECT_TYPE_FOREST_TREE = 6 , + OBJECT_TYPE_FIREWALL_SECTION = 7 , + OBJECT_TYPE_CITADEL = 8 , + OBJECT_TYPE_TERRAIN = 9 , + OBJECT_TYPE_MAGIC_LIVING = 10 , + OBJECT_TYPE_WALL_SECTION = 11 , + OBJECT_TYPE_FAKE_WALL_SECTION = 12 , + OBJECT_TYPE_SPELL = 13 , + OBJECT_TYPE_BOUNDRY = 14 , + OBJECT_TYPE_BALL = 15 , + OBJECT_TYPE_SHOT = 16 , + OBJECT_TYPE_COMPUTER_PLAYER = 17 , + OBJECT_TYPE_FIELD = 18 , + OBJECT_TYPE_FEATURE = 19 , + OBJECT_TYPE_MOBILE_OBJECT = 20 , + OBJECT_TYPE_POT = 21 , + OBJECT_TYPE_FOOTBALL = 22 , + OBJECT_TYPE_GROUND = 23 , + OBJECT_TYPE_PRAYER = 24 , + OBJECT_TYPE_SHOW_NEED = 25 , + OBJECT_TYPE_PFOOTBALL = 26 , + OBJECT_TYPE_PBALL = 27 , + OBJECT_TYPE_MOBILE_STATIC = 28 , + OBJECT_TYPE_DUMMY = 29 , + OBJECT_TYPE_HELP_SPIRIT = 30 , + OBJECT_TYPE_TOTEM_STATUE = 31 , + OBJECT_TYPE_BIG_FOREST = 32 , + OBJECT_TYPE_FISH_FARM = 33 , + OBJECT_TYPE_REWARD = 34 , + OBJECT_TYPE_SCRIPT_HIGHLIGHT = 35 , + OBJECT_TYPE_WATERFALL = 36 , + OBJECT_TYPE_HELP_ORB = 37 , + OBJECT_TYPE_LEASH_SELECTOR = 38 , + OBJECT_TYPE_ONE_OFF_SPELL = 39 , + OBJECT_TYPE_FURNITURE = 40 , + OBJECT_TYPE_FLOWERS = 41 , + OBJECT_TYPE_FIREFLY = 42 , + OBJECT_TYPE_ARENA_SPELL_ICON = 43 , + OBJECT_TYPE_MAP_SHIELD = 44 , + OBJECT_TYPE_CREATURE_ISLES_BUILDING = 45 , + OBJECT_TYPE_LAST = 46 , +}; + +//***************************************************************************** +// ENUM Values: VILLAGER_JOB +//***************************************************************************** +enum VILLAGER_JOB +{ + VILLAGER_JOB_NONE = 0 , + VILLAGER_JOB_FISHERMAN = 1 , + VILLAGER_JOB_FIRST = 1 , + VILLAGER_JOB_FORESTER = 2 , + VILLAGER_JOB_FARMER = 3 , + VILLAGER_JOB_SHEPHERD = 4 , + VILLAGER_JOB_LEADER = 5 , + VILLAGER_JOB_HOUSEWIFE = 6 , + VILLAGER_JOB_TRADER = 7 , + VILLAGER_JOB_LAST = 8 , +}; + +//***************************************************************************** +// ENUM Values: ABODE_TYPE +//***************************************************************************** +enum ABODE_TYPE +{ + ABODE_TYPE_GENERAL = 1 , + ABODE_TYPE_LIVING_QUARTERS = 2 , + ABODE_TYPE_CIVIC = 4 , + ABODE_TYPE_WINDMILL = 10 , + ABODE_TYPE_TOTEM = 20 , + ABODE_TYPE_STORAGE_PIT = 36 , + ABODE_TYPE_CRECHE = 68 , + ABODE_TYPE_WORKSHOP = 132 , + ABODE_TYPE_WONDER = 256 , + ABODE_TYPE_GRAVEYARD = 516 , + ABODE_TYPE_TOWN_CENTRE = 1028 , + ABODE_TYPE_CITADEL = 2052 , + ABODE_TYPE_FOOTBALL_PITCH = 4100 , + ABODE_TYPE_SPELL_DISPENSER = 8196 , + ABODE_TYPE_FIELD = 16388 , + ABODE_TYPE_ANY = 32767 , + ABODE_TYPE_LAST = 32768 , +}; + +//***************************************************************************** +// ENUM Values: LIVING_TYPE +//***************************************************************************** +enum LIVING_TYPE +{ + LIVING_TYPE_ANY = -1 , + LIVING_TYPE_LION = 0 , + LIVING_TYPE_TIGER = 1 , + LIVING_TYPE_WOLF = 2 , + LIVING_TYPE_LEOPARD = 3 , + LIVING_TYPE_SHEEP = 4 , + LIVING_TYPE_GOAT = 5 , + LIVING_TYPE_TORTOISE = 6 , + LIVING_TYPE_ZEBRA = 7 , + LIVING_TYPE_COW = 8 , + LIVING_TYPE_HORSE = 9 , + LIVING_TYPE_PIG = 10 , + LIVING_TYPE_CROW = 11 , + LIVING_TYPE_DOVE = 12 , + LIVING_TYPE_SWALLOW = 13 , + LIVING_TYPE_PIGEON = 14 , + LIVING_TYPE_SEAGULL = 15 , + LIVING_TYPE_BAT = 16 , + LIVING_TYPE_VULTURE = 17 , + LIVING_TYPE_APES = 18 , + LIVING_TYPE_BEAR = 19 , + LIVING_TYPE_HELP_SPIRIT = 20 , + LIVING_TYPE_VILLAGER = 21 , + LIVING_TYPE_LAST = 22 , +}; + +//***************************************************************************** +// ENUM Values: ANIMAL_INFO +//***************************************************************************** +enum ANIMAL_INFO +{ + ANIMAL_INFO_NONE = -1 , + ANIMAL_INFO_LION = 0 , + ANIMAL_INFO_TIGER = 1 , + ANIMAL_INFO_WOLF = 2 , + ANIMAL_INFO_LEOPARD = 3 , + ANIMAL_INFO_SHEEP = 4 , + ANIMAL_INFO_GOAT = 5 , + ANIMAL_INFO_TORTOISE = 6 , + ANIMAL_INFO_ZEBRA = 7 , + ANIMAL_INFO_COW = 8 , + ANIMAL_INFO_HORSE = 9 , + ANIMAL_INFO_PIG = 10 , + ANIMAL_INFO_CROW = 11 , + ANIMAL_INFO_DOVE = 12 , + ANIMAL_INFO_SWALLOW = 13 , + ANIMAL_INFO_PIGEON = 14 , + ANIMAL_INFO_SEAGULL = 15 , + ANIMAL_INFO_BAT = 16 , + ANIMAL_INFO_VULTURE = 17 , + ANIMAL_INFO_CITADEL_DOVE = 18 , + ANIMAL_INFO_CITADEL_BAT = 19 , + ANIMAL_INFO_SPELL_DOVE = 20 , + ANIMAL_INFO_SPELL_BAT = 21 , + ANIMAL_INFO_SPELL_WOLF = 22 , + ANIMAL_INFO_PUZZLE_LION = 23 , + ANIMAL_INFO_PUZZLE_SHEEP = 24 , + ANIMAL_INFO_PUZZLE_WOLF = 25 , + ANIMAL_INFO_PUZZLE_VILLAGER = 26 , + ANIMAL_INFO_PUZZLE_HORSE = 27 , + ANIMAL_INFO_PUZZLE_COW = 28 , + ANIMAL_INFO_PUZZLE_TORTOISE = 29 , + ANIMAL_INFO_PUZZLE_PIG = 30 , + ANIMAL_INFO_LAST = 31 , +}; + +//***************************************************************************** +// ENUM Values: TRIBE_TYPE +//***************************************************************************** +enum TRIBE_TYPE +{ + TRIBE_TYPE_NONE = -1 , + TRIBE_TYPE_FIRST = 0 , + TRIBE_TYPE_CELTIC = 0 , + TRIBE_TYPE_AFRICAN = 1 , + TRIBE_TYPE_AZTEC = 2 , + TRIBE_TYPE_JAPANESE = 3 , + TRIBE_TYPE_INDIAN = 4 , + TRIBE_TYPE_EGYPTIAN = 5 , + TRIBE_TYPE_GREEK = 6 , + TRIBE_TYPE_NORSE = 7 , + TRIBE_TYPE_TIBETAN = 8 , + TRIBE_TYPE_LAST = 9 , +}; + +//***************************************************************************** +// ENUM Values: ABODE_NUMBER +//***************************************************************************** +enum ABODE_NUMBER +{ + ABODE_NUMBER_INVALID = -1 , + ABODE_NUMBER_A = 0 , + ABODE_NUMBER_B = 1 , + ABODE_NUMBER_C = 2 , + ABODE_NUMBER_D = 3 , + ABODE_NUMBER_E = 4 , + ABODE_NUMBER_F = 5 , + ABODE_NUMBER_TOTEM = 6 , + ABODE_NUMBER_STORAGE_PIT = 7 , + ABODE_NUMBER_CRECHE = 8 , + ABODE_NUMBER_WORKSHOP = 9 , + ABODE_NUMBER_WONDER = 10 , + ABODE_NUMBER_GRAVEYARD = 11 , + ABODE_NUMBER_TOWN_CENTRE = 12 , + ABODE_NUMBER_FOOTBALL_PITCH = 13 , + ABODE_NUMBER_SPELL_DISPENSER = 14 , + ABODE_NUMBER_FIELD = 15 , + ABODE_NUMBER_LAST = 16 , +}; + +//***************************************************************************** +// ENUM Values: SPELL_SYSTEM_INFO +//***************************************************************************** +enum SPELL_SYSTEM_INFO +{ + SPELL_SYSTEM_INFO_FIRST = 0 , + SPELL_SYSTEM_INFO_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: SPELL_SEED_TYPE +//***************************************************************************** +enum SPELL_SEED_TYPE +{ + SPELL_SEED_TYPE_NONE = -1 , + SPELL_SEED_TYPE_FIRST = 0 , + SPELL_SEED_TYPE_STORM = 0 , + SPELL_SEED_TYPE_NATURE = 1 , + SPELL_SEED_TYPE_FIRE = 2 , + SPELL_SEED_TYPE_FOOD = 3 , + SPELL_SEED_TYPE_SHIELD = 4 , + SPELL_SEED_TYPE_PHYSICAL_SHIELD = 5 , + SPELL_SEED_TYPE_LIGHTNING_BOLT = 6 , + SPELL_SEED_TYPE_HEAL = 7 , + SPELL_SEED_TYPE_WOOD = 8 , + SPELL_SEED_TYPE_WATER = 9 , + SPELL_SEED_TYPE_FLOCK_FLYING = 10 , + SPELL_SEED_TYPE_FLOCK_GROUND = 11 , + SPELL_SEED_TYPE_CREATURE_SPELL_FREEZE = 12 , + SPELL_SEED_TYPE_CREATURE_SPELL_SMALL = 13 , + SPELL_SEED_TYPE_CREATURE_SPELL_BIG = 14 , + SPELL_SEED_TYPE_CREATURE_SPELL_WEAK = 15 , + SPELL_SEED_TYPE_CREATURE_SPELL_STRONG = 16 , + SPELL_SEED_TYPE_CREATURE_SPELL_FAT = 17 , + SPELL_SEED_TYPE_CREATURE_SPELL_THIN = 18 , + SPELL_SEED_TYPE_CREATURE_SPELL_INVISIBLE = 19 , + SPELL_SEED_TYPE_CREATURE_SPELL_COMPASSION = 20 , + SPELL_SEED_TYPE_CREATURE_SPELL_ANGRY = 21 , + SPELL_SEED_TYPE_CREATURE_SPELL_HUNGRY = 22 , + SPELL_SEED_TYPE_CREATURE_SPELL_FRIGHTENE = 23 , + SPELL_SEED_TYPE_CREATURE_SPELL_TIRED = 24 , + SPELL_SEED_TYPE_CREATURE_SPELL_ILL = 25 , + SPELL_SEED_TYPE_CREATURE_SPELL_THIRSTY = 26 , + SPELL_SEED_TYPE_CREATURE_SPELL_ITCHY = 27 , + SPELL_SEED_TYPE_TELEPORT = 28 , + SPELL_SEED_TYPE_BEAM_EXPLOSION = 29 , + SPELL_SEED_TYPE_LAST_141 = 30 , + SPELL_SEED_TYPE_CREATURE_SPELL_ANTI_SPELL = 30 , + SPELL_SEED_TYPE_CREATURE_SPELL_FAST = 31 , + SPELL_SEED_TYPE_LAST_CI = 32 , +}; + +//***************************************************************************** +// ENUM Values: GESTURE_TYPE +//***************************************************************************** +enum GESTURE_TYPE +{ + GESTURE_TYPE_NONE = 0 , + GESTURE_TYPE_SPIRAL = 1 , + GESTURE_TYPE_INVERSE_SPIRAL = 2 , + GESTURE_TYPE_S_SHAPE = 3 , + GESTURE_TYPE_CIRCLE = 4 , + GESTURE_TYPE_SCRIBBLE = 5 , + GESTURE_TYPE_THREE = 6 , + GESTURE_TYPE_VERTICAL_SCRIBBLE = 7 , + GESTURE_TYPE_STAR = 8 , + GESTURE_TYPE_FORK_RIGHT = 9 , + GESTURE_TYPE_FORK_UP = 10 , + GESTURE_TYPE_FORK_LEFT = 11 , + GESTURE_TYPE_FORK_DOWN = 12 , + GESTURE_TYPE_HEART = 13 , + GESTURE_TYPE_R_SHAPE = 14 , + GESTURE_TYPE_SQUARE_SPIRIAL = 15 , + GESTURE_TYPE_CYRILLIC_L = 16 , + GESTURE_TYPE_E_SHAPE = 17 , + GESTURE_TYPE_REVERSE_S = 18 , + GESTURE_TYPE_INFINITY = 19 , + GESTURE_TYPE_W_SHAPE = 20 , + GESTURE_TYPE_HOUSE = 21 , + GESTURE_TYPE_INVERSE_SQUARE_SPIRAL = 22 , + GESTURE_TYPE_SQUARE_WAVE = 23 , + GESTURE_TYPE_LAST = 24 , +}; + +//***************************************************************************** +// ENUM Values: FIELD_TYPE_INFO +//***************************************************************************** +enum FIELD_TYPE_INFO +{ + FIELD_INFO_TYPE_WHEAT = 0 , + FIELD_INFO_TYPE_WHEAT_WITH_FENCE = 1 , + FIELD_INFO_TYPE_CORN = 2 , + FIELD_INFO_TYPE_CORN_WITH_FENCE = 3 , + FIELD_INFO_TYPE_CEREAL = 4 , + FIELD_INFO_TYPE_CEREAL_WITH_FENCE = 5 , + FIELD_INFO_TYPE_SPECIAL_CROP = 6 , + FIELD_INFO_TYPE_LAST = 7 , +}; + +//***************************************************************************** +// ENUM Values: MAGIC_FIREBALL_TYPE +//***************************************************************************** +enum MAGIC_FIREBALL_TYPE +{ + MAGIC_FIREBALL_TYPE_FIRST = 0 , + MAGIC_FIREBALL_TYPE_NORMAL = 0 , + MAGIC_FIREBALL_TYPE_PU1 = 1 , + MAGIC_FIREBALL_TYPE_PU2 = 2 , + MAGIC_FIREBALL_TYPE_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: VORTEX_STAT_TYPE +//***************************************************************************** +enum VORTEX_STAT_TYPE +{ + VORTEX_STAT_TYPE_TOTAL_OBJECTS = 0 , + VORTEX_STAT_TYPE_RESOURCE_FOOD = 1 , + VORTEX_STAT_TYPE_RESOURCE_WOOD = 2 , + VORTEX_STAT_TYPE_VILLAGER = 3 , + VORTEX_STAT_TYPE_ONESHOT = 4 , + VORTEX_STAT_TYPE_LAST = 5 , +}; + +//***************************************************************************** +// ENUM Values: VORTEX_STATE_TYPE +//***************************************************************************** +enum VORTEX_STATE_TYPE +{ + VORTEX_STATE_INACTIVE = 0 , + VORTEX_STATE_ACTIVE = 1 , + VORTEX_STATE_FADE_IN = 2 , + VORTEX_STATE_FADE_OUT = 3 , +}; + +//***************************************************************************** +// ENUM Values: VORTEX_TYPE +//***************************************************************************** +enum VORTEX_TYPE +{ + VORTEX_TYPE_IN = 0 , + VORTEX_TYPE_OUT = 1 , + VORTEX_TYPE_VOLCANO = 2 , + VORTEX_TYPE_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: PARTICLE_TYPE +//***************************************************************************** +enum PARTICLE_TYPE +{ + PARTICLE_TYPE_NONE = 0 , + PARTICLE_TYPE_TORNADO = 1 , + PARTICLE_TYPE_FIREWORK = 2 , + PARTICLE_TYPE_FIREWORK_SINGLE = 3 , + PARTICLE_TYPE_LEAVES = 4 , + PARTICLE_TYPE_MAGICBALL = 5 , + PARTICLE_TYPE_LIGHTNING = 6 , + PARTICLE_TYPE_LIGHTNING_BOLT = 7 , + PARTICLE_TYPE_EXPLOSION_1 = 8 , + PARTICLE_TYPE_FOOD = 9 , + PARTICLE_TYPE_FOOD_POISONED = 10 , + PARTICLE_TYPE_EXPLOSION_ONE = 11 , + PARTICLE_TYPE_EXPLOSION_ONE_PU_ONE = 12 , + PARTICLE_TYPE_EXPLOSION_ONE_PU_TWO = 13 , + PARTICLE_TYPE_EXPLOSION_CITADEL = 14 , + PARTICLE_TYPE_WOOD = 15 , + PARTICLE_TYPE_WATER = 16 , + PARTICLE_TYPE_WATER_PU_ONE = 17 , + PARTICLE_TYPE_WATER_ON_HOLDER = 18 , + PARTICLE_TYPE_WATER_IN_HAND = 19 , + PARTICLE_TYPE_WATER_IN_HAND_PU_ONE = 20 , + PARTICLE_TYPE_HEAL = 21 , + PARTICLE_TYPE_MANA_PATH = 22 , + PARTICLE_TYPE_EXPLODE_OBJECT = 23 , + PARTICLE_TYPE_BELIEF_SPRITE = 24 , + PARTICLE_TYPE_TOWN_BELIEF = 25 , + PARTICLE_TYPE_SPELL_FAIL = 26 , + PARTICLE_TYPE_SPELL_SUCCEED = 27 , + PARTICLE_TYPE_SPELL_SELECTION = 28 , + PARTICLE_TYPE_GRIP_LANDSCAPE = 29 , + PARTICLE_TYPE_MAGIC_OBJECT_CREATED = 30 , + PARTICLE_TYPE_CREATURE_GESTURE = 31 , + PARTICLE_TYPE_VILLAGER_TELEPORT = 32 , + PARTICLE_TYPE_CREATURE_TARGET = 33 , + PARTICLE_TYPE_CREATURE_CAST_VISUAL = 34 , + PARTICLE_TYPE_GESTURE = 35 , + PARTICLE_TYPE_KB_TEST = 36 , + PARTICLE_TYPE_ON_FIRE = 37 , + PARTICLE_TYPE_MAGIC_FX = 38 , + PARTICLE_TYPE_MAGIC_FX_ON_OBJECT = 39 , + PARTICLE_TYPE_MAGIC_FX_ON_CITADEL = 40 , + PARTICLE_TYPE_FIRE_FX = 41 , + PARTICLE_TYPE_FIRE_FX_ON_OBJECT = 42 , + PARTICLE_TYPE_FIREBALL = 43 , + PARTICLE_TYPE_FIREBALL_IN_HAND = 44 , + PARTICLE_TYPE_FIREBALL_IN_HAND_PU_ONE = 45 , + PARTICLE_TYPE_FIREBALL_IN_HAND_PU_TWO = 46 , + PARTICLE_TYPE_FIREBALL_ON_HOLDER = 47 , + PARTICLE_TYPE_GESTURE_LOCAL = 48 , + PARTICLE_TYPE_MAGIC_SYSTEM = 49 , + PARTICLE_TYPE_HEAL_IN_HAND = 50 , + PARTICLE_TYPE_HEAL_ON_HOLDER = 51 , + PARTICLE_TYPE_FIREBALL_PU_ONE = 52 , + PARTICLE_TYPE_FIREBALL_PU_TWO = 53 , + PARTICLE_TYPE_HEAL_PU_ONE = 54 , + PARTICLE_TYPE_LIGHTNING_STORM_IN_HAND = 55 , + PARTICLE_TYPE_LIGHTNING_STORM_IN_HAND_PU_ONE = 56 , + PARTICLE_TYPE_LIGHTNING_STORM_IN_HAND_PU_TWO = 57 , + PARTICLE_TYPE_LIGHTNING_STORM_ON_HOLDER = 58 , + PARTICLE_TYPE_LIGHTNING_BOLT_IN_HAND = 59 , + PARTICLE_TYPE_LIGHTNING_BOLT_ON_HOLDER = 60 , + PARTICLE_TYPE_LIGHTNING_STRIKE = 61 , + PARTICLE_TYPE_LIGHTNING_SINGLE_STRIKE = 62 , + PARTICLE_TYPE_FOOD_IN_HAND = 63 , + PARTICLE_TYPE_SHIELD = 64 , + PARTICLE_TYPE_SHIELD_IN_HAND = 65 , + PARTICLE_TYPE_SHIELD_ON_HOLDER = 66 , + PARTICLE_TYPE_PHYSICAL_SHIELD_FX = 67 , + PARTICLE_TYPE_LIGHTNING_BOLT_PU_ONE = 68 , + PARTICLE_TYPE_LIGHTNING_BOLT_PU_TWO = 69 , + PARTICLE_TYPE_LIGHTNING_BOLT_IN_HAND_PU_ONE = 70 , + PARTICLE_TYPE_LIGHTNING_BOLT_IN_HAND_PU_TWO = 71 , + PARTICLE_TYPE_TELEPORT = 72 , + PARTICLE_TYPE_TELEPORT_VORTEX = 73 , + PARTICLE_TYPE_TELEPORT_ON_HOLDER = 74 , + PARTICLE_TYPE_TELEPORT_IN_HAND = 75 , + PARTICLE_TYPE_LANDSCAPE_VORTEX_OBJECT_MOVER = 76 , + PARTICLE_TYPE_LANDSCAPE_VORTEX_LIGHTMAP = 77 , + PARTICLE_TYPE_LANDSCAPE_VORTEX_IN_BEFORE = 78 , + PARTICLE_TYPE_LANDSCAPE_VORTEX_IN_AFTER = 79 , + PARTICLE_TYPE_LANDSCAPE_VORTEX_OUT_BEFORE = 80 , + PARTICLE_TYPE_LANDSCAPE_VORTEX_OUT_AFTER = 81 , + PARTICLE_TYPE_VOLCANO_VORTEX_BEFORE = 82 , + PARTICLE_TYPE_VOLCANO_VORTEX_AFTER = 83 , + PARTICLE_TYPE_VOLCANO_VORTEX_LIGHTMAP = 84 , + PARTICLE_TYPE_CREATURE_SPELL_PHYSICAL = 85 , + PARTICLE_TYPE_CREATURE_SPELL_MENTAL = 86 , + PARTICLE_TYPE_CREATURE_SPELL_ITCHY = 87 , + PARTICLE_TYPE_CREATURE_SPELL_ITCHY_IN_HAND = 88 , + PARTICLE_TYPE_CREATURE_SPELL_ITCHY_ON_HOLDER = 89 , + PARTICLE_TYPE_CREATURE_SPELL_FREEZE = 90 , + PARTICLE_TYPE_CREATURE_SPELL_FREEZE_IN_HAND = 91 , + PARTICLE_TYPE_CREATURE_SPELL_FREEZE_ON_HOLDER = 92 , + PARTICLE_TYPE_CREATURE_SPELL_COMPASSION = 93 , + PARTICLE_TYPE_CREATURE_SPELL_COMPASSION_IN_HAND = 94 , + PARTICLE_TYPE_CREATURE_SPELL_COMPASSION_ON_HOLDER + = 95 , + PARTICLE_TYPE_CREATURE_SPELL_WEAK = 96 , + PARTICLE_TYPE_CREATURE_SPELL_WEAK_IN_HAND = 97 , + PARTICLE_TYPE_CREATURE_SPELL_WEAK_ON_HOLDER = 98 , + PARTICLE_TYPE_SCRIPT_HIGHLIGHT_GOLD_GLINTS = 99 , + PARTICLE_TYPE_SCRIPT_HIGHLIGHT_SILVER_GLINTS = 100 , + PARTICLE_TYPE_SCRIPT_HIGHLIGHT_BRONZE_GLINTS = 101 , + PARTICLE_TYPE_SCRIPT_HIGHLIGHT_GOLD_ACTIVE = 102 , + PARTICLE_TYPE_SCRIPT_HIGHLIGHT_SILVER_ACTIVE = 103 , + PARTICLE_TYPE_FLOCK_FLYING = 104 , + PARTICLE_TYPE_FLOCK_GROUND = 105 , + PARTICLE_TYPE_STORM_CAST = 106 , + PARTICLE_TYPE_FOOD_PICKUP = 107 , + PARTICLE_TYPE_FOOD_PICKUP_POISONED = 108 , + PARTICLE_TYPE_FOOD_PICKUP_FISH = 109 , + PARTICLE_TYPE_WOOD_PICKUP = 110 , + PARTICLE_TYPE_FOOD_PUTDOWN_POISONED = 111 , + PARTICLE_TYPE_WOOD_PUTDOWN = 112 , + PARTICLE_TYPE_FOOD_PUTDOWN = 113 , + PARTICLE_TYPE_STEAM = 114 , + PARTICLE_TYPE_SMOKE = 115 , + PARTICLE_TYPE_BONFIRE = 116 , + PARTICLE_TYPE_EVIL_SMOKE = 117 , + PARTICLE_TYPE_DUST = 118 , + PARTICLE_TYPE_MAGIC_BEAM = 119 , + PARTICLE_TYPE_MAGIC_BEAM_ON_CITADEL = 120 , + PARTICLE_TYPE_MAGIC_BEAM_CREATURE_SWAP = 121 , + PARTICLE_TYPE_FLOCK_FLYING_CAST_GOOD = 122 , + PARTICLE_TYPE_FLOCK_FLYING_CAST_EVIL = 123 , + PARTICLE_TYPE_FLOCK_FLYING_RAIN_GOOD = 124 , + PARTICLE_TYPE_FLOCK_FLYING_RAIN_EVIL = 125 , + PARTICLE_TYPE_FLOCK_GROUND_DUST = 126 , + PARTICLE_TYPE_BUTTERFLIES = 127 , + PARTICLE_TYPE_BUTTERFLIES_ON_OBJECT = 128 , + PARTICLE_TYPE_FLIES = 129 , + PARTICLE_TYPE_FLIES_ON_OBJECT = 130 , + PARTICLE_TYPE_OBJECT_APPEAR = 131 , + PARTICLE_TYPE_OBJECT_DISAPPEAR = 132 , + PARTICLE_TYPE_SING_STONES_GLOW = 133 , + PARTICLE_TYPE_PLAYER_ICON_FOUNTAIN = 134 , + PARTICLE_TYPE_BANG = 135 , + PARTICLE_TYPE_HEAL_FX = 136 , + PARTICLE_TYPE_HIGHLIGHT_ON_OBJECT = 137 , + PARTICLE_TYPE_BEAM_EXPLOSION_FX = 138 , + PARTICLE_TYPE_FLASH = 139 , + PARTICLE_TYPE_TICKER_TAPE = 140 , + PARTICLE_TYPE_FOREST_CREATED = 141 , + PARTICLE_TYPE_SINGING_STONES_HEAL = 142 , + PARTICLE_TYPE_PILEFOOD_SPEEDUP = 143 , + PARTICLE_TYPE_SPELLDISPENSER_VORTEX = 144 , + PARTICLE_TYPE_SEE_THIS_BEAM = 145 , + PARTICLE_TYPE_SEE_THIS_BEAM2 = 146 , + PARTICLE_TYPE_TEST = 147 , + PARTICLE_TYPE_TEST2 = 148 , + PARTICLE_TYPE_TEST3 = 149 , + PARTICLE_TYPE_LAST = 150 , +}; + +//***************************************************************************** +// ENUM Values: LEASH_SELECTOR_TYPE +//***************************************************************************** +enum LEASH_SELECTOR_TYPE +{ + LEASH_INFO_SELECTOR = 0 , + LEASH_INFO_SELECTOR_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_ISLES_BUILDINGS_INFO +//***************************************************************************** +enum CREATURE_ISLES_BUILDINGS_INFO +{ + CREATURE_ISLES_BUILDINGS_INFO_DOJO = 0 , + CREATURE_ISLES_BUILDINGS_INFO_STADIUM = 1 , + CREATURE_ISLES_BUILDINGS_INFO_LAST = 2 , +}; + +//***************************************************************************** +// ENUM Values: LEASH_TYPE +//***************************************************************************** +enum LEASH_TYPE +{ + LEASH_TYPE_NONE = -1 , + LEASH_TYPE_FIRST = 0 , + LEASH_TYPE_EVIL = 1 , + LEASH_TYPE_ROPE = 2 , + LEASH_TYPE_GOOD = 3 , + // LEASH_TYPE_LAST = 4 , + LEASH_TYPE_LAST = 3 , // Seems like every named type is offset by 1 +}; + +//***************************************************************************** +// ENUM Values: FEATURE_INFO +//***************************************************************************** +enum FEATURE_INFO +{ + FEATURE_INFO_NONE = -1 , + FEATURE_INFO_AZTC_OLMECHEAD = 0 , + FEATURE_INFO_AZTC_STATUE = 1 , + FEATURE_INFO_AZTC_SUNTEMPLE = 2 , + FEATURE_INFO_AZTC_TEMPLE = 3 , + FEATURE_INFO_EGPT_NEEDLE = 4 , + FEATURE_INFO_EGPT_PYRAMID = 5 , + FEATURE_INFO_EGPT_WELL = 6 , + FEATURE_INFO_GREK_ACROPOLIS = 7 , + FEATURE_INFO_TIBT_LARGE_PILLER = 8 , + FEATURE_INFO_TIBT_TEMPLE = 9 , + FEATURE_INFO_MINE_ENTRANCE = 10 , + FEATURE_INFO_PRISON_PILLAR_1 = 11 , + FEATURE_INFO_PRISON_PILLAR_2 = 12 , + FEATURE_INFO_PRISON_PILLAR_3 = 13 , + FEATURE_INFO_OLD_4 = 14 , + FEATURE_INFO_OLD_5 = 15 , + FEATURE_INFO_OLD_6 = 16 , + FEATURE_INFO_OLD_7 = 17 , + FEATURE_INFO_OLD_8 = 18 , + FEATURE_INFO_OLD_9 = 19 , + FEATURE_INFO_OLD_10 = 20 , + FEATURE_INFO_OLD_11 = 21 , + FEATURE_INFO_OLD_12 = 22 , + FEATURE_INFO_FAT_PILAR_CHALK = 23 , + FEATURE_INFO_FAT_PILAR_LIME = 24 , + FEATURE_INFO_FAT_PILAR_SAND = 25 , + FEATURE_INFO_FAT_PILAR_VOLCANIC = 26 , + FEATURE_INFO_F_PIPER_CAVE = 27 , + FEATURE_INFO_F_PIPER_CAVE_ROCK = 28 , + FEATURE_INFO_PILAR2_CHALK = 29 , + FEATURE_INFO_PILAR2_LIME = 30 , + FEATURE_INFO_PILAR2_SAND = 31 , + FEATURE_INFO_PILAR2_VOLCANIC = 32 , + FEATURE_INFO_PILAR3_CHALK = 33 , + FEATURE_INFO_PILAR3_LIME = 34 , + FEATURE_INFO_PILAR3_SAND = 35 , + FEATURE_INFO_PILAR3_VOLCANIC = 36 , + FEATURE_INFO_PILAR_CHALK = 37 , + FEATURE_INFO_PILAR_LIME = 38 , + FEATURE_INFO_PILAR_SAND = 39 , + FEATURE_INFO_PILAR_VOLCANIC = 40 , + FEATURE_INFO_SPIKEY_PILAR_CHALK = 41 , + FEATURE_INFO_SPIKEY_PILAR_LIME = 42 , + FEATURE_INFO_SPIKEY_PILAR_SAND = 43 , + FEATURE_INFO_SPIKEY_PILAR_VOLCANIC = 44 , + FEATURE_INFO_CHAMPI = 45 , + FEATURE_INFO_OLD_13 = 46 , + FEATURE_INFO_OLD_14 = 47 , + FEATURE_INFO_OLD_15 = 48 , + FEATURE_INFO_OLD_16 = 49 , + FEATURE_INFO_OLD_17 = 50 , + FEATURE_INFO_OLD_18 = 51 , + FEATURE_INFO_OLD_19 = 52 , + FEATURE_INFO_OLD_20 = 53 , + FEATURE_INFO_MAGIC_MUSHROOM = 54 , + FEATURE_INFO_OLD_21 = 55 , + FEATURE_INFO_OLD_22 = 56 , + FEATURE_INFO_OLD_23 = 57 , + FEATURE_INFO_OLD_24 = 58 , + FEATURE_INFO_OLD_25 = 59 , + FEATURE_INFO_OLD_26 = 60 , + FEATURE_INFO_OLD_27 = 61 , + FEATURE_INFO_OLD_28 = 62 , + FEATURE_INFO_OLD_29 = 63 , + FEATURE_INFO_OLD_30 = 64 , + FEATURE_INFO_OLD_31 = 65 , + FEATURE_INFO_OLD_32 = 66 , + FEATURE_INFO_TOADSTOOL = 67 , + FEATURE_INFO_ARK = 68 , + FEATURE_INFO_ARK_DRY_DOCK = 69 , + FEATURE_INFO_ARK_WRECK = 70 , + FEATURE_INFO_WHALE = 71 , + FEATURE_INFO_PHONE_BOX = 72 , + FEATURE_INFO_PIER = 73 , + FEATURE_INFO_CRATER = 74 , + FEATURE_INFO_TOMBSTONE = 75 , + FEATURE_INFO_STONE_ICON_APE = 76 , + FEATURE_INFO_STONE_ICON_BEAR = 77 , + FEATURE_INFO_STONE_ICON_COW = 78 , + FEATURE_INFO_STONE_ICON_HORSE = 79 , + FEATURE_INFO_STONE_ICON_LEOPARD = 80 , + FEATURE_INFO_STONE_ICON_LION = 81 , + FEATURE_INFO_STONE_ICON_POLARBEAR = 82 , + FEATURE_INFO_STONE_ICON_SHEEP = 83 , + FEATURE_INFO_STONE_ICON_TIGER = 84 , + FEATURE_INFO_STONE_ICON_TORTOISE = 85 , + FEATURE_INFO_STONE_ICON_WOLF = 86 , + FEATURE_INFO_STONE_ICON_ZEBRA = 87 , + FEATURE_INFO_MARBLE_BASE_DO_NOT_USE = 88 , + FEATURE_INFO_EGG_TREE = 89 , + FEATURE_INFO_CREATURE_RACE_PILLAR = 90 , + FEATURE_INFO_EGG_TREE_2 = 91 , + FEATURE_INFO_EGG_TREE_3 = 92 , + FEATURE_INFO_EGG_TREE_4 = 93 , + FEATURE_INFO_POINTER_HAND = 94 , + FEATURE_INFO_BOWLING_END = 95 , + FEATURE_INFO_LAST = 96 , +}; + +//***************************************************************************** +// ENUM Values: FLOWERS_INFO +//***************************************************************************** +enum FLOWERS_INFO +{ + FLOWERS_INFO_WHITE_ONE = 0 , + FLOWERS_INFO_PINK = 1 , + FLOWERS_INFO_SUN = 2 , + FLOWERS_INFO_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: ANIMATED_STATIC_INFO +//***************************************************************************** +enum ANIMATED_STATIC_INFO +{ + ANIMATED_STATIC_INFO_NONE = -1 , + ANIMATED_STATIC_INFO_NORS_GATE = 0 , + ANIMATED_STATIC_INFO_GATE_STONE_PLINTH = 1 , + ANIMATED_STATIC_INFO_PIPER_CAVE_ENTRANCE = 2 , + ANIMATED_STATIC_INFO_CHESS_PION_TEAMA = 3 , + ANIMATED_STATIC_INFO_CHESS_PION_TEAMB = 4 , + ANIMATED_STATIC_INFO_CHESS_TOWER_TEAMA = 5 , + ANIMATED_STATIC_INFO_CHESS_TOWER_TEAMB = 6 , + ANIMATED_STATIC_INFO_CHESS_KNIGHT_TEAMA = 7 , + ANIMATED_STATIC_INFO_CHESS_KNIGHT_TEAMB = 8 , + ANIMATED_STATIC_INFO_CHESS_MAD_TEAMA = 9 , + ANIMATED_STATIC_INFO_CHESS_MAD_TEAMB = 10 , + ANIMATED_STATIC_INFO_CHESS_QUEEN_TEAMA = 11 , + ANIMATED_STATIC_INFO_CHESS_QUEEN_TEAMB = 12 , + ANIMATED_STATIC_INFO_CHESS_KING_TEAMA = 13 , + ANIMATED_STATIC_INFO_CHESS_KING_TEAMB = 14 , + ANIMATED_STATIC_INFO_PHONE_BOX = 15 , + ANIMATED_STATIC_INFO_BALISTA = 16 , + ANIMATED_STATIC_INFO_LAST = 17 , +}; + +//***************************************************************************** +// ENUM Values: MAGIC_TYPE +//***************************************************************************** +enum MAGIC_TYPE +{ + MAGIC_TYPE_NONE = 0 , + MAGIC_TYPE_FIREBALL = 1 , + MAGIC_TYPE_FIREBALL_PU_ONE = 2 , + MAGIC_TYPE_FIREBALL_PU_TWO = 3 , + MAGIC_TYPE_LIGHTNING_BOLT = 4 , + MAGIC_TYPE_LIGHTNING_BOLT_PU_ONE = 5 , + MAGIC_TYPE_LIGHTNING_BOLT_PU_TWO = 6 , + MAGIC_TYPE_EXPLOSION_ONE = 7 , + MAGIC_TYPE_EXPLOSION_ONE_PU_ONE = 8 , + MAGIC_TYPE_EXPLOSION_ONE_PU_TWO = 9 , + MAGIC_TYPE_HEAL = 10 , + MAGIC_TYPE_HEAL_PU_ONE = 11 , + MAGIC_TYPE_TELEPORT = 12 , + MAGIC_TYPE_FOREST = 13 , + MAGIC_TYPE_FOOD = 14 , + MAGIC_TYPE_FOOD_PU_ONE = 15 , + MAGIC_TYPE_STORM_WIND_RAIN = 16 , + MAGIC_TYPE_STORM_WIND_RAIN_LIGHTNING = 17 , + MAGIC_TYPE_TORNADO = 18 , + MAGIC_TYPE_SHIELD = 19 , + MAGIC_TYPE_PHYSICAL_SHIELD = 20 , + MAGIC_TYPE_WOOD = 21 , + MAGIC_TYPE_WATER = 22 , + MAGIC_TYPE_WATER_PU_ONE = 23 , + MAGIC_TYPE_FLOCK_FLYING = 24 , + MAGIC_TYPE_FLOCK_GROUND = 25 , + MAGIC_TYPE_CREATURE_SPELL_FREEZE = 26 , + MAGIC_TYPE_CREATURE_SPELL_SMALL = 27 , + MAGIC_TYPE_CREATURE_SPELL_BIG = 28 , + MAGIC_TYPE_CREATURE_SPELL_WEAK = 29 , + MAGIC_TYPE_CREATURE_SPELL_STRONG = 30 , + MAGIC_TYPE_CREATURE_SPELL_FAT = 31 , + MAGIC_TYPE_CREATURE_SPELL_THIN = 32 , + MAGIC_TYPE_CREATURE_SPELL_INVISIBLE = 33 , + MAGIC_TYPE_CREATURE_SPELL_COMPASSION = 34 , + MAGIC_TYPE_CREATURE_SPELL_ANGRY = 35 , + MAGIC_TYPE_CREATURE_SPELL_HUNGRY = 36 , + MAGIC_TYPE_CREATURE_SPELL_FRIGHTENE = 37 , + MAGIC_TYPE_CREATURE_SPELL_TIRED = 38 , + MAGIC_TYPE_CREATURE_SPELL_ILL = 39 , + MAGIC_TYPE_CREATURE_SPELL_THIRSTY = 40 , + MAGIC_TYPE_CREATURE_SPELL_ITCHY = 41 , + MAGIC_TYPE_LAST_142 = 42 , + MAGIC_TYPE_CREATURE_SPELL_ANTI_SPELL = 42 , + MAGIC_TYPE_CREATURE_SPELL_FAST = 43 , + MAGIC_TYPE_LAST_CI = 44 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_RECEIVE_SPELL_TYPE +//***************************************************************************** +enum CREATURE_RECEIVE_SPELL_TYPE +{ + CREATURE_RECEIVE_SPELL_FREEZE = 0 , + CREATURE_RECEIVE_SPELL_SMALL = 1 , + CREATURE_RECEIVE_SPELL_BIG = 2 , + CREATURE_RECEIVE_SPELL_WEAK = 3 , + CREATURE_RECEIVE_SPELL_STRONG = 4 , + CREATURE_RECEIVE_SPELL_FAT = 5 , + CREATURE_RECEIVE_SPELL_THIN = 6 , + CREATURE_RECEIVE_SPELL_INVISIBLE = 7 , + CREATURE_RECEIVE_SPELL_COMPASSIONATE = 8 , + CREATURE_RECEIVE_SPELL_ANGRY = 9 , + CREATURE_RECEIVE_SPELL_HUNGRY = 10 , + CREATURE_RECEIVE_SPELL_FRIGHTENED = 11 , + CREATURE_RECEIVE_SPELL_TIRED = 12 , + CREATURE_RECEIVE_SPELL_ILL = 13 , + CREATURE_RECEIVE_SPELL_THIRSTY = 14 , + CREATURE_RECEIVE_SPELL_ITCHY = 15 , + CREATURE_RECEIVE_SPELL_ANTI_SPELL = 16 , + CREATURE_RECEIVE_SPELL_FAST = 17 , + CREATURE_RECEIVE_SPELL_LAST = 18 , +}; + +//***************************************************************************** +// ENUM Values: TERRAIN_MATERIAL_TYPE +//***************************************************************************** +enum TERRAIN_MATERIAL_TYPE +{ + TERRAIN_MATERIAL_TYPE_NONE = 0 , + TERRAIN_MATERIAL_TYPE_DEEP_WATER = 1 , + TERRAIN_MATERIAL_TYPE_SHALLOW_WATER = 2 , + TERRAIN_MATERIAL_TYPE_RIVER_MUD = 3 , + TERRAIN_MATERIAL_TYPE_WET_EARTH = 4 , + TERRAIN_MATERIAL_TYPE_EARTH = 5 , + TERRAIN_MATERIAL_TYPE_HARD_EARTH = 6 , + TERRAIN_MATERIAL_TYPE_SAND = 7 , + TERRAIN_MATERIAL_TYPE_WET_SAND = 8 , + TERRAIN_MATERIAL_TYPE_GRAVEL = 9 , + TERRAIN_MATERIAL_TYPE_WET_GRAVEL = 10 , + TERRAIN_MATERIAL_TYPE_SMALL_ROCKS = 11 , + TERRAIN_MATERIAL_TYPE_SMALL_ROCKS_IN_SHALLOW_WATER + = 12 , + TERRAIN_MATERIAL_TYPE_SMALL_LOOSE_ROCKS_ON_SOLID_ROCK + = 13 , + TERRAIN_MATERIAL_TYPE_LARGE_ROCKS = 14 , + TERRAIN_MATERIAL_TYPE_SOLID_ROCK = 15 , + TERRAIN_MATERIAL_TYPE_WET_SOLID_ROCK = 16 , + TERRAIN_MATERIAL_TYPE_UNSTABLE_SOLID_ROCK = 17 , + TERRAIN_MATERIAL_TYPE_GRASS = 18 , + TERRAIN_MATERIAL_TYPE_WET_GRASS = 19 , + TERRAIN_MATERIAL_TYPE_DRY_GRASS = 20 , + TERRAIN_MATERIAL_TYPE_RUSHES = 21 , + TERRAIN_MATERIAL_TYPE_FERNS = 22 , + TERRAIN_MATERIAL_TYPE_CORN = 23 , + TERRAIN_MATERIAL_TYPE_SCRUB = 24 , + TERRAIN_MATERIAL_TYPE_HEATHER = 25 , + TERRAIN_MATERIAL_TYPE_FOREST_UNDERGROWTH = 26 , + TERRAIN_MATERIAL_TYPE_SNOW = 27 , + TERRAIN_MATERIAL_TYPE_PACK_ICE = 28 , + TERRAIN_MATERIAL_TYPE_SOLID_ICE = 29 , + TERRAIN_MATERIAL_TYPE_SNOWY_MOUNTAIN_TOPS = 30 , + TERRAIN_MATERIAL_TYPE_PAVEMENT = 31 , + TERRAIN_MATERIAL_TYPE_WET_PAVEMENT = 32 , + TERRAIN_MATERIAL_TYPE_CRYSTAL = 33 , + TERRAIN_MATERIAL_TYPE_METAL = 34 , + TERRAIN_MATERIAL_TYPE_HOLLOW_METAL = 35 , + TERRAIN_MATERIAL_TYPE_FLESH = 36 , + TERRAIN_MATERIAL_TYPE_GROANING_FLESH = 37 , + TERRAIN_MATERIAL_TYPE_TIMBER = 38 , + TERRAIN_MATERIAL_TYPE_SCALES = 39 , + TERRAIN_MATERIAL_TYPE_CLOUD = 40 , + TERRAIN_MATERIAL_TYPE_HAIR = 41 , + TERRAIN_MATERIAL_JUNGLE_FLOOR = 42 , + TERRAIN_MATERIAL_TYPE_LAST = 43 , +}; + +//***************************************************************************** +// ENUM Values: SOUND_SURFACE_TYPE +//***************************************************************************** +enum SOUND_SURFACE_TYPE +{ + SOUND_SURFACE_TYPE_NONE = 0 , + SOUND_SURFACE_TYPE_GRASS = 1 , + SOUND_SURFACE_TYPE_GRAVEL = 2 , + SOUND_SURFACE_TYPE_HARD = 3 , + SOUND_SURFACE_TYPE_MUD = 4 , + SOUND_SURFACE_TYPE_SNOW = 5 , + SOUND_SURFACE_TYPE_DEEP_WATER = 6 , + SOUND_SURFACE_TYPE_SHALLOW_WATER = 7 , + SOUND_SURFACE_TYPE_LOOSE_FOLIAGE = 8 , + SOUND_SURFACE_TYPE_LAST = 9 , +}; + +//***************************************************************************** +// ENUM Values: REACTION +//***************************************************************************** +enum REACTION +{ + REACTION_NONE = -1 , + REACTION_FLEE_FROM_OBJECT = 0 , + REACTION_LOOK_AT_OBJECT = 1 , + REACTION_FOLLOW_OBJECT = 2 , + REACTION_FLEE_FROM_SPELL = 3 , + REACTION_LOOK_AT_SPELL = 4 , + REACTION_FOLLOW_SPELL = 5 , + REACTION_REACT_TO_CREATURE = 6 , + REACTION_REACT_TO_FOOD = 7 , + REACTION_REACT_TO_MAGIC_TREE = 8 , + REACTION_REACT_TO_FLYING_OBJECT = 9 , + REACTION_REACT_TO_FIRE = 10 , + REACTION_REACT_TO_BALL = 11 , + REACTION_REACT_TO_WOOD = 12 , + REACTION_REACT_TO_MAGIC_SHIELD = 13 , + REACTION_REACT_TO_GIFT_FROM_CREATURE = 14 , + REACTION_REACT_TO_NEW_BUILDING = 15 , + REACTION_REACT_TO_HAND_PICK_UP = 16 , + REACTION_REACT_TO_HAND_USING_TOTEM = 17 , + REACTION_REACT_TO_OBJECT_CRUSHED = 18 , + REACTION_REACT_TO_FIGHT = 19 , + REACTION_REACT_TO_TELEPORT = 20 , + REACTION_LOOK_AT_NICE_SPELL = 21 , + REACTION_REACT_TO_HAND_PUTTING_STUFF_IN_STORAGE_PIT + = 22 , + REACTION_REACT_TO_DEATH = 23 , + REACTION_REACT_TO_DROPPED_BY_HAND = 24 , + REACTION_FAINTING = 25 , + REACTION_CONFUSED = 26 , + REACTION_AVOID_FALLING_TREE = 27 , + REACTION_FLEE_FROM_PREDATOR = 28 , + REACTION_CROWD_AROUND = 29 , + REACTION_REACT_TO_BREEDER = 30 , + REACTION_REACT_TO_TOWN_CELEBRATION = 31 , + REACTION_REACT_TO_VILLAGER_IN_HAND = 32 , + REACTION_REACT_TO_BURNING_OBJECT_IN_HAND = 33 , + REACTION_REACT_TO_MAGIC_WATER_PUTTING_OUT_FIRE = 34 , + REACTION_REACT_TO_MAGIC_SHIELD_STRUCK = 35 , + REACTION_REACT_TO_MAGIC_SHIELD_DESTROYED = 36 , + REACTION_REACT_TO_IMPRESSIVE_SPELL = 37 , + REACTION_REACT_TO_SCAFFOLD = 38 , + REACTION_REACT_TO_MISSIONARY = 39 , + REACTION_REACT_TO_FIGHT_WON = 40 , + NUM_REACTION_FUNCTIONS = 41 , +}; + +//***************************************************************************** +// ENUM Values: IMPRESSIVE_TYPE +//***************************************************************************** +enum IMPRESSIVE_TYPE +{ + IMPRESSIVE_TYPE_FIREBALL = 0 , + IMPRESSIVE_TYPE_FIREBALL_PU_ONE = 1 , + IMPRESSIVE_TYPE_FIREBALL_PU_TWO = 2 , + IMPRESSIVE_TYPE_LIGHTNING_STORM = 3 , + IMPRESSIVE_TYPE_LIGHTNING_BOLT = 4 , + IMPRESSIVE_TYPE_LIGHTNING_BOLT_PU_ONE = 5 , + IMPRESSIVE_TYPE_LIGHTNING_BOLT_PU_TWO = 6 , + IMPRESSIVE_TYPE_EXPLOSION_ONE = 7 , + IMPRESSIVE_TYPE_FOOTBALL = 8 , + IMPRESSIVE_TYPE_HEAL = 9 , + IMPRESSIVE_TYPE_HEAL_PU_ONE = 10 , + IMPRESSIVE_TYPE_TORNADO = 11 , + IMPRESSIVE_TYPE_WALL = 12 , + IMPRESSIVE_TYPE_FIREWORK = 13 , + IMPRESSIVE_TYPE_MAGIC_TREE = 14 , + IMPRESSIVE_TYPE_PRIEST = 15 , + IMPRESSIVE_TYPE_MAGIC_FOOD = 16 , + IMPRESSIVE_TYPE_MAGIC_FOOD_PU_ONE = 17 , + IMPRESSIVE_TYPE_MAGIC_FOOD_PU_TWO = 18 , + IMPRESSIVE_TYPE_SHIELD_ONE = 19 , + IMPRESSIVE_TYPE_MAGIC_WOOD = 20 , + IMPRESSIVE_TYPE_MAGIC_WATER = 21 , + IMPRESSIVE_TYPE_GIVE_VILLAGERS_FOOD = 22 , + IMPRESSIVE_TYPE_GIVE_VILLAGERS_WOOD = 23 , + IMPRESSIVE_TYPE_CREATURE_NOT_IMPRESSIVE = 24 , + IMPRESSIVE_TYPE_CREATURE_QUITE_IMPRESSIVE = 25 , + IMPRESSIVE_TYPE_CREATURE_VERY_IMPRESSIVE = 26 , + IMPRESSIVE_TYPE_NOT_IMPRESSIVE_AT_ALL = 27 , + IMPRESSIVE_TYPE_SKELETON_ARMY = 28 , + NUM_IMPRESSIVE_TYPES = 29 , +}; + +//***************************************************************************** +// ENUM Values: EFFECT_TYPE +//***************************************************************************** +enum EFFECT_TYPE +{ + EFFECT_TYPE_BURN = 0 , + EFFECT_TYPE_CRUSH = 1 , + EFFECT_TYPE_HIT = 2 , + EFFECT_TYPE_HEAL = 3 , + EFFECT_TYPE_APPLY_FORCE = 4 , + EFFECT_TYPE_ALIGNMENT_MODIFICATION = 5 , + EFFECT_TYPE_BELIEF_MODIFICATION = 6 , + EFFECT_TYPE_LAST = 7 , +}; + +//***************************************************************************** +// ENUM Values: LIVING_STATES +//***************************************************************************** +enum LIVING_STATES +{ + LIVING_INVALID = 0 , + LIVING_MOVE_TO_POS = 1 , + LIVING_MOVE_TO_OBJECT = 2 , + LIVING_MOVE_ON_STRUCTURE = 3 , + LIVING_IN_SCRIPT = 4 , + LIVING_IN_DANCE = 5 , + LIVING_FLEE_FROM_OBJECT_REACTION = 6 , + LIVING_LOOK_AT_OBJECT_REACTION = 7 , + LIVING_FOLLOW_OBJECT_REACTION = 8 , + LIVING_INSPECT_OBJECT_REACTION = 9 , + LIVING_FLYING = 10 , + LIVING_LANDED = 11 , + LIVING_LOOK_AT_FLYING_OBJECT_REACTION = 12 , + LIVING_SET_DYING = 13 , + LIVING_DYING = 14 , + LIVING_DEAD = 15 , + LIVING_DROWNING = 16 , + LIVING_DOWNED = 17 , + LIVING_BEING_EATEN = 18 , + LIVING_GOTO_FOOD_REACTION = 19 , + LIVING_ARRIVES_AT_FOOD_REACTION = 20 , + LIVING_GOTO_WOOD_REACTION = 21 , + LIVING_ARRIVES_AT_WOOD_REACTION = 22 , + LIVING_WAIT_FOR_ANIMATION = 23 , + LIVING_IN_HAND = 24 , + LIVING_GOTO_PICKUP_BALL_REACTION = 25 , + LIVING_ARRIVES_AT_PICKUP_BALL_REACTION = 26 , + LIVING_MOVE_IN_FLOCK = 27 , + LIVING_MOVE_ALONG_PATH = 28 , + LIVING_MOVE_ON_PATH = 29 , + LIVING_FLEEING_LOOK_AT_OBJECT_REACTION = 30 , + LIVING_LAST = 31 , +}; + +//***************************************************************************** +// ENUM Values: ALIGNMENT_TYPE +//***************************************************************************** +enum ALIGNMENT_TYPE +{ + ALIGNMENT_TYPE_ANIMAL_NICE = 0 , + ALIGNMENT_TYPE_ANIMAL_NASTY = 1 , + ALIGNMENT_TYPE_CREATURE = 2 , + ALIGNMENT_TYPE_PRIEST = 3 , + ALIGNMENT_TYPE_SKELETON = 4 , + ALIGNMENT_TYPE_VILLAGER = 5 , + ALIGNMENT_TYPE_BUILDING = 6 , + ALIGNMENT_TYPE_PLANT = 7 , + ALIGNMENT_TYPE_FIELD = 8 , + ALIGNMENT_TYPE_FEATURE = 9 , + ALIGNMENT_TYPE_MOBILE_OBJECT = 10 , + ALIGNMENT_TYPE_LAND = 11 , + ALIGNMENT_TYPE_SCRIPT = 12 , + ALIGNMENT_TYPE_UNIMPORTANT = 13 , + ALIGNMENT_TYPE_LAST = 14 , +}; + +//***************************************************************************** +// ENUM Values: SPELL_ICON_INFO +//***************************************************************************** +enum SPELL_ICON_INFO +{ + SPELL_ICON_INFO_BASIC = 0 , + SPELL_ICON_INFO_TOWN_CENTRE = 1 , + SPELL_ICON_INFO_LAST = 2 , +}; + +//***************************************************************************** +// ENUM Values: WORSHIP_SITE_INFO +//***************************************************************************** +enum WORSHIP_SITE_INFO +{ + WORSHIP_SITE_INFO_CELTIC = 0 , + WORSHIP_SITE_INFO_AFRICAN = 1 , + WORSHIP_SITE_INFO_AZTEC = 2 , + WORSHIP_SITE_INFO_JAPANESE = 3 , + WORSHIP_SITE_INFO_INDIAN = 4 , + WORSHIP_SITE_INFO_EGYPTIAN = 5 , + WORSHIP_SITE_INFO_GREEK = 6 , + WORSHIP_SITE_INFO_NORSE = 7 , + WORSHIP_SITE_INFO_TIBETAN = 8 , + WORSHIP_SITE_INFO_LAST = 9 , +}; + +//***************************************************************************** +// ENUM Values: MOBILE_OBJECT_INFO +//***************************************************************************** +enum MOBILE_OBJECT_INFO +{ + MOBILE_OBJECT_INFO_NONE = -1 , + MOBILE_OBJECT_INFO_EGPT_BARREL = 0 , + MOBILE_OBJECT_INFO_EGPT_CART = 1 , + MOBILE_OBJECT_INFO_EGPT_POT_A = 2 , + MOBILE_OBJECT_INFO_EGPT_POT_B = 3 , + MOBILE_OBJECT_INFO_MAGIC_FOOD = 4 , + MOBILE_OBJECT_INFO_LUMP_OF_POO = 5 , + MOBILE_OBJECT_INFO_WATER_JUG = 6 , + MOBILE_OBJECT_INFO_ARROW = 7 , + MOBILE_OBJECT_INFO_BALL = 8 , + MOBILE_OBJECT_INFO_CART = 9 , + MOBILE_OBJECT_INFO_FOOD_POT = 10 , + MOBILE_OBJECT_INFO_WOOD_POT = 11 , + MOBILE_OBJECT_INFO_PILE_FOOD = 12 , + MOBILE_OBJECT_INFO_PILE_WOOD = 13 , + MOBILE_OBJECT_INFO_MAGIC_WOOD = 14 , + MOBILE_OBJECT_INFO_CROP = 15 , + MOBILE_OBJECT_INFO_OLD_SCAFFOLD = 16 , + MOBILE_OBJECT_INFO_CHAMPI = 17 , + MOBILE_OBJECT_INFO_MAGIC_MUSHROOM = 18 , + MOBILE_OBJECT_INFO_TOADSTOOL = 19 , + MOBILE_OBJECT_INFO_CREATURE_SWAP_ORB = 20 , + MOBILE_OBJECT_INFO_CREED = 21 , + MOBILE_OBJECT_INFO_EYES = 22 , + MOBILE_OBJECT_INFO_ARK = 23 , + MOBILE_OBJECT_INFO_WHALE = 24 , + MOBILE_OBJECT_INFO_ONEOFF_SPELLSEED = 25 , + MOBILE_OBJECT_HANOI_PUZZLE_BASE = 26 , + MOBILE_OBJECT_HANOI_PUZZLE_PART1 = 27 , + MOBILE_OBJECT_HANOI_PUZZLE_PART2 = 28 , + MOBILE_OBJECT_HANOI_PUZZLE_PART3 = 29 , + MOBILE_OBJECT_HANOI_PUZZLE_PART4 = 30 , + MOBILE_OBJECT_CAULDRON = 31 , + MOBILE_OBJECT_DOLPHIN = 32 , + MOBILE_OBJECT_CROC_1 = 33 , + MOBILE_OBJECT_CROC_2 = 34 , + MOBILE_OBJECT_CROC_3 = 35 , + MOBILE_OBJECT_BROTHERHOOD_RING_1 = 36 , + MOBILE_OBJECT_BROTHERHOOD_RING_2 = 37 , + MOBILE_OBJECT_BROTHERHOOD_RING_3 = 38 , + MOBILE_OBJECT_MOSES_BASKET = 39 , + MOBILE_OBJECT_BROTHERHOOD_PUCK = 40 , + MOBILE_OBJECT_INFO_LAST = 41 , +}; + +//***************************************************************************** +// ENUM Values: POT_INFO +//***************************************************************************** +enum POT_INFO +{ + POT_INFO_FOOD_POT = 0 , + POT_INFO_WOOD_POT = 1 , + POT_INFO_STORAGE_PIT_FOOD_PILE = 2 , + POT_INFO_WOOD_PILE_1 = 3 , + POT_INFO_WOOD_PILE_2 = 4 , + POT_INFO_WOOD_PILE_3 = 5 , + POT_INFO_WOOD_PILE_4 = 6 , + POT_INFO_WOOD_PILE_5 = 7 , + POT_INFO_FOOD_PILE = 8 , + POT_INFO_MAGIC_WOOD = 9 , + POT_INFO_MAGIC_FOOD = 10 , + POT_INFO_HAND_WOOD = 11 , + POT_INFO_HAND_FOOD = 12 , + POT_INFO_TREE_BRANCH_EVERGREEN_IN_HAND = 13 , + POT_INFO_TREE_BRANCH_HARDWOOD_IN_HAND = 14 , + POT_INFO_TREE_FRUIT_IN_HAND = 15 , + POT_INFO_TREE_LOGS_IN_HAND = 16 , + POT_INFO_WHEAT_IN_HAND = 17 , + POT_INFO_FISH = 18 , + POT_INFO_LAST = 19 , +}; + +//***************************************************************************** +// ENUM Values: POT_TYPE +//***************************************************************************** +enum POT_TYPE +{ + POT_TYPE_POT = 0 , + POT_TYPE_PILE_FOOD = 1 , + POT_TYPE_PILE_WOOD = 2 , +}; + +//***************************************************************************** +// ENUM Values: MISC_INFO +//***************************************************************************** +enum MISC_INFO +{ + MISC_INFO_HELP_ORB = 0 , + MISC_INFO_HELP_ORB_HOLDER = 1 , + MISC_INFO_FIREFLY = 2 , + MISC_INFO_ARENA_SPELL_ICON = 3 , + MISC_INFO_LAST = 4 , +}; + +//***************************************************************************** +// ENUM Values: SPOOKY_ENUM +//***************************************************************************** +enum SPOOKY_ENUM +{ + SPOOKY_NAME_01 = 0 , + SPOOKY_NAME_02 = 1 , + SPOOKY_NAME_03 = 2 , + SPOOKY_NAME_04 = 3 , + SPOOKY_NAME_05 = 4 , + NUM_SPOOKY_NAMES = 5 , +}; + +//***************************************************************************** +// ENUM Values: HIGHLIGHT_INFO +//***************************************************************************** +enum HIGHLIGHT_INFO +{ + SCRIPT_HIGHLIGHT_INFO_SCRIPT_BRONZE = 0 , + SCRIPT_HIGHLIGHT_INFO_SCRIPT_SILVER = 1 , + SCRIPT_HIGHLIGHT_INFO_SCRIPT_GOLD = 2 , + SCRIPT_HIGHLIGHT_INFO_SCOREBOARD = 3 , + SCRIPT_HIGHLIGHT_INFO_SCOREBOARD_BIG = 4 , + SCRIPT_HIGHLIGHT_INFO_SCRIPT_SILVER_CANCEL = 5 , + SCRIPT_HIGHLIGHT_INFO_SCRIPT_GOLD_CANCEL = 6 , + SCRIPT_HIGHLIGHT_INFO_SCRIPT_SWAP_CREATURE = 7 , + SCRIPT_HIGHLIGHT_INFO_SCRIPT_FIGHT_CREATURE = 8 , + SCRIPT_HIGHLIGHT_INFO_BROTHERHOOD = 9 , + SCRIPT_HIGHLIGHT_INFO_LAST = 10 , +}; + +//***************************************************************************** +// ENUM Values: MAP_SHIELD_INFO +//***************************************************************************** +enum MAP_SHIELD_INFO +{ + MAP_SHIELD_INFO_MAGIC = 0 , + MAP_SHIELD_INFO_PHYSICAL = 1 , + MAP_SHIELD_INFO_LAST = 2 , +}; + +//***************************************************************************** +// ENUM Values: MAGIC_TREE_TYPE +//***************************************************************************** +enum MAGIC_TREE_TYPE +{ + MAGIC_TREE_TYPE_FIRST = 0 , + MAGIC_TREE_TYPE_LAST = 4 , +}; + +//***************************************************************************** +// ENUM Values: TREE_INFO +//***************************************************************************** +enum TREE_INFO +{ + TREE_INFO_BEECH = 0 , + TREE_INFO_BIRCH = 1 , + TREE_INFO_CEDAR = 2 , + TREE_INFO_CONIFER = 3 , + TREE_INFO_CONIFER_A = 4 , + TREE_INFO_OAK = 5 , + TREE_INFO_OAK_A = 6 , + TREE_INFO_OLIVE = 7 , + TREE_INFO_PALM = 8 , + TREE_INFO_PALM_A = 9 , + TREE_INFO_PALM_B = 10 , + TREE_INFO_PALM_C = 11 , + TREE_INFO_PINE = 12 , + TREE_INFO_BUSH = 13 , + TREE_INFO_BUSH_A = 14 , + TREE_INFO_BUSH_B = 15 , + TREE_INFO_CYPRESS = 16 , + TREE_INFO_CYPRESS_A = 17 , + TREE_INFO_COPSE = 18 , + TREE_INFO_COPSE_A = 19 , + TREE_INFO_HEDGE = 20 , + TREE_INFO_HEDGE_A = 21 , + TREE_INFO_BURNT = 22 , + TREE_INFO_LAST = 23 , +}; + +//***************************************************************************** +// ENUM Values: RESOURCE_TYPE +//***************************************************************************** +enum RESOURCE_TYPE +{ + RESOURCE_TYPE_ANY = -2 , + RESOURCE_TYPE_NONE = -1 , + RESOURCE_TYPE_FOOD = 0 , + RESOURCE_TYPE_WOOD = 1 , + RESOURCE_TYPE_LAST = 2 , +}; + +//***************************************************************************** +// ENUM Values: FOOTBALL_INFO +//***************************************************************************** +enum FOOTBALL_INFO +{ + FOOTBALL_INFO_FOOTBALL_PITCH = 0 , + FOOTBALL_INFO_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: FOOTBALL_POSITION_INFO +//***************************************************************************** +enum FOOTBALL_POSITION_INFO +{ + FOOTBALL_POSITION_INFO_NONE_FREE = -1 , + FOOTBALL_POSITION_INFO_LEFT_ATTACK_1 = 0 , + FOOTBALL_POSITION_INFO_LEFT_ATTACK_2 = 1 , + FOOTBALL_POSITION_INFO_GOAL_1 = 2 , + FOOTBALL_POSITION_INFO_GOAL_2 = 3 , + FOOTBALL_POSITION_INFO_LEFT_DEFENCE_1 = 4 , + FOOTBALL_POSITION_INFO_LEFT_DEFENCE_2 = 5 , + FOOTBALL_POSITION_INFO_RIGHT_ATTACK_1 = 6 , + FOOTBALL_POSITION_INFO_RIGHT_ATTACK_2 = 7 , + FOOTBALL_POSITION_INFO_RIGHT_DEFENCE_1 = 8 , + FOOTBALL_POSITION_INFO_RIGHT_DEFENCE_2 = 9 , + FOOTBALL_POSITION_INFO_LAST = 10 , +}; + +//***************************************************************************** +// ENUM Values: PFOOTBALL_POSITION_INFO +//***************************************************************************** +enum PFOOTBALL_POSITION_INFO +{ + PFOOTBALL_POSITION_INFO_NONE_FREE = -1 , + PFOOTBALL_POSITION_INFO_LEFT_ATTACK_1 = 0 , + PFOOTBALL_POSITION_INFO_LEFT_ATTACK_2 = 1 , + PFOOTBALL_POSITION_INFO_GOAL_1 = 2 , + PFOOTBALL_POSITION_INFO_GOAL_2 = 3 , + PFOOTBALL_POSITION_INFO_LEFT_DEFENCE_1 = 4 , + PFOOTBALL_POSITION_INFO_LEFT_DEFENCE_2 = 5 , + PFOOTBALL_POSITION_INFO_RIGHT_ATTACK_1 = 6 , + PFOOTBALL_POSITION_INFO_RIGHT_ATTACK_2 = 7 , + PFOOTBALL_POSITION_INFO_RIGHT_DEFENCE_1 = 8 , + PFOOTBALL_POSITION_INFO_RIGHT_DEFENCE_2 = 9 , + PFOOTBALL_POSITION_INFO_LAST = 10 , +}; + +//***************************************************************************** +// ENUM Values: PLAYTIME_INFO +//***************************************************************************** +enum PLAYTIME_INFO +{ + PLAYTIME_INFO_NONE = -1 , + PLAYTIME_INFO_MARRAGE = 0 , + PLAYTIME_INFO_FUNERAL = 1 , + PLAYTIME_INFO_MAYPOLE = 2 , + PLAYTIME_INFO_FOOTBALL = 3 , + PLAYTIME_INFO_PFOOTBALL = 4 , + PLAYTIME_INFO_LAST = 5 , +}; + +//***************************************************************************** +// ENUM Values: GROUND_INFO +//***************************************************************************** +enum GROUND_INFO +{ + GROUND_INFO_NONE = -1 , + GROUND_INFO_NORMAL = 0 , + GROUND_INFO_ABODE = 1 , + GROUND_INFO_LAST = 2 , +}; + +//***************************************************************************** +// ENUM Values: COUNTRY_LIST +//***************************************************************************** +enum COUNTRY_LIST +{ + COUNTRY_LIST_NONE = 0 , + COUNTRY_LIST_1 = 1 , + COUNTRY_LIST_2 = 2 , + COUNTRY_LIST_3 = 3 , + COUNTRY_LIST_4 = 4 , + COUNTRY_LIST_5 = 5 , + COUNTRY_LIST_6 = 6 , + COUNTRY_LIST_7 = 7 , + COUNTRY_LIST_8 = 8 , + COUNTRY_LIST_END = 9 , +}; + +//***************************************************************************** +// ENUM Values: PRAYER_ICON_INFO +//***************************************************************************** +enum PRAYER_ICON_INFO +{ + PRAYER_ICON_INFO_NONE = -1 , + PRAYER_ICON_INFO_NORMAL = 0 , + PRAYER_ICON_INFO_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: PRAYER_SITE_INFO +//***************************************************************************** +enum PRAYER_SITE_INFO +{ + PRAYER_SITE_INFO_NORMAL = 0 , + PRAYER_SITE_INFO_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: LEADER_ANIMATION +//***************************************************************************** +enum LEADER_ANIMATION +{ + LEADER_ANIMATION_NORMAL = 0 , + LEADER_ANIMATION_FAST = 1 , + LEADER_ANIMATION_FRANTIC = 2 , + LEADER_ANIMATION_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: SPELL_CAST_TYPE +//***************************************************************************** +enum SPELL_CAST_TYPE +{ + SPELL_CAST_IN_HAND = 0 , + SPELL_CAST_HAND_GESTURE = 1 , + SPELL_CAST_HAND_POSITION = 2 , +}; + +//***************************************************************************** +// ENUM Values: JOB_ACTIVITY +//***************************************************************************** +enum JOB_ACTIVITY +{ + JOB_ACTIVITY_NONE = 0 , + JOB_ACTIVITY_NURTURE = 1 , + JOB_ACTIVITY_HARVEST = 2 , + JOB_ACTIVITY_PLAN = 3 , + JOB_ACTIVITY_EXECUTE = 4 , + JOB_ACTIVITY_LAST = 5 , +}; + +//***************************************************************************** +// ENUM Values: JOB_INFO +//***************************************************************************** +enum JOB_INFO +{ + JOB_INFO_POOR_FISHERMAN = 0 , + JOB_INFO_NORMAL_FISHERMAN = 1 , + JOB_INFO_GOOD_FISHERMAN = 2 , + JOB_INFO_POOR_FORESTER = 3 , + JOB_INFO_NORMAL_FORESTER = 4 , + JOB_INFO_GOOD_FORESTER = 5 , + JOB_INFO_POOR_FARMER = 6 , + JOB_INFO_NORMAL_FARMER = 7 , + JOB_INFO_GOOD_FARMER = 8 , + JOB_INFO_POOR_SHEPHERD = 9 , + JOB_INFO_NORMAL_SHEPHERD = 10 , + JOB_INFO_GOOD_SHEPHERD = 11 , + JOB_INFO_NORMAL_LEADER = 12 , + JOB_INFO_NORMAL_HOUSEWIFE = 13 , + JOB_INFO_NORMAL_TRADER = 14 , + JOB_INFO_NORMAL_NO_JOB = 15 , + JOB_INFO_LAST = 16 , +}; + +//***************************************************************************** +// ENUM Values: EFFECT_INFO +//***************************************************************************** +enum EFFECT_INFO +{ + EFFECT_INFO_NONE = -1 , + EFFECT_INFO_HIT = 0 , + EFFECT_INFO_ARROW = 1 , + EFFECT_INFO_BURN = 2 , + EFFECT_INFO_CRUSH = 3 , + EFFECT_INFO_WATER_PAIL = 4 , + EFFECT_INFO_BUILD = 5 , + EFFECT_INFO_CHOP = 6 , + EFFECT_INFO_DIG = 7 , + EFFECT_INFO_CITADEL_HIT = 8 , + EFFECT_INFO_NURTURE = 9 , + EFFECT_INFO_FIELD_CROP_GROW = 10 , + EFFECT_INFO_WEATHER_LIGHTNING = 11 , + EFFECT_INFO_LAST = 12 , +}; + +//***************************************************************************** +// ENUM Values: SEX_TYPE +//***************************************************************************** +enum SEX_TYPE +{ + SEX_NONE = -1 , + SEX_MALE = 0 , + SEX_FEMALE = 1 , + SEX_TYPE_LAST = 2 , +}; + +//***************************************************************************** +// ENUM Values: SEASON +//***************************************************************************** +enum SEASON +{ + SEASON_SPRING = 0 , + SEASON_SUMMER = 1 , + SEASON_AUTUMN = 2 , + SEASON_WINTER = 3 , + SEASON_LAST = 4 , +}; + +//***************************************************************************** +// ENUM Values: SHOW_NEEDS_INFO +//***************************************************************************** +enum SHOW_NEEDS_INFO +{ + SHOW_NEEDS_INFO_HUNGER = 0 , + SHOW_NEEDS_INFO_LIFE = 1 , + SHOW_NEEDS_INFO_HIDING = 2 , + SHOW_WORSHIP_NEEDS_INFO_LAST = 3 , + SHOW_NEEDS_INFO_WORKSHOP_WOOD = 3 , + SHOW_NEEDS_INFO_LAST = 4 , +}; + +//***************************************************************************** +// ENUM Values: TOWN_HAPPINESS_CONSIDERATION +//***************************************************************************** +enum TOWN_HAPPINESS_CONSIDERATION +{ + TOWN_HAPPINESS_CONSIDERATION_AMOUNT_OF_FOOD = 0 , + TOWN_HAPPINESS_CONSIDERATION_AMOUNT_OF_WOOD = 1 , + TOWN_HAPPINESS_CONSIDERATION_NUMBER_OF_BUILDINGS= 2 , + TOWN_HAPPINESS_CONSIDERATION_NUMBER_OF_PEOPLE = 3 , + NUM_TOWN_HAPPINESS_CONSIDERATIONS = 4 , +}; + +//***************************************************************************** +// ENUM Values: TOWN_DESIRE_INFO +//***************************************************************************** +enum TOWN_DESIRE_INFO +{ + TOWN_DESIRE_INFO_NONE = -1 , + TOWN_DESIRE_INFO_FIRST = 0 , + TOWN_DESIRE_INFO_FOR_FOOD = 0 , + TOWN_DESIRE_INFO_FOR_WOOD = 1 , + TOWN_DESIRE_INFO_FOR_PLAYTIME = 2 , + TOWN_DESIRE_INFO_FOR_PROTECTION = 3 , + TOWN_DESIRE_INFO_FOR_MERCY = 4 , + TOWN_DESIRE_INFO_FOR_ABODES = 5 , + TOWN_DESIRE_INFO_FOR_CIVIC_BUILDING = 6 , + TOWN_DESIRE_INFO_FOR_SUPPLY_WORSHIP = 7 , + TOWN_DESIRE_INFO_FOR_CHILDREN = 8 , + TOWN_DESIRE_INFO_TO_BUILD = 9 , + TOWN_DESIRE_INFO_FOR_RAIN = 10 , + TOWN_DESIRE_INFO_FOR_SUN = 11 , + TOWN_DESIRE_INFO_TO_REPAIR = 12 , + TOWN_DESIRE_INFO_TO_SUPPLY_WORKSHOP = 13 , + TOWN_DESIRE_INFO_TO_BUILD_WONDER = 14 , + TOWN_DESIRE_INFO_FOR_RELAXATION = 15 , + TOWN_DESIRE_INFO_FOR_SLEEP = 16 , + TOWN_DESIRE_INFO_LAST = 17 , +}; + +//***************************************************************************** +// ENUM Values: WORSHIP_SITE_UPGRADE_INFO +//***************************************************************************** +enum WORSHIP_SITE_UPGRADE_INFO +{ + WORSHIP_SITE_UPGRADE_INFO_FAST_FOOD = 0 , + WORSHIP_SITE_UPGRADE_INFO_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: VILLAGER_INFO +//***************************************************************************** +enum VILLAGER_INFO +{ + VILLAGER_INFO_FIRST = 0 , + VILLAGER_INFO_CELTIC_HOUSEWIFE_FEMALE = 0 , + VILLAGER_INFO_CELTIC_FORESTER_MALE = 1 , + VILLAGER_INFO_CELTIC_FISHERMAN_MALE = 2 , + VILLAGER_INFO_CELTIC_FARMER_MALE = 3 , + VILLAGER_INFO_CELTIC_SHEPHERD_MALE = 4 , + VILLAGER_INFO_CELTIC_LEADER_MALE = 5 , + VILLAGER_INFO_CELTIC_TRADER_MALE = 6 , + VILLAGER_INFO_AFRICAN_HOUSEWIFE_FEMALE = 7 , + VILLAGER_INFO_AFRICAN_FORESTER_MALE = 8 , + VILLAGER_INFO_AFRICAN_FISHERMAN_MALE = 9 , + VILLAGER_INFO_AFRICAN_FARMER_MALE = 10 , + VILLAGER_INFO_AFRICAN_SHEPHERD_MALE = 11 , + VILLAGER_INFO_AFRICAN_LEADER_MALE = 12 , + VILLAGER_INFO_AFRICAN_TRADER_MALE = 13 , + VILLAGER_INFO_AZTEC_HOUSEWIFE_FEMALE = 14 , + VILLAGER_INFO_AZTEC_FORESTER_MALE = 15 , + VILLAGER_INFO_AZTEC_FISHERMAN_MALE = 16 , + VILLAGER_INFO_AZTEC_FARMER_MALE = 17 , + VILLAGER_INFO_AZTEC_SHEPHERD_MALE = 18 , + VILLAGER_INFO_AZTEC_LEADER_MALE = 19 , + VILLAGER_INFO_AZTEC_TRADER_MALE = 20 , + VILLAGER_INFO_JAPANESE_HOUSEWIFE_FEMALE = 21 , + VILLAGER_INFO_JAPANESE_FORESTER_MALE = 22 , + VILLAGER_INFO_JAPANESE_FISHERMAN_MALE = 23 , + VILLAGER_INFO_JAPANESE_FARMER_MALE = 24 , + VILLAGER_INFO_JAPANESE_SHEPHERD_MALE = 25 , + VILLAGER_INFO_JAPANESE_LEADER_MALE = 26 , + VILLAGER_INFO_JAPANESE_TRADER_MALE = 27 , + VILLAGER_INFO_INDIAN_HOUSEWIFE_FEMALE = 28 , + VILLAGER_INFO_INDIAN_FORESTER_MALE = 29 , + VILLAGER_INFO_INDIAN_FISHERMAN_MALE = 30 , + VILLAGER_INFO_INDIAN_FARMER_MALE = 31 , + VILLAGER_INFO_INDIAN_SHEPHERD_MALE = 32 , + VILLAGER_INFO_INDIAN_LEADER_MALE = 33 , + VILLAGER_INFO_INDIAN_TRADER_MALE = 34 , + VILLAGER_INFO_EGYPTIAN_HOUSEWIFE_FEMALE = 35 , + VILLAGER_INFO_EGYPTIAN_FORESTER_MALE = 36 , + VILLAGER_INFO_EGYPTIAN_FISHERMAN_MALE = 37 , + VILLAGER_INFO_EGYPTIAN_FARMER_MALE = 38 , + VILLAGER_INFO_EGYPTIAN_SHEPHERD_MALE = 39 , + VILLAGER_INFO_EGYPTIAN_LEADER_MALE = 40 , + VILLAGER_INFO_EGYPTIAN_TRADER_MALE = 41 , + VILLAGER_INFO_GREEK_HOUSEWIFE_FEMALE = 42 , + VILLAGER_INFO_GREEK_FORESTER_MALE = 43 , + VILLAGER_INFO_GREEK_FISHERMAN_MALE = 44 , + VILLAGER_INFO_GREEK_FARMER_MALE = 45 , + VILLAGER_INFO_GREEK_SHEPHERD_MALE = 46 , + VILLAGER_INFO_GREEK_LEADER_MALE = 47 , + VILLAGER_INFO_GREEK_TRADER_MALE = 48 , + VILLAGER_INFO_NORSE_HOUSEWIFE_FEMALE = 49 , + VILLAGER_INFO_NORSE_FORESTER_MALE = 50 , + VILLAGER_INFO_NORSE_FISHERMAN_MALE = 51 , + VILLAGER_INFO_NORSE_FARMER_MALE = 52 , + VILLAGER_INFO_NORSE_SHEPHERD_MALE = 53 , + VILLAGER_INFO_NORSE_LEADER_MALE = 54 , + VILLAGER_INFO_NORSE_TRADER_MALE = 55 , + VILLAGER_INFO_TIBETAN_HOUSEWIFE_FEMALE = 56 , + VILLAGER_INFO_TIBETAN_FORESTER_MALE = 57 , + VILLAGER_INFO_TIBETAN_FISHERMAN_MALE = 58 , + VILLAGER_INFO_TIBETAN_FARMER_MALE = 59 , + VILLAGER_INFO_TIBETAN_SHEPHERD_MALE = 60 , + VILLAGER_INFO_TIBETAN_LEADER_MALE = 61 , + VILLAGER_INFO_TIBETAN_TRADER_MALE = 62 , + VILLAGER_INFO_PIED_PIPER = 63 , + VILLAGER_INFO_SHAOLIN = 64 , + VILLAGER_INFO_IDOL_BUILDER = 65 , + VILLAGER_INFO_HERMIT = 66 , + VILLAGER_INFO_HIPPY = 67 , + VILLAGER_INFO_PRIEST = 68 , + VILLAGER_INFO_PRIESTESS = 69 , + VILLAGER_INFO_MARAUDER = 70 , + VILLAGER_INFO_FOOTBALLER_1 = 71 , + VILLAGER_INFO_FOOTBALLER_2 = 72 , + VILLAGER_INFO_ENGINEER = 73 , + VILLAGER_INFO_SHEPERED = 74 , + VILLAGER_INFO_NOMADE = 75 , + VILLAGER_INFO_AZTEC_LEADER = 76 , + VILLAGER_INFO_CREATURE_TRAINER = 77 , + VILLAGER_INFO_NORSE_SAILOR = 78 , + VILLAGER_INFO_BREEDER = 79 , + VILLAGER_INFO_HEALER = 80 , + VILLAGER_INFO_SCULPTOR = 81 , + VILLAGER_INFO_CRUSADER = 82 , + VILLAGER_INFO_SAILOR_ACCORDIAN = 83 , + VILLAGER_INFO_MULE_HEAD = 84 , + VILLAGER_INFO_EGYPTIAN_BIG_EYES = 85 , + VILLAGER_INFO_GIANT = 86 , + VILLAGER_INFO_LAST = 87 , +}; + +//***************************************************************************** +// ENUM Values: VILLAGER_BASIC_INFO +//***************************************************************************** +enum VILLAGER_BASIC_INFO +{ + VILLAGER_BASIC_INFO_NONE = -1 , + VILLAGER_BASIC_INFO_FIRST = 0 , + VILLAGER_BASIC_INFO_HOUSEWIFE_FEMALE = 0 , + VILLAGER_BASIC_INFO_FORESTER_MALE = 1 , + VILLAGER_BASIC_INFO_FISHERMAN_MALE = 2 , + VILLAGER_BASIC_INFO_FARMER_MALE = 3 , + VILLAGER_BASIC_INFO_SHEPHERD_MALE = 4 , + VILLAGER_BASIC_INFO_LEADER_MALE = 5 , + VILLAGER_BASIC_INFO_TRADER_MALE = 6 , + VILLAGER_BASIC_INFO_LAST = 7 , +}; + +//***************************************************************************** +// ENUM Values: SPOT_VISUAL_TYPE +//***************************************************************************** +enum SPOT_VISUAL_TYPE +{ + SPOT_VISUAL_NONE = 0 , + SPOT_VISUAL_APPLY_SPELL_EFFECT = 1 , + SPOT_VISUAL_GRIP_LANDSCAPE = 2 , + SPOT_VISUAL_SPELL_SUCCEED_CAST = 3 , + SPOT_VISUAL_SPELL_FAIL_CAST = 4 , + SPOT_VISUAL_SINGLE_FIREWORK = 5 , + SPOT_VISUAL_TOWN_FIREWORKS = 6 , + SPOT_VISUAL_TOWN_FIREWORKS_PU1 = 7 , + SPOT_VISUAL_TOWN_FIREWORKS_PU2 = 8 , + SPOT_VISUAL_MAGIC_OBJECT_CREATED = 9 , + SPOT_VISUAL_COMMAND_SUCCEED = 10 , + SPOT_VISUAL_COMMAND_FAIL = 11 , + SPOT_VISUAL_CREATURE_TARGET = 12 , + SPOT_VISUAL_CREATURE_CAST_VISUAL = 13 , + SPOT_VISUAL_VILLAGER_TELEPORT = 14 , + SPOT_VISUAL_FIRE_FX = 15 , + SPOT_VISUAL_FIRE_FX_ON_OBJECT = 16 , + SPOT_VISUAL_MAGIC_FX = 17 , + SPOT_VISUAL_MAGIC_FX_ON_OBJECT = 18 , + SPOT_VISUAL_MAGIC_FX_ON_CITADEL = 19 , + SPOT_VISUAL_MAGIC_BEAM = 20 , + SPOT_VISUAL_MAGIC_BEAM_ON_CITADEL = 21 , + SPOT_VISUAL_STEAM = 22 , + SPOT_VISUAL_SMOKE = 23 , + SPOT_VISUAL_DUST = 24 , + SPOT_VISUAL_BONFIRE = 25 , + SPOT_VISUAL_EVIL_SMOKE = 26 , + SPOT_VISUAL_OBJECT_APPEAR = 27 , + SPOT_VISUAL_OBJECT_DISAPPEAR = 28 , + SPOT_VISUAL_BANG = 29 , + SPOT_VISUAL_SING_STONES_GLOW = 30 , + SPOT_VISUAL_PLAYER_ICON_FOUNTAIN = 31 , + SPOT_VISUAL_EXPLOSION_CITADEL = 32 , + SPOT_VISUAL_HEAL_FX = 33 , + SPOT_VISUAL_HIGHLIGHT_ON_OBJECT = 34 , + SPOT_VISUAL_LIGHTNING_SINGLE_STRIKE = 35 , + SPOT_VISUAL_BEAM_EXPLOSION_FX = 36 , + SPOT_VISUAL_BUTTERFLIES = 37 , + SPOT_VISUAL_BUTTERFLIES_ON_OBJECT = 38 , + SPOT_VISUAL_FLIES = 39 , + SPOT_VISUAL_FLIES_ON_OBJECT = 40 , + SPOT_VISUAL_MAGIC_BEAM_CREATURE_SWAP = 41 , + SPOT_VISUAL_FLASH = 42 , + SPOT_VISUAL_TICKER_TAPE = 43 , + SPOT_VISUAL_FOREST_CREATED = 44 , + SPOT_VISUAL_SINGING_STONES_HEAL = 45 , + SPOT_VISUAL_PILEFOOD_SPEEDUP = 46 , + SPOT_VISUAL_SEE_THIS_BEAM = 47 , + SPOT_VISUAL_SEE_THIS_BEAM2 = 48 , + SPOT_VISUAL_TEST = 49 , + SPOT_VISUAL_TYPE_LAST = 50 , +}; + +//***************************************************************************** +// ENUM Values: WALL_SECTION_TYPE +//***************************************************************************** +enum WALL_SECTION_TYPE +{ + WALL_SECTION_INFO_NONE = -1 , + WALL_SECTION_INFO_BASIC = 0 , + WALL_SECTION_INFO_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: CAST_RULE_TYPE +//***************************************************************************** +enum CAST_RULE_TYPE +{ + CAST_RULE_ANYWHERE = 0 , + CAST_RULE_ON_LAND = 1 , + CAST_RULE_IN_INFLUENCE = 2 , + CAST_RULE_ON_LAND_IN_INFLUENCE = 3 , + CAST_RULE_LAST = 4 , +}; + +//***************************************************************************** +// ENUM Values: ABODE_INFO +//***************************************************************************** +enum ABODE_INFO +{ + ABODE_INFO_NONE = -1 , + ABODE_INFO_CELTIC_HUT = 0 , + ABODE_INFO_CELTIC_TENT = 1 , + ABODE_INFO_CELTIC_SHACK_X = 2 , + ABODE_INFO_CELTIC_SHACK_Y = 3 , + ABODE_INFO_CELTIC_TEMPLE_X = 4 , + ABODE_INFO_CELTIC_TEMPLE_Y = 5 , + ABODE_INFO_CELTIC_TOTEM = 6 , + ABODE_INFO_CELTIC_STORAGE_PIT = 7 , + ABODE_INFO_CELTIC_CRECHE = 8 , + ABODE_INFO_CELTIC_WORKSHOP = 9 , + ABODE_INFO_CELTIC_WONDER = 10 , + ABODE_INFO_CELTIC_GRAVEYARD = 11 , + ABODE_INFO_CELTIC_TOWN_CENTRE = 12 , + ABODE_INFO_CELTIC_FOOTBALL_PITCH = 13 , + ABODE_INFO_CELTIC_SPELL_DISPENSER = 14 , + ABODE_INFO_CELTIC_FIELD = 15 , + ABODE_INFO_AFRICAN_HUT = 16 , + ABODE_INFO_AFRICAN_TENT = 17 , + ABODE_INFO_AFRICAN_SHACK_X = 18 , + ABODE_INFO_AFRICAN_SHACK_Y = 19 , + ABODE_INFO_AFRICAN_TEMPLE_X = 20 , + ABODE_INFO_AFRICAN_TEMPLE_Y = 21 , + ABODE_INFO_AFRICAN_TOTEM = 22 , + ABODE_INFO_AFRICAN_STORAGE_PIT = 23 , + ABODE_INFO_AFRICAN_CRECHE = 24 , + ABODE_INFO_AFRICAN_WORKSHOP = 25 , + ABODE_INFO_AFRICAN_WONDER = 26 , + ABODE_INFO_AFRICAN_GRAVEYARD = 27 , + ABODE_INFO_AFRICAN_TOWN_CENTRE = 28 , + ABODE_INFO_AFRICAN_FOOTBALL_PITCH = 29 , + ABODE_INFO_AFRICAN_SPELL_DISPENSER = 30 , + ABODE_INFO_AFRICAN_FIELD = 31 , + ABODE_INFO_AZTEC_HUT = 32 , + ABODE_INFO_AZTEC_TENT = 33 , + ABODE_INFO_AZTEC_SHACK_X = 34 , + ABODE_INFO_AZTEC_SHACK_Y = 35 , + ABODE_INFO_AZTEC_TEMPLE_X = 36 , + ABODE_INFO_AZTEC_TEMPLE_Y = 37 , + ABODE_INFO_AZTEC_TOTEM = 38 , + ABODE_INFO_AZTEC_STORAGE_PIT = 39 , + ABODE_INFO_AZTEC_CRECHE = 40 , + ABODE_INFO_AZTEC_WORKSHOP = 41 , + ABODE_INFO_AZTEC_WONDER = 42 , + ABODE_INFO_AZTEC_GRAVEYARD = 43 , + ABODE_INFO_AZTEC_TOWN_CENTRE = 44 , + ABODE_INFO_AZTEC_FOOTBALL_PITCH = 45 , + ABODE_INFO_AZTEC_SPELL_DISPENSER = 46 , + ABODE_INFO_AZTEC_FIELD = 47 , + ABODE_INFO_JAPANESE_HUT = 48 , + ABODE_INFO_JAPANESE_TENT = 49 , + ABODE_INFO_JAPANESE_SHACK_X = 50 , + ABODE_INFO_JAPANESE_SHACK_Y = 51 , + ABODE_INFO_JAPANESE_TEMPLE_X = 52 , + ABODE_INFO_JAPANESE_TEMPLE_Y = 53 , + ABODE_INFO_JAPANESE_TOTEM = 54 , + ABODE_INFO_JAPANESE_STORAGE_PIT = 55 , + ABODE_INFO_JAPANESE_CRECHE = 56 , + ABODE_INFO_JAPANESE_WORKSHOP = 57 , + ABODE_INFO_JAPANESE_WONDER = 58 , + ABODE_INFO_JAPANESE_GRAVEYARD = 59 , + ABODE_INFO_JAPANESE_TOWN_CENTRE = 60 , + ABODE_INFO_JAPANESE_FOOTBALL_PITCH = 61 , + ABODE_INFO_JAPANESE_SPELL_DISPENSER = 62 , + ABODE_INFO_JAPANESE_FIELD = 63 , + ABODE_INFO_INDIAN_HUT = 64 , + ABODE_INFO_INDIAN_TENT = 65 , + ABODE_INFO_INDIAN_SHACK_X = 66 , + ABODE_INFO_INDIAN_SHACK_Y = 67 , + ABODE_INFO_INDIAN_TEMPLE_X = 68 , + ABODE_INFO_INDIAN_TEMPLE_Y = 69 , + ABODE_INFO_INDIAN_TOTEM = 70 , + ABODE_INFO_INDIAN_STORAGE_PIT = 71 , + ABODE_INFO_INDIAN_CRECHE = 72 , + ABODE_INFO_INDIAN_WORKSHOP = 73 , + ABODE_INFO_INDIAN_WONDER = 74 , + ABODE_INFO_INDIAN_GRAVEYARD = 75 , + ABODE_INFO_INDIAN_TOWN_CENTRE = 76 , + ABODE_INFO_INDIAN_FOOTBALL_PITCH = 77 , + ABODE_INFO_INDIAN_SPELL_DISPENSER = 78 , + ABODE_INFO_INDIAN_FIELD = 79 , + ABODE_INFO_EGYPTIAN_HUT = 80 , + ABODE_INFO_EGYPTIAN_TENT = 81 , + ABODE_INFO_EGYPTIAN_SHACK_X = 82 , + ABODE_INFO_EGYPTIAN_SHACK_Y = 83 , + ABODE_INFO_EGYPTIAN_TEMPLE_X = 84 , + ABODE_INFO_EGYPTIAN_TEMPLE_Y = 85 , + ABODE_INFO_EGYPTIAN_TOTEM = 86 , + ABODE_INFO_EGYPTIAN_STORAGE_PIT = 87 , + ABODE_INFO_EGYPTIAN_CRECHE = 88 , + ABODE_INFO_EGYPTIAN_WORKSHOP = 89 , + ABODE_INFO_EGYPTIAN_WONDER = 90 , + ABODE_INFO_EGYPTIAN_GRAVEYARD = 91 , + ABODE_INFO_EGYPTIAN_TOWN_CENTRE = 92 , + ABODE_INFO_EGYPTIAN_FOOTBALL_PITCH = 93 , + ABODE_INFO_EGYPTIAN_SPELL_DISPENSER = 94 , + ABODE_INFO_EGYPTIAN_FIELD = 95 , + ABODE_INFO_GREEK_HUT = 96 , + ABODE_INFO_GREEK_TENT = 97 , + ABODE_INFO_GREEK_SHACK_X = 98 , + ABODE_INFO_GREEK_SHACK_Y = 99 , + ABODE_INFO_GREEK_TEMPLE_X = 100 , + ABODE_INFO_GREEK_TEMPLE_Y = 101 , + ABODE_INFO_GREEK_TOTEM = 102 , + ABODE_INFO_GREEK_STORAGE_PIT = 103 , + ABODE_INFO_GREEK_CRECHE = 104 , + ABODE_INFO_GREEK_WORKSHOP = 105 , + ABODE_INFO_GREEK_WONDER = 106 , + ABODE_INFO_GREEK_GRAVEYARD = 107 , + ABODE_INFO_GREEK_TOWN_CENTRE = 108 , + ABODE_INFO_GREEK_FOOTBALL_PITCH = 109 , + ABODE_INFO_GREEK_SPELL_DISPENSER = 110 , + ABODE_INFO_GREEK_FIELD = 111 , + ABODE_INFO_NORSE_HUT = 112 , + ABODE_INFO_NORSE_TENT = 113 , + ABODE_INFO_NORSE_SHACK_X = 114 , + ABODE_INFO_NORSE_SHACK_Y = 115 , + ABODE_INFO_NORSE_TEMPLE_X = 116 , + ABODE_INFO_NORSE_TEMPLE_Y = 117 , + ABODE_INFO_NORSE_TOTEM = 118 , + ABODE_INFO_NORSE_STORAGE_PIT = 119 , + ABODE_INFO_NORSE_CRECHE = 120 , + ABODE_INFO_NORSE_WORKSHOP = 121 , + ABODE_INFO_NORSE_WONDER = 122 , + ABODE_INFO_NORSE_GRAVEYARD = 123 , + ABODE_INFO_NORSE_TOWN_CENTRE = 124 , + ABODE_INFO_NORSE_FOOTBALL_PITCH = 125 , + ABODE_INFO_NORSE_SPELL_DISPENSER = 126 , + ABODE_INFO_NORSE_FIELD = 127 , + ABODE_INFO_TIBETAN_HUT = 128 , + ABODE_INFO_TIBETAN_TENT = 129 , + ABODE_INFO_TIBETAN_SHACK_X = 130 , + ABODE_INFO_TIBETAN_SHACK_Y = 131 , + ABODE_INFO_TIBETAN_TEMPLE_X = 132 , + ABODE_INFO_TIBETAN_TEMPLE_Y = 133 , + ABODE_INFO_TIBETAN_TOTEM = 134 , + ABODE_INFO_TIBETAN_STORAGE_PIT = 135 , + ABODE_INFO_TIBETAN_CRECHE = 136 , + ABODE_INFO_TIBETAN_WORKSHOP = 137 , + ABODE_INFO_TIBETAN_WONDER = 138 , + ABODE_INFO_TIBETAN_GRAVEYARD = 139 , + ABODE_INFO_TIBETAN_TOWN_CENTRE = 140 , + ABODE_INFO_TIBETAN_FOOTBALL_PITCH = 141 , + ABODE_INFO_TIBETAN_SPELL_DISPENSER = 142 , + ABODE_INFO_TIBETAN_FIELD = 143 , + ABODE_INFO_ARK_DRY_DOCK = 144 , + ABODE_INFO_ARK_WRECK = 145 , + ABODE_INFO_BELLTOWER = 146 , + ABODE_INFO_LAST = 147 , +}; + +//***************************************************************************** +// ENUM Values: VILLAGER_NUMBER +//***************************************************************************** +enum VILLAGER_NUMBER +{ + VILLAGER_NUMBER_HOUSEWIFE = 0 , + VILLAGER_NUMBER_FORESTER = 1 , + VILLAGER_NUMBER_FISHERMAN = 2 , + VILLAGER_NUMBER_FARMER = 3 , + VILLAGER_NUMBER_SHEPHERD = 4 , + VILLAGER_NUMBER_LEADER = 5 , + VILLAGER_NUMBER_TRADER = 6 , + VILLAGER_NUMBER_LAST = 7 , +}; + +//***************************************************************************** +// ENUM Values: CARRIED_OBJECT +//***************************************************************************** +enum CARRIED_OBJECT +{ + CARRIED_OBJECT_NO_CHANGE = 0 , + CARRIED_OBJECT_NONE = 1 , + CARRIED_OBJECT_AXE = 2 , + CARRIED_OBJECT_FISHING_ROD = 3 , + CARRIED_OBJECT_CROOK = 4 , + CARRIED_OBJECT_SAW = 5 , + CARRIED_OBJECT_BAG = 6 , + CARRIED_OBJECT_BALL = 7 , + CARRIED_OBJECT_HAMMER = 8 , + CARRIED_OBJECT_MALLET_HEAVY = 9 , + CARRIED_OBJECT_SCYTHE = 10 , + CARRIED_OBJECT_SPADE = 11 , + CARRIED_OBJECT_WOOD = 12 , + CARRIED_OBJECT_TREE_1 = 13 , + CARRIED_OBJECT_TREE_2 = 14 , + CARRIED_OBJECT_TREE_3 = 15 , + CARRIED_OBJECT_LAST = 16 , +}; + +//***************************************************************************** +// ENUM Values: DISCRETE_ALIGNMENT_VALUES +//***************************************************************************** +enum DISCRETE_ALIGNMENT_VALUES +{ + ALIGNMENT_DEVILISH = 0 , + ALIGNMENT_EVIL = 1 , + ALIGNMENT_BAD = 2 , + ALIGNMENT_NEUTRAL = 3 , + ALIGNMENT_NICE = 4 , + ALIGNMENT_GOOD = 5 , + ALIGNMENT_ANGELIC = 6 , + NUM_DISCRETE_ALIGNMENTS = 7 , +}; + +//***************************************************************************** +// ENUM Values: HELP_SPIRIT_TYPE +//***************************************************************************** +enum HELP_SPIRIT_TYPE +{ + HELP_SPIRIT_TYPE_NONE = 0 , + HELP_SPIRIT_TYPE_GOOD = 1 , + HELP_SPIRIT_TYPE_EVIL = 2 , + HELP_SPIRIT_TYPE_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: DETAIL_LEVEL +//***************************************************************************** +enum DETAIL_LEVEL +{ + DETAIL_LEVEL_HIGH = 0 , + DETAIL_LEVEL_NORMAL = 1 , + DETAIL_LEVEL_LOW = 2 , + DETAIL_LEVEL_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: MOBILE_STATIC_INFO +//***************************************************************************** +enum MOBILE_STATIC_INFO +{ + MOBILE_STATIC_INFO_NONE = -1 , + MOBILE_STATIC_INFO_CELT_FENCE_SHORT = 0 , + MOBILE_STATIC_INFO_CELT_FENCE_TALL = 1 , + MOBILE_STATIC_INFO_ROCK = 2 , + MOBILE_STATIC_INFO_DEAD_TREE = 3 , + MOBILE_STATIC_INFO_PHYSICAL_SHIELD = 4 , + MOBILE_STATIC_INFO_SINGING_STONE_1 = 5 , + MOBILE_STATIC_INFO_SINGING_STONE_BASE = 6 , + MOBILE_STATIC_INFO_STREET_LANTERN = 7 , + MOBILE_STATIC_INFO_BONFIRE = 8 , + MOBILE_STATIC_INFO_CREATURE_CAGE = 9 , + MOBILE_STATIC_INFO_IDOL = 10 , + MOBILE_STATIC_INFO_IDOL_REWARD = 11 , + MOBILE_STATIC_INFO_VORTEX = 12 , + MOBILE_STATIC_INFO_TELEPORT = 13 , + MOBILE_STATIC_INFO_WEEPING_STONE = 14 , + MOBILE_STATIC_INFO_WEEPING_STONE_REWARD = 15 , + MOBILE_STATIC_INFO_BOULDER1_CHALK = 16 , + MOBILE_STATIC_INFO_BOULDER1_LIME = 17 , + MOBILE_STATIC_INFO_BOULDER1_SAND = 18 , + MOBILE_STATIC_INFO_BOULDER1_VOLCANIC = 19 , + MOBILE_STATIC_INFO_BOULDER2_CHALK = 20 , + MOBILE_STATIC_INFO_BOULDER2_LIME = 21 , + MOBILE_STATIC_INFO_BOULDER2_SAND = 22 , + MOBILE_STATIC_INFO_BOULDER2_VOLCANIC = 23 , + MOBILE_STATIC_INFO_BOULDER3_CHALK = 24 , + MOBILE_STATIC_INFO_BOULDER3_LIME = 25 , + MOBILE_STATIC_INFO_BOULDER3_SAND = 26 , + MOBILE_STATIC_INFO_BOULDER3_VOLCANIC = 27 , + MOBILE_STATIC_INFO_FLATROCK_CHALK = 28 , + MOBILE_STATIC_INFO_FLATROCK_LIMESTONE = 29 , + MOBILE_STATIC_INFO_FLATROCK_SANDSTONE = 30 , + MOBILE_STATIC_INFO_FLATROCK_VOLCANIC = 31 , + MOBILE_STATIC_INFO_LONGROCK_CHALK = 32 , + MOBILE_STATIC_INFO_LONGROCK_LIMESTONE = 33 , + MOBILE_STATIC_INFO_LONGROCK_SANDSTONE = 34 , + MOBILE_STATIC_INFO_LONGROCK_VOLCANIC = 35 , + MOBILE_STATIC_INFO_ROCK_CHALK = 36 , + MOBILE_STATIC_INFO_ROCK_LIMESTONE = 37 , + MOBILE_STATIC_INFO_ROCK_SANDSTONE = 38 , + MOBILE_STATIC_INFO_ROCK_VOLCANIC = 39 , + MOBILE_STATIC_INFO_SHARPROCK_CHALK = 40 , + MOBILE_STATIC_INFO_SHARPROCK_LIMESTONE = 41 , + MOBILE_STATIC_INFO_SHARPROCK_SANDSTONE = 42 , + MOBILE_STATIC_INFO_SHARPROCK_VOLCANIC = 43 , + MOBILE_STATIC_INFO_SQUAREROCK_CHALK = 44 , + MOBILE_STATIC_INFO_SQUAREROCK_LIMESTONE = 45 , + MOBILE_STATIC_INFO_SQUAREROCK_SANDSTONE = 46 , + MOBILE_STATIC_INFO_SQUAREROCK_VOLCANIC = 47 , + MOBILE_STATIC_INFO_STANDALONE_ALTAR = 48 , + MOBILE_STATIC_INFO_GATE_TOTEM_APE = 49 , + MOBILE_STATIC_INFO_GATE_TOTEM_BLANK = 50 , + MOBILE_STATIC_INFO_GATE_TOTEM_COW = 51 , + MOBILE_STATIC_INFO_GATE_TOTEM_TIGER = 52 , + MOBILE_STATIC_INFO_TOY_BALL = 53 , + MOBILE_STATIC_INFO_TOY_CUDDLY = 54 , + MOBILE_STATIC_INFO_TOY_DIE = 55 , + MOBILE_STATIC_INFO_TOY_SKITTLE = 56 , + MOBILE_STATIC_INFO_TOY_BOWLING_BALL = 57 , + MOBILE_STATIC_INFO_SCULPTURE_IN_PROGRESS = 58 , + MOBILE_STATIC_INFO_COUNTRY_LANTERN = 59 , + MOBILE_STATIC_INFO_METEOR = 60 , + MOBILE_STATIC_INFO_MARBLE1 = 61 , + MOBILE_STATIC_INFO_MARBLE2 = 62 , + MOBILE_STATIC_INFO_MARBLE3 = 63 , + MOBILE_STATIC_INFO_MARBLE4 = 64 , + MOBILE_STATIC_INFO_MARBLE5 = 65 , + MOBILE_STATIC_INFO_MARBLE6 = 66 , + MOBILE_STATIC_INFO_MARBLE7 = 67 , + MOBILE_STATIC_INFO_MARBLE8 = 68 , + MOBILE_STATIC_INFO_MARBLE9 = 69 , + MOBILE_STATIC_INFO_MARBLE10 = 70 , + MOBILE_STATIC_INFO_MARBLE11 = 71 , + MOBILE_STATIC_INFO_MARBLE12 = 72 , + MOBILE_STATIC_INFO_EGG = 73 , + MOBILE_STATIC_INFO_SOFT_BALL = 74 , + MOBILE_STATIC_INFO_BASE_ONLY_BATS = 75 , + MOBILE_STATIC_INFO_BASE_ONLY_CREATURE_FIGHT = 76 , + MOBILE_STATIC_INFO_BASE_ONLY_CREATURE_SPEED = 77 , + MOBILE_STATIC_INFO_BASE_ONLY_FUNGUS = 78 , + MOBILE_STATIC_INFO_BASE_ONLY_ICE = 79 , + MOBILE_STATIC_INFO_BASE_ONLY_NO_ENCOUNTER = 80 , + MOBILE_STATIC_INFO_BASE_ONLY_SWAMP = 81 , + MOBILE_STATIC_INFO_BASE_ONLY_TELEPORT = 82 , + MOBILE_STATIC_INFO_BASE_ONLY_SWAP = 83 , + MOBILE_STATIC_INFO_BASE_ONLY_BROTHERHOOD = 84 , + MOBILE_STATIC_INFO_BASE_ONLY_BROTHERHOOD_SMALL = 85 , + MOBILE_STATIC_INFO_WATER_CANNON = 86 , + MOBILE_STATIC_INFO_WATER_CANNON_AMMO = 87 , + MOBILE_STATIC_INFO_BASE_ONLY_MARBLE_BASE = 88 , + MOBILE_STATIC_INFO_LAST = 89 , +}; + +//***************************************************************************** +// ENUM Values: SPEED_THRESHOLD +//***************************************************************************** +enum SPEED_THRESHOLD +{ + SPEED_THRESHOLD_VILLAGER_NORMAL = 0 , + SPEED_THRESHOLD_VILLAGER_MAN = 1 , + SPEED_THRESHOLD_ANIMAL_COW = 2 , + SPEED_THRESHOLD_ANIMAL_HORSE = 3 , + SPEED_THRESHOLD_ANIMAL_SHEEP = 4 , + SPEED_THRESHOLD_ANIMAL_PIG = 5 , + SPEED_THRESHOLD_ANIMAL_LION = 6 , + SPEED_THRESHOLD_ANIMAL_TIGER = 7 , + SPEED_THRESHOLD_ANIMAL_LEOPARD = 8 , + SPEED_THRESHOLD_ANIMAL_WOLF = 9 , + SPEED_THRESHOLD_LAST = 10 , +}; + +//***************************************************************************** +// ENUM Values: SPEED_MAX +//***************************************************************************** +enum SPEED_MAX +{ + SPEED_MAX_WALK = 0 , + SPEED_MAX_RUN = 1 , +}; + +//***************************************************************************** +// ENUM Values: SPEED_ID +//***************************************************************************** +enum SPEED_ID +{ + SPEED_ID_DEFAULT = 0 , + SPEED_ID_FLEEING = 1 , + SPEED_ID_BRISK_WALK = 2 , + SPEED_ID_DANCING = 3 , + SPEED_ID_STALKING = 2 , + SPEED_ID_ATTACK = 3 , + SPEED_ID_HUNTING = 4 , + SPEED_ID_WANDER = 4 , + SPEED_ID_RUNNING = 5 , + SPEED_ID_LAST = 6 , +}; + +//***************************************************************************** +// ENUM Values: DANCE_INFO +//***************************************************************************** +enum DANCE_INFO +{ + DANCE_INFO_NONE = -1 , + DANCE_INFO_WORSHIP = 0 , + DANCE_INFO_CREATURE = 1 , + DANCE_INFO_MEETING = 2 , + DANCE_INFO_HOUSEWIFE = 3 , + DANCE_INFO_BUILDING_SMALL = 4 , + DANCE_INFO_BUILDING_LARGE = 5 , + DANCE_INFO_DANCE_AROUND_PERSON = 6 , + DANCE_INFO_DANCE_PRAY_INWARDS = 7 , + DANCE_INFO_DANCE_TOWN_CELEBRATION = 8 , + DANCE_INFO_CREATURE_TELLING_STORY = 9 , + DANCE_INFO_CREATURE_PLAYING_GAME_WITH_VILLAGERS = 10 , + DANCE_INFO_CREATURE_DANCE_WITH_VILLAGERS_WATCHING + = 11 , + DANCE_INFO_CREATURE_DANCE_TO_IMPRESS_VILLAGERS = 12 , + DANCE_INFO_CREATURE_DANCE_AMOROUS = 13 , + DANCE_INFO_NEW_DANCE_AROUND_PERSON = 14 , + DANCE_INFO_DANCE_AROUND_OBJECT_DIAMETER_LESS_7 = 15 , + DANCE_INFO_DANCE_AROUND_OBJECT_DIAMETER_LESS_10 = 16 , + DANCE_INFO_DANCE_AROUND_OBJECT_DIAMETER_LESS_20 = 17 , + DANCE_INFO_DANCE_AROUND_OBJECT_DIAMETER_GREATER_20 + = 18 , + DANCE_INFO_CITADEL_DANCE_1 = 19 , + DANCE_INFO_CITADEL_DANCE_2 = 20 , + DANCE_INFO_CITADEL_DANCE_3 = 21 , + DANCE_INFO_CITADEL_DANCE_4 = 22 , + DANCE_INFO_CITADEL_DANCE_5 = 23 , + DANCE_INFO_CITADEL_DANCE_6 = 24 , + DANCE_INFO_LAST = 25 , +}; + +//***************************************************************************** +// ENUM Values: VILLAGER_AVAILABLE +//***************************************************************************** +enum VILLAGER_AVAILABLE +{ + VILLAGER_AVAILABLE_FREE = 1 , + VILLAGER_AVAILABLE_AT_HOME = 3 , + VILLAGER_AVAILABLE_NOT_FREE = 4 , +}; + +//***************************************************************************** +// ENUM Values: VILLAGER_MUSTBE +//***************************************************************************** +enum VILLAGER_MUSTBE +{ + VILLAGER_MUSTBE_DONT_CARE = 0 , + VILLAGER_MUSTBE_AT_HOME = 1 , + VILLAGER_MUSTBE_NOT_AT_HOME = 2 , +}; + +//***************************************************************************** +// ENUM Values: VILLAGER_MAKE_DINNER +//***************************************************************************** +enum VILLAGER_MAKE_DINNER +{ + VILLAGER_MAKE_DINNER_YES = 0 , + VILLAGER_MAKE_DINNER_MAKING = 1 , + VILLAGER_MAKE_DINNER_NO = 2 , + VILLAGER_MAKE_DINNER_NOT_YET = 3 , +}; + +//***************************************************************************** +// ENUM Values: POWER_UP_TYPE +//***************************************************************************** +enum POWER_UP_TYPE +{ + POWER_UP_TYPE_NONE = -1 , + POWER_UP_TYPE_ONE = 0 , + POWER_UP_TYPE_TWO = 1 , + POWER_UP_TYPE_THREE = 2 , + POWER_UP_TYPE_LAST = 3 , +}; + +//***************************************************************************** +// ENUM Values: BIG_FOREST_INFO +//***************************************************************************** +enum BIG_FOREST_INFO +{ + BIG_FOREST_INFO_NONE = -1 , + BIG_FOREST_INFO_1 = 0 , + BIG_FOREST_INFO_2 = 1 , + BIG_FOREST_INFO_3 = 2 , + BIG_FOREST_INFO_4 = 3 , + BIG_FOREST_INFO_LAST = 4 , +}; + +//***************************************************************************** +// ENUM Values: FURNITURE_INFO +//***************************************************************************** +enum FURNITURE_INFO +{ + FURNITURE_INFO_NONE = -1 , + FURNITURE_INFO_AXE = 0 , + FURNITURE_INFO_BAG = 1 , + FURNITURE_INFO_BALL = 2 , + FURNITURE_INFO_BENCH = 3 , + FURNITURE_INFO_BUCKET = 4 , + FURNITURE_INFO_BUCKET02 = 5 , + FURNITURE_INFO_CHEST = 6 , + FURNITURE_INFO_CHEST_TOP = 7 , + FURNITURE_INFO_CROOK = 8 , + FURNITURE_INFO_FISHING_ROD = 9 , + FURNITURE_INFO_FRAME = 10 , + FURNITURE_INFO_FRAME_SKIN = 11 , + FURNITURE_INFO_HAMMER = 12 , + FURNITURE_INFO_MALLET_HEAVY = 13 , + FURNITURE_INFO_SAW = 14 , + FURNITURE_INFO_SCYTHE = 15 , + FURNITURE_INFO_SPADE = 16 , + FURNITURE_INFO_STOOL = 17 , + FURNITURE_INFO_STOOL01 = 18 , + FURNITURE_INFO_TABLE = 19 , + FURNITURE_INFO_TROUGH = 20 , + FURNITURE_INFO_WASHING_LINE_AMCN = 21 , + FURNITURE_INFO_WASHING_LINE_AZTC = 22 , + FURNITURE_INFO_WASHING_LINE_CELT = 23 , + FURNITURE_INFO_WASHING_LINE_EGPT = 24 , + FURNITURE_INFO_WASHING_LINE_GREK = 25 , + FURNITURE_INFO_WASHING_LINE_JAPN = 26 , + FURNITURE_INFO_WASHING_LINE_NORS = 27 , + FURNITURE_INFO_WASHING_LINE_TIBT = 28 , + FURNITURE_INFO_WELL = 29 , + FURNITURE_INFO_WELL_COVERED = 30 , + FURNITURE_INFO_LAST = 31 , +}; + +//***************************************************************************** +// ENUM Values: FISH_FARM_INFO +//***************************************************************************** +enum FISH_FARM_INFO +{ + FISH_FARM_INFO_NONE = -1 , + FISH_FARM_INFO_NORMAL = 0 , + FISH_FARM_INFO_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: WEATHER_INFO +//***************************************************************************** +enum WEATHER_INFO +{ + WEATHER_INFO_NONE = -1 , + WEATHER_INFO_MONSOON = 0 , + WEATHER_INFO_RAIN = 1 , + WEATHER_INFO_DRIZZLE = 2 , + WEATHER_INFO_SLEET = 3 , + WEATHER_INFO_SNOW_NO_SETTLE = 4 , + WEATHER_INFO_SNOW = 5 , + WEATHER_INFO_BLIZZARD = 6 , + WEATHER_INFO_LAST = 7 , +}; + +//***************************************************************************** +// ENUM Values: CLIMATE_INFO +//***************************************************************************** +enum CLIMATE_INFO +{ + CLIMATE_INFO_NONE = -1 , + CLIMATE_INFO_WORLD_DEFAULT = 0 , + CLIMATE_INFO_DESERT = 1 , + CLIMATE_INFO_POLAR = 2 , + CLIMATE_INFO_JUNGLE = 3 , + CLIMATE_INFO_GENERAL_SNOW = 4 , + CLIMATE_INFO_COLD_RAIN = 5 , + CLIMATE_INFO_INTERNET = 6 , + CLIMATE_INFO_LAST = 7 , +}; + +//***************************************************************************** +// ENUM Values: REWARD_OBJECT_INFO +//***************************************************************************** +enum REWARD_OBJECT_INFO +{ + REWARD_OBJECT_INFO_NONE = 0 , + REWARD_OBJECT_INFO_HEAL_PU1 = 1 , + REWARD_OBJECT_INFO_HEAL_PU2 = 2 , + REWARD_OBJECT_INFO_SMALL_FOOD = 3 , + REWARD_OBJECT_INFO_MEDIUM_FOOD = 4 , + REWARD_OBJECT_INFO_LARGE_FOOD = 5 , + REWARD_OBJECT_INFO_SMALL_WOOD = 6 , + REWARD_OBJECT_INFO_MEDIUM_WOOD = 7 , + REWARD_OBJECT_INFO_LARGE_WOOD = 8 , + REWARD_OBJECT_INFO_SPELL_SEED_FIREBALL = 9 , + REWARD_OBJECT_INFO_SPELL_FIREBALL_PU1 = 10 , + REWARD_OBJECT_INFO_SPELL_FIREBALL_PU2 = 11 , + REWARD_OBJECT_INFO_SPELL_SEED_BOLT = 12 , + REWARD_OBJECT_INFO_SPELL_BOLT_PU1 = 13 , + REWARD_OBJECT_INFO_SPELL_BOLT_PU2 = 14 , + REWARD_OBJECT_INFO_SPELL_SEED_EXPLOSION = 15 , + REWARD_OBJECT_INFO_SPELL_EXPLOSION_PU1 = 16 , + REWARD_OBJECT_INFO_SPELL_SEED_HEAL = 17 , + REWARD_OBJECT_INFO_SPELL_HEAL_PU1 = 18 , + REWARD_OBJECT_INFO_SPELL_SEED_TELEPORT = 19 , + REWARD_OBJECT_INFO_SPELL_SEED_FOOD = 20 , + REWARD_OBJECT_INFO_SPELL_SEED_STORM = 21 , + REWARD_OBJECT_INFO_SPELL_STORM_PU1 = 22 , + REWARD_OBJECT_INFO_SPELL_STORM_PU2 = 23 , + REWARD_OBJECT_INFO_SPELL_STORM_PU3 = 24 , + REWARD_OBJECT_INFO_SPELL_SEED_SHIELD = 25 , + REWARD_OBJECT_INFO_SPELL_SHIELD_PU1 = 26 , + REWARD_OBJECT_INFO_SPELL_SEED_PHYSICAL_SHIELD = 27 , + REWARD_OBJECT_INFO_SPELL_SEED_WOOD = 28 , + REWARD_OBJECT_INFO_SPELL_SEED_SKELETON = 29 , + REWARD_OBJECT_INFO_SPELL_SKELETON_PU1 = 30 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_FREEZE = 31 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_SMALL = 32 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_BIG = 33 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_WEAK = 34 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_STRONG = 35 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_FAT = 36 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_THIN = 37 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_INVISIBLE= 38 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_COMPASSION + = 39 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_ANGRY = 40 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_HUNGRY = 41 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_FRIGHTENE= 42 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_TRIED = 43 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_ILL = 44 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_THIRSTY = 45 , + REWARD_OBJECT_INFO_SPELL_SEED_CREATURE_ITCHY = 46 , + REWARD_OBJECT_INFO_SMALL_BELIEF = 47 , + REWARD_OBJECT_INFO_MEDIUM_BELIEF = 48 , + REWARD_OBJECT_INFO_LARGE_BELIEF = 49 , + REWARD_OBJECT_INFO_INCREMENT = 50 , + REWARD_OBJECT_INFO_SINGING_STONE = 51 , + REWARD_OBJECT_INFO_IDOL = 52 , + REWARD_OBJECT_INFO_WEEPING_STONE = 53 , + REWARD_OBJECT_INFO_SCAFFOLD = 54 , + REWARD_OBJECT_INFO_SPELL_SEED_WATER = 55 , + REWARD_OBJECT_INFO_SPELL_SEED_FLOCK_FLYING = 56 , + REWARD_OBJECT_INFO_SPELL_SEED_FLOCK_GROUND = 57 , + REWARD_OBJECT_TOY_BALL = 58 , + REWARD_OBJECT_TOY_CUDDLY = 59 , + REWARD_OBJECT_TOY_DIE = 60 , + REWARD_OBJECT_INFO_LAST = 61 , +}; + +//***************************************************************************** +// ENUM Values: REWARD_PROGRESS_GOOD +//***************************************************************************** +enum REWARD_PROGRESS_GOOD +{ + REWARD_INFO_PROGRESS_GOOD_1 = 0 , + REWARD_INFO_PROGRESS_GOOD_2 = 1 , + REWARD_INFO_PROGRESS_GOOD_3 = 2 , + REWARD_INFO_PROGRESS_GOOD_4 = 3 , + REWARD_INFO_PROGRESS_GOOD_5 = 4 , + REWARD_INFO_PROGRESS_GOOD_6 = 5 , + REWARD_INFO_PROGRESS_GOOD_7 = 6 , + REWARD_INFO_PROGRESS_GOOD_8 = 7 , + REWARD_INFO_PROGRESS_GOOD_9 = 8 , + REWARD_INFO_PROGRESS_GOOD_10 = 9 , + REWARD_INFO_PROGRESS_GOOD_11 = 10 , + REWARD_INFO_PROGRESS_GOOD_12 = 11 , + REWARD_INFO_PROGRESS_GOOD_13 = 12 , + REWARD_INFO_PROGRESS_GOOD_14 = 13 , + REWARD_INFO_PROGRESS_GOOD_15 = 14 , + REWARD_INFO_PROGRESS_GOOD_16 = 15 , + REWARD_INFO_PROGRESS_GOOD_17 = 16 , + REWARD_INFO_PROGRESS_GOOD_18 = 17 , + REWARD_INFO_PROGRESS_GOOD_19 = 18 , + REWARD_INFO_PROGRESS_GOOD_20 = 19 , + REWARD_INFO_PROGRESS_GOOD_21 = 20 , + REWARD_INFO_PROGRESS_GOOD_22 = 21 , + REWARD_INFO_PROGRESS_GOOD_23 = 22 , + REWARD_INFO_PROGRESS_GOOD_24 = 23 , + REWARD_INFO_PROGRESS_GOOD_25 = 24 , + REWARD_INFO_PROGRESS_GOOD_26 = 25 , + REWARD_INFO_PROGRESS_GOOD_27 = 26 , + REWARD_INFO_PROGRESS_GOOD_28 = 27 , + REWARD_INFO_PROGRESS_GOOD_29 = 28 , + REWARD_INFO_PROGRESS_GOOD_30 = 29 , + REWARD_INFO_PROGRESS_GOOD_LAST = 30 , +}; + +//***************************************************************************** +// ENUM Values: REWARD_PROGRESS_EVIL +//***************************************************************************** +enum REWARD_PROGRESS_EVIL +{ + REWARD_INFO_PROGRESS_EVIL_1 = 0 , + REWARD_INFO_PROGRESS_EVIL_2 = 1 , + REWARD_INFO_PROGRESS_EVIL_3 = 2 , + REWARD_INFO_PROGRESS_EVIL_4 = 3 , + REWARD_INFO_PROGRESS_EVIL_5 = 4 , + REWARD_INFO_PROGRESS_EVIL_6 = 5 , + REWARD_INFO_PROGRESS_EVIL_7 = 6 , + REWARD_INFO_PROGRESS_EVIL_8 = 7 , + REWARD_INFO_PROGRESS_EVIL_9 = 8 , + REWARD_INFO_PROGRESS_EVIL_10 = 9 , + REWARD_INFO_PROGRESS_EVIL_11 = 10 , + REWARD_INFO_PROGRESS_EVIL_12 = 11 , + REWARD_INFO_PROGRESS_EVIL_13 = 12 , + REWARD_INFO_PROGRESS_EVIL_14 = 13 , + REWARD_INFO_PROGRESS_EVIL_15 = 14 , + REWARD_INFO_PROGRESS_EVIL_16 = 15 , + REWARD_INFO_PROGRESS_EVIL_17 = 16 , + REWARD_INFO_PROGRESS_EVIL_18 = 17 , + REWARD_INFO_PROGRESS_EVIL_19 = 18 , + REWARD_INFO_PROGRESS_EVIL_20 = 19 , + REWARD_INFO_PROGRESS_EVIL_21 = 20 , + REWARD_INFO_PROGRESS_EVIL_22 = 21 , + REWARD_INFO_PROGRESS_EVIL_23 = 22 , + REWARD_INFO_PROGRESS_EVIL_24 = 23 , + REWARD_INFO_PROGRESS_EVIL_25 = 24 , + REWARD_INFO_PROGRESS_EVIL_26 = 25 , + REWARD_INFO_PROGRESS_EVIL_27 = 26 , + REWARD_INFO_PROGRESS_EVIL_28 = 27 , + REWARD_INFO_PROGRESS_EVIL_29 = 28 , + REWARD_INFO_PROGRESS_EVIL_30 = 29 , + REWARD_INFO_PROGRESS_EVIL_LAST = 30 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_ACTION_LEARNING_TYPE +//***************************************************************************** +enum CREATURE_ACTION_LEARNING_TYPE +{ + CREATURE_ACTION_LEARNING_TYPE_NORMAL = 0 , + CREATURE_ACTION_LEARNING_TYPE_FIRST = 0 , + CREATURE_ACTION_LEARNING_TYPE_MAGIC = 1 , + CREATURE_ACTION_LEARNING_TYPE_LAST = 2 , + CREATURE_ACTION_LEARNING_TYPE_NONE = 2 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_ACTION_KNOWN_ABOUT +//***************************************************************************** +enum CREATURE_ACTION_KNOWN_ABOUT +{ + CREATURE_ACTION_KNOWN_ABOUT_BUILD = 0 , + CREATURE_ACTION_KNOWN_ABOUT_USE_FIELD = 1 , + CREATURE_ACTION_KNOWN_ABOUT_USE_TOTEM = 2 , + CREATURE_ACTION_KNOWN_ABOUT_USE_STORAGE_PIT = 3 , + CREATURE_ACTION_KNOWN_ABOUT_FISH = 4 , + CREATURE_ACTION_KNOWN_ABOUT_DANCE = 5 , + CREATURE_ACTION_KNOWN_ABOUT_LAST = 6 , + CREATURE_ACTION_KNOWN_ABOUT_NONE = 6 , +}; + +//***************************************************************************** +// ENUM Values: LANDED_TYPES +//***************************************************************************** +enum LANDED_TYPES +{ + LANDED_STANDING = 0 , + LANDED_ON_FRONT = 1 , + LANDED_ON_BACK = 2 , + LANDED_ON_RIGHT_SIDE = 1 , + LANDED_ON_LEFT_SIDE = 2 , + LANDED_DEFAULT = 3 , +}; + +//***************************************************************************** +// ENUM Values: MAGIC_LIVING_INFO +//***************************************************************************** +enum MAGIC_LIVING_INFO +{ + MAGIC_LIVING_INFO_PRIEST = 0 , + MAGIC_LIVING_INFO_SKELETON = 1 , + MAGIC_LIVING_INFO_LAST = 2 , +}; + +//***************************************************************************** +// ENUM Values: PLAYER_INFO +//***************************************************************************** +enum PLAYER_INFO +{ + PLAYER_INFO_NORMAL = 0 , + PLAYER_INFO_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: CREATURE_DESIRES +//***************************************************************************** +enum CREATURE_DESIRES +{ + CREATURE_DESIRE_TO_IMPRESS = 0 , + FIRST_CREATURE_DESIRE = 0 , + CREATURE_DESIRE_COMPASSION = 1 , + CREATURE_DESIRE_ANGER = 2 , + CREATURE_DESIRE_TO_PLAY = 3 , + CREATURE_DESIRE_HUNGER = 4 , + CREATURE_DESIRE_FEAR = 5 , + CREATURE_DESIRE_CURIOSITY = 6 , + CREATURE_DESIRE_TO_POO = 7 , + CREATURE_DESIRE_TIREDNESS = 8 , + CREATURE_DESIRE_TO_IDLE_AROUND_WITH_PLAYER = 9 , + CREATURE_DESIRE_WANDERLUST = 10 , + CREATURE_DESIRE_TO_PUKE = 11 , + CREATURE_DESIRE_TO_BUILD_HOME = 12 , + CREATURE_DESIRE_TO_BRING_STUFF_HOME = 13 , + CREATURE_DESIRE_FOR_WATER = 14 , + CREATURE_DESIRE_TO_RESTORE_HEALTH = 15 , + CREATURE_DESIRE_TO_BE_FRIENDS = 16 , + CREATURE_DESIRE_TO_ATTRACT_PLAYERS_ATTENTION = 17 , + CREATURE_DESIRE_TO_MANIFEST_STATE = 18 , + CREATURE_DESIRE_TO_GET_WARMER = 19 , + CREATURE_DESIRE_TO_GET_COLDER = 20 , + CREATURE_DESIRE_TO_SCRATCH = 21 , + CREATURE_DESIRE_TO_RUN_AWAY_FROM_PLAYER = 22 , + CREATURE_DESIRE_TO_REST = 23 , + CREATURE_DESIRE_TO_OBEY_PLAYER = 24 , + CREATURE_DESIRE_ILLNESS = 25 , + CREATURE_DESIRE_TO_OBEY_CREATURE = 26 , + CREATURE_DESIRE_SADNESS = 27 , + CREATURE_DESIRE_TO_STAY_NEAR_HOME = 28 , + CREATURE_DESIRE_TO_TELL_PLAYER_WHAT_YOU_THINK_OF_HIM + = 29 , + CREATURE_DESIRE_TO_PLAY_WITH_PLAYER = 30 , + CREATURE_DESIRE_TO_TELL_CREATURE_WHAT_YOU_THINK_OF_HIM + = 31 , + CREATURE_DESIRE_TO_EDUCATE_FRIEND = 32 , + CREATURE_DESIRE_TO_FOLLOW_PLAYER_DESIRE = 33 , + CREATURE_DESIRE_TO_GET_HIGH = 34 , + CREATURE_DESIRE_TO_HANG_AROUND_AT_HOME = 35 , + CREATURE_DESIRE_MENTAL_ILLNESS = 36 , + CREATURE_DESIRE_MISS_FRIEND = 37 , + CREATURE_DESIRE_TO_LOOK_AROUND = 38 , + CREATURE_DESIRE_TO_STEAL = 39 , + NUM_CREATURE_DESIRES = 40 , + INVALID_CREATURE_DESIRE = 40 , + ANY_CREATURE_DESIRE = 41 , + NO_CREATURE_DESIRE = 42 , +}; + +//***************************************************************************** +// ENUM Values: SOUND_COLLISION_TYPE +//***************************************************************************** +enum SOUND_COLLISION_TYPE +{ + SOUND_COLLISION_TYPE_DEFAULT = 0 , + SOUND_COLLISION_TYPE_FLESH = 1 , + SOUND_COLLISION_TYPE_BUSH = 2 , + SOUND_COLLISION_TYPE_FIR_TREE = 3 , + SOUND_COLLISION_TYPE_ENGLISH_TREE = 4 , + SOUND_COLLISION_TYPE_BURNT_TREE = 5 , + SOUND_COLLISION_TYPE_PALM_TREE = 6 , + SOUND_COLLISION_TYPE_FABRIC_BUILDING = 7 , + SOUND_COLLISION_TYPE_MUD_BUILDING = 8 , + SOUND_COLLISION_TYPE_WOODEN_BUILDING = 9 , + SOUND_COLLISION_TYPE_BRICK_BUILDING = 10 , + SOUND_COLLISION_TYPE_GRAIN = 11 , + SOUND_COLLISION_TYPE_SOLID_WOOD = 12 , + SOUND_COLLISION_TYPE_SOLID_METAL = 13 , + SOUND_COLLISION_TYPE_SOLID_STONE = 14 , + SOUND_COLLISION_TYPE_BRITTLE_STONE = 15 , + SOUND_COLLISION_TYPE_FLINT_STONE = 16 , + SOUND_COLLISION_TYPE_CHALK_STONE = 17 , + SOUND_COLLISION_TYPE_HOLLOW_WOOD = 18 , + SOUND_COLLISION_TYPE_HOLLOW_METAL = 19 , + SOUND_COLLISION_TYPE_FUNGUS = 20 , + SOUND_COLLISION_TYPE_CART = 21 , + SOUND_COLLISION_TYPE_MUCK = 22 , + SOUND_COLLISION_TYPE_POTTERY = 23 , + SOUND_COLLISION_TYPE_FOOTBALL = 24 , + SOUND_COLLISION_TYPE_FURNITURE = 25 , + SOUND_COLLISION_TYPE_TOOLS = 26 , + SOUND_COLLISION_TYPE_GROUND = 27 , + SOUND_COLLISION_TYPE_PHYSICAL_SHIELD = 28 , + SOUND_COLLISION_TYPE_WATER = 29 , + SOUND_COLLISION_TYPE_SPELL_BUBBLE = 30 , + SOUND_COLLISION_TYPE_FRAGMENT = 31 , + SOUND_COLLISION_TYPE_SCAFFOLD = 32 , + SOUND_COLLISION_TYPE_SKITTLE = 33 , + SOUND_COLLISION_TYPE_LAST = 34 , +}; + +//***************************************************************************** +// ENUM Values: SPECIAL_VILLAGER_INFO +//***************************************************************************** +enum SPECIAL_VILLAGER_INFO +{ + SPECIAL_VILLAGER_INFO_LAST = 68 , +}; + +//***************************************************************************** +// ENUM Values: TOOLTIPS_TYPE +//***************************************************************************** +enum TOOLTIPS_TYPE +{ + TOOLTIPS_TYPE_NONE = -1 , + TOOLTIPS_TYPE_1 = 0 , + TOOLTIPS_TYPE_2 = 1 , + TOOLTIPS_TYPE_3 = 2 , + TOOLTIPS_TYPE_4 = 3 , + TOOLTIPS_TYPE_5 = 4 , + TOOLTIPS_TYPE_6 = 5 , + TOOLTIPS_TYPE_7 = 6 , + TOOLTIPS_TYPE_8 = 7 , + TOOLTIPS_TYPE_9 = 8 , + TOOLTIPS_TYPE_10 = 9 , + TOOLTIPS_TYPE_11 = 10 , + TOOLTIPS_TYPE_12 = 11 , + TOOLTIPS_TYPE_13 = 12 , + TOOLTIPS_TYPE_14 = 13 , + TOOLTIPS_TYPE_15 = 14 , + TOOLTIPS_TYPE_16 = 15 , + TOOLTIPS_TYPE_17 = 16 , + TOOLTIPS_TYPE_18 = 17 , + TOOLTIPS_TYPE_19 = 18 , + TOOLTIPS_TYPE_20 = 19 , + TOOLTIPS_TYPE_21 = 20 , + TOOLTIPS_TYPE_22 = 21 , + TOOLTIPS_TYPE_23 = 22 , + TOOLTIPS_TYPE_24 = 23 , + TOOLTIPS_TYPE_25 = 24 , + TOOLTIPS_TYPE_26 = 25 , + TOOLTIPS_TYPE_27 = 26 , + TOOLTIPS_TYPE_28 = 27 , + TOOLTIPS_TYPE_29 = 28 , + TOOLTIPS_TYPE_30 = 29 , + TOOLTIPS_TYPE_31 = 30 , + TOOLTIPS_TYPE_32 = 31 , + TOOLTIPS_TYPE_33 = 32 , + TOOLTIPS_TYPE_34 = 33 , + TOOLTIPS_TYPE_35 = 34 , + TOOLTIPS_TYPE_36 = 35 , + TOOLTIPS_TYPE_37 = 36 , + TOOLTIPS_TYPE_38 = 37 , + TOOLTIPS_TYPE_39 = 38 , + TOOLTIPS_TYPE_40 = 39 , + TOOLTIPS_TYPE_41 = 40 , + TOOLTIPS_TYPE_42 = 41 , + TOOLTIPS_TYPE_43 = 42 , + TOOLTIPS_TYPE_44 = 43 , + TOOLTIPS_TYPE_45 = 44 , + TOOLTIPS_TYPE_46 = 45 , + TOOLTIPS_TYPE_47 = 46 , + TOOLTIPS_TYPE_48 = 47 , + TOOLTIPS_TYPE_49 = 48 , + TOOLTIPS_TYPE_50 = 49 , + TOOLTIPS_TYPE_51 = 50 , + TOOLTIPS_TYPE_52 = 51 , + TOOLTIPS_TYPE_53 = 52 , + TOOLTIPS_TYPE_54 = 53 , + TOOLTIPS_TYPE_55 = 54 , + TOOLTIPS_TYPE_56 = 55 , + TOOLTIPS_TYPE_57 = 56 , + TOOLTIPS_TYPE_58 = 57 , + TOOLTIPS_TYPE_59 = 58 , + TOOLTIPS_TYPE_60 = 59 , + TOOLTIPS_TYPE_61 = 60 , + TOOLTIPS_TYPE_62 = 61 , + TOOLTIPS_TYPE_63 = 62 , + TOOLTIPS_TYPE_64 = 63 , + TOOLTIPS_TYPE_65 = 64 , + TOOLTIPS_TYPE_66 = 65 , + TOOLTIPS_TYPE_67 = 66 , + TOOLTIPS_TYPE_68 = 67 , + TOOLTIPS_TYPE_69 = 68 , + TOOLTIPS_TYPE_70 = 69 , + TOOLTIPS_TYPE_71 = 70 , + TOOLTIPS_TYPE_72 = 71 , + TOOLTIPS_TYPE_73 = 72 , + TOOLTIPS_TYPE_74 = 73 , + TOOLTIPS_TYPE_75 = 74 , + TOOLTIPS_TYPE_76 = 75 , + TOOLTIPS_TYPE_77 = 76 , + TOOLTIPS_TYPE_78 = 77 , + TOOLTIPS_TYPE_79 = 78 , + TOOLTIPS_TYPE_80 = 79 , + TOOLTIPS_TYPE_81 = 80 , + TOOLTIPS_TYPE_82 = 81 , + TOOLTIPS_TYPE_83 = 82 , + TOOLTIPS_TYPE_84 = 83 , + TOOLTIPS_TYPE_85 = 84 , + TOOLTIPS_TYPE_86 = 85 , + TOOLTIPS_TYPE_87 = 86 , + TOOLTIPS_TYPE_88 = 87 , + TOOLTIPS_TYPE_89 = 88 , + TOOLTIPS_TYPE_90 = 89 , + TOOLTIPS_TYPE_91 = 90 , + TOOLTIPS_TYPE_92 = 91 , + TOOLTIPS_TYPE_93 = 92 , + TOOLTIPS_TYPE_94 = 93 , + TOOLTIPS_TYPE_95 = 94 , + TOOLTIPS_TYPE_96 = 95 , + TOOLTIPS_TYPE_97 = 96 , + TOOLTIPS_TYPE_98 = 97 , + TOOLTIPS_TYPE_99 = 98 , + TOOLTIPS_TYPE_100 = 99 , + TOOLTIPS_TYPE_101 = 100 , + TOOLTIPS_TYPE_102 = 101 , + TOOLTIPS_TYPE_103 = 102 , + TOOLTIPS_TYPE_104 = 103 , + TOOLTIPS_TYPE_105 = 104 , + TOOLTIPS_TYPE_106 = 105 , + TOOLTIPS_TYPE_107 = 106 , + TOOLTIPS_TYPE_108 = 107 , + TOOLTIPS_TYPE_109 = 108 , + TOOLTIPS_TYPE_110 = 109 , + TOOLTIPS_TYPE_111 = 110 , + TOOLTIPS_TYPE_112 = 111 , + TOOLTIPS_TYPE_113 = 112 , + TOOLTIPS_TYPE_114 = 113 , + TOOLTIPS_TYPE_115 = 114 , + TOOLTIPS_TYPE_116 = 115 , + TOOLTIPS_TYPE_117 = 116 , + TOOLTIPS_TYPE_118 = 117 , + TOOLTIPS_TYPE_119 = 118 , + TOOLTIPS_TYPE_120 = 119 , + TOOLTIPS_TYPE_121 = 120 , + TOOLTIPS_TYPE_122 = 121 , + TOOLTIPS_TYPE_123 = 122 , + TOOLTIPS_TYPE_124 = 123 , + TOOLTIPS_TYPE_125 = 124 , + TOOLTIPS_TYPE_126 = 125 , + TOOLTIPS_TYPE_127 = 126 , + TOOLTIPS_TYPE_128 = 127 , + TOOLTIPS_TYPE_129 = 128 , + TOOLTIPS_TYPE_130 = 129 , + TOOLTIPS_TYPE_131 = 130 , + TOOLTIPS_TYPE_132 = 131 , + TOOLTIPS_TYPE_133 = 132 , + TOOLTIPS_TYPE_134 = 133 , + TOOLTIPS_TYPE_135 = 134 , + TOOLTIPS_TYPE_136 = 135 , + TOOLTIPS_TYPE_137 = 136 , + TOOLTIPS_TYPE_138 = 137 , + TOOLTIPS_TYPE_139 = 138 , + TOOLTIPS_TYPE_140 = 139 , + TOOLTIPS_TYPE_141 = 140 , + TOOLTIPS_TYPE_142 = 141 , + TOOLTIPS_TYPE_143 = 142 , + TOOLTIPS_TYPE_144 = 143 , + TOOLTIPS_TYPE_145 = 144 , + TOOLTIPS_TYPE_146 = 145 , + TOOLTIPS_TYPE_147 = 146 , + TOOLTIPS_TYPE_148 = 147 , + TOOLTIPS_TYPE_149 = 148 , + TOOLTIPS_TYPE_150 = 149 , + TOOLTIPS_TYPE_151 = 150 , + TOOLTIPS_TYPE_152 = 151 , + TOOLTIPS_TYPE_153 = 152 , + TOOLTIPS_TYPE_154 = 153 , + TOOLTIPS_TYPE_155 = 154 , + TOOLTIPS_TYPE_156 = 155 , + TOOLTIPS_TYPE_157 = 156 , + TOOLTIPS_TYPE_158 = 157 , + TOOLTIPS_TYPE_159 = 158 , + TOOLTIPS_TYPE_160 = 159 , + TOOLTIPS_TYPE_161 = 160 , + TOOLTIPS_TYPE_162 = 161 , + TOOLTIPS_TYPE_163 = 162 , + TOOLTIPS_TYPE_164 = 163 , + TOOLTIPS_TYPE_165 = 164 , + TOOLTIPS_TYPE_166 = 165 , + TOOLTIPS_TYPE_167 = 166 , + TOOLTIPS_TYPE_168 = 167 , + TOOLTIPS_TYPE_169 = 168 , + TOOLTIPS_TYPE_170 = 169 , + TOOLTIPS_TYPE_LAST = 170 , +}; + +//***************************************************************************** +// ENUM Values: CARRIED_TREE_TYPE +//***************************************************************************** +enum CARRIED_TREE_TYPE +{ + CARRIED_TREE_TYPE_NONE = 0 , + CARRIED_TREE_TYPE_EVERGREEN = 1 , + CARRIED_TREE_TYPE_FRUIT = 2 , + CARRIED_TREE_TYPE_HARDWOOD = 3 , +}; + +//***************************************************************************** +// ENUM Values: VILLAGER_DISCIPLE +//***************************************************************************** +enum VILLAGER_DISCIPLE +{ + VILLAGER_DISCIPLE_NONE = 0 , + VILLAGER_DISCIPLE_FARMER = 1 , + VILLAGER_DISCIPLE_FORESTER = 2 , + VILLAGER_DISCIPLE_FISHERMAN = 3 , + VILLAGER_DISCIPLE_BUILDER = 4 , + VILLAGER_DISCIPLE_BREEDER = 5 , + VILLAGER_DISCIPLE_PROTECTION = 6 , + VILLAGER_DISCIPLE_MISSIONARY = 7 , + VILLAGER_DISCIPLE_CRAFTSMAN = 8 , + VILLAGER_DISCIPLE_TRADER = 9 , + VILLAGER_DISCIPLE_CHANGE_HOUSE = 10 , + VILLAGER_DISCIPLE_WORSHIP = 11 , + VILLAGER_DISCIPLE_FROM_VORTEX = 12 , + VILLAGER_DISCIPLE_LAST = 13 , +}; + +//***************************************************************************** +// ENUM Values: HOLD_TYPE +//***************************************************************************** +enum HOLD_TYPE +{ + HOLD_TYPE_NONE = 0 , + HOLD_TYPE_ABOVE = 1 , + HOLD_TYPE_MAGIC = 2 , + HOLD_TYPE_GRAIN = 3 , + HOLD_TYPE_FINGERS = 4 , + HOLD_TYPE_TREE = 5 , + HOLD_TYPE_SIDE = 6 , + HOLD_TYPE_VILLAGER = 7 , + HOLD_TYPE_LAST = 8 , +}; + +//***************************************************************************** +// ENUM Values: SCAFFOLD_INFO +//***************************************************************************** +enum SCAFFOLD_INFO +{ + SCAFFOLD_INFO_NORMAL = 0 , + SCAFFOLD_INFO_LAST = 1 , +}; + +//***************************************************************************** +// ENUM Values: HELP_SPRITES_GUIDANCE +//***************************************************************************** +enum HELP_SPRITES_GUIDANCE +{ + HELP_SPRITES_GUIDANCE_FIRST = 0 , + HELP_SPRITES_GUIDANCE_TOWN_BEING_ATTACKED = 0 , + HELP_SPRITES_GUIDANCE_CREATURE_BEING_ATTACKED = 1 , + HELP_SPRITES_GUIDANCE_CREATURE_ATTACKING_THEM = 2 , + HELP_SPRITES_GUIDANCE_LOSING_VILLAGERS = 3 , + HELP_SPRITES_GUIDANCE_ATTACKING_TOWN = 4 , + HELP_SPRITES_GUIDANCE_LOW_ON_FOOD = 5 , + HELP_SPRITES_GUIDANCE_LOW_ON_WOOD = 6 , + HELP_SPRITES_GUIDANCE_INJURED_PEOPLE = 7 , + HELP_SPRITES_GUIDANCE_LOW_ON_PEOPLE = 8 , + HELP_SPRITES_GUIDANCE_VILLAGERS_UNHAPPY = 9 , + HELP_SPRITES_GUIDANCE_LOSING_BELIEF = 10 , + HELP_SPRITES_GUIDANCE_OTHER_VILLAGES = 11 , + HELP_SPRITES_GUIDANCE_CREATURE_FIGHT = 12 , + HELP_SPRITES_GUIDANCE_GENERAL_BAD = 13 , + HELP_SPRITES_GUIDANCE_GENERAL_GOOD = 14 , + HELP_SPRITES_GUIDANCE_KILLING_PEOPLE = 15 , + HELP_SPRITES_GUIDANCE_GOOD_BEING_EVIL = 16 , + HELP_SPRITES_GUIDANCE_EVIL_BEING_GOOD = 17 , + HELP_SPRITES_GUIDANCE_WORSHIPPERS_DYING = 18 , + HELP_SPRITES_GUIDANCE_VERY_GOOD = 19 , + HELP_SPRITES_GUIDANCE_VERY_EVIL = 20 , + HELP_SPRITES_GUIDANCE_DESTROY_BUILDING = 21 , + HELP_SPRITES_GUIDANCE_LAST = 22 , +}; + +//***************************************************************************** +// ENUM Values: DYK_CATEGORY +//***************************************************************************** +enum DYK_CATEGORY +{ + DYK_NAVIGATION = 0 , + DYK_CREATURE = 1 , + DYK_VILLAGE_LIFE = 2 , + DYK_MIRACLES = 3 , + DYK_MISC = 4 , + DYK_LAST = 5 , +}; + +//***************************************************************************** +// ENUM Values: DEATH_REASON +//***************************************************************************** +enum DEATH_REASON +{ + DEATH_REASON_NONE = 0 , + DEATH_REASON_STARVING = 1 , + DEATH_REASON_SPELL = 2 , + DEATH_REASON_ANIMAL = 3 , + DEATH_REASON_CHANT = 4 , + DEATH_REASON_PLAYER_INTERACTION = 5 , + DEATH_REASON_PLAYER_INTERACTION_DROWN = 6 , + DEATH_REASON_SACRIFICE = 7 , + DEATH_REASON_EXHAUSTION = 8 , + DEATH_REASON_OLD_AGE = 9 , + DEATH_REASON_LAST = 10 , +}; + +//***************************************************************************** +// ENUM Values: IMMERSION_EFFECT_TYPE +//***************************************************************************** +enum IMMERSION_EFFECT_TYPE +{ + IMMERSION_EFFECT_TYPE_NONE = -1 , + IMMERSION_EFFECT_TYPE_FIRST = 0 , + IMMERSION_EFFECT_TYPE_FUR = 0 , + IMMERSION_EFFECT_TYPE_SLAP = 1 , + IMMERSION_EFFECT_TYPE_HIT = 2 , + IMMERSION_EFFECT_TYPE_GESTURE_SUCCESS = 3 , + IMMERSION_EFFECT_TYPE_GRIP_FORCE = 4 , + IMMERSION_EFFECT_TYPE_UPROOT = 5 , + IMMERSION_EFFECT_TYPE_HAND_HIT_INFLUENCE = 6 , + IMMERSION_EFFECT_TYPE_LEASH_PULL = 7 , + IMMERSION_EFFECT_TYPE_GESTURE_TRAIL = 8 , + IMMERSION_EFFECT_TYPE_SPELL_CRACKLE = 9 , + IMMERSION_EFFECT_TYPE_MISC_HEART = 10 , + IMMERSION_EFFECT_TYPE_SPRINKLE_FOOD = 11 , + IMMERSION_EFFECT_TYPE_SPRINKLE_WOOD = 12 , + IMMERSION_EFFECT_TYPE_BURNING = 13 , + IMMERSION_EFFECT_TYPE_ONE_SHOT_SPELL_POP = 14 , + IMMERSION_EFFECT_TYPE_HEAVY = 15 , + IMMERSION_EFFECT_TYPE_TRADEMARK = 16 , + IMMERSION_EFFECT_TYPE_MUSHROOM_CHALLENGE = 17 , + IMMERSION_EFFECT_TYPE_FIREBALL_L1 = 18 , + IMMERSION_EFFECT_TYPE_FIREBALL_L2 = 19 , + IMMERSION_EFFECT_TYPE_FIREBALL_L3 = 20 , + IMMERSION_EFFECT_TYPE_LIGHTNING_BOLT = 21 , + IMMERSION_EFFECT_TYPE_ANIMATING_IN_HAND = 22 , + IMMERSION_EFFECT_TYPE_GENERAL_SPELL_CAST = 23 , + IMMERSION_EFFECT_TYPE_SHIELD = 24 , + IMMERSION_EFFECT_TYPE_SPRINKLE_WATER = 25 , + IMMERSION_EFFECT_TYPE_FLOCK_FLYING = 26 , + IMMERSION_EFFECT_TYPE_FLOCK_ON_GROUND = 27 , + IMMERSION_EFFECT_TYPE_CREATURE_SPELL = 28 , + IMMERSION_EFFECT_TYPE_HAND_OVER_SPELL = 29 , + IMMERSION_EFFECT_TYPE_HAND_OVER_GENERAL = 30 , + IMMERSION_EFFECT_TYPE_HAND_OVER_STRAW = 31 , + IMMERSION_EFFECT_TYPE_HAND_OVER_SMOOTH = 32 , + IMMERSION_EFFECT_TYPE_HAND_OVER_WOOD = 33 , + IMMERSION_EFFECT_TYPE_HAND_OVER_CANVAS = 34 , + IMMERSION_EFFECT_TYPE_HAND_OVER_CHALLENGE_SCROLL= 35 , + IMMERSION_EFFECT_TYPE_HAND_OVER_STORY_SCROLL = 36 , + IMMERSION_EFFECT_TYPE_HAND_OVER_FOLIAGE = 37 , + IMMERSION_EFFECT_TYPE_HAND_OVER_CREED = 38 , + IMMERSION_EFFECT_TYPE_HAND_OVER_SINGING_STONES = 39 , + IMMERSION_EFFECT_TYPE_HAND_OVER_VORTEX = 40 , + IMMERSION_EFFECT_TYPE_HAND_OVER_CITADEL = 41 , + IMMERSION_EFFECT_TYPE_HIT_EXCLUSION = 42 , + IMMERSION_EFFECT_TYPE_MOVING_FISH = 43 , + IMMERSION_EFFECT_TYPE_COMMAND_SUCCESS = 44 , + IMMERSION_EFFECT_TYPE_HANOI = 45 , + IMMERSION_EFFECT_TYPE_PLANT_OBJECT = 46 , + IMMERSION_EFFECT_TYPE_HAND_OVER_TELEPORT = 47 , + IMMERSION_EFFECT_TYPE_HAND_OVER_SPECIAL_CROPS = 48 , + IMMERSION_EFFECT_TYPE_CANNON_FIRE = 49 , + IMMERSION_EFFECT_TYPE_LAST = 50 , +}; + +//***************************************************************************** +// ENUM Values: GUIDANCE_ALIGNMENT +//***************************************************************************** +enum GUIDANCE_ALIGNMENT +{ + GUIDANCE_ALIGNMENT_NONE = 0 , + GUIDANCE_ALIGNMENT_GOOD = 1 , + GUIDANCE_ALIGNMENT_EVIL = 2 , +}; + +//***************************************************************************** +// ENUM Values: LOADER_VERSIONS +//***************************************************************************** +enum LOADER_VERSIONS +{ + LOADER_VERSIONS_MAIN = 0 , + LOADER_VERSIONS_PATCH1 = 1 , + LOADER_VERSIONS_ADDON1 = 2 , + LOADER_VERSIONS_LAST = 3 , +}; + +#endif diff --git a/libs/chlasm/GStates.h b/libs/chlasm/GStates.h new file mode 100644 index 0000000..c942070 --- /dev/null +++ b/libs/chlasm/GStates.h @@ -0,0 +1,591 @@ +#pragma once +#ifndef __GSTATES_H__ +#define __GSTATES_H__ + +// Last Saved,#2001-07-30 17:03:04#,"Jonty Barnes" + +//***************************************************************************** +// ENUM Values: VILLAGER_STATES +//***************************************************************************** +enum VILLAGER_STATES +{ + VILLAGER_STATE_INVALID_STATE = 0 , + VILLAGER_STATE_MOVE_TO_POS = 1 , + VILLAGER_STATE_MOVE_TO_OBJECT = 2 , + VILLAGER_STATE_MOVE_ON_STRUCTURE = 3 , + VILLAGER_STATE_IN_SCRIPT = 4 , + VILLAGER_STATE_IN_DANCE = 5 , + VILLAGER_STATE_FLEEING_FROM_OBJECT_REACTION = 6 , + VILLAGER_STATE_LOOKING_AT_OBJECT_REACTION = 7 , + VILLAGER_STATE_FOLLOWING_OBJECT_REACTION = 8 , + VILLAGER_STATE_INSPECT_OBJECT_REACTION = 9 , + VILLAGER_STATE_FLYING = 10 , + VILLAGER_STATE_LANDED = 11 , + VILLAGER_STATE_LOOK_AT_FLYING_OBJECT_REACTION = 12 , + VILLAGER_STATE_SET_DYING = 13 , + VILLAGER_STATE_DYING = 14 , + VILLAGER_STATE_DEAD = 15 , + VILLAGER_STATE_DROWNING = 16 , + VILLAGER_STATE_DOWNED = 17 , + VILLAGER_STATE_BEING_EATEN = 18 , + VILLAGER_STATE_GOTO_FOOD_REACTION = 19 , + VILLAGER_STATE_ARRIVES_AT_FOOD_REACTION = 20 , + VILLAGER_STATE_GOTO_WOOD_REACTION = 21 , + VILLAGER_STATE_ARRIVES_AT_WOOD_REACTION = 22 , + VILLAGER_STATE_WAIT_FOR_ANIMATION = 23 , + VILLAGER_STATE_IN_HAND = 24 , + VILLAGER_STATE_GOTO_PICKUP_BALL_REACTION = 25 , + VILLAGER_STATE_ARRIVES_AT_PICKUP_BALL_REACTION = 26 , + VILLAGER_STATE_MOVE_IN_FLOCK = 27 , + VILLAGER_STATE_MOVE_ALONG_PATH = 28 , + VILLAGER_STATE_MOVE_ON_PATH = 29 , + VILLAGER_STATE_FLEEING_AND_LOOKING_AT_OBJECT_REACTION = 30 , + VILLAGER_STATE_GOTO_STORAGE_PIT_FOR_DROP_OFF = 31 , + VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_DROP_OFF = 32 , + VILLAGER_STATE_GOTO_STORAGE_PIT_FOR_FOOD = 33 , + VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_FOOD = 34 , + VILLAGER_STATE_ARRIVES_AT_HOME_WITH_FOOD = 35 , + VILLAGER_STATE_GO_HOME = 36 , + VILLAGER_STATE_ARRIVES_HOME = 37 , + VILLAGER_STATE_AT_HOME = 38 , + VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_BUILDING_MATERIALS = 39 , + VILLAGER_STATE_ARRIVES_AT_BUILDING_SITE = 40 , + VILLAGER_STATE_BUILDING = 41 , + VILLAGER_STATE_GOTO_STORAGE_PIT_FOR_WORSHIP_SUPPLIES = 42 , + VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_WORSHIP_SUPPLIES = 43 , + VILLAGER_STATE_GOTO_WORSHIP_SITE_WITH_SUPPLIES = 44 , + VILLAGER_STATE_MOVE_TO_WORSHIP_SITE_WITH_SUPPLIES = 45 , + VILLAGER_STATE_ARRIVES_AT_WORSHIP_SITE_WITH_SUPPLIES = 46 , + VILLAGER_STATE_FORESTER_MOVE_TO_FOREST = 47 , + VILLAGER_STATE_FORESTER_GOTO_FOREST = 48 , + VILLAGER_STATE_FORESTER_ARRIVES_AT_FOREST = 49 , + VILLAGER_STATE_FORESTER_CHOPS_TREE = 50 , + VILLAGER_STATE_FORESTER_CHOPS_TREE_FOR_BUILDING = 51 , + VILLAGER_STATE_FORESTER_FINISHED_FORESTERING = 52 , + VILLAGER_STATE_ARRIVES_AT_BIG_FOREST = 53 , + VILLAGER_STATE_ARRIVES_AT_BIG_FOREST_FOR_BUILDING = 54 , + VILLAGER_STATE_FISHERMAN_ARRIVES_AT_FISHING = 55 , + VILLAGER_STATE_FISHING = 56 , + VILLAGER_STATE_WAIT_FOR_COUNTER = 57 , + VILLAGER_STATE_GOTO_WORSHIP_SITE_FOR_WORSHIP = 58 , + VILLAGER_STATE_ARRIVES_AT_WORSHIP_SITE_FOR_WORSHIP = 59 , + VILLAGER_STATE_WORSHIPPING_AT_WORSHIP_SITE = 60 , + VILLAGER_STATE_GOTO_ALTAR_FOR_REST = 61 , + VILLAGER_STATE_ARRIVES_AT_ALTAR_FOR_REST = 62 , + VILLAGER_STATE_AT_ALTAR_REST = 63 , + VILLAGER_STATE_AT_ALTAR_FINISHED_REST = 64 , + VILLAGER_STATE_RESTART_WORSHIPPING_AT_WORSHIP_SITE = 65 , + VILLAGER_STATE_RESTART_WORSHIPPING_CREATURE = 66 , + VILLAGER_STATE_FARMER_ARRIVES_AT_FARM = 67 , + VILLAGER_STATE_FARMER_PLANTS_CROP = 68 , + VILLAGER_STATE_FARMER_DIGS_UP_CROP = 69 , + VILLAGER_STATE_MOVE_TO_FOOTBALL_PITCH_CONSTRUCTION = 70 , + VILLAGER_STATE_FOOTBALL_WALK_TO_POSITION = 71 , + VILLAGER_STATE_FOOTBALL_WAIT_FOR_KICK_OFF = 72 , + VILLAGER_STATE_FOOTBALL_ATTACKER = 73 , + VILLAGER_STATE_FOOTBALL_GOALIE = 74 , + VILLAGER_STATE_FOOTBALL_DEFENDER = 75 , + VILLAGER_STATE_FOOTBALL_WON_GOAL = 76 , + VILLAGER_STATE_FOOTBALL_LOST_GOAL = 77 , + VILLAGER_STATE_START_MOVE_TO_PICK_UP_BALL_FOR_DEAD_BALL = 78 , + VILLAGER_STATE_ARRIVED_AT_PICK_UP_BALL_FOR_DEAD_BALL = 79 , + VILLAGER_STATE_ARRIVED_AT_PUT_DOWN_BALL_FOR_DEAD_BALL_START = 80 , + VILLAGER_STATE_ARRIVED_AT_PUT_DOWN_BALL_FOR_DEAD_BALL_END = 81 , + VILLAGER_STATE_FOOTBALL_MATCH_PAUSED = 82 , + VILLAGER_STATE_FOOTBALL_WATCH_MATCH = 83 , + VILLAGER_STATE_FOOTBALL_MEXICAN_WAVE = 84 , + VILLAGER_STATE_CREATED = 85 , + VILLAGER_STATE_ARRIVES_IN_ABODE_TO_TRADE = 86 , + VILLAGER_STATE_ARRIVES_IN_ABODE_TO_PICK_UP_EXCESS = 87 , + VILLAGER_STATE_MAKE_SCARED_STIFF = 88 , + VILLAGER_STATE_SCARED_STIFF = 89 , + VILLAGER_STATE_WORSHIPPING_CREATURE = 90 , + VILLAGER_STATE_SHEPHERD_LOOK_FOR_FLOCK = 91 , + VILLAGER_STATE_SHEPHERD_MOVE_FLOCK_TO_WATER = 92 , + VILLAGER_STATE_SHEPHERD_MOVE_FLOCK_TO_FOOD = 93 , + VILLAGER_STATE_SHEPHERD_MOVE_FLOCK_BACK = 94 , + VILLAGER_STATE_SHEPHERD_DECIDE_WHAT_TO_DO_WITH_FLOCK = 95 , + VILLAGER_STATE_SHEPHERD_WAIT_FOR_FLOCK = 96 , + VILLAGER_STATE_SHEPHERD_SLAUGHTER_ANIMAL = 97 , + VILLAGER_STATE_SHEPHERD_FETCH_STRAY = 98 , + VILLAGER_STATE_SHEPHERD_GOTO_FLOCK = 99 , + VILLAGER_STATE_HOUSEWIFE_AT_HOME = 100 , + VILLAGER_STATE_HOUSEWIFE_GOTO_STORAGE_PIT = 101 , + VILLAGER_STATE_HOUSEWIFE_ARRIVES_AT_STORAGE_PIT = 102 , + VILLAGER_STATE_HOUSEWIFE_PICKUP_FROM_STORAGE_PIT = 103 , + VILLAGER_STATE_HOUSEWIFE_RETURN_HOME_WITH_FOOD = 104 , + VILLAGER_STATE_HOUSEWIFE_MAKE_DINNER = 105 , + VILLAGER_STATE_HOUSEWIFE_SERVES_DINNER = 106 , + VILLAGER_STATE_HOUSEWIFE_CLEARS_AWAY_DINNER = 107 , + VILLAGER_STATE_HOUSEWIFE_DOES_HOUSEWORK = 108 , + VILLAGER_STATE_HOUSEWIFE_GOSSIPS_AROUND_STORAGE_PIT = 109 , + VILLAGER_STATE_HOUSEWIFE_STARTS_GIVING_BIRTH = 110 , + VILLAGER_STATE_HOUSEWIFE_GIVING_BIRTH = 111 , + VILLAGER_STATE_HOUSEWIFE_GIVEN_BIRTH = 112 , + VILLAGER_STATE_CHILD_AT_CRECHE = 113 , + VILLAGER_STATE_CHILD_FOLLOWS_MOTHER = 114 , + VILLAGER_STATE_CHILD_BECOMES_ADULT = 115 , + VILLAGER_STATE_SITS_DOWN_TO_DINNER = 116 , + VILLAGER_STATE_EAT_FOOD = 117 , + VILLAGER_STATE_EAT_FOOD_AT_HOME = 118 , + VILLAGER_STATE_GOTO_BED_AT_HOME = 119 , + VILLAGER_STATE_SLEEPING_AT_HOME = 120 , + VILLAGER_STATE_WAKE_UP_AT_HOME = 121 , + VILLAGER_STATE_START_HAVING_SEX = 122 , + VILLAGER_STATE_HAVING_SEX = 123 , + VILLAGER_STATE_STOP_HAVING_SEX = 124 , + VILLAGER_STATE_START_HAVING_SEX_AT_HOME = 125 , + VILLAGER_STATE_HAVING_SEX_AT_HOME = 126 , + VILLAGER_STATE_STOP_HAVING_SEX_AT_HOME = 127 , + VILLAGER_STATE_WAIT_FOR_DINNER = 128 , + VILLAGER_STATE_HOMELESS_START = 129 , + VILLAGER_STATE_VAGRANT_START = 130 , + VILLAGER_STATE_MORN_DEATH = 131 , + VILLAGER_STATE_PERFORM_INSPECTION_REACTION = 132 , + VILLAGER_STATE_APPROACH_OBJECT_REACTION = 133 , + VILLAGER_STATE_INITIALISE_TELL_OTHERS_ABOUT_OBJECT = 134 , + VILLAGER_STATE_TELL_OTHERS_ABOUT_INTERESTING_OBJECT = 135 , + VILLAGER_STATE_APPROACH_VILLAGER_TO_TALK_TO = 136 , + VILLAGER_STATE_TELL_PARTICULAR_VILLAGER_ABOUT_OBJECT = 137 , + VILLAGER_STATE_INITIALISE_LOOK_AROUND_FOR_VILLAGER_TO_TELL = 138 , + VILLAGER_STATE_LOOK_AROUND_FOR_VILLAGER_TO_TELL = 139 , + VILLAGER_STATE_MOVE_TOWARDS_OBJECT_TO_LOOK_AT = 140 , + VILLAGER_STATE_INITIALISE_IMPRESSED_REACTION = 141 , + VILLAGER_STATE_PERFORM_IMPRESSED_REACTION = 142 , + VILLAGER_STATE_INITIALISE_FIGHT_REACTION = 143 , + VILLAGER_STATE_PERFORM_FIGHT_REACTION = 144 , + VILLAGER_STATE_HOMELESS_EAT_DINNER = 145 , + VILLAGER_STATE_INSPECT_CREATURE_REACTION = 146 , + VILLAGER_STATE_PERFORM_INSPECT_CREATURE_REACTION = 147 , + VILLAGER_STATE_APPROACH_CREATURE_REACTION = 148 , + VILLAGER_STATE_INITIALISE_BEWILDERED_BY_MAGIC_TREE_REACTION = 149 , + VILLAGER_STATE_PERFORM_BEWILDERED_BY_MAGIC_TREE_REACTION = 150 , + VILLAGER_STATE_TURN_TO_FACE_MAGIC_TREE = 151 , + VILLAGER_STATE_LOOK_AT_MAGIC_TREE = 152 , + VILLAGER_STATE_DANCE_FOR_EDITING_PURPOSES = 153 , + VILLAGER_STATE_MOVE_TO_DANCE_POS = 154 , + VILLAGER_STATE_INITIALISE_RESPECT_CREATURE_REACTION = 155 , + VILLAGER_STATE_PERFORM_RESPECT_CREATURE_REACTION = 156 , + VILLAGER_STATE_FINISH_RESPECT_CREATURE_REACTION = 157 , + VILLAGER_STATE_APPROACH_HAND_REACTION = 158 , + VILLAGER_STATE_FLEEING_FROM_CREATURE_REACTION = 159 , + VILLAGER_STATE_TURN_TO_FACE_CREATURE_REACTION = 160 , + VILLAGER_STATE_WATCH_FLYING_OBJECT_REACTION = 161 , + VILLAGER_STATE_POINT_AT_FLYING_OBJECT_REACTION = 162 , + VILLAGER_STATE_DECIDE_WHAT_TO_DO = 163 , + VILLAGER_STATE_INTERACT_DECIDE_WHAT_TO_DO = 164 , + VILLAGER_STATE_EAT_OUTSIDE = 165 , + VILLAGER_STATE_RUN_AWAY_FROM_OBJECT_REACTION = 166 , + VILLAGER_STATE_MOVE_TOWARDS_CREATURE_REACTION = 167 , + VILLAGER_STATE_AMAZED_BY_MAGIC_SHIELD_REACTION = 168 , + VILLAGER_STATE_VILLAGER_GOSSIPS = 169 , + VILLAGER_STATE_CHECK_INTERACT_WITH_ANIMAL = 170 , + VILLAGER_STATE_CHECK_INTERACT_WITH_WORSHIP_SITE = 171 , + VILLAGER_STATE_CHECK_INTERACT_WITH_ABODE = 172 , + VILLAGER_STATE_CHECK_INTERACT_WITH_FIELD = 173 , + VILLAGER_STATE_CHECK_INTERACT_WITH_FISH_FARM = 174 , + VILLAGER_STATE_CHECK_INTERACT_WITH_TREE = 175 , + VILLAGER_STATE_CHECK_INTERACT_WITH_BALL = 176 , + VILLAGER_STATE_CHECK_INTERACT_WITH_POT = 177 , + VILLAGER_STATE_CHECK_INTERACT_WITH_FOOTBALL = 178 , + VILLAGER_STATE_CHECK_INTERACT_WITH_VILLAGER = 179 , + VILLAGER_STATE_CHECK_INTERACT_WITH_MAGIC_LIVING = 180 , + VILLAGER_STATE_CHECK_INTERACT_WITH_ROCK = 181 , + VILLAGER_STATE_ARRIVES_AT_ROCK_FOR_WOOD = 182 , + VILLAGER_STATE_GOT_WOOD_FROM_ROCK = 183 , + VILLAGER_STATE_REENTER_BUILDING_STATE = 184 , + VILLAGER_STATE_ARRIVE_AT_PUSH_OBJECT = 185 , + VILLAGER_STATE_TAKE_WOOD_FROM_TREE = 186 , + VILLAGER_STATE_TAKE_WOOD_FROM_POT = 187 , + VILLAGER_STATE_TAKE_WOOD_FROM_TREE_FOR_BUILDING = 188 , + VILLAGER_STATE_TAKE_WOOD_FROM_POT_FOR_BUILDING = 189 , + VILLAGER_STATE_SHEPHERD_TAKE_ANIMAL_FOR_SLAUGHTER = 190 , + VILLAGER_STATE_SHEPHERD_TAKES_CONTROL_OF_FLOCK = 191 , + VILLAGER_STATE_SHEPHERD_RELEASES_CONTROL_OF_FLOCK = 192 , + VILLAGER_STATE_DANCE_BUT_NOT_WORSHIP = 193 , + VILLAGER_STATE_FAINTING_REACTION = 194 , + VILLAGER_STATE_START_CONFUSED_REACTION = 195 , + VILLAGER_STATE_CONFUSED_REACTION = 196 , + VILLAGER_STATE_AFTER_TAP_ON_ABODE = 197 , + VILLAGER_STATE_WEAK_ON_GROUND = 198 , + VILLAGER_STATE_SCRIPT_WANDER_AROUND_POSITION = 199 , + VILLAGER_STATE_SCRIPT_PLAY_ANIM = 200 , + VILLAGER_STATE_GO_TOWARDS_TELEPORT_REACTION = 201 , + VILLAGER_STATE_TELEPORT_REACTION = 202 , + VILLAGER_STATE_DANCE_WHILE_REACTING = 203 , + VILLAGER_STATE_CONTROLLED_BY_CREATURE = 204 , + VILLAGER_STATE_POINT_AT_DEAD_PERSON = 205 , + VILLAGER_STATE_GO_TOWARDS_DEAD_PERSON = 206 , + VILLAGER_STATE_LOOK_AT_DEAD_PERSON = 207 , + VILLAGER_STATE_MOURN_DEAD_PERSON = 208 , + VILLAGER_STATE_NOTHING_TO_DO = 209 , + VILLAGER_STATE_ARRIVES_AT_WORKSHOP_FOR_DROP_OFF = 210 , + VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_WORKSHOP_MATERIALS = 211 , + VILLAGER_STATE_SHOW_POISONED = 212 , + VILLAGER_STATE_HIDING_AT_WORSHIP_SITE = 213 , + VILLAGER_STATE_CROWD_REACTION = 214 , + VILLAGER_STATE_REACT_TO_FIRE = 215 , + VILLAGER_STATE_PUT_OUT_FIRE_BY_BEATING = 216 , + VILLAGER_STATE_PUT_OUT_FIRE_WITH_WATER = 217 , + VILLAGER_STATE_GET_WATER_TO_PUT_OUT_FIRE = 218 , + VILLAGER_STATE_ON_FIRE = 219 , + VILLAGER_STATE_MOVE_AROUND_FIRE = 220 , + VILLAGER_STATE_DISCIPLE_NOTHING_TO_DO = 221 , + VILLAGER_STATE_FOOTBALL_MOVE_TO_BALL = 222 , + VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_TRADER_PICK_UP = 223 , + VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_TRADER_DROP_OFF = 224 , + VILLAGER_STATE_BREEDER_DISCIPLE = 225 , + VILLAGER_STATE_MISSIONARY_DISCIPLE = 226 , + VILLAGER_STATE_REACT_TO_BREEDER = 227 , + VILLAGER_STATE_SHEPHERD_CHECK_ANIMAL_FOR_SLAUGHTER = 228 , + VILLAGER_STATE_INTERACT_DECIDE_WHAT_TO_DO_FOR_OTHER_VILLAGER = 229 , + VILLAGER_STATE_ARTIFACT_DANCE = 230 , + VILLAGER_STATE_FLEEING_FROM_PREDATOR_REACTION = 231 , + VILLAGER_STATE_WAIT_FOR_WOOD = 232 , + VILLAGER_STATE_INSPECT_OBJECT = 233 , + VILLAGER_STATE_GO_HOME_AND_CHANGE = 234 , + VILLAGER_STATE_WAIT_FOR_MATE = 235 , + VILLAGER_STATE_GO_AND_HIDE_IN_NEARBY_BUILDING = 236 , + VILLAGER_STATE_LOOK_TO_SEE_IF_IT_IS_SAFE = 237 , + VILLAGER_STATE_SLEEP_IN_TENT = 238 , + VILLAGER_STATE_PAUSE_FOR_A_SECOND = 239 , + VILLAGER_STATE_PANIC_REACTION = 240 , + VILLAGER_STATE_GET_FOOD_AT_WORSHIP_SITE = 241 , + VILLAGER_STATE_GOTO_CONGREGATE_IN_TOWN_AFTER_EMERGENCY = 242 , + VILLAGER_STATE_CONGREGATE_IN_TOWN_AFTER_EMERGENCY = 243 , + VILLAGER_STATE_SCRIPT_IN_CROWD = 244 , + VILLAGER_STATE_GO_AND_CHILLOUT_OUTSIDE_HOME = 245 , + VILLAGER_STATE_SIT_AND_CHILLOUT = 246 , + VILLAGER_STATE_SCRIPT_GO_AND_MOVE_ALONG_PATH = 247 , + VILLAGER_STATE_GO_HOME_FROM_WORSHIP = 248 , + VILLAGER_STATE_ARRIVES_HOME_FROM_WORSHIP = 249 , + VILLAGER_STATE_SLEEP_IN_TENT_FROM_WORSHIP = 250 , + VILLAGER_STATE_GO_TOWARDS_TELEPORT_REACTION_QUICKLY = 251 , + VILLAGER_STATE_GO_AND_CHILLOUT_IN_TOWN = 252 , + VILLAGER_STATE_WAIT_FOR_ARTIFACT_DANCE = 253 , + VILLAGER_STATE_BREEDER_JUST_LANDED = 254 , + VILLAGER_STATE_LAST_STATE = 255 , +}; + +static const char* VILLAGER_STATE_strs[VILLAGER_STATE_LAST_STATE] = { + "VILLAGER_STATE_INVALID_STATE", + "VILLAGER_STATE_MOVE_TO_POS", + "VILLAGER_STATE_MOVE_TO_OBJECT", + "VILLAGER_STATE_MOVE_ON_STRUCTURE", + "VILLAGER_STATE_IN_SCRIPT", + "VILLAGER_STATE_IN_DANCE", + "VILLAGER_STATE_FLEEING_FROM_OBJECT_REACTION", + "VILLAGER_STATE_LOOKING_AT_OBJECT_REACTION", + "VILLAGER_STATE_FOLLOWING_OBJECT_REACTION", + "VILLAGER_STATE_INSPECT_OBJECT_REACTION", + "VILLAGER_STATE_FLYING", + "VILLAGER_STATE_LANDED", + "VILLAGER_STATE_LOOK_AT_FLYING_OBJECT_REACTION", + "VILLAGER_STATE_SET_DYING", + "VILLAGER_STATE_DYING", + "VILLAGER_STATE_DEAD", + "VILLAGER_STATE_DROWNING", + "VILLAGER_STATE_DOWNED", + "VILLAGER_STATE_BEING_EATEN", + "VILLAGER_STATE_GOTO_FOOD_REACTION", + "VILLAGER_STATE_ARRIVES_AT_FOOD_REACTION", + "VILLAGER_STATE_GOTO_WOOD_REACTION", + "VILLAGER_STATE_ARRIVES_AT_WOOD_REACTION", + "VILLAGER_STATE_WAIT_FOR_ANIMATION", + "VILLAGER_STATE_IN_HAND", + "VILLAGER_STATE_GOTO_PICKUP_BALL_REACTION", + "VILLAGER_STATE_ARRIVES_AT_PICKUP_BALL_REACTION", + "VILLAGER_STATE_MOVE_IN_FLOCK", + "VILLAGER_STATE_MOVE_ALONG_PATH", + "VILLAGER_STATE_MOVE_ON_PATH", + "VILLAGER_STATE_FLEEING_AND_LOOKING_AT_OBJECT_REACTION", + "VILLAGER_STATE_GOTO_STORAGE_PIT_FOR_DROP_OFF", + "VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_DROP_OFF", + "VILLAGER_STATE_GOTO_STORAGE_PIT_FOR_FOOD", + "VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_FOOD", + "VILLAGER_STATE_ARRIVES_AT_HOME_WITH_FOOD", + "VILLAGER_STATE_GO_HOME", + "VILLAGER_STATE_ARRIVES_HOME", + "VILLAGER_STATE_AT_HOME", + "VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_BUILDING_MATERIALS", + "VILLAGER_STATE_ARRIVES_AT_BUILDING_SITE", + "VILLAGER_STATE_BUILDING", + "VILLAGER_STATE_GOTO_STORAGE_PIT_FOR_WORSHIP_SUPPLIES", + "VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_WORSHIP_SUPPLIES", + "VILLAGER_STATE_GOTO_WORSHIP_SITE_WITH_SUPPLIES", + "VILLAGER_STATE_MOVE_TO_WORSHIP_SITE_WITH_SUPPLIES", + "VILLAGER_STATE_ARRIVES_AT_WORSHIP_SITE_WITH_SUPPLIES", + "VILLAGER_STATE_FORESTER_MOVE_TO_FOREST", + "VILLAGER_STATE_FORESTER_GOTO_FOREST", + "VILLAGER_STATE_FORESTER_ARRIVES_AT_FOREST", + "VILLAGER_STATE_FORESTER_CHOPS_TREE", + "VILLAGER_STATE_FORESTER_CHOPS_TREE_FOR_BUILDING", + "VILLAGER_STATE_FORESTER_FINISHED_FORESTERING", + "VILLAGER_STATE_ARRIVES_AT_BIG_FOREST", + "VILLAGER_STATE_ARRIVES_AT_BIG_FOREST_FOR_BUILDING", + "VILLAGER_STATE_FISHERMAN_ARRIVES_AT_FISHING", + "VILLAGER_STATE_FISHING", + "VILLAGER_STATE_WAIT_FOR_COUNTER", + "VILLAGER_STATE_GOTO_WORSHIP_SITE_FOR_WORSHIP", + "VILLAGER_STATE_ARRIVES_AT_WORSHIP_SITE_FOR_WORSHIP", + "VILLAGER_STATE_WORSHIPPING_AT_WORSHIP_SITE", + "VILLAGER_STATE_GOTO_ALTAR_FOR_REST", + "VILLAGER_STATE_ARRIVES_AT_ALTAR_FOR_REST", + "VILLAGER_STATE_AT_ALTAR_REST", + "VILLAGER_STATE_AT_ALTAR_FINISHED_REST", + "VILLAGER_STATE_RESTART_WORSHIPPING_AT_WORSHIP_SITE", + "VILLAGER_STATE_RESTART_WORSHIPPING_CREATURE", + "VILLAGER_STATE_FARMER_ARRIVES_AT_FARM", + "VILLAGER_STATE_FARMER_PLANTS_CROP", + "VILLAGER_STATE_FARMER_DIGS_UP_CROP", + "VILLAGER_STATE_MOVE_TO_FOOTBALL_PITCH_CONSTRUCTION", + "VILLAGER_STATE_FOOTBALL_WALK_TO_POSITION", + "VILLAGER_STATE_FOOTBALL_WAIT_FOR_KICK_OFF", + "VILLAGER_STATE_FOOTBALL_ATTACKER", + "VILLAGER_STATE_FOOTBALL_GOALIE", + "VILLAGER_STATE_FOOTBALL_DEFENDER", + "VILLAGER_STATE_FOOTBALL_WON_GOAL", + "VILLAGER_STATE_FOOTBALL_LOST_GOAL", + "VILLAGER_STATE_START_MOVE_TO_PICK_UP_BALL_FOR_DEAD_BALL", + "VILLAGER_STATE_ARRIVED_AT_PICK_UP_BALL_FOR_DEAD_BALL", + "VILLAGER_STATE_ARRIVED_AT_PUT_DOWN_BALL_FOR_DEAD_BALL_START", + "VILLAGER_STATE_ARRIVED_AT_PUT_DOWN_BALL_FOR_DEAD_BALL_END", + "VILLAGER_STATE_FOOTBALL_MATCH_PAUSED", + "VILLAGER_STATE_FOOTBALL_WATCH_MATCH", + "VILLAGER_STATE_FOOTBALL_MEXICAN_WAVE", + "VILLAGER_STATE_CREATED", + "VILLAGER_STATE_ARRIVES_IN_ABODE_TO_TRADE", + "VILLAGER_STATE_ARRIVES_IN_ABODE_TO_PICK_UP_EXCESS", + "VILLAGER_STATE_MAKE_SCARED_STIFF", + "VILLAGER_STATE_SCARED_STIFF", + "VILLAGER_STATE_WORSHIPPING_CREATURE", + "VILLAGER_STATE_SHEPHERD_LOOK_FOR_FLOCK", + "VILLAGER_STATE_SHEPHERD_MOVE_FLOCK_TO_WATER", + "VILLAGER_STATE_SHEPHERD_MOVE_FLOCK_TO_FOOD", + "VILLAGER_STATE_SHEPHERD_MOVE_FLOCK_BACK", + "VILLAGER_STATE_SHEPHERD_DECIDE_WHAT_TO_DO_WITH_FLOCK", + "VILLAGER_STATE_SHEPHERD_WAIT_FOR_FLOCK", + "VILLAGER_STATE_SHEPHERD_SLAUGHTER_ANIMAL", + "VILLAGER_STATE_SHEPHERD_FETCH_STRAY", + "VILLAGER_STATE_SHEPHERD_GOTO_FLOCK", + "VILLAGER_STATE_HOUSEWIFE_AT_HOME", + "VILLAGER_STATE_HOUSEWIFE_GOTO_STORAGE_PIT", + "VILLAGER_STATE_HOUSEWIFE_ARRIVES_AT_STORAGE_PIT", + "VILLAGER_STATE_HOUSEWIFE_PICKUP_FROM_STORAGE_PIT", + "VILLAGER_STATE_HOUSEWIFE_RETURN_HOME_WITH_FOOD", + "VILLAGER_STATE_HOUSEWIFE_MAKE_DINNER", + "VILLAGER_STATE_HOUSEWIFE_SERVES_DINNER", + "VILLAGER_STATE_HOUSEWIFE_CLEARS_AWAY_DINNER", + "VILLAGER_STATE_HOUSEWIFE_DOES_HOUSEWORK", + "VILLAGER_STATE_HOUSEWIFE_GOSSIPS_AROUND_STORAGE_PIT", + "VILLAGER_STATE_HOUSEWIFE_STARTS_GIVING_BIRTH", + "VILLAGER_STATE_HOUSEWIFE_GIVING_BIRTH", + "VILLAGER_STATE_HOUSEWIFE_GIVEN_BIRTH", + "VILLAGER_STATE_CHILD_AT_CRECHE", + "VILLAGER_STATE_CHILD_FOLLOWS_MOTHER", + "VILLAGER_STATE_CHILD_BECOMES_ADULT", + "VILLAGER_STATE_SITS_DOWN_TO_DINNER", + "VILLAGER_STATE_EAT_FOOD", + "VILLAGER_STATE_EAT_FOOD_AT_HOME", + "VILLAGER_STATE_GOTO_BED_AT_HOME", + "VILLAGER_STATE_SLEEPING_AT_HOME", + "VILLAGER_STATE_WAKE_UP_AT_HOME", + "VILLAGER_STATE_START_HAVING_SEX", + "VILLAGER_STATE_HAVING_SEX", + "VILLAGER_STATE_STOP_HAVING_SEX", + "VILLAGER_STATE_START_HAVING_SEX_AT_HOME", + "VILLAGER_STATE_HAVING_SEX_AT_HOME", + "VILLAGER_STATE_STOP_HAVING_SEX_AT_HOME", + "VILLAGER_STATE_WAIT_FOR_DINNER", + "VILLAGER_STATE_HOMELESS_START", + "VILLAGER_STATE_VAGRANT_START", + "VILLAGER_STATE_MORN_DEATH", + "VILLAGER_STATE_PERFORM_INSPECTION_REACTION", + "VILLAGER_STATE_APPROACH_OBJECT_REACTION", + "VILLAGER_STATE_INITIALISE_TELL_OTHERS_ABOUT_OBJECT", + "VILLAGER_STATE_TELL_OTHERS_ABOUT_INTERESTING_OBJECT", + "VILLAGER_STATE_APPROACH_VILLAGER_TO_TALK_TO", + "VILLAGER_STATE_TELL_PARTICULAR_VILLAGER_ABOUT_OBJECT", + "VILLAGER_STATE_INITIALISE_LOOK_AROUND_FOR_VILLAGER_TO_TELL", + "VILLAGER_STATE_LOOK_AROUND_FOR_VILLAGER_TO_TELL", + "VILLAGER_STATE_MOVE_TOWARDS_OBJECT_TO_LOOK_AT", + "VILLAGER_STATE_INITIALISE_IMPRESSED_REACTION", + "VILLAGER_STATE_PERFORM_IMPRESSED_REACTION", + "VILLAGER_STATE_INITIALISE_FIGHT_REACTION", + "VILLAGER_STATE_PERFORM_FIGHT_REACTION", + "VILLAGER_STATE_HOMELESS_EAT_DINNER", + "VILLAGER_STATE_INSPECT_CREATURE_REACTION", + "VILLAGER_STATE_PERFORM_INSPECT_CREATURE_REACTION", + "VILLAGER_STATE_APPROACH_CREATURE_REACTION", + "VILLAGER_STATE_INITIALISE_BEWILDERED_BY_MAGIC_TREE_REACTION", + "VILLAGER_STATE_PERFORM_BEWILDERED_BY_MAGIC_TREE_REACTION", + "VILLAGER_STATE_TURN_TO_FACE_MAGIC_TREE", + "VILLAGER_STATE_LOOK_AT_MAGIC_TREE", + "VILLAGER_STATE_DANCE_FOR_EDITING_PURPOSES", + "VILLAGER_STATE_MOVE_TO_DANCE_POS", + "VILLAGER_STATE_INITIALISE_RESPECT_CREATURE_REACTION", + "VILLAGER_STATE_PERFORM_RESPECT_CREATURE_REACTION", + "VILLAGER_STATE_FINISH_RESPECT_CREATURE_REACTION", + "VILLAGER_STATE_APPROACH_HAND_REACTION", + "VILLAGER_STATE_FLEEING_FROM_CREATURE_REACTION", + "VILLAGER_STATE_TURN_TO_FACE_CREATURE_REACTION", + "VILLAGER_STATE_WATCH_FLYING_OBJECT_REACTION", + "VILLAGER_STATE_POINT_AT_FLYING_OBJECT_REACTION", + "VILLAGER_STATE_DECIDE_WHAT_TO_DO", + "VILLAGER_STATE_INTERACT_DECIDE_WHAT_TO_DO", + "VILLAGER_STATE_EAT_OUTSIDE", + "VILLAGER_STATE_RUN_AWAY_FROM_OBJECT_REACTION", + "VILLAGER_STATE_MOVE_TOWARDS_CREATURE_REACTION", + "VILLAGER_STATE_AMAZED_BY_MAGIC_SHIELD_REACTION", + "VILLAGER_STATE_VILLAGER_GOSSIPS", + "VILLAGER_STATE_CHECK_INTERACT_WITH_ANIMAL", + "VILLAGER_STATE_CHECK_INTERACT_WITH_WORSHIP_SITE", + "VILLAGER_STATE_CHECK_INTERACT_WITH_ABODE", + "VILLAGER_STATE_CHECK_INTERACT_WITH_FIELD", + "VILLAGER_STATE_CHECK_INTERACT_WITH_FISH_FARM", + "VILLAGER_STATE_CHECK_INTERACT_WITH_TREE", + "VILLAGER_STATE_CHECK_INTERACT_WITH_BALL", + "VILLAGER_STATE_CHECK_INTERACT_WITH_POT", + "VILLAGER_STATE_CHECK_INTERACT_WITH_FOOTBALL", + "VILLAGER_STATE_CHECK_INTERACT_WITH_VILLAGER", + "VILLAGER_STATE_CHECK_INTERACT_WITH_MAGIC_LIVING", + "VILLAGER_STATE_CHECK_INTERACT_WITH_ROCK", + "VILLAGER_STATE_ARRIVES_AT_ROCK_FOR_WOOD", + "VILLAGER_STATE_GOT_WOOD_FROM_ROCK", + "VILLAGER_STATE_REENTER_BUILDING_STATE", + "VILLAGER_STATE_ARRIVE_AT_PUSH_OBJECT", + "VILLAGER_STATE_TAKE_WOOD_FROM_TREE", + "VILLAGER_STATE_TAKE_WOOD_FROM_POT", + "VILLAGER_STATE_TAKE_WOOD_FROM_TREE_FOR_BUILDING", + "VILLAGER_STATE_TAKE_WOOD_FROM_POT_FOR_BUILDING", + "VILLAGER_STATE_SHEPHERD_TAKE_ANIMAL_FOR_SLAUGHTER", + "VILLAGER_STATE_SHEPHERD_TAKES_CONTROL_OF_FLOCK", + "VILLAGER_STATE_SHEPHERD_RELEASES_CONTROL_OF_FLOCK", + "VILLAGER_STATE_DANCE_BUT_NOT_WORSHIP", + "VILLAGER_STATE_FAINTING_REACTION", + "VILLAGER_STATE_START_CONFUSED_REACTION", + "VILLAGER_STATE_CONFUSED_REACTION", + "VILLAGER_STATE_AFTER_TAP_ON_ABODE", + "VILLAGER_STATE_WEAK_ON_GROUND", + "VILLAGER_STATE_SCRIPT_WANDER_AROUND_POSITION", + "VILLAGER_STATE_SCRIPT_PLAY_ANIM", + "VILLAGER_STATE_GO_TOWARDS_TELEPORT_REACTION", + "VILLAGER_STATE_TELEPORT_REACTION", + "VILLAGER_STATE_DANCE_WHILE_REACTING", + "VILLAGER_STATE_CONTROLLED_BY_CREATURE", + "VILLAGER_STATE_POINT_AT_DEAD_PERSON", + "VILLAGER_STATE_GO_TOWARDS_DEAD_PERSON", + "VILLAGER_STATE_LOOK_AT_DEAD_PERSON", + "VILLAGER_STATE_MOURN_DEAD_PERSON", + "VILLAGER_STATE_NOTHING_TO_DO", + "VILLAGER_STATE_ARRIVES_AT_WORKSHOP_FOR_DROP_OFF", + "VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_WORKSHOP_MATERIALS", + "VILLAGER_STATE_SHOW_POISONED", + "VILLAGER_STATE_HIDING_AT_WORSHIP_SITE", + "VILLAGER_STATE_CROWD_REACTION", + "VILLAGER_STATE_REACT_TO_FIRE", + "VILLAGER_STATE_PUT_OUT_FIRE_BY_BEATING", + "VILLAGER_STATE_PUT_OUT_FIRE_WITH_WATER", + "VILLAGER_STATE_GET_WATER_TO_PUT_OUT_FIRE", + "VILLAGER_STATE_ON_FIRE", + "VILLAGER_STATE_MOVE_AROUND_FIRE", + "VILLAGER_STATE_DISCIPLE_NOTHING_TO_DO", + "VILLAGER_STATE_FOOTBALL_MOVE_TO_BALL", + "VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_TRADER_PICK_UP", + "VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_TRADER_DROP_OFF", + "VILLAGER_STATE_BREEDER_DISCIPLE", + "VILLAGER_STATE_MISSIONARY_DISCIPLE", + "VILLAGER_STATE_REACT_TO_BREEDER", + "VILLAGER_STATE_SHEPHERD_CHECK_ANIMAL_FOR_SLAUGHTER", + "VILLAGER_STATE_INTERACT_DECIDE_WHAT_TO_DO_FOR_OTHER_VILLAGER", + "VILLAGER_STATE_ARTIFACT_DANCE", + "VILLAGER_STATE_FLEEING_FROM_PREDATOR_REACTION", + "VILLAGER_STATE_WAIT_FOR_WOOD", + "VILLAGER_STATE_INSPECT_OBJECT", + "VILLAGER_STATE_GO_HOME_AND_CHANGE", + "VILLAGER_STATE_WAIT_FOR_MATE", + "VILLAGER_STATE_GO_AND_HIDE_IN_NEARBY_BUILDING", + "VILLAGER_STATE_LOOK_TO_SEE_IF_IT_IS_SAFE", + "VILLAGER_STATE_SLEEP_IN_TENT", + "VILLAGER_STATE_PAUSE_FOR_A_SECOND", + "VILLAGER_STATE_PANIC_REACTION", + "VILLAGER_STATE_GET_FOOD_AT_WORSHIP_SITE", + "VILLAGER_STATE_GOTO_CONGREGATE_IN_TOWN_AFTER_EMERGENCY", + "VILLAGER_STATE_CONGREGATE_IN_TOWN_AFTER_EMERGENCY", + "VILLAGER_STATE_SCRIPT_IN_CROWD", + "VILLAGER_STATE_GO_AND_CHILLOUT_OUTSIDE_HOME", + "VILLAGER_STATE_SIT_AND_CHILLOUT", + "VILLAGER_STATE_SCRIPT_GO_AND_MOVE_ALONG_PATH", + "VILLAGER_STATE_GO_HOME_FROM_WORSHIP", + "VILLAGER_STATE_ARRIVES_HOME_FROM_WORSHIP", + "VILLAGER_STATE_SLEEP_IN_TENT_FROM_WORSHIP", + "VILLAGER_STATE_GO_TOWARDS_TELEPORT_REACTION_QUICKLY", + "VILLAGER_STATE_GO_AND_CHILLOUT_IN_TOWN", + "VILLAGER_STATE_WAIT_FOR_ARTIFACT_DANCE", + "VILLAGER_STATE_BREEDER_JUST_LANDED", +}; + +//***************************************************************************** +// ENUM Values: ANIMAL_STATES +//***************************************************************************** +enum ANIMAL_STATES +{ + ANIMAL_STATE_INVALID_STATE = 0 , + ANIMAL_STATE_MOVE_TO_POS = 1 , + ANIMAL_STATE_MOVE_TO_OBJECT = 2 , + ANIMAL_STATE_MOVE_ON_STRUCTURE = 3 , + ANIMAL_STATE_IN_SCRIPT = 4 , + ANIMAL_STATE_IN_DANCE = 5 , + ANIMAL_STATE_FLEEING_FROM_OBJECT_REACTION = 6 , + ANIMAL_STATE_LOOKING_AT_OBJECT_REACTION = 7 , + ANIMAL_STATE_FOLLOWING_OBJECT_REACTION = 8 , + ANIMAL_STATE_INSPECT_OBJECT_REACTION = 9 , + ANIMAL_STATE_FLYING = 10 , + ANIMAL_STATE_LANDED = 11 , + ANIMAL_STATE_LOOK_AT_FLYING_OBJECT_REACTION = 12 , + ANIMAL_STATE_SET_DYING = 13 , + ANIMAL_STATE_DYING = 14 , + ANIMAL_STATE_DEAD = 15 , + ANIMAL_STATE_DROWNING = 16 , + ANIMAL_STATE_DOWNED = 17 , + ANIMAL_STATE_BEING_EATEN = 18 , + ANIMAL_STATE_GOTO_FOOD_REACTION = 19 , + ANIMAL_STATE_ARRIVES_AT_FOOD_REACTION = 20 , + ANIMAL_STATE_GOTO_WOOD_REACTION = 21 , + ANIMAL_STATE_ARRIVES_AT_WOOD_REACTION = 22 , + ANIMAL_STATE_WAIT_FOR_ANIMATION = 23 , + ANIMAL_STATE_IN_HAND = 24 , + ANIMAL_STATE_GOTO_PICKUP_BALL_REACTION = 25 , + ANIMAL_STATE_ARRIVES_AT_PICKUP_BALL_REACTION = 26 , + ANIMAL_STATE_MOVE_IN_FLOCK = 27 , + ANIMAL_STATE_MOVE_ALONG_PATH = 28 , + ANIMAL_STATE_MOVE_ON_PATH = 29 , + ANIMAL_STATE_FLEEING_AND_LOOKING_AT_OBJECT_REACTION = 30 , + ANIMAL_STATE_START_WANDER = 31 , + ANIMAL_STATE_WANDER = 32 , + ANIMAL_STATE_EAT = 33 , + ANIMAL_STATE_SEEK_SLEEP = 34 , + ANIMAL_STATE_SLEEPS = 35 , + ANIMAL_STATE_SEEK_ENVIRONMENT = 36 , + ANIMAL_STATE_STANDARD_ACTION = 37 , + ANIMAL_STATE_START_TO_EAT = 38 , + ANIMAL_STATE_FINISH_EATING = 39 , + ANIMAL_STATE_TARGET_POUNCE = 40 , + ANIMAL_STATE_HUNTING_MOVE_TO_POS = 41 , + ANIMAL_STATE_MOVE_TO_POS_AND_LOOK_AROUND = 42 , + ANIMAL_STATE_DECIDE_WHAT_TO_DO = 43 , + ANIMAL_STATE_SPECIAL_MOVE_TO_POS = 44 , + ANIMAL_STATE_FOLLOW_FLOCK = 45 , + ANIMAL_STATE_LAND_ON_OBJECT = 46 , + ANIMAL_STATE_LAND_AT_POS = 47 , + ANIMAL_STATE_INTERACT_DECIDE_WHAT_TO_DO = 48 , + ANIMAL_STATE_FLEEING_FROM_PREDATOR_REACTION = 49 , + ANIMAL_STATE_GIVES_BIRTH = 50 , + ANIMAL_STATE_HIDE_IN_LAIR = 51 , + ANIMAL_STATE_SEEK_FOOD = 52 , + ANIMAL_STATE_LAST_STATE = 53 , + // ANIMAL_STATE_SCRIPT_PLAY_ANIM = 53 , + // ANIMAL_STATE_LAST_STATE = 54 , +}; + +#endif diff --git a/libs/chlasm/HelpDudeAnim.h b/libs/chlasm/HelpDudeAnim.h new file mode 100644 index 0000000..20ccaa0 --- /dev/null +++ b/libs/chlasm/HelpDudeAnim.h @@ -0,0 +1,93 @@ +//Revision courtesy of herolich1 + +#ifndef __HELPDUDEANIM_H__ +#define __HELPDUDEANIM_H__ + +//------------------------------------------------------------------------------------------------------------------------ +enum ANIMLIST +{ + ANIM_STAND, //Idle (useless) + ANIM_HOVER, //Move about? (useless) + ANIM_HOVERL, //Move about? (useless) + ANIM_HOVERR, //Move about? (useless) + ANIM_WINGS, //Wings? (useless) + ANIM_LEYE, //Closes left eye + ANIM_REYE, //Closes right eye + ANIM_VOWELE, //Used for speaking (useless) + ANIM_VOWELO, //Used for speaking (useless) + ANIM_VOWELS, //Used for speaking (useless) + ANIM_EM0, //Smile (ends early) + ANIM_EM1, //Frown (ends early) + ANIM_EM2, //Sad (ends early) + ANIM_EM3, //Good: closes eyes - Evil: tilts head (ends early) + ANIM_EM4, //Shock (ends early) + ANIM_EM5, //Raises eyebrow (ends early) + ANIM_EM6, //Angry (ends early) + //ANIM_EM7, <-- CI + ANIM_LOOKLR, //Looks up for a second? (useless) + ANIM_LOOKUD, //Looks up for a second? (useless) + ANIM_NOD, //Nods + ANIM_SHAKE, //Shakes + ANIM_COCK, //Tilts head + ANIM_HEADINHANDS, //Good: head in hands - Evil: facepalms + ANIM_LAUGH, //Laughing + ANIM_CROSSARMS, //Good: rests arms on sides - Evil: nothing + ANIM_SPARE, //Nothing (useless) + ANIM_POINTLINTRO, //Points + ANIM_POINTL, //Points (redundant) + ANIM_POINTRINTRO, //Points (redundant) + ANIM_POINTR, //Points (redundant) + ANIM_HOVERSTABLE, //Move about? (useless) + ANIM_AVOIDL, //Dodges to the left + ANIM_AVOIDR, //Dodges to the right + ANIM_AVOIDU, //Dodges to the top + ANIM_AVOIDD, //Dodges to the bottom + ANIM_HANDSONHIPS, //Good: hands indeed on hips - Evil: nothing + ANIM_SPARE0, //Shrugs (same as ANIM_SHRUG) + ANIM_SHAKEFINGER, //Shakes finger at you + ANIM_SCRATCHHEAD, //Scratches back of the head + ANIM_SCRATCHCHIN, //Good: scratches chin (or beard) - Evil: scratches the side of his head + ANIM_PICKNOSE, //Good: ??? - Evil: pick nose + ANIM_POINTATCAMERA, //Point at camera + ANIM_HANGHEAD, //Hanging heads down in shame (same as sulk and cry) + ANIM_SULK, //Sulking (same as hanghead and cry) + ANIM_CRYING, //Crying (same as sulk and hanghead) + ANIM_GOINVISIBLE, //They flash in and out of existence as they emote a bit + ANIM_DANCE, //They do be shmoovin + ANIM_PRESSFACE, //Good: nothing - Evil: "Let's get out projectile throwing skill up to scratch!" + ANIM_STROKEBEARD, //Good: strokes beard - Evil: scratches back of head + ANIM_COVEREYES, //Good: covers eyes - Evil: nothing + ANIM_PRAY, //Good: does the lotus position - Evil: nothing + ANIM_PUNCHAIR, //Good: punches the air - Evil: does reverse air punch + ANIM_WAVENO, //Waves both hands with wide eyes + ANIM_DODGY, //Does the "So so" motion + ANIM_DISMISSIVEWAVE, //Does a dismissive wave + ANIM_RUDE, //Good: "He is crazy" - Evil: moves claw over neck + ANIM_HEADSLAP, //Facepalms + ANIM_KNOCKONSCREEN, //Actually flies up to you and knocks on your screen + ANIM_WANKER, //Good: nothing - Evil: moves claw over neck (see rude) + ANIM_HANDGUN, //Good: nothing - Evil: uses a fake gun on himself for comedy, with sound effects + ANIM_BURP, //Good: nothing - Evil: burps? + ANIM_FART, //Good: nothing - Evil: does the motions of a fart + ANIM_TRIUMPH, //Celebrates + ANIM_SHRUG, //Shrugs (Same as ANIM_SPARE0) + ANIM_CLINGL, //Clings to bottom + ANIM_CLINGR, //Clings to bottom? + ANIM_CLINGU, //Clings to bottom? + ANIM_CLINGD, //Clings to bottom? + ANIM_GIMMEFIVE, //Good: scratches head and looks around? - Evil: does a throwing motion and looks to the side + ANIM_LOOKLRSTABLE, //Looks around before snapping back + ANIM_LOOKUDSTABLE, //Looks around before snapping back + ANIM_CHUCKLE, //Chuckling + //ANIM_BLOW, <-- CI + //ANIM_SPARE5, <-- CI + //ANIM_SPARE6, <-- CI + //ANIM_SPARE7, <-- CI + //ANIM_SPARE8, <-- CI + //ANIM_SPARE9, <-- CI + //ANIM_SPARE10, <-- CI + ANIM_LAST, +}; + + +#endif //__HELPDUDEANIM_H__ \ No newline at end of file diff --git a/libs/chlasm/HelpTextEnums.h b/libs/chlasm/HelpTextEnums.h new file mode 100644 index 0000000..f539741 --- /dev/null +++ b/libs/chlasm/HelpTextEnums.h @@ -0,0 +1,8938 @@ +#pragma once +#ifndef __HELPTEXTENUMS_H__ +#define __HELPTEXTENUMS_H__ + +#include + +// Last Saved,#2001-11-15 15:25:14#,"Jonty Barnes" + +//***************************************************************************** +// ENUM Values: HELP_TEXT_NARRATOR +//***************************************************************************** +enum HELP_TEXT_NARRATOR +{ + HELP_TEXT_NARRATOR_NONE = 0 , + HELP_TEXT_NARRATOR_DEFAULT = 1 , + HELP_TEXT_NARRATOR_GOOD_SPIRIT = 2 , + HELP_TEXT_NARRATOR_EVIL_SPIRIT = 3 , + HELP_TEXT_NARRATOR_WOMAN = 4 , + HELP_TEXT_NARRATOR_MAN = 5 , + HELP_TEXT_NARRATOR_OGRE = 6 , + HELP_TEXT_NARRATOR_KHAZAR = 7 , + HELP_TEXT_NARRATOR_LETHYS = 8 , + HELP_TEXT_NARRATOR_NEMESIS = 9 , + HELP_TEXT_NARRATOR_BOY = 10 , + HELP_TEXT_NARRATOR_BIG_VOICE = 11 , + HELP_TEXT_NARRATOR_TRAINER = 12 , + HELP_TEXT_NARRATOR_MISSIONARY = 13 , + HELP_TEXT_NARRATOR_COW = 14 , + HELP_TEXT_NARRATOR_APE = 15 , + HELP_TEXT_NARRATOR_RHINO = 16 , + HELP_TEXT_NARRATOR_TORTOISE = 17 , + HELP_TEXT_NARRATOR_LION = 18 , + HELP_TEXT_NARRATOR_ZEBRA = 19 , + HELP_TEXT_NARRATOR_THROW_BLOKE = 20 , + HELP_TEXT_NARRATOR_MANDRILL = 21 , + HELP_TEXT_NARRATOR_MISSIONARY2 = 22 , + HELP_TEXT_NARRATOR_EGG_HIPPY = 23 , + HELP_TEXT_NARRATOR_EGYPTIAN_MAN = 24 , + HELP_TEXT_NARRATOR_UPSET_MAN = 25 , + HELP_TEXT_NARRATOR_MISSIONARY3 = 26 , + HELP_TEXT_NARRATOR_DOLPHIN_TRAINER = 27 , + HELP_TEXT_NARRATOR_MISSIONARY4 = 28 , + HELP_TEXT_NARRATOR_MISSIONARY5 = 29 , + HELP_TEXT_NARRATOR_WISE_MAN = 30 , + HELP_TEXT_NARRATOR_GOOD_MANDRILL = 31 , + HELP_TEXT_NARRATOR_CROCODILE = 32 , + HELP_TEXT_NARRATOR_POLAR_BEAR = 33 , + HELP_TEXT_NARRATOR_ROMEO_MAN = 34 , + HELP_TEXT_NARRATOR_SECURITY_GUARD = 35 , + HELP_TEXT_NARRATOR_FATHER = 36 , + HELP_TEXT_NARRATOR_CHIMP = 37 , + HELP_TEXT_NARRATOR_GORILLA = 38 , + HELP_TEXT_NARRATOR_HORSE = 39 , + HELP_TEXT_NARRATOR_HAUNTED_MAN = 40 , + HELP_TEXT_NARRATOR_TIGER = 41 , + HELP_TEXT_NARRATOR_LAST = 42 , +}; + +//***************************************************************************** +// ENUM Values: HELP_TEXT +//***************************************************************************** +enum HELP_TEXT +{ + HELP_TEXT_NONE = 0 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_01 = 1 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_02 = 2 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_03 = 3 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_04 = 4 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_05 = 5 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_06 = 6 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_07 = 7 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_08 = 8 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_09 = 9 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET1_10 = 10 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_01 = 11 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_02 = 12 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_03 = 13 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_04 = 14 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_05 = 15 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_06 = 16 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_07 = 17 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_08 = 18 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_09 = 19 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET2_10 = 20 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_01 = 21 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_02 = 22 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_03 = 23 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_04 = 24 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_05 = 25 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_06 = 26 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_07 = 27 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_08 = 28 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_09 = 29 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET3_10 = 30 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_01 = 31 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_02 = 32 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_03 = 33 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_04 = 34 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_05 = 35 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_06 = 36 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_07 = 37 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_08 = 38 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_09 = 39 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET4_10 = 40 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_01 = 41 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_02 = 42 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_03 = 43 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_04 = 44 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_05 = 45 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_06 = 46 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_07 = 47 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_08 = 48 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_09 = 49 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET5_10 = 50 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_01 = 51 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_02 = 52 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_03 = 53 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_04 = 54 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_05 = 55 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_06 = 56 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_07 = 57 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_08 = 58 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_09 = 59 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET6_10 = 60 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_01 = 61 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_02 = 62 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_03 = 63 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_04 = 64 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_05 = 65 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_06 = 66 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_07 = 67 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_08 = 68 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_09 = 69 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET7_10 = 70 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_01 = 71 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_02 = 72 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_03 = 73 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_04 = 74 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_05 = 75 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_06 = 76 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_07 = 77 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_08 = 78 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_09 = 79 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET8_10 = 80 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_01 = 81 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_02 = 82 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_03 = 83 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_04 = 84 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_05 = 85 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_06 = 86 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_07 = 87 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_08 = 88 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_09 = 89 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET9_10 = 90 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_01 = 91 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_02 = 92 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_03 = 93 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_04 = 94 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_05 = 95 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_06 = 96 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_07 = 97 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_08 = 98 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_09 = 99 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET10_10 = 100 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_01 = 101 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_02 = 102 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_03 = 103 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_04 = 104 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_05 = 105 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_06 = 106 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_07 = 107 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_08 = 108 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_09 = 109 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET11_10 = 110 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_01 = 111 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_02 = 112 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_03 = 113 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_04 = 114 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_05 = 115 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_06 = 116 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_07 = 117 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_08 = 118 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_09 = 119 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET12_10 = 120 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_01 = 121 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_02 = 122 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_03 = 123 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_04 = 124 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_05 = 125 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_06 = 126 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_07 = 127 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_08 = 128 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_09 = 129 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET13_10 = 130 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_01 = 131 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_02 = 132 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_03 = 133 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_04 = 134 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_05 = 135 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_06 = 136 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_07 = 137 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_08 = 138 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_09 = 139 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET14_10 = 140 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_01 = 141 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_02 = 142 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_03 = 143 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_04 = 144 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_05 = 145 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_06 = 146 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_07 = 147 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_08 = 148 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_09 = 149 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET15_10 = 150 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_01 = 151 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_02 = 152 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_03 = 153 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_04 = 154 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_05 = 155 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_06 = 156 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_07 = 157 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_08 = 158 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_09 = 159 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET16_10 = 160 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_01 = 161 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_02 = 162 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_03 = 163 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_04 = 164 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_05 = 165 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_06 = 166 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_07 = 167 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_08 = 168 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_09 = 169 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET17_10 = 170 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_01 = 171 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_02 = 172 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_03 = 173 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_04 = 174 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_05 = 175 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_06 = 176 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_07 = 177 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_08 = 178 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_09 = 179 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET18_10 = 180 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_01 = 181 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_02 = 182 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_03 = 183 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_04 = 184 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_05 = 185 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_06 = 186 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_07 = 187 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_08 = 188 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_09 = 189 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET19_10 = 190 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_01 = 191 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_02 = 192 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_03 = 193 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_04 = 194 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_05 = 195 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_06 = 196 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_07 = 197 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_08 = 198 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_09 = 199 , + HELP_TEXT_VILLAGER_MALE_BANTER_SET20_10 = 200 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_01 = 201 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_02 = 202 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_03 = 203 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_04 = 204 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_05 = 205 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_06 = 206 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_07 = 207 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_08 = 208 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_09 = 209 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET1_10 = 210 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_01 = 211 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_02 = 212 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_03 = 213 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_04 = 214 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_05 = 215 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_06 = 216 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_07 = 217 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_08 = 218 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_09 = 219 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET2_10 = 220 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_01 = 221 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_02 = 222 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_03 = 223 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_04 = 224 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_05 = 225 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_06 = 226 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_07 = 227 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_08 = 228 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_09 = 229 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET3_10 = 230 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_01 = 231 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_02 = 232 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_03 = 233 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_04 = 234 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_05 = 235 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_06 = 236 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_07 = 237 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_08 = 238 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_09 = 239 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET4_10 = 240 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_01 = 241 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_02 = 242 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_03 = 243 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_04 = 244 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_05 = 245 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_06 = 246 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_07 = 247 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_08 = 248 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_09 = 249 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET5_10 = 250 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_01 = 251 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_02 = 252 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_03 = 253 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_04 = 254 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_05 = 255 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_06 = 256 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_07 = 257 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_08 = 258 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_09 = 259 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET6_10 = 260 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_01 = 261 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_02 = 262 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_03 = 263 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_04 = 264 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_05 = 265 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_06 = 266 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_07 = 267 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_08 = 268 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_09 = 269 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET7_10 = 270 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_01 = 271 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_02 = 272 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_03 = 273 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_04 = 274 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_05 = 275 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_06 = 276 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_07 = 277 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_08 = 278 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_09 = 279 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET8_10 = 280 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_01 = 281 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_02 = 282 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_03 = 283 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_04 = 284 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_05 = 285 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_06 = 286 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_07 = 287 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_08 = 288 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_09 = 289 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET9_10 = 290 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_01 = 291 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_02 = 292 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_03 = 293 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_04 = 294 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_05 = 295 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_06 = 296 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_07 = 297 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_08 = 298 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_09 = 299 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET10_10 = 300 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_01 = 301 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_02 = 302 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_03 = 303 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_04 = 304 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_05 = 305 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_06 = 306 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_07 = 307 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_08 = 308 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_09 = 309 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET11_10 = 310 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_01 = 311 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_02 = 312 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_03 = 313 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_04 = 314 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_05 = 315 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_06 = 316 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_07 = 317 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_08 = 318 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_09 = 319 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET12_10 = 320 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_01 = 321 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_02 = 322 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_03 = 323 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_04 = 324 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_05 = 325 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_06 = 326 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_07 = 327 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_08 = 328 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_09 = 329 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET13_10 = 330 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_01 = 331 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_02 = 332 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_03 = 333 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_04 = 334 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_05 = 335 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_06 = 336 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_07 = 337 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_08 = 338 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_09 = 339 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET14_10 = 340 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_01 = 341 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_02 = 342 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_03 = 343 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_04 = 344 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_05 = 345 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_06 = 346 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_07 = 347 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_08 = 348 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_09 = 349 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET15_10 = 350 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_01 = 351 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_02 = 352 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_03 = 353 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_04 = 354 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_05 = 355 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_06 = 356 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_07 = 357 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_08 = 358 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_09 = 359 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET16_10 = 360 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_01 = 361 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_02 = 362 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_03 = 363 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_04 = 364 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_05 = 365 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_06 = 366 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_07 = 367 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_08 = 368 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_09 = 369 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET17_10 = 370 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_01 = 371 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_02 = 372 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_03 = 373 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_04 = 374 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_05 = 375 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_06 = 376 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_07 = 377 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_08 = 378 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_09 = 379 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET18_10 = 380 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_01 = 381 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_02 = 382 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_03 = 383 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_04 = 384 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_05 = 385 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_06 = 386 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_07 = 387 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_08 = 388 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_09 = 389 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET19_10 = 390 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_01 = 391 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_02 = 392 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_03 = 393 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_04 = 394 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_05 = 395 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_06 = 396 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_07 = 397 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_08 = 398 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_09 = 399 , + HELP_TEXT_VILLAGER_FEMALE_BANTER_SET20_10 = 400 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_01 = 401 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_02 = 402 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_03 = 403 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_04 = 404 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_05 = 405 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_06 = 406 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_07 = 407 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_08 = 408 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_09 = 409 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_10 = 410 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_11 = 411 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_12 = 412 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_13 = 413 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_14 = 414 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_15 = 415 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_16 = 416 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_17 = 417 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_18 = 418 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_19 = 419 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_20 = 420 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_21 = 421 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_22 = 422 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_23 = 423 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_24 = 424 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_25 = 425 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_26 = 426 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_27 = 427 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_28 = 428 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_29 = 429 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_30 = 430 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_31 = 431 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_32 = 432 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_33 = 433 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_34 = 434 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_35 = 435 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_36 = 436 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_37 = 437 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_38 = 438 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_39 = 439 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_40 = 440 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_41 = 441 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_42 = 442 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_43 = 443 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_44 = 444 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_45 = 445 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_46 = 446 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_47 = 447 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_48 = 448 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_49 = 449 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_50 = 450 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_51 = 451 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_52 = 452 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_53 = 453 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_54 = 454 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_55 = 455 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_56 = 456 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_57 = 457 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_58 = 458 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_59 = 459 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_60 = 460 , + HELP_TEXT_CREATURE_CURRENT_SOURCE_61 = 461 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_01 = 462 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_02 = 463 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_03 = 464 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_04 = 465 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_05 = 466 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_06 = 467 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_07 = 468 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_08 = 469 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_09 = 470 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_10 = 471 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_11 = 472 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_12 = 473 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_13 = 474 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_14 = 475 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_15 = 476 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_16 = 477 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_17 = 478 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_18 = 479 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_19 = 480 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_20 = 481 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_21 = 482 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_22 = 483 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_23 = 484 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_24 = 485 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_25 = 486 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_26 = 487 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_27 = 488 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_28 = 489 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_29 = 490 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_30 = 491 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_31 = 492 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_32 = 493 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_33 = 494 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_34 = 495 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_35 = 496 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_36 = 497 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_37 = 498 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_38 = 499 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_39 = 500 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_40 = 501 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_41 = 502 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_42 = 503 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_43 = 504 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_44 = 505 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_45 = 506 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_46 = 507 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_47 = 508 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_48 = 509 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_49 = 510 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_50 = 511 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_51 = 512 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_52 = 513 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_53 = 514 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_54 = 515 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_55 = 516 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_56 = 517 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_57 = 518 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_58 = 519 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_59 = 520 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_60 = 521 , + HELP_TEXT_CREATURE_LESSON_INCREASE_SOURCE_61 = 522 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_01 = 523 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_02 = 524 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_03 = 525 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_04 = 526 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_05 = 527 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_06 = 528 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_07 = 529 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_08 = 530 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_09 = 531 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_10 = 532 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_11 = 533 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_12 = 534 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_13 = 535 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_14 = 536 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_15 = 537 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_16 = 538 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_17 = 539 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_18 = 540 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_19 = 541 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_20 = 542 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_21 = 543 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_22 = 544 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_23 = 545 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_24 = 546 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_25 = 547 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_26 = 548 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_27 = 549 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_28 = 550 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_29 = 551 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_30 = 552 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_31 = 553 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_32 = 554 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_33 = 555 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_34 = 556 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_35 = 557 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_36 = 558 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_37 = 559 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_38 = 560 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_39 = 561 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_40 = 562 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_41 = 563 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_42 = 564 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_43 = 565 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_44 = 566 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_45 = 567 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_46 = 568 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_47 = 569 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_48 = 570 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_49 = 571 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_50 = 572 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_51 = 573 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_52 = 574 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_53 = 575 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_54 = 576 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_55 = 577 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_56 = 578 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_57 = 579 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_58 = 580 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_59 = 581 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_60 = 582 , + HELP_TEXT_CREATURE_LESSON_DECREASE_SOURCE_61 = 583 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_01 = 584 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_02 = 585 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_03 = 586 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_04 = 587 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_05 = 588 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_06 = 589 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_07 = 590 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_08 = 591 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_09 = 592 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_10 = 593 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_11 = 594 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_12 = 595 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_13 = 596 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_14 = 597 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_15 = 598 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_16 = 599 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_17 = 600 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_18 = 601 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_19 = 602 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_20 = 603 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_21 = 604 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_22 = 605 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_23 = 606 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_24 = 607 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_25 = 608 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_26 = 609 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_27 = 610 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_28 = 611 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_29 = 612 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_30 = 613 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_31 = 614 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_32 = 615 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_33 = 616 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_34 = 617 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_35 = 618 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_36 = 619 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_37 = 620 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_38 = 621 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_39 = 622 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_FIRST_PERSON_40 = 623 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_01 = 624 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_02 = 625 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_03 = 626 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_04 = 627 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_05 = 628 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_06 = 629 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_07 = 630 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_08 = 631 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_09 = 632 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_10 = 633 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_11 = 634 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_12 = 635 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_13 = 636 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_14 = 637 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_15 = 638 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_16 = 639 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_17 = 640 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_18 = 641 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_19 = 642 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_20 = 643 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_21 = 644 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_22 = 645 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_23 = 646 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_24 = 647 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_25 = 648 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_26 = 649 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_27 = 650 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_28 = 651 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_29 = 652 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_30 = 653 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_31 = 654 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_32 = 655 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_33 = 656 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_34 = 657 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_35 = 658 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_36 = 659 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_37 = 660 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_38 = 661 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_39 = 662 , + HELP_TEXT_CREATURE_CURRENT_DESIRE_40 = 663 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_01 = 664 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_02 = 665 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_03 = 666 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_04 = 667 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_05 = 668 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_06 = 669 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_07 = 670 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_08 = 671 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_09 = 672 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_10 = 673 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_11 = 674 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_12 = 675 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_13 = 676 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_14 = 677 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_15 = 678 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_16 = 679 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_17 = 680 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_18 = 681 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_19 = 682 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_20 = 683 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_21 = 684 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_22 = 685 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_23 = 686 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_24 = 687 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_25 = 688 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_26 = 689 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_27 = 690 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_28 = 691 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_29 = 692 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_30 = 693 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_31 = 694 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_32 = 695 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_33 = 696 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_34 = 697 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_35 = 698 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_36 = 699 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_37 = 700 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_38 = 701 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_39 = 702 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_40 = 703 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_01 = 704 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_02 = 705 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_03 = 706 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_04 = 707 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_05 = 708 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_06 = 709 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_07 = 710 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_08 = 711 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_09 = 712 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_10 = 713 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_11 = 714 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_12 = 715 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_13 = 716 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_14 = 717 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_15 = 718 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_16 = 719 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_17 = 720 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_18 = 721 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_19 = 722 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_20 = 723 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_21 = 724 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_22 = 725 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_23 = 726 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_24 = 727 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_25 = 728 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_26 = 729 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_27 = 730 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_28 = 731 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_29 = 732 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_30 = 733 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_31 = 734 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_32 = 735 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_33 = 736 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_34 = 737 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_35 = 738 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_36 = 739 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_37 = 740 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_38 = 741 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_39 = 742 , + HELP_TEXT_CREATURE_LESSON_DECREASE_DESIRE_40 = 743 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_01 = 744 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_02 = 745 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_03 = 746 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_04 = 747 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_05 = 748 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_06 = 749 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_07 = 750 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_08 = 751 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_09 = 752 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_10 = 753 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_11 = 754 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_12 = 755 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_13 = 756 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_14 = 757 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_15 = 758 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_16 = 759 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_17 = 760 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_18 = 761 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_19 = 762 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_20 = 763 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_21 = 764 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_22 = 765 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_23 = 766 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_24 = 767 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_25 = 768 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_26 = 769 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_27 = 770 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_28 = 771 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_29 = 772 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_30 = 773 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_31 = 774 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_32 = 775 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_33 = 776 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_34 = 777 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_35 = 778 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_36 = 779 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_37 = 780 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_38 = 781 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_39 = 782 , + HELP_TEXT_CREATURE_LESSON_INCREASE_OPINION_40 = 783 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_01 = 784 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_02 = 785 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_03 = 786 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_04 = 787 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_05 = 788 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_06 = 789 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_07 = 790 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_08 = 791 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_09 = 792 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_10 = 793 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_11 = 794 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_12 = 795 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_13 = 796 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_14 = 797 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_15 = 798 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_16 = 799 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_17 = 800 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_18 = 801 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_19 = 802 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_20 = 803 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_21 = 804 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_22 = 805 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_23 = 806 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_24 = 807 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_25 = 808 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_26 = 809 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_27 = 810 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_28 = 811 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_29 = 812 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_30 = 813 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_31 = 814 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_32 = 815 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_33 = 816 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_34 = 817 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_35 = 818 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_36 = 819 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_37 = 820 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_38 = 821 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_39 = 822 , + HELP_TEXT_CREATURE_LESSON_DECREASE_OPINION_40 = 823 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_01 = 824 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_02 = 825 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_03 = 826 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_04 = 827 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_05 = 828 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_06 = 829 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_07 = 830 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_08 = 831 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_09 = 832 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_10 = 833 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_11 = 834 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_12 = 835 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_13 = 836 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_14 = 837 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_15 = 838 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_16 = 839 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_17 = 840 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_18 = 841 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_19 = 842 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_20 = 843 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_21 = 844 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_22 = 845 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_23 = 846 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_24 = 847 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_25 = 848 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_26 = 849 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_27 = 850 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_28 = 851 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_29 = 852 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_30 = 853 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_31 = 854 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_32 = 855 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_33 = 856 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_34 = 857 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_35 = 858 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_36 = 859 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_37 = 860 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_38 = 861 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_39 = 862 , + HELP_TEXT_CREATURE_LESSON_INCREASE_DESIRE_FROM_PLAYER_40 = 863 , + HELP_TEXT_CREATURE_CURRENT_MOOD_01 = 864 , + HELP_TEXT_CREATURE_CURRENT_MOOD_02 = 865 , + HELP_TEXT_CREATURE_CURRENT_MOOD_03 = 866 , + HELP_TEXT_CREATURE_CURRENT_MOOD_04 = 867 , + HELP_TEXT_CREATURE_PHYSICAL_STATE_01 = 868 , + HELP_TEXT_CREATURE_PHYSICAL_STATE_02 = 869 , + HELP_TEXT_CREATURE_PHYSICAL_STATE_03 = 870 , + HELP_TEXT_CREATURE_PHYSICAL_STATE_04 = 871 , + HELP_TEXT_CREATURE_PHYSICAL_STATE_05 = 872 , + HELP_TEXT_CREATURE_PHYSICAL_STATE_06 = 873 , + HELP_TEXT_CREATURE_PHYSICAL_STATE_07 = 874 , + HELP_TEXT_CREATURE_PHYSICAL_STATE_08 = 875 , + HELP_TEXT_CREATURE_LESSON_LEARN_NORMAL_ACTION_01 = 876 , + HELP_TEXT_CREATURE_LESSON_LEARN_NORMAL_ACTION_02 = 877 , + HELP_TEXT_CREATURE_LESSON_LEARN_NORMAL_ACTION_03 = 878 , + HELP_TEXT_CREATURE_LESSON_LEARN_NORMAL_ACTION_04 = 879 , + HELP_TEXT_CREATURE_LESSON_LEARN_NORMAL_ACTION_05 = 880 , + HELP_TEXT_CREATURE_LESSON_LEARN_NORMAL_ACTION_06 = 881 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_01 = 882 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_02 = 883 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_03 = 884 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_04 = 885 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_05 = 886 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_06 = 887 , + HELP_TEXT_CREATURE_LESSON_HASNT_LEARN_NORMAL_ACTION_01 = 888 , + HELP_TEXT_CREATURE_LESSON_HASNT_LEARN_NORMAL_ACTION_02 = 889 , + HELP_TEXT_CREATURE_LESSON_HASNT_LEARN_NORMAL_ACTION_03 = 890 , + HELP_TEXT_CREATURE_LESSON_HASNT_LEARN_NORMAL_ACTION_04 = 891 , + HELP_TEXT_CREATURE_LESSON_HASNT_LEARN_NORMAL_ACTION_05 = 892 , + HELP_TEXT_CREATURE_LESSON_HASNT_LEARN_NORMAL_ACTION_06 = 893 , + HELP_TEXT_CREATURE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_01 = 894 , + HELP_TEXT_CREATURE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_02 = 895 , + HELP_TEXT_CREATURE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_03 = 896 , + HELP_TEXT_CREATURE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_04 = 897 , + HELP_TEXT_CREATURE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_05 = 898 , + HELP_TEXT_CREATURE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_06 = 899 , + HELP_TEXT_CREATURE_LESSON_CANT_LEARN_MAGIC_ACTION_YET_01 = 900 , + HELP_TEXT_CREATURE_LESSON_CANT_LEARN_MAGIC_ACTION_YET_02 = 901 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_01 = 902 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_02 = 903 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_03 = 904 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_04 = 905 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_05 = 906 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_06 = 907 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_07 = 908 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_08 = 909 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_09 = 910 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_10 = 911 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_11 = 912 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_12 = 913 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_13 = 914 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_14 = 915 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_15 = 916 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_16 = 917 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_17 = 918 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_18 = 919 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_19 = 920 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_20 = 921 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_21 = 922 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_22 = 923 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_23 = 924 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_24 = 925 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_25 = 926 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_26 = 927 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_27 = 928 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_28 = 929 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_29 = 930 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_30 = 931 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_31 = 932 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_32 = 933 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_33 = 934 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_34 = 935 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_35 = 936 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_36 = 937 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_37 = 938 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_38 = 939 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_39 = 940 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_40 = 941 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_41 = 942 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_42 = 943 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_43 = 944 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_44 = 945 , + HELP_TEXT_CREATURE_LESSON_LEARN_MAGIC_ACTION_45 = 946 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_01 = 947 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_02 = 948 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_03 = 949 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_04 = 950 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_05 = 951 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_06 = 952 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_07 = 953 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_08 = 954 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_09 = 955 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_10 = 956 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_11 = 957 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_12 = 958 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_13 = 959 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_14 = 960 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_15 = 961 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_16 = 962 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_17 = 963 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_18 = 964 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_19 = 965 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_20 = 966 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_21 = 967 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_22 = 968 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_23 = 969 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_24 = 970 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_25 = 971 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_26 = 972 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_27 = 973 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_28 = 974 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_29 = 975 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_30 = 976 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_31 = 977 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_32 = 978 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_33 = 979 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_34 = 980 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_35 = 981 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_36 = 982 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_37 = 983 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_38 = 984 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_39 = 985 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_40 = 986 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_41 = 987 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_42 = 988 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_43 = 989 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_44 = 990 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_45 = 991 , + HELP_TEXT_CREATURE_LESSON_NEARLY_LEARNT_MAGIC_ACTION_46 = 992 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_01 = 993 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_02 = 994 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_03 = 995 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_04 = 996 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_05 = 997 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_06 = 998 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_07 = 999 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_08 = 1000 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_09 = 1001 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_10 = 1002 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_11 = 1003 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_12 = 1004 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_13 = 1005 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_14 = 1006 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_15 = 1007 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_16 = 1008 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_17 = 1009 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_18 = 1010 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_19 = 1011 , + HELP_TEXT_CREATURE_CANNOT_LEARN_LESSON_YET_20 = 1012 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_01 = 1013 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_02 = 1014 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_03 = 1015 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_04 = 1016 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_05 = 1017 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_06 = 1018 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_07 = 1019 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_08 = 1020 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_09 = 1021 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_10 = 1022 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_11 = 1023 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_12 = 1024 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_13 = 1025 , + HELP_TEXT_SHOW_CREATURE_DEVELOPMENT_CRITERIA_14 = 1026 , + HELP_TEXT_INTERIM_REMINDER_01 = 1027 , + HELP_TEXT_INTERIM_REMINDER_02 = 1028 , + HELP_TEXT_INTERIM_REMINDER_03 = 1029 , + HELP_TEXT_INTERIM_REMINDER_04 = 1030 , + HELP_TEXT_INTERIM_REMINDER_05 = 1031 , + HELP_TEXT_INTERIM_REMINDER_06 = 1032 , + HELP_TEXT_INTERIM_REMINDER_07 = 1033 , + HELP_TEXT_INTERIM_REMINDER_08 = 1034 , + HELP_TEXT_INTERIM_REMINDER_09 = 1035 , + HELP_TEXT_INTERIM_REMINDER_10 = 1036 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_01 = 1037 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_02 = 1038 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_03 = 1039 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_04 = 1040 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_05 = 1041 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_06 = 1042 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_07 = 1043 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_08 = 1044 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_09 = 1045 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_10 = 1046 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_11 = 1047 , + HELP_TEXT_CREATURE_GOING_TO_OBJECT_12 = 1048 , + HELP_TEXT_CREATURE_GOING_TO_POS_01 = 1049 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_01 = 1050 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_02 = 1051 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_03 = 1052 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_04 = 1053 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_05 = 1054 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_06 = 1055 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_07 = 1056 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_08 = 1057 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_09 = 1058 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_10 = 1059 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_11 = 1060 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_12 = 1061 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_13 = 1062 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_14 = 1063 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_15 = 1064 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_16 = 1065 , + HELP_TEXT_CREATURE_FINISHED_SPELL_01 = 1066 , + HELP_TEXT_CREATURE_FINISHED_SPELL_02 = 1067 , + HELP_TEXT_CREATURE_FINISHED_SPELL_03 = 1068 , + HELP_TEXT_CREATURE_FINISHED_SPELL_04 = 1069 , + HELP_TEXT_CREATURE_FINISHED_SPELL_05 = 1070 , + HELP_TEXT_CREATURE_FINISHED_SPELL_06 = 1071 , + HELP_TEXT_CREATURE_FINISHED_SPELL_07 = 1072 , + HELP_TEXT_CREATURE_FINISHED_SPELL_08 = 1073 , + HELP_TEXT_CREATURE_FINISHED_SPELL_09 = 1074 , + HELP_TEXT_CREATURE_FINISHED_SPELL_10 = 1075 , + HELP_TEXT_CREATURE_FINISHED_SPELL_11 = 1076 , + HELP_TEXT_CREATURE_FINISHED_SPELL_12 = 1077 , + HELP_TEXT_CREATURE_FINISHED_SPELL_13 = 1078 , + HELP_TEXT_CREATURE_FINISHED_SPELL_14 = 1079 , + HELP_TEXT_CREATURE_FINISHED_SPELL_15 = 1080 , + HELP_TEXT_CREATURE_FINISHED_SPELL_16 = 1081 , + HELP_TEXT_CREATURE_MENTAL_PROBLEM_01 = 1082 , + HELP_TEXT_TOWN_ATTITUDE_TO_CREATURE_01 = 1083 , + HELP_TEXT_TOWN_ATTITUDE_TO_CREATURE_02 = 1084 , + HELP_TEXT_TOWN_ATTITUDE_TO_CREATURE_03 = 1085 , + HELP_TEXT_TOWN_ATTITUDE_TO_CREATURE_04 = 1086 , + HELP_TEXT_TOWN_ATTITUDE_TO_CREATURE_05 = 1087 , + HELP_TEXT_CREATURE_TUTORIAL_01 = 1088 , + HELP_TEXT_CREATURE_TUTORIAL_02 = 1089 , + HELP_TEXT_CREATURE_TUTORIAL_03 = 1090 , + HELP_TEXT_CREATURE_TUTORIAL_04 = 1091 , + HELP_TEXT_CREATURE_TUTORIAL_05 = 1092 , + HELP_TEXT_CREATURE_TUTORIAL_06 = 1093 , + HELP_TEXT_CREATURE_TUTORIAL_07 = 1094 , + HELP_TEXT_CREATURE_TUTORIAL_08 = 1095 , + HELP_TEXT_CREATURE_TUTORIAL_09 = 1096 , + HELP_TEXT_CREATURE_TUTORIAL_10 = 1097 , + HELP_TEXT_CREATURE_TUTORIAL_11 = 1098 , + HELP_TEXT_CREATURE_TUTORIAL_12 = 1099 , + HELP_TEXT_CREATURE_FAILURE_EXPLANATION_01 = 1100 , + HELP_TEXT_CREATURE_FAILURE_EXPLANATION_02 = 1101 , + HELP_TEXT_CREATURE_FAILURE_EXPLANATION_03 = 1102 , + HELP_TEXT_CREATURE_FAILURE_EXPLANATION_04 = 1103 , + HELP_TEXT_CREATURE_FAILURE_EXPLANATION_05 = 1104 , + HELP_TEXT_CREATURE_FAILURE_EXPLANATION_06 = 1105 , + HELP_TEXT_CREATURE_FAILURE_EXPLANATION_07 = 1106 , + HELP_TEXT_CREATURE_FAILURE_EXPLANATION_08 = 1107 , + HELP_TEXT_CREATURE_FAILURE_EXPLANATION_09 = 1108 , + HELP_TEXT_CREATURE_MISCELLANEOUS_STACKED_01 = 1109 , + HELP_TEXT_CREATURE_MISCELLANEOUS_STACKED_02 = 1110 , + HELP_TEXT_CREATURE_MISCELLANEOUS_STACKED_03 = 1111 , + HELP_TEXT_CREATURE_MISCELLANEOUS_STACKED_04 = 1112 , + HELP_TEXT_CREATURE_MISCELLANEOUS_STACKED_05 = 1113 , + HELP_TEXT_CREATURE_MISCELLANEOUS_STACKED_06 = 1114 , + HELP_TEXT_CREATURE_MISCELLANEOUS_STACKED_07 = 1115 , + HELP_TEXT_CREATURE_MISCELLANEOUS_UNSTACKED_01 = 1116 , + HELP_TEXT_CREATURE_MESSED_UP_ACTION_01 = 1117 , + HELP_TEXT_CREATURE_MESSED_UP_ACTION_02 = 1118 , + HELP_TEXT_CREATURE_MESSED_UP_ACTION_03 = 1119 , + HELP_TEXT_CREATURE_MESSED_UP_ACTION_04 = 1120 , + HELP_TEXT_CREATURE_MESSED_UP_ACTION_05 = 1121 , + HELP_TEXT_CREATURE_MESSED_UP_ACTION_06 = 1122 , + HELP_TEXT_CREATURE_MESSED_UP_ACTION_07 = 1123 , + HELP_TEXT_CREATURE_ATTITUDE_01 = 1124 , + HELP_TEXT_CREATURE_ATTITUDE_02 = 1125 , + HELP_TEXT_CREATURE_ATTITUDE_03 = 1126 , + HELP_TEXT_CREATURE_ATTITUDE_04 = 1127 , + HELP_TEXT_CREATURE_ATTITUDE_05 = 1128 , + HELP_TEXT_CREATURE_ATTITUDE_06 = 1129 , + HELP_TEXT_CREATURE_ATTITUDE_07 = 1130 , + HELP_TEXT_CREATURE_ATTITUDE_08 = 1131 , + HELP_TEXT_CREATURE_ATTITUDE_09 = 1132 , + HELP_TEXT_CREATURE_ATTITUDE_10 = 1133 , + HELP_TEXT_ALIGNMENT_01 = 1134 , + HELP_TEXT_ALIGNMENT_02 = 1135 , + HELP_TEXT_ALIGNMENT_03 = 1136 , + HELP_TEXT_ALIGNMENT_04 = 1137 , + HELP_TEXT_ALIGNMENT_05 = 1138 , + HELP_TEXT_ALIGNMENT_06 = 1139 , + HELP_TEXT_ALIGNMENT_07 = 1140 , + HELP_TEXT_HOW_MUCH_01 = 1141 , + HELP_TEXT_HOW_MUCH_02 = 1142 , + HELP_TEXT_HOW_MUCH_03 = 1143 , + HELP_TEXT_HOW_MUCH_04 = 1144 , + HELP_TEXT_HOW_MUCH_05 = 1145 , + HELP_TEXT_HOW_WARM_01 = 1146 , + HELP_TEXT_HOW_WARM_02 = 1147 , + HELP_TEXT_HOW_WARM_03 = 1148 , + HELP_TEXT_HOW_WARM_04 = 1149 , + HELP_TEXT_HOW_WARM_05 = 1150 , + HELP_TEXT_HOW_ILL_01 = 1151 , + HELP_TEXT_HOW_ILL_02 = 1152 , + HELP_TEXT_HOW_ILL_03 = 1153 , + HELP_TEXT_HOW_ILL_04 = 1154 , + HELP_TEXT_HOW_ILL_05 = 1155 , + HELP_TEXT_ROOM_CHALLENGE_TITLE = 1156 , + HELP_TEXT_ROOM_CHALLENGE_LIST_NUMBER_OF_DISCOVERED_CHALLENGES = 1157 , + HELP_TEXT_ROOM_CHALLENGE_LIST_NUMBER_OF_COMPLETED_CHALLENGES = 1158 , + HELP_TEXT_ROOM_CHALLENGE_LIST_NUMBER_OF_DISCOVERED_CHALLENGE = 1159 , + HELP_TEXT_ROOM_CHALLENGE_LIST_NUMBER_OF_COMPLETED_CHALLENGE = 1160 , + HELP_TEXT_ROOM_CREATURE_TITLE = 1161 , + HELP_TEXT_ROOM_CREATURE_SCROLL_TITLE = 1162 , + HELP_TEXT_ROOM_CREATURE_SCROLL_NAME = 1163 , + HELP_TEXT_ROOM_CREATURE_SCROLL_AGE = 1164 , + HELP_TEXT_ROOM_CREATURE_SCROLL_HEALTH = 1165 , + HELP_TEXT_ROOM_CREATURE_SCROLL_ALIGNMENT = 1166 , + HELP_TEXT_ROOM_CREATURE_SCROLL_ENERGY = 1167 , + HELP_TEXT_ROOM_CREATURE_SCROLL_STRENGTH = 1168 , + HELP_TEXT_ROOM_CREATURE_SCROLL_FATNESS = 1169 , + HELP_TEXT_ROOM_CREATURE_SCROLL_EXHAUSTION = 1170 , + HELP_TEXT_ROOM_CREATURE_SCROLL_DEHYDRATION = 1171 , + HELP_TEXT_ROOM_CREATURE_SCROLL_ITCHINESS = 1172 , + HELP_TEXT_ROOM_CREATURE_SCROLL_AMOUNTOFPOO = 1173 , + HELP_TEXT_ROOM_CREATURE_SCROLL_NUMBEROFPEOPLEKILLED = 1174 , + HELP_TEXT_ROOM_CREATURE_SCROLL_NUMBEROFANIMALSKILLED = 1175 , + HELP_TEXT_ROOM_CREATURE_SCROLL_NUMBEROFCREATURESKILLED = 1176 , + HELP_TEXT_ROOM_CREATURE_SCROLL_NUMBEROFBATTLESFOUGHT = 1177 , + HELP_TEXT_ROOM_CREATURE_SCROLL_NUMBEROFBATTLESWON = 1178 , + HELP_TEXT_ROOM_CREATURE_SCROLL_NUMBEROFPOOS = 1179 , + HELP_TEXT_ROOM_CREATURE_SCROLL_NUMBEROFMUSHROOMSEATEN = 1180 , + HELP_TEXT_ROOM_CREATURE_SCROLL_DEVELOPMENT_STAGE = 1181 , + HELP_TEXT_ROOM_CREATURE_SCROLL_WARMTH = 1182 , + HELP_TEXT_ROOM_CREATURE_SCROLL_ILLNESS = 1183 , + HELP_TEXT_ROOM_CREATURE_SCROLL_SPELLS_RECEIVED = 1184 , + HELP_TEXT_ROOM_ACTIONS_LEARNT_SCROLL_TITLE = 1185 , + HELP_TEXT_ROOM_MAGIC_SCROLL_TITLE = 1186 , + HELP_TEXT_ROOM_LIKES_SCROLL_TITLE = 1187 , + HELP_TEXT_ROOM_DUMMY_TEXT = 1188 , + HELP_TEXT_ROOM_MAGICPLINTHS_TEXT = 1189 , + HELP_TEXT_ROOM_LIKESPLINTHS_TEXT = 1190 , + HELP_TEXT_ROOM_PERSONALITY_GREEDY = 1191 , + HELP_TEXT_ROOM_PERSONALITY_LETHARGIC = 1192 , + HELP_TEXT_ROOM_PERSONALITY_ANGRY = 1193 , + HELP_TEXT_ROOM_PERSONALITY_COMPASSIONATE = 1194 , + HELP_TEXT_ROOM_PERSONALITY_TERRIFIED = 1195 , + HELP_TEXT_ROOM_PERSONALITY_PLAYFUL = 1196 , + HELP_TEXT_ROOM_PERSONALITY_ATTITUDE_TO_PLAYER = 1197 , + HELP_TEXT_ROOM_PERSONALITY_HOW_MUCH_ATTENTION_PLAYER_HAS_GIVEN_ME = 1198 , + HELP_TEXT_ROOM_PERSONALITY_PERCEIVED_PLAYER_DESIRE = 1199 , + HELP_TEXT_ROOM_PERSONALITY_ATTITUDE_TO_CREATURE_START = 1200 , + HELP_TEXT_ROOM_PERSONALITY_ATTITUDE_TO_CREATURE_END = 1201 , + HELP_TEXT_ROOM_PERSONALITY_ATTITUDE_TO_CREATURE_HOW_WELL_I_KNOW_HIM = 1202 , + HELP_TEXT_ROOM_PERSONALITY_BELIEFS_ABOUT_TOWNS = 1203 , + HELP_TEXT_ROOM_PERSONALITY_BELIEFS_ABOUT_CREATURES = 1204 , + HELP_TEXT_ROOM_PERSONALITY_BELIEFS_ABOUT_CITADELS = 1205 , + HELP_TEXT_ROOM_PERSONALITY_BELIEFS_ABOUT_FLOCKS = 1206 , + HELP_TEXT_ROOM_PERSONALITY_BELIEFS_ABOUT_FORESTS = 1207 , + HELP_TEXT_ROOM_PERSONALITY_INNATE_KINDNESS = 1208 , + HELP_TEXT_ROOM_PERSONALITY_INNATE_AGGRESSION = 1209 , + HELP_TEXT_ROOM_PERSONALITY_INNATE_LETHARGY = 1210 , + HELP_TEXT_ROOM_PERSONALITY_INNATE_FRIENDLINESS = 1211 , + HELP_TEXT_ROOM_PERSONALITY_INNATE_COMMUNICATIVENESS = 1212 , + HELP_TEXT_ROOM_PERSONALITY_INNATE_EXTROVERSION = 1213 , + HELP_TEXT_ROOM_LIKES_SCROLL_EAT = 1214 , + HELP_TEXT_ROOM_LIKES_SCROLL_ATTACK = 1215 , + HELP_TEXT_ROOM_LIKES_SCROLL_BEFRIEND = 1216 , + HELP_TEXT_ROOM_LIKES_SCROLL_PLAYWITH = 1217 , + HELP_TEXT_ROOM_LIKES_SCROLL_IMPRESS = 1218 , + HELP_TEXT_ROOM_LIKES_SCROLL_FEARS = 1219 , + HELP_TEXT_ROOM_LIKES_SCROLL_COMPASSION = 1220 , + HELP_TEXT_ROOM_GAMEOPTIONS_TITLE = 1221 , + HELP_TEXT_ROOM_SAVEGAME_TITLE = 1222 , + HELP_TEXT_ROOM_UNIVERSE_TITLE = 1223 , + HELP_TEXT_ROOM_WORLD_TITLE = 1224 , + HELP_TEXT_ROOM_CREDITS_TITLE = 1225 , + HELP_TEXT_ROOM_EXIT_TITLE = 1226 , + HELP_TEXT_ROOM_TOTAL_POPULATION = 1227 , + HELP_TEXT_ROOM_PERCENT_OF_POPULATION_BELIEVE_IN_YOU = 1228 , + HELP_TEXT_ROOM_PERCENT_OF_POPULATION_THAT_ARE_MALE = 1229 , + HELP_TEXT_ROOM_NUMBER_OF_DEATHS_IN_YOUR_REGION = 1230 , + HELP_TEXT_ROOM_NUMBER_OF_BIRTHS_IN_YOUR_REGION = 1231 , + HELP_TEXT_ROOM_NUMBER_OF_BUILDINGS_BUILT = 1232 , + HELP_TEXT_ROOM_NUMBER_OF_WONDERS_BUILT = 1233 , + HELP_TEXT_ROOM_NUMBER_OF_DISCIPLES = 1234 , + HELP_TEXT_ROOM_NUMBER_OF_BUILDERS = 1235 , + HELP_TEXT_ROOM_NUMBER_OF_BREEDERS = 1236 , + HELP_TEXT_ROOM_NUMBER_OF_FISHERMEN = 1237 , + HELP_TEXT_ROOM_NUMBER_OF_FARMERS = 1238 , + HELP_TEXT_ROOM_NUMBER_OF_FORESTERS = 1239 , + HELP_TEXT_ROOM_NUMBER_OF_PROTECTORS = 1240 , + HELP_TEXT_ROOM_NUMBER_OF_MISSIONARIES = 1241 , + HELP_TEXT_ROOM_NUMBER_OF_CRAFTSMEN = 1242 , + HELP_TEXT_ROOM_NUMBER_OF_TRADERS = 1243 , + HELP_TEXT_TRIBEPOWER_01 = 1244 , + HELP_TEXT_TRIBEPOWER_02 = 1245 , + HELP_TEXT_TRIBEPOWER_03 = 1246 , + HELP_TEXT_TRIBEPOWER_04 = 1247 , + HELP_TEXT_TRIBEPOWER_05 = 1248 , + HELP_TEXT_TRIBEPOWER_06 = 1249 , + HELP_TEXT_TRIBEPOWER_07 = 1250 , + HELP_TEXT_TRIBEPOWER_08 = 1251 , + HELP_TEXT_TRIBEPOWER_09 = 1252 , + HELP_TEXT_FOLLOW_US_LAGGING_01 = 1253 , + HELP_TEXT_FOLLOW_US_LAGGING_02 = 1254 , + HELP_TEXT_FOLLOW_US_LAGGING_03 = 1255 , + HELP_TEXT_FOLLOW_US_LAGGING_04 = 1256 , + HELP_TEXT_FOLLOW_US_LAGGING_05 = 1257 , + HELP_TEXT_FOLLOW_US_OVERTAKING_01 = 1258 , + HELP_TEXT_FOLLOW_US_OVERTAKING_02 = 1259 , + HELP_TEXT_FOLLOW_US_OVERTAKING_03 = 1260 , + HELP_TEXT_FOLLOW_US_VILLAGERS_AHEAD_01 = 1261 , + HELP_TEXT_FOLLOW_US_VILLAGERS_AHEAD_02 = 1262 , + HELP_TEXT_FOLLOW_US_VILLAGERS_AHEAD_03 = 1263 , + HELP_TEXT_FOLLOW_US_VILLAGERS_AHEAD_04 = 1264 , + HELP_TEXT_MISSIONARIES_05 = 1265 , + HELP_TEXT_MISSIONARIES_06 = 1266 , + HELP_TEXT_MISSIONARIES_11 = 1267 , + HELP_TEXT_MISSIONARIES_12 = 1268 , + HELP_TEXT_MISSIONARIES_13 = 1269 , + HELP_TEXT_MISSIONARIES_15 = 1270 , + HELP_TEXT_MISSIONARIES_16 = 1271 , + HELP_TEXT_MISSIONARIES_17 = 1272 , + HELP_TEXT_MISSIONARIES_18 = 1273 , + HELP_TEXT_MISSIONARIES_21 = 1274 , + HELP_TEXT_MISSIONARIES_22 = 1275 , + HELP_TEXT_MISSIONARIES_24 = 1276 , + HELP_TEXT_MISSIONARIES_26 = 1277 , + HELP_TEXT_MISSIONARIES_27 = 1278 , + HELP_TEXT_MISSIONARIES_37 = 1279 , + HELP_TEXT_MISSIONARIES_38 = 1280 , + HELP_TEXT_MISSIONARIES_42 = 1281 , + HELP_TEXT_MISSIONARIES_43 = 1282 , + HELP_TEXT_MISSIONARIES_44 = 1283 , + HELP_TEXT_MISSIONARIES_45 = 1284 , + HELP_TEXT_MISSIONARIES_46 = 1285 , + HELP_TEXT_MISSIONARIES_47 = 1286 , + HELP_TEXT_MISSIONARIES_48 = 1287 , + HELP_TEXT_MISSIONARIES_49 = 1288 , + HELP_TEXT_MISSIONARIES_50 = 1289 , + HELP_TEXT_MISSIONARIES_51 = 1290 , + HELP_TEXT_MISSIONARIES_52 = 1291 , + HELP_TEXT_MISSIONARIES_53 = 1292 , + HELP_TEXT_LOST_BROTHER_01 = 1293 , + HELP_TEXT_LOST_BROTHER_02 = 1294 , + HELP_TEXT_LOST_BROTHER_03 = 1295 , + HELP_TEXT_LOST_BROTHER_04 = 1296 , + HELP_TEXT_LOST_BROTHER_05 = 1297 , + HELP_TEXT_LOST_BROTHER_06 = 1298 , + HELP_TEXT_LOST_BROTHER_07 = 1299 , + HELP_TEXT_LOST_BROTHER_08 = 1300 , + HELP_TEXT_LOST_BROTHER_09 = 1301 , + HELP_TEXT_LOST_BROTHER_10 = 1302 , + HELP_TEXT_LOST_BROTHER_14 = 1303 , + HELP_TEXT_LOST_BROTHER_16 = 1304 , + HELP_TEXT_LOST_BROTHER_17 = 1305 , + HELP_TEXT_LOST_BROTHER_21 = 1306 , + HELP_TEXT_LOST_BROTHER_22 = 1307 , + HELP_TEXT_LOST_BROTHER_23 = 1308 , + HELP_TEXT_LOST_BROTHER_24 = 1309 , + HELP_TEXT_LOST_BROTHER_29 = 1310 , + HELP_TEXT_LOST_BROTHER_30 = 1311 , + HELP_TEXT_LOST_BROTHER_31 = 1312 , + HELP_TEXT_LOST_BROTHER_37 = 1313 , + HELP_TEXT_LOST_BROTHER_38 = 1314 , + HELP_TEXT_LOST_BROTHER_39 = 1315 , + HELP_TEXT_LOST_BROTHER_40 = 1316 , + HELP_TEXT_LOST_BROTHER_41 = 1317 , + HELP_TEXT_LOST_BROTHER_42 = 1318 , + HELP_TEXT_LOST_BROTHER_43 = 1319 , + HELP_TEXT_LOST_BROTHER_44 = 1320 , + HELP_TEXT_LOST_BROTHER_45 = 1321 , + HELP_TEXT_LOST_BROTHER_46 = 1322 , + HELP_TEXT_LOST_BROTHER_47 = 1323 , + HELP_TEXT_LOST_BROTHER_48 = 1324 , + HELP_TEXT_LOST_BROTHER_49 = 1325 , + HELP_TEXT_LOST_BROTHER_53 = 1326 , + HELP_TEXT_LOST_BROTHER_54 = 1327 , + HELP_TEXT_LOST_BROTHER_55 = 1328 , + HELP_TEXT_LOST_BROTHER_56 = 1329 , + HELP_TEXT_LOST_BROTHER_57 = 1330 , + HELP_TEXT_CREATURE_RETRIEVE_01 = 1331 , + HELP_TEXT_SINGINGSTONES_06 = 1332 , + HELP_TEXT_SINGINGSTONES_07 = 1333 , + HELP_TEXT_SINGINGSTONES_08 = 1334 , + HELP_TEXT_SINGINGSTONES_09 = 1335 , + HELP_TEXT_SINGINGSTONES_10 = 1336 , + HELP_TEXT_SINGINGSTONES_17 = 1337 , + HELP_TEXT_SINGINGSTONES_18 = 1338 , + HELP_TEXT_SINGINGSTONES_19 = 1339 , + HELP_TEXT_SINGINGSTONES_20 = 1340 , + HELP_TEXT_SINGINGSTONES_21 = 1341 , + HELP_TEXT_SINGINGSTONES_22 = 1342 , + HELP_TEXT_SINGINGSTONES_23 = 1343 , + HELP_TEXT_SINGINGSTONES_24 = 1344 , + HELP_TEXT_SINGINGSTONES_25 = 1345 , + HELP_TEXT_SINGINGSTONES_26 = 1346 , + HELP_TEXT_SINGINGSTONES_27 = 1347 , + HELP_TEXT_SINGINGSTONES_28 = 1348 , + HELP_TEXT_YOUTHROWING_01 = 1349 , + HELP_TEXT_YOUTHROWING_02 = 1350 , + HELP_TEXT_YOUTHROWING_03 = 1351 , + HELP_TEXT_YOUTHROWING_04 = 1352 , + HELP_TEXT_YOUTHROWING_05 = 1353 , + HELP_TEXT_YOUTHROWING_06 = 1354 , + HELP_TEXT_YOUTHROWING_07 = 1355 , + HELP_TEXT_YOUTHROWING_08 = 1356 , + HELP_TEXT_YOUTHROWING_09 = 1357 , + HELP_TEXT_YOUTHROWING_12 = 1358 , + HELP_TEXT_YOUTHROWING_17 = 1359 , + HELP_TEXT_YOUTHROWING_18 = 1360 , + HELP_TEXT_YOUTHROWING_19 = 1361 , + HELP_TEXT_YOUTHROWING_20 = 1362 , + HELP_TEXT_YOUTHROWING_21 = 1363 , + HELP_TEXT_YOUTHROWING_22 = 1364 , + HELP_TEXT_YOUTHROWING_23 = 1365 , + HELP_TEXT_YOUTHROWING_24 = 1366 , + HELP_TEXT_HERMIT_01 = 1367 , + HELP_TEXT_HERMIT_02 = 1368 , + HELP_TEXT_HERMIT_03 = 1369 , + HELP_TEXT_HERMIT_04 = 1370 , + HELP_TEXT_HERMIT_05 = 1371 , + HELP_TEXT_HERMIT_06 = 1372 , + HELP_TEXT_HERMIT_07 = 1373 , + HELP_TEXT_HERMIT_08 = 1374 , + HELP_TEXT_HERMIT_09 = 1375 , + HELP_TEXT_HERMIT_10 = 1376 , + HELP_TEXT_HERMIT_11 = 1377 , + HELP_TEXT_HERMIT_12 = 1378 , + HELP_TEXT_HERMIT_13 = 1379 , + HELP_TEXT_HERMIT_14 = 1380 , + HELP_TEXT_HERMIT_15 = 1381 , + HELP_TEXT_HERMIT_16 = 1382 , + HELP_TEXT_HERMIT_17 = 1383 , + HELP_TEXT_HERMIT_20 = 1384 , + HELP_TEXT_HERMIT_21 = 1385 , + HELP_TEXT_HERMIT_22 = 1386 , + HELP_TEXT_HERMIT_23 = 1387 , + HELP_TEXT_HERMIT_24 = 1388 , + HELP_TEXT_HERMIT_25 = 1389 , + HELP_TEXT_HERMIT_26 = 1390 , + HELP_TEXT_HERMIT_27 = 1391 , + HELP_TEXT_HERMIT_28 = 1392 , + HELP_TEXT_HERMIT_29 = 1393 , + HELP_TEXT_HERMIT_30 = 1394 , + HELP_TEXT_PIED_PIPER_01 = 1395 , + HELP_TEXT_PIED_PIPER_02 = 1396 , + HELP_TEXT_PIED_PIPER_03 = 1397 , + HELP_TEXT_PIED_PIPER_04 = 1398 , + HELP_TEXT_PIED_PIPER_05 = 1399 , + HELP_TEXT_PIED_PIPER_07 = 1400 , + HELP_TEXT_PIED_PIPER_10 = 1401 , + HELP_TEXT_PIED_PIPER_11 = 1402 , + HELP_TEXT_PIED_PIPER_12 = 1403 , + HELP_TEXT_PIED_PIPER_13 = 1404 , + HELP_TEXT_PIED_PIPER_14 = 1405 , + HELP_TEXT_PIED_PIPER_15 = 1406 , + HELP_TEXT_PIED_PIPER_16 = 1407 , + HELP_TEXT_PIED_PIPER_17 = 1408 , + HELP_TEXT_PIED_PIPER_18 = 1409 , + HELP_TEXT_PIED_PIPER_19 = 1410 , + HELP_TEXT_PIED_PIPER_20 = 1411 , + HELP_TEXT_PIED_PIPER_21 = 1412 , + HELP_TEXT_PIED_PIPER_25 = 1413 , + HELP_TEXT_PIED_PIPER_26 = 1414 , + HELP_TEXT_PIED_PIPER_31 = 1415 , + HELP_TEXT_PIED_PIPER_32 = 1416 , + HELP_TEXT_PIED_PIPER_33 = 1417 , + HELP_TEXT_PIED_PIPER_34 = 1418 , + HELP_TEXT_PIED_PIPER_35 = 1419 , + HELP_TEXT_PIED_PIPER_36 = 1420 , + HELP_TEXT_PIED_PIPER_37 = 1421 , + HELP_TEXT_PIED_PIPER_38 = 1422 , + HELP_TEXT_PIED_PIPER_39 = 1423 , + HELP_TEXT_PIED_PIPER_40 = 1424 , + HELP_TEXT_PIED_PIPER_41 = 1425 , + HELP_TEXT_PIED_PIPER_42 = 1426 , + HELP_TEXT_PIED_PIPER_43 = 1427 , + HELP_TEXT_PIED_PIPER_44 = 1428 , + HELP_TEXT_PIED_PIPER_45 = 1429 , + HELP_TEXT_PIED_PIPER_46 = 1430 , + HELP_TEXT_PIED_PIPER_47 = 1431 , + HELP_TEXT_PIED_PIPER_48 = 1432 , + HELP_TEXT_PIED_PIPER_49 = 1433 , + HELP_TEXT_PIED_PIPER_50 = 1434 , + HELP_TEXT_PIED_PIPER_51 = 1435 , + HELP_TEXT_PIED_PIPER_52 = 1436 , + HELP_TEXT_PIED_PIPER_53 = 1437 , + HELP_TEXT_PIED_PIPER_54 = 1438 , + HELP_TEXT_PIED_PIPER_55 = 1439 , + HELP_TEXT_PIED_PIPER_56 = 1440 , + HELP_TEXT_PIED_PIPER_57 = 1441 , + HELP_TEXT_PIED_PIPER_58 = 1442 , + HELP_TEXT_PIED_PIPER_59 = 1443 , + HELP_TEXT_PIED_PIPER_60 = 1444 , + HELP_TEXT_PIED_PIPER_61 = 1445 , + HELP_TEXT_PIED_PIPER_62 = 1446 , + HELP_TEXT_PIED_PIPER_63 = 1447 , + HELP_TEXT_PIED_PIPER_64 = 1448 , + HELP_TEXT_LOST_FLOCK_02 = 1449 , + HELP_TEXT_LOST_FLOCK_03 = 1450 , + HELP_TEXT_LOST_FLOCK_04 = 1451 , + HELP_TEXT_LOST_FLOCK_05 = 1452 , + HELP_TEXT_LOST_FLOCK_06 = 1453 , + HELP_TEXT_LOST_FLOCK_07 = 1454 , + HELP_TEXT_LOST_FLOCK_12 = 1455 , + HELP_TEXT_LOST_FLOCK_13 = 1456 , + HELP_TEXT_LOST_FLOCK_18 = 1457 , + HELP_TEXT_LOST_FLOCK_19 = 1458 , + HELP_TEXT_LOST_FLOCK_20 = 1459 , + HELP_TEXT_LOST_FLOCK_21 = 1460 , + HELP_TEXT_LOST_FLOCK_22 = 1461 , + HELP_TEXT_LOST_FLOCK_23 = 1462 , + HELP_TEXT_LOST_FLOCK_24 = 1463 , + HELP_TEXT_LOST_FLOCK_26 = 1464 , + HELP_TEXT_LOST_FLOCK_27 = 1465 , + HELP_TEXT_LOST_FLOCK_28 = 1466 , + HELP_TEXT_LOST_FLOCK_29 = 1467 , + HELP_TEXT_LOST_FLOCK_30 = 1468 , + HELP_TEXT_LOST_FLOCK_31 = 1469 , + HELP_TEXT_LOST_FLOCK_32 = 1470 , + HELP_TEXT_CREATURE_GUARDIAN_01 = 1471 , + HELP_TEXT_CREATURE_GUARDIAN_02 = 1472 , + HELP_TEXT_CREATURE_GUARDIAN_03 = 1473 , + HELP_TEXT_CREATURE_GUARDIAN_04 = 1474 , + HELP_TEXT_CREATURE_GUARDIAN_05 = 1475 , + HELP_TEXT_CREATURE_GUARDIAN_06 = 1476 , + HELP_TEXT_CREATURE_GUARDIAN_07 = 1477 , + HELP_TEXT_CREATURE_GUARDIAN_08 = 1478 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_01 = 1479 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_02 = 1480 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_03 = 1481 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_04 = 1482 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_05 = 1483 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_06 = 1484 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_07 = 1485 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_08 = 1486 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_09 = 1487 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_10 = 1488 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_11 = 1489 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_12 = 1490 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_13 = 1491 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_14 = 1492 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_15 = 1493 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_16 = 1494 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_17 = 1495 , + HELP_TEXT_MEET_THE_AZTEC_VILLAGE_18 = 1496 , + HELP_TEXT_DROWNINGFISHERMEN_01 = 1497 , + HELP_TEXT_DROWNINGFISHERMEN_02 = 1498 , + HELP_TEXT_DROWNINGFISHERMEN_03 = 1499 , + HELP_TEXT_DROWNINGFISHERMEN_04 = 1500 , + HELP_TEXT_DROWNINGFISHERMEN_05 = 1501 , + HELP_TEXT_DROWNINGFISHERMEN_06 = 1502 , + HELP_TEXT_DROWNINGFISHERMEN_07 = 1503 , + HELP_TEXT_DROWNINGFISHERMEN_08 = 1504 , + HELP_TEXT_DROWNINGFISHERMEN_09 = 1505 , + HELP_TEXT_DROWNINGFISHERMEN_10 = 1506 , + HELP_TEXT_DROWNINGFISHERMEN_11 = 1507 , + HELP_TEXT_DROWNINGFISHERMEN_12 = 1508 , + HELP_TEXT_DROWNINGFISHERMEN_13 = 1509 , + HELP_TEXT_DROWNINGFISHERMEN_14 = 1510 , + HELP_TEXT_DROWNINGFISHERMEN_15 = 1511 , + HELP_TEXT_DROWNINGFISHERMEN_16 = 1512 , + HELP_TEXT_DROWNINGFISHERMEN_17 = 1513 , + HELP_TEXT_SACRIFICE_01 = 1514 , + HELP_TEXT_SACRIFICE_02 = 1515 , + HELP_TEXT_SACRIFICE_03 = 1516 , + HELP_TEXT_SACRIFICE_04 = 1517 , + HELP_TEXT_SACRIFICE_05 = 1518 , + HELP_TEXT_SACRIFICE_06 = 1519 , + HELP_TEXT_SACRIFICE_07 = 1520 , + HELP_TEXT_SACRIFICE_08 = 1521 , + HELP_TEXT_SACRIFICE_09 = 1522 , + HELP_TEXT_SACRIFICE_10 = 1523 , + HELP_TEXT_SACRIFICE_11 = 1524 , + HELP_TEXT_SACRIFICE_12 = 1525 , + HELP_TEXT_SACRIFICE_13 = 1526 , + HELP_TEXT_SACRIFICE_14 = 1527 , + HELP_TEXT_SACRIFICE_15 = 1528 , + HELP_TEXT_SACRIFICE_16 = 1529 , + HELP_TEXT_SACRIFICE_17 = 1530 , + HELP_TEXT_SACRIFICE_18 = 1531 , + HELP_TEXT_SACRIFICE_19 = 1532 , + HELP_TEXT_SACRIFICE_20 = 1533 , + HELP_TEXT_SACRIFICE_21 = 1534 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_01 = 1535 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_02 = 1536 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_03 = 1537 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_04 = 1538 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_05 = 1539 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_06 = 1540 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_07 = 1541 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_08 = 1542 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_09 = 1543 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_10 = 1544 , + HELP_TEXT_PLAGUE_01 = 1545 , + HELP_TEXT_PLAGUE_02 = 1546 , + HELP_TEXT_PLAGUE_03 = 1547 , + HELP_TEXT_PLAGUE_04 = 1548 , + HELP_TEXT_PLAGUE_05 = 1549 , + HELP_TEXT_PLAGUE_06 = 1550 , + HELP_TEXT_PLAGUE_07 = 1551 , + HELP_TEXT_PLAGUE_08 = 1552 , + HELP_TEXT_PLAGUE_09 = 1553 , + HELP_TEXT_PLAGUE_10 = 1554 , + HELP_TEXT_PLAGUE_11 = 1555 , + HELP_TEXT_PLAGUE_12 = 1556 , + HELP_TEXT_PLAGUE_13 = 1557 , + HELP_TEXT_PLAGUE_14 = 1558 , + HELP_TEXT_PLAGUE_16 = 1559 , + HELP_TEXT_PLAGUE_17 = 1560 , + HELP_TEXT_PLAGUE_18 = 1561 , + HELP_TEXT_MARAUDERS_03 = 1562 , + HELP_TEXT_MARAUDERS_04 = 1563 , + HELP_TEXT_MARAUDERS_05 = 1564 , + HELP_TEXT_MARAUDERS_06 = 1565 , + HELP_TEXT_MARAUDERS_07 = 1566 , + HELP_TEXT_MARAUDERS_08 = 1567 , + HELP_TEXT_MARAUDERS_09 = 1568 , + HELP_TEXT_MARAUDERS_10 = 1569 , + HELP_TEXT_MARAUDERS_11 = 1570 , + HELP_TEXT_MARAUDERS_12 = 1571 , + HELP_TEXT_MARAUDERS_13 = 1572 , + HELP_TEXT_MARAUDERS_14 = 1573 , + HELP_TEXT_MARAUDERS_15 = 1574 , + HELP_TEXT_BAYWATCH_04 = 1575 , + HELP_TEXT_BAYWATCH_05 = 1576 , + HELP_TEXT_BAYWATCH_06 = 1577 , + HELP_TEXT_BAYWATCH_07 = 1578 , + HELP_TEXT_BAYWATCH_08 = 1579 , + HELP_TEXT_BAYWATCH_09 = 1580 , + HELP_TEXT_BAYWATCH_10 = 1581 , + HELP_TEXT_BAYWATCH_11 = 1582 , + HELP_TEXT_BAYWATCH_12 = 1583 , + HELP_TEXT_BAYWATCH_13 = 1584 , + HELP_TEXT_BAYWATCH_14 = 1585 , + HELP_TEXT_BAYWATCH_16 = 1586 , + HELP_TEXT_BAYWATCH_17 = 1587 , + HELP_TEXT_BAYWATCH_18 = 1588 , + HELP_TEXT_BAYWATCH_19 = 1589 , + HELP_TEXT_BAYWATCH_20 = 1590 , + HELP_TEXT_BAYWATCH_21 = 1591 , + HELP_TEXT_BAYWATCH_22 = 1592 , + HELP_TEXT_BAYWATCH_23 = 1593 , + HELP_TEXT_BAYWATCH_24 = 1594 , + HELP_TEXT_BAYWATCH_25 = 1595 , + HELP_TEXT_BAYWATCH_26 = 1596 , + HELP_TEXT_BAYWATCH_27 = 1597 , + HELP_TEXT_BAYWATCH_28 = 1598 , + HELP_TEXT_BAYWATCH_29 = 1599 , + HELP_TEXT_BAYWATCH_30 = 1600 , + HELP_TEXT_BAYWATCH_31 = 1601 , + HELP_TEXT_BAYWATCH_32 = 1602 , + HELP_TEXT_BAYWATCH_33 = 1603 , + HELP_TEXT_BAYWATCH_34 = 1604 , + HELP_TEXT_BAYWATCH_35 = 1605 , + HELP_TEXT_BAYWATCH_36 = 1606 , + HELP_TEXT_ALLYTALK2_01 = 1607 , + HELP_TEXT_SWAP_TO_COW_13 = 1608 , + HELP_TEXT_SWAP_TO_COW_14 = 1609 , + HELP_TEXT_SWAP_TO_COW_15 = 1610 , + HELP_TEXT_SWAP_TO_COW_16 = 1611 , + HELP_TEXT_SWAP_TO_COW_17 = 1612 , + HELP_TEXT_SWAP_TO_COW_18 = 1613 , + HELP_TEXT_SWAP_TO_COW_19 = 1614 , + HELP_TEXT_SWAP_TO_COW_20 = 1615 , + HELP_TEXT_SWAP_TO_COW_21 = 1616 , + HELP_TEXT_SWAP_TO_COW_22 = 1617 , + HELP_TEXT_SWAP_TO_COW_23 = 1618 , + HELP_TEXT_SWAP_TO_COW_24 = 1619 , + HELP_TEXT_SWAP_TO_COW_25 = 1620 , + HELP_TEXT_SWAP_TO_COW_26 = 1621 , + HELP_TEXT_SWAP_TO_COW_27 = 1622 , + HELP_TEXT_SWAP_TO_COW_28 = 1623 , + HELP_TEXT_SWAP_TO_COW_29 = 1624 , + HELP_TEXT_LOST_TREASURE_01 = 1625 , + HELP_TEXT_LOST_TREASURE_02 = 1626 , + HELP_TEXT_LOST_TREASURE_10 = 1627 , + HELP_TEXT_LOST_TREASURE_11 = 1628 , + HELP_TEXT_LOST_TREASURE_12 = 1629 , + HELP_TEXT_LOST_TREASURE_13 = 1630 , + HELP_TEXT_LOST_TREASURE_14 = 1631 , + HELP_TEXT_LOST_TREASURE_15 = 1632 , + HELP_TEXT_LOST_TREASURE_16 = 1633 , + HELP_TEXT_LOST_TREASURE_17 = 1634 , + HELP_TEXT_LOST_TREASURE_18 = 1635 , + HELP_TEXT_LOST_TREASURE_19 = 1636 , + HELP_TEXT_LOST_TREASURE_25 = 1637 , + HELP_TEXT_LOST_TREASURE_26 = 1638 , + HELP_TEXT_LOST_TREASURE_27 = 1639 , + HELP_TEXT_LOST_TREASURE_28 = 1640 , + HELP_TEXT_LOST_TREASURE_29 = 1641 , + HELP_TEXT_LOST_TREASURE_30 = 1642 , + HELP_TEXT_LOST_TREASURE_31 = 1643 , + HELP_TEXT_LOST_TREASURE_32 = 1644 , + HELP_TEXT_LOST_TREASURE_33 = 1645 , + HELP_TEXT_LOST_TREASURE_34 = 1646 , + HELP_TEXT_LOST_TREASURE_35 = 1647 , + HELP_TEXT_LOST_TREASURE_36 = 1648 , + HELP_TEXT_LOST_TREASURE_37 = 1649 , + HELP_TEXT_LOST_TREASURE_38 = 1650 , + HELP_TEXT_LOST_TREASURE_39 = 1651 , + HELP_TEXT_LOST_TREASURE_40 = 1652 , + HELP_TEXT_LOST_TREASURE_41 = 1653 , + HELP_TEXT_LOST_TREASURE_42 = 1654 , + HELP_TEXT_LOST_TREASURE_43 = 1655 , + HELP_TEXT_LOST_TREASURE_44 = 1656 , + HELP_TEXT_LOST_TREASURE_45 = 1657 , + HELP_TEXT_LAND_2_WORKSHOP_01 = 1658 , + HELP_TEXT_LAND_2_WORKSHOP_02 = 1659 , + HELP_TEXT_LAND_2_WORKSHOP_03 = 1660 , + HELP_TEXT_LAND_2_WORKSHOP_04 = 1661 , + HELP_TEXT_LAND_2_WORKSHOP_05 = 1662 , + HELP_TEXT_LAND_2_WORKSHOP_06 = 1663 , + HELP_TEXT_LAND_2_WORKSHOP_07 = 1664 , + HELP_TEXT_LAND_2_WORKSHOP_08 = 1665 , + HELP_TEXT_LAND_2_WORKSHOP_09 = 1666 , + HELP_TEXT_LAND_2_WORKSHOP_10 = 1667 , + HELP_TEXT_LAND_2_WORKSHOP_11 = 1668 , + HELP_TEXT_LAND_2_WORKSHOP_12 = 1669 , + HELP_TEXT_LAND_2_WORKSHOP_13 = 1670 , + HELP_TEXT_LAND_2_WORKSHOP_14 = 1671 , + HELP_TEXT_LAND_2_WORKSHOP_15 = 1672 , + HELP_TEXT_LAND_2_WORKSHOP_16 = 1673 , + HELP_TEXT_LAND_2_WORKSHOP_17 = 1674 , + HELP_TEXT_LAND_2_WORKSHOP_18 = 1675 , + HELP_TEXT_LAND_2_WORKSHOP_19 = 1676 , + HELP_TEXT_LAND_2_WORKSHOP_NOTIFIER_01 = 1677 , + HELP_TEXT_LAND_2_WORKSHOP_NOTIFIER_02 = 1678 , + HELP_TEXT_LAND_2_WORKSHOP_NOTIFIER_03 = 1679 , + HELP_TEXT_LAND_2_WORKSHOP_NOTIFIER_04 = 1680 , + HELP_TEXT_LAND_2_WORKSHOP_NOTIFIER_05 = 1681 , + HELP_TEXT_FIRE_IDOL_01 = 1682 , + HELP_TEXT_FIRE_IDOL_02 = 1683 , + HELP_TEXT_FIRE_IDOL_03 = 1684 , + HELP_TEXT_FIRE_IDOL_04 = 1685 , + HELP_TEXT_FIRE_IDOL_05 = 1686 , + HELP_TEXT_FIRE_IDOL_06 = 1687 , + HELP_TEXT_FIRE_IDOL_09 = 1688 , + HELP_TEXT_FIRE_IDOL_10 = 1689 , + HELP_TEXT_FIRE_IDOL_11 = 1690 , + HELP_TEXT_FIRE_IDOL_12 = 1691 , + HELP_TEXT_FIRE_IDOL_13 = 1692 , + HELP_TEXT_FIRE_IDOL_17 = 1693 , + HELP_TEXT_FIRE_IDOL_18 = 1694 , + HELP_TEXT_FIRE_IDOL_19 = 1695 , + HELP_TEXT_FIRE_IDOL_20 = 1696 , + HELP_TEXT_SINGING_STONES2_01 = 1697 , + HELP_TEXT_SINGING_STONES2_02 = 1698 , + HELP_TEXT_SINGING_STONES2_03 = 1699 , + HELP_TEXT_SINGING_STONES2_04 = 1700 , + HELP_TEXT_SINGING_STONES2_05 = 1701 , + HELP_TEXT_SINGING_STONES2_06 = 1702 , + HELP_TEXT_SINGING_STONES2_07 = 1703 , + HELP_TEXT_SINGING_STONES2_08 = 1704 , + HELP_TEXT_SINGING_STONES2_09 = 1705 , + HELP_TEXT_SINGING_STONES2_10 = 1706 , + HELP_TEXT_SINGING_STONES2_11 = 1707 , + HELP_TEXT_SINGING_STONES2_12 = 1708 , + HELP_TEXT_SINGING_STONES2_13 = 1709 , + HELP_TEXT_SINGING_STONES2_14 = 1710 , + HELP_TEXT_SINGING_STONES2_22 = 1711 , + HELP_TEXT_SINGING_STONES2_23 = 1712 , + HELP_TEXT_SINGING_STONES2_24 = 1713 , + HELP_TEXT_SINGING_STONES2_25 = 1714 , + HELP_TEXT_SINGING_STONES2_26 = 1715 , + HELP_TEXT_SINGING_STONES2_27 = 1716 , + HELP_TEXT_SINGING_STONE_CURSE_01 = 1717 , + HELP_TEXT_SINGING_STONE_CURSE_02 = 1718 , + HELP_TEXT_SINGING_STONE_CURSE_03 = 1719 , + HELP_TEXT_SINGING_STONE_CURSE_04 = 1720 , + HELP_TEXT_ALLYTALK3_01 = 1721 , + HELP_TEXT_SPIRITUALHEALER_15 = 1722 , + HELP_TEXT_SPIRITUALHEALER_16 = 1723 , + HELP_TEXT_SPIRITUALHEALER_17 = 1724 , + HELP_TEXT_SPIRITUALHEALER_18 = 1725 , + HELP_TEXT_SPIRITUALHEALER_19 = 1726 , + HELP_TEXT_SPIRITUALHEALER_20 = 1727 , + HELP_TEXT_SPIRITUALHEALER_21 = 1728 , + HELP_TEXT_SPIRITUALHEALER_22 = 1729 , + HELP_TEXT_SPIRITUALHEALER_23 = 1730 , + HELP_TEXT_SPIRITUALHEALER_24 = 1731 , + HELP_TEXT_GREEDYFARMER_01 = 1732 , + HELP_TEXT_GREEDYFARMER_02 = 1733 , + HELP_TEXT_GREEDYFARMER_03 = 1734 , + HELP_TEXT_GREEDYFARMER_04 = 1735 , + HELP_TEXT_GREEDYFARMER_05 = 1736 , + HELP_TEXT_GREEDYFARMER_06 = 1737 , + HELP_TEXT_GREEDYFARMER_07 = 1738 , + HELP_TEXT_GREEDYFARMER_08 = 1739 , + HELP_TEXT_GREEDYFARMER_09 = 1740 , + HELP_TEXT_GREEDYFARMER_10 = 1741 , + HELP_TEXT_GREEDYFARMER_11 = 1742 , + HELP_TEXT_GREEDYFARMER_12 = 1743 , + HELP_TEXT_GREEDYFARMER_13 = 1744 , + HELP_TEXT_GREEDYFARMER_14 = 1745 , + HELP_TEXT_GREEDYFARMER_15 = 1746 , + HELP_TEXT_GREEDYFARMER_16 = 1747 , + HELP_TEXT_GREEDYFARMER_17 = 1748 , + HELP_TEXT_GREEDYFARMER_18 = 1749 , + HELP_TEXT_GREEDYFARMER_19 = 1750 , + HELP_TEXT_GREEDYFARMER_20 = 1751 , + HELP_TEXT_GREEDYFARMER_21 = 1752 , + HELP_TEXT_GREEDYFARMER_22 = 1753 , + HELP_TEXT_GREEDYFARMER_23 = 1754 , + HELP_TEXT_GREEDYFARMER_24 = 1755 , + HELP_TEXT_ALLYTALK4_01 = 1756 , + HELP_TEXT_SLAVERS_01 = 1757 , + HELP_TEXT_SLAVERS_02 = 1758 , + HELP_TEXT_SLAVERS_03 = 1759 , + HELP_TEXT_SLAVERS_04 = 1760 , + HELP_TEXT_SLAVERS_05 = 1761 , + HELP_TEXT_SLAVERS_06 = 1762 , + HELP_TEXT_SLAVERS_07 = 1763 , + HELP_TEXT_SLAVERS_08 = 1764 , + HELP_TEXT_SLAVERS_09 = 1765 , + HELP_TEXT_SLAVERS_10 = 1766 , + HELP_TEXT_SLAVERS_11 = 1767 , + HELP_TEXT_SLAVERS_12 = 1768 , + HELP_TEXT_SLAVERS_13 = 1769 , + HELP_TEXT_SLAVERS_14 = 1770 , + HELP_TEXT_SLAVERS_15 = 1771 , + HELP_TEXT_SLAVERS_16 = 1772 , + HELP_TEXT_SLAVERS_17 = 1773 , + HELP_TEXT_SLAVERS_18 = 1774 , + HELP_TEXT_SLAVERS_19 = 1775 , + HELP_TEXT_SLAVERS_20 = 1776 , + HELP_TEXT_SLAVERS_21 = 1777 , + HELP_TEXT_SLAVERS_22 = 1778 , + HELP_TEXT_SLAVERS_23 = 1779 , + HELP_TEXT_SLAVERS_24 = 1780 , + HELP_TEXT_SLAVERS_25 = 1781 , + HELP_TEXT_SLAVERS_26 = 1782 , + HELP_TEXT_SLAVERS_27 = 1783 , + HELP_TEXT_KHAZAR_DIES_01 = 1784 , + HELP_TEXT_KHAZAR_DIES_02 = 1785 , + HELP_TEXT_KHAZAR_DIES_03 = 1786 , + HELP_TEXT_KHAZAR_DIES_04 = 1787 , + HELP_TEXT_KHAZAR_DIES_05 = 1788 , + HELP_TEXT_KHAZAR_DIES_06 = 1789 , + HELP_TEXT_KHAZAR_DIES_07 = 1790 , + HELP_TEXT_KHAZAR_DIES_08 = 1791 , + HELP_TEXT_KHAZAR_DIES_09 = 1792 , + HELP_TEXT_KHAZAR_DIES_10 = 1793 , + HELP_TEXT_KHAZAR_DIES_11 = 1794 , + HELP_TEXT_KHAZAR_DIES_12 = 1795 , + HELP_TEXT_KHAZAR_DIES_13 = 1796 , + HELP_TEXT_KHAZAR_DIES_14 = 1797 , + HELP_TEXT_KHAZAR_DIES_15 = 1798 , + HELP_TEXT_KHAZAR_DIES_16 = 1799 , + HELP_TEXT_KHAZAR_DIES_17 = 1800 , + HELP_TEXT_KHAZAR_DIES_18 = 1801 , + HELP_TEXT_KHAZAR_DIES_19 = 1802 , + HELP_TEXT_KHAZAR_DIES_20 = 1803 , + HELP_TEXT_KHAZAR_DIES_21 = 1804 , + HELP_TEXT_KHAZAR_DIES_22 = 1805 , + HELP_TEXT_KIDNAPPED_01 = 1806 , + HELP_TEXT_KIDNAPPED_02 = 1807 , + HELP_TEXT_KIDNAPPED_03 = 1808 , + HELP_TEXT_KIDNAPPED_04 = 1809 , + HELP_TEXT_KIDNAPPED_05 = 1810 , + HELP_TEXT_KIDNAPPED_06 = 1811 , + HELP_TEXT_KIDNAPPED_07 = 1812 , + HELP_TEXT_KIDNAPPED_08 = 1813 , + HELP_TEXT_KIDNAPPED_09 = 1814 , + HELP_TEXT_KIDNAPPED_10 = 1815 , + HELP_TEXT_KIDNAPPED_11 = 1816 , + HELP_TEXT_KIDNAPPED_12 = 1817 , + HELP_TEXT_KIDNAPPED_13 = 1818 , + HELP_TEXT_SOCCER_MATCH_08 = 1819 , + HELP_TEXT_SOCCER_MATCH_09 = 1820 , + HELP_TEXT_SOCCER_MATCH_10 = 1821 , + HELP_TEXT_SOCCER_MATCH_11 = 1822 , + HELP_TEXT_SOCCER_MATCH_33 = 1823 , + HELP_TEXT_LEAVE_THROUGH_VORTEX2_01 = 1824 , + HELP_TEXT_LEAVE_THROUGH_VORTEX2_02 = 1825 , + HELP_TEXT_LEAVE_THROUGH_VORTEX2_03 = 1826 , + HELP_TEXT_LEAVE_THROUGH_VORTEX2_04 = 1827 , + HELP_TEXT_LEAVE_THROUGH_VORTEX2_05 = 1828 , + HELP_TEXT_GET_VORTEX3_01 = 1829 , + HELP_TEXT_GET_VORTEX3_02 = 1830 , + HELP_TEXT_GET_VORTEX3_03 = 1831 , + HELP_TEXT_LETHYS_SPEAKS2_01 = 1832 , + HELP_TEXT_LETHYS_SPEAKS2_02 = 1833 , + HELP_TEXT_LETHYS_SPEAKS2_03 = 1834 , + HELP_TEXT_LETHYS_SPEAKS2_04 = 1835 , + HELP_TEXT_LETHYS_SPEAKS2_05 = 1836 , + HELP_TEXT_LETHYS_SPEAKS2_06 = 1837 , + HELP_TEXT_LETHYS_SPEAKS2_07 = 1838 , + HELP_TEXT_LETHYS_SPEAKS2_08 = 1839 , + HELP_TEXT_TAKE_CREED1_01 = 1840 , + HELP_TEXT_TAKE_CREED1_02 = 1841 , + HELP_TEXT_TAKE_LETHYS_VILLAGE_01 = 1842 , + HELP_TEXT_TAKE_LETHYS_VILLAGE_02 = 1843 , + HELP_TEXT_FIRE_ON_HIGH_01 = 1844 , + HELP_TEXT_FIRE_ON_HIGH_02 = 1845 , + HELP_TEXT_FIRE_ON_HIGH_03 = 1846 , + HELP_TEXT_FIRE_ON_HIGH_04 = 1847 , + HELP_TEXT_FIRE_ON_HIGH_05 = 1848 , + HELP_TEXT_FIRE_ON_HIGH_07 = 1849 , + HELP_TEXT_FIRE_ON_HIGH_12 = 1850 , + HELP_TEXT_FIRE_ON_HIGH_13 = 1851 , + HELP_TEXT_FIRE_ON_HIGH_14 = 1852 , + HELP_TEXT_FIRE_ON_HIGH_15 = 1853 , + HELP_TEXT_FIRE_ON_HIGH_16 = 1854 , + HELP_TEXT_FIRE_ON_HIGH_17 = 1855 , + HELP_TEXT_FIRE_ON_HIGH_18 = 1856 , + HELP_TEXT_FIRE_ON_HIGH_19 = 1857 , + HELP_TEXT_NEMESIS_SPEAKS_01 = 1858 , + HELP_TEXT_NEMESIS_SPEAKS_02 = 1859 , + HELP_TEXT_NEMESIS_SPEAKS_03 = 1860 , + HELP_TEXT_NEMESIS_SPEAKS_04 = 1861 , + HELP_TEXT_NEMESIS_SPEAKS_05 = 1862 , + HELP_TEXT_NEMESIS_SPEAKS_06 = 1863 , + HELP_TEXT_NEMESIS_SPEAKS_07 = 1864 , + HELP_TEXT_NEMESIS_SPEAKS_08 = 1865 , + HELP_TEXT_NEMESIS_SPEAKS_09 = 1866 , + HELP_TEXT_LEADEROFTHEPACK_01 = 1867 , + HELP_TEXT_LEADEROFTHEPACK_02 = 1868 , + HELP_TEXT_LEADEROFTHEPACK_03 = 1869 , + HELP_TEXT_LEADEROFTHEPACK_04 = 1870 , + HELP_TEXT_LEADEROFTHEPACK_05 = 1871 , + HELP_TEXT_LEADEROFTHEPACK_06 = 1872 , + HELP_TEXT_CREATURE_MIRROR_FIGHT_01 = 1873 , + HELP_TEXT_CREATURE_MIRROR_FIGHT_02 = 1874 , + HELP_TEXT_CREATURE_MIRROR_FIGHT_03 = 1875 , + HELP_TEXT_CREATURE_MIRROR_FIGHT_04 = 1876 , + HELP_TEXT_CREATURE_MIRROR_FIGHT_05 = 1877 , + HELP_TEXT_CREATURE_MIRROR_FIGHT_06 = 1878 , + HELP_TEXT_CREATURE_MIRROR_FIGHT_07 = 1879 , + HELP_TEXT_CREATURE_MIRROR_FIGHT_08 = 1880 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_01 = 1881 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_02 = 1882 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_03 = 1883 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_04 = 1884 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_06 = 1885 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_07 = 1886 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_12 = 1887 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_13 = 1888 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_14 = 1889 , + HELP_TEXT_SWAP_TO_BROWN_BEAR_15 = 1890 , + HELP_TEXT_CREATURE_RUNS_AMOK_01 = 1891 , + HELP_TEXT_CREATURE_RUNS_AMOK_02 = 1892 , + HELP_TEXT_CREATURE_RUNS_AMOK_03 = 1893 , + HELP_TEXT_CREATURE_RUNS_AMOK_04 = 1894 , + HELP_TEXT_CREATURE_RUNS_AMOK_05 = 1895 , + HELP_TEXT_CREATURE_RUNS_AMOK_06 = 1896 , + HELP_TEXT_CREATURE_RUNS_AMOK_07 = 1897 , + HELP_TEXT_CREATURE_RUNS_AMOK_08 = 1898 , + HELP_TEXT_CREATURE_RUNS_AMOK_09 = 1899 , + HELP_TEXT_CREATURE_RUNS_AMOK_10 = 1900 , + HELP_TEXT_CREATURE_RUNS_AMOK_11 = 1901 , + HELP_TEXT_CREATURE_RUNS_AMOK_12 = 1902 , + HELP_TEXT_CREATURE_RUNS_AMOK_13 = 1903 , + HELP_TEXT_NEMESIS_SPEAKS2_01 = 1904 , + HELP_TEXT_NEMESIS_SPEAKS2_02 = 1905 , + HELP_TEXT_NEMESIS_SPEAKS2_03 = 1906 , + HELP_TEXT_NEMESIS_SPEAKS2_04 = 1907 , + HELP_TEXT_THE_BIG_FIGHT_01 = 1908 , + HELP_TEXT_THE_BIG_FIGHT_02 = 1909 , + HELP_TEXT_THE_BIG_FIGHT_03 = 1910 , + HELP_TEXT_THE_BIG_FIGHT_04 = 1911 , + HELP_TEXT_THE_BIG_FIGHT_05 = 1912 , + HELP_TEXT_THE_BIG_FIGHT_06 = 1913 , + HELP_TEXT_THE_BIG_FIGHT_07 = 1914 , + HELP_TEXT_THE_BIG_FIGHT_08 = 1915 , + HELP_TEXT_THE_BIG_FIGHT_09 = 1916 , + HELP_TEXT_THE_BIG_FIGHT_10 = 1917 , + HELP_TEXT_THE_BIG_FIGHT_11 = 1918 , + HELP_TEXT_THE_BIG_FIGHT_12 = 1919 , + HELP_TEXT_THE_BIG_FIGHT_13 = 1920 , + HELP_TEXT_THE_BIG_FIGHT_16 = 1921 , + HELP_TEXT_NEMESIS_SPEAKS3_02 = 1922 , + HELP_TEXT_NEMESIS_SPEAKS3_03 = 1923 , + HELP_TEXT_NEMESIS_SPEAKS3_04 = 1924 , + HELP_TEXT_NEMESIS_SPEAKS3_05 = 1925 , + HELP_TEXT_NEMESIS_SPEAKS3_06 = 1926 , + HELP_TEXT_NEMESIS_SPEAKS3_07 = 1927 , + HELP_TEXT_NEMESIS_SPEAKS3_08 = 1928 , + HELP_TEXT_NEMESIS_SPEAKS3_09 = 1929 , + HELP_TEXT_SWAP_TO_APE_02 = 1930 , + HELP_TEXT_SWAP_TO_APE_03 = 1931 , + HELP_TEXT_SWAP_TO_APE_04 = 1932 , + HELP_TEXT_SWAP_TO_APE_05 = 1933 , + HELP_TEXT_SWAP_TO_APE_08 = 1934 , + HELP_TEXT_SWAP_TO_APE_09 = 1935 , + HELP_TEXT_SWAP_TO_APE_10 = 1936 , + HELP_TEXT_SWAP_TO_APE_11 = 1937 , + HELP_TEXT_SWAP_TO_APE_12 = 1938 , + HELP_TEXT_SWAP_TO_APE_13 = 1939 , + HELP_TEXT_SWAP_TO_APE_14 = 1940 , + HELP_TEXT_SWAP_TO_APE_15 = 1941 , + HELP_TEXT_SWAP_TO_APE_16 = 1942 , + HELP_TEXT_SWAP_TO_APE_17 = 1943 , + HELP_TEXT_THROW_BLOKE_01 = 1944 , + HELP_TEXT_THROW_BLOKE_02 = 1945 , + HELP_TEXT_THROW_BLOKE_03 = 1946 , + HELP_TEXT_THROW_BLOKE_04 = 1947 , + HELP_TEXT_THROW_BLOKE_05 = 1948 , + HELP_TEXT_THROW_BLOKE_06 = 1949 , + HELP_TEXT_THROW_BLOKE_07 = 1950 , + HELP_TEXT_THROW_BLOKE_08 = 1951 , + HELP_TEXT_THROW_BLOKE_09 = 1952 , + HELP_TEXT_THROW_BLOKE_10 = 1953 , + HELP_TEXT_THROW_BLOKE_11 = 1954 , + HELP_TEXT_THROW_BLOKE_12 = 1955 , + HELP_TEXT_THROW_BLOKE_13 = 1956 , + HELP_TEXT_THROW_BLOKE_14 = 1957 , + HELP_TEXT_THROW_BLOKE_15 = 1958 , + HELP_TEXT_THROW_BLOKE_16 = 1959 , + HELP_TEXT_THROW_BLOKE_17 = 1960 , + HELP_TEXT_THROW_BLOKE_18 = 1961 , + HELP_TEXT_THROW_BLOKE_19 = 1962 , + HELP_TEXT_THROW_BLOKE_20 = 1963 , + HELP_TEXT_THROW_BLOKE_21 = 1964 , + HELP_TEXT_THROW_BLOKE_22 = 1965 , + HELP_TEXT_THROW_BLOKE_23 = 1966 , + HELP_TEXT_THROW_BLOKE_24 = 1967 , + HELP_TEXT_THROW_BLOKE_25 = 1968 , + HELP_TEXT_THROW_BLOKE_26 = 1969 , + HELP_TEXT_THROW_BLOKE_27 = 1970 , + HELP_TEXT_THROW_BLOKE_28 = 1971 , + HELP_TEXT_THROW_BLOKE_29 = 1972 , + HELP_TEXT_THROW_BLOKE_30 = 1973 , + HELP_TEXT_THROW_BLOKE_31 = 1974 , + HELP_TEXT_THROW_BLOKE_32 = 1975 , + HELP_TEXT_THROW_BLOKE_33 = 1976 , + HELP_TEXT_THROW_BLOKE_34 = 1977 , + HELP_TEXT_THROW_BLOKE_35 = 1978 , + HELP_TEXT_THROW_BLOKE_36 = 1979 , + HELP_TEXT_THROW_BLOKE_37 = 1980 , + HELP_TEXT_THROW_BLOKE_38 = 1981 , + HELP_TEXT_THROW_BLOKE_39 = 1982 , + HELP_TEXT_THROW_BLOKE_40 = 1983 , + HELP_TEXT_THROW_BLOKE_41 = 1984 , + HELP_TEXT_THROW_BLOKE_42 = 1985 , + HELP_TEXT_THROW_BLOKE_43 = 1986 , + HELP_TEXT_THROW_BLOKE_44 = 1987 , + HELP_TEXT_THROW_BLOKE_45 = 1988 , + HELP_TEXT_THROW_BLOKE_46 = 1989 , + HELP_TEXT_THROW_BLOKE_47 = 1990 , + HELP_TEXT_THROW_BLOKE_48 = 1991 , + HELP_TEXT_THROW_BLOKE_49 = 1992 , + HELP_TEXT_THROW_BLOKE_50 = 1993 , + HELP_TEXT_THROW_BLOKE_51 = 1994 , + HELP_TEXT_THROW_BLOKE_52 = 1995 , + HELP_TEXT_THROW_BLOKE_53 = 1996 , + HELP_TEXT_TAKE_AZTEC_VILLAGE_01 = 1997 , + HELP_TEXT_TAKE_AZTEC_VILLAGE_02 = 1998 , + HELP_TEXT_TAKE_AZTEC_VILLAGE_03 = 1999 , + HELP_TEXT_TAKE_AZTEC_VILLAGE_04 = 2000 , + HELP_TEXT_TAKE_AZTEC_VILLAGE_05 = 2001 , + HELP_TEXT_CITADEL_GUIDE_01 = 2002 , + HELP_TEXT_CITADEL_GUIDE_02 = 2003 , + HELP_TEXT_CITADEL_GUIDE_03 = 2004 , + HELP_TEXT_CITADEL_GUIDE_04 = 2005 , + HELP_TEXT_CITADEL_GUIDE_05 = 2006 , + HELP_TEXT_CITADEL_GUIDE_06 = 2007 , + HELP_TEXT_CITADEL_GUIDE_07 = 2008 , + HELP_TEXT_CITADEL_GUIDE_09 = 2009 , + HELP_TEXT_CITADEL_GUIDE_10 = 2010 , + HELP_TEXT_CITADEL_GUIDE_11 = 2011 , + HELP_TEXT_CITADEL_GUIDE_12 = 2012 , + HELP_TEXT_CITADEL_GUIDE_13 = 2013 , + HELP_TEXT_RANDOM_ADVISOR_01 = 2014 , + HELP_TEXT_RANDOM_ADVISOR_02 = 2015 , + HELP_TEXT_RANDOM_ADVISOR_03 = 2016 , + HELP_TEXT_RANDOM_ADVISOR_04 = 2017 , + HELP_TEXT_RANDOM_ADVISOR_05 = 2018 , + HELP_TEXT_RANDOM_ADVISOR_06 = 2019 , + HELP_TEXT_RANDOM_ADVISOR_07 = 2020 , + HELP_TEXT_RANDOM_ADVISOR_08 = 2021 , + HELP_TEXT_RANDOM_ADVISOR_09 = 2022 , + HELP_TEXT_RANDOM_ADVISOR_10 = 2023 , + HELP_TEXT_RANDOM_ADVISOR_11 = 2024 , + HELP_TEXT_RANDOM_ADVISOR_12 = 2025 , + HELP_TEXT_RANDOM_ADVISOR_13 = 2026 , + HELP_TEXT_RANDOM_ADVISOR_14 = 2027 , + HELP_TEXT_RANDOM_ADVISOR_15 = 2028 , + HELP_TEXT_RANDOM_ADVISOR_16 = 2029 , + HELP_TEXT_RANDOM_ADVISOR_17 = 2030 , + HELP_TEXT_RANDOM_ADVISOR_18 = 2031 , + HELP_TEXT_RANDOM_ADVISOR_19 = 2032 , + HELP_TEXT_RANDOM_ADVISOR_20 = 2033 , + HELP_TEXT_RANDOM_ADVISOR_21 = 2034 , + HELP_TEXT_RANDOM_ADVISOR_22 = 2035 , + HELP_TEXT_RANDOM_ADVISOR_23 = 2036 , + HELP_TEXT_RANDOM_ADVISOR_24 = 2037 , + HELP_TEXT_RANDOM_ADVISOR_25 = 2038 , + HELP_TEXT_RANDOM_ADVISOR_26 = 2039 , + HELP_TEXT_RANDOM_ADVISOR_27 = 2040 , + HELP_TEXT_RANDOM_ADVISOR_28 = 2041 , + HELP_TEXT_RANDOM_ADVISOR_29 = 2042 , + HELP_TEXT_RANDOM_ADVISOR_30 = 2043 , + HELP_TEXT_RANDOM_ADVISOR_31 = 2044 , + HELP_TEXT_RANDOM_ADVISOR_32 = 2045 , + HELP_TEXT_RANDOM_ADVISOR_33 = 2046 , + HELP_TEXT_RANDOM_ADVISOR_34 = 2047 , + HELP_TEXT_RANDOM_ADVISOR_35 = 2048 , + HELP_TEXT_RANDOM_ADVISOR_36 = 2049 , + HELP_TEXT_RANDOM_ADVISOR_37 = 2050 , + HELP_TEXT_RANDOM_ADVISOR_38 = 2051 , + HELP_TEXT_RANDOM_ADVISOR_39 = 2052 , + HELP_TEXT_RANDOM_ADVISOR_40 = 2053 , + HELP_TEXT_RANDOM_ADVISOR_41 = 2054 , + HELP_TEXT_RANDOM_ADVISOR_42 = 2055 , + HELP_TEXT_RANDOM_ADVISOR_43 = 2056 , + HELP_TEXT_RANDOM_ADVISOR_44 = 2057 , + HELP_TEXT_RANDOM_ADVISOR_45 = 2058 , + HELP_TEXT_RANDOM_ADVISOR_46 = 2059 , + HELP_TEXT_RANDOM_ADVISOR_47 = 2060 , + HELP_TEXT_RANDOM_ADVISOR_48 = 2061 , + HELP_TEXT_RANDOM_ADVISOR_49 = 2062 , + HELP_TEXT_RANDOM_ADVISOR_50 = 2063 , + HELP_TEXT_RANDOM_ADVISOR_51 = 2064 , + HELP_TEXT_RANDOM_ADVISOR_52 = 2065 , + HELP_TEXT_RANDOM_ADVISOR_53 = 2066 , + HELP_TEXT_RANDOM_ADVISOR_54 = 2067 , + HELP_TEXT_RANDOM_ADVISOR_55 = 2068 , + HELP_TEXT_RANDOM_ADVISOR_56 = 2069 , + HELP_TEXT_RANDOM_ADVISOR_57 = 2070 , + HELP_TEXT_RANDOM_ADVISOR_58 = 2071 , + HELP_TEXT_RANDOM_ADVISOR_59 = 2072 , + HELP_TEXT_RANDOM_ADVISOR_60 = 2073 , + HELP_TEXT_RANDOM_ADVISOR_61 = 2074 , + HELP_TEXT_RANDOM_ADVISOR_62 = 2075 , + HELP_TEXT_RANDOM_ADVISOR_63 = 2076 , + HELP_TEXT_RANDOM_ADVISOR_64 = 2077 , + HELP_TEXT_RANDOM_ADVISOR_65 = 2078 , + HELP_TEXT_RANDOM_ADVISOR_66 = 2079 , + HELP_TEXT_RANDOM_ADVISOR_67 = 2080 , + HELP_TEXT_RANDOM_ADVISOR_68 = 2081 , + HELP_TEXT_RANDOM_ADVISOR_69 = 2082 , + HELP_TEXT_RANDOM_ADVISOR_70 = 2083 , + HELP_TEXT_RANDOM_ADVISOR_71 = 2084 , + HELP_TEXT_RANDOM_ADVISOR_72 = 2085 , + HELP_TEXT_RANDOM_ADVISOR_73 = 2086 , + HELP_TEXT_RANDOM_ADVISOR_74 = 2087 , + HELP_TEXT_RANDOM_ADVISOR_75 = 2088 , + HELP_TEXT_RANDOM_ADVISOR_76 = 2089 , + HELP_TEXT_RANDOM_ADVISOR_77 = 2090 , + HELP_TEXT_RANDOM_ADVISOR_78 = 2091 , + HELP_TEXT_RANDOM_ADVISOR_79 = 2092 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_01 = 2093 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_02 = 2094 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_03 = 2095 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_04 = 2096 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_05 = 2097 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_06 = 2098 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_07 = 2099 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_08 = 2100 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_09 = 2101 , + HELP_TEXT_TAKE_OVER_TOWN_RANDOM_ADVISOR_10 = 2102 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_01 = 2103 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_02 = 2104 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_03 = 2105 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_04 = 2106 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_05 = 2107 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_06 = 2108 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_07 = 2109 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_08 = 2110 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_09 = 2111 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_10 = 2112 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_11 = 2113 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_12 = 2114 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_13 = 2115 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_14 = 2116 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_15 = 2117 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_16 = 2118 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_17 = 2119 , + HELP_TEXT_TAKEN_OVER_TOWN_RANDOM_ADVISOR_18 = 2120 , + HELP_TEXT_INFLUENCE_ADVICE_01 = 2121 , + HELP_TEXT_INFLUENCE_ADVICE_02 = 2122 , + HELP_TEXT_INFLUENCE_ADVICE_03 = 2123 , + HELP_TEXT_INFLUENCE_ADVICE_04 = 2124 , + HELP_TEXT_INFLUENCE_ADVICE_05 = 2125 , + HELP_TEXT_INFLUENCE_ADVICE_06 = 2126 , + HELP_TEXT_INFLUENCE_ADVICE_07 = 2127 , + HELP_TEXT_INFLUENCE_ADVICE_08 = 2128 , + HELP_TEXT_INFLUENCE_ADVICE_09 = 2129 , + HELP_TEXT_INFLUENCE_ADVICE_10 = 2130 , + HELP_TEXT_INFLUENCE_ADVICE_11 = 2131 , + HELP_TEXT_INFLUENCE_ADVICE_12 = 2132 , + HELP_TEXT_INFLUENCE_ADVICE_13 = 2133 , + HELP_TEXT_INFLUENCE_ADVICE_14 = 2134 , + HELP_TEXT_ALIGNMENT_CHANGE_01 = 2135 , + HELP_TEXT_ALIGNMENT_CHANGE_02 = 2136 , + HELP_TEXT_YOU_ARE_GOOD_01 = 2137 , + HELP_TEXT_YOU_ARE_GOOD_02 = 2138 , + HELP_TEXT_YOU_ARE_EVIL_01 = 2139 , + HELP_TEXT_YOU_ARE_EVIL_02 = 2140 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_01 = 2141 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_02 = 2142 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_03 = 2143 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_04 = 2144 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_05 = 2145 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_06 = 2146 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_07 = 2147 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_08 = 2148 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_09 = 2149 , + HELP_TEXT_MULTIPLAYER_TAUNTS_EA_10 = 2150 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_01 = 2151 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_02 = 2152 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_03 = 2153 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_04 = 2154 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_05 = 2155 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_06 = 2156 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_07 = 2157 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_08 = 2158 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_09 = 2159 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_10 = 2160 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_11 = 2161 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_12 = 2162 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_13 = 2163 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_14 = 2164 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_15 = 2165 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_16 = 2166 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_17 = 2167 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_18 = 2168 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_19 = 2169 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_20 = 2170 , + HELP_TEXT_MULTIPLAYER_TAUNTS_GA_21 = 2171 , + HELP_TEXT_KILLING_GA_01 = 2172 , + HELP_TEXT_KILLING_GA_02 = 2173 , + HELP_TEXT_KILLING_GA_03 = 2174 , + HELP_TEXT_KILLING_GA_04 = 2175 , + HELP_TEXT_KILLING_GA_05 = 2176 , + HELP_TEXT_KILLING_GA_06 = 2177 , + HELP_TEXT_KILLING_GA_07 = 2178 , + HELP_TEXT_KILLING_GA_08 = 2179 , + HELP_TEXT_KILLING_GA_09 = 2180 , + HELP_TEXT_KILLING_GA_10 = 2181 , + HELP_TEXT_KILLING_GA_11 = 2182 , + HELP_TEXT_KILLING_GA_12 = 2183 , + HELP_TEXT_KILLING_GA_13 = 2184 , + HELP_TEXT_KILLING_GA_14 = 2185 , + HELP_TEXT_KILLING_GA_15 = 2186 , + HELP_TEXT_KILLING_GA_16 = 2187 , + HELP_TEXT_KILLING_GA_17 = 2188 , + HELP_TEXT_KILLING_GA_18 = 2189 , + HELP_TEXT_KILLING_GA_19 = 2190 , + HELP_TEXT_KILLING_GA_20 = 2191 , + HELP_TEXT_KILLING_GA_21 = 2192 , + HELP_TEXT_KILLING_GA_22 = 2193 , + HELP_TEXT_KILLING_GA_23 = 2194 , + HELP_TEXT_KILLING_EA_01 = 2195 , + HELP_TEXT_KILLING_EA_02 = 2196 , + HELP_TEXT_KILLING_EA_03 = 2197 , + HELP_TEXT_KILLING_EA_04 = 2198 , + HELP_TEXT_KILLING_EA_05 = 2199 , + HELP_TEXT_KILLING_EA_06 = 2200 , + HELP_TEXT_KILLING_EA_07 = 2201 , + HELP_TEXT_KILLING_EA_08 = 2202 , + HELP_TEXT_KILLING_EA_09 = 2203 , + HELP_TEXT_KILLING_EA_10 = 2204 , + HELP_TEXT_KILLING_EA_11 = 2205 , + HELP_TEXT_KILLING_EA_12 = 2206 , + HELP_TEXT_KILLING_EA_13 = 2207 , + HELP_TEXT_KILLING_EA_14 = 2208 , + HELP_TEXT_KILLING_EA_15 = 2209 , + HELP_TEXT_KILLING_EA_16 = 2210 , + HELP_TEXT_KILLING_EA_17 = 2211 , + HELP_TEXT_KILLING_EA_18 = 2212 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_01 = 2213 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_02 = 2214 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_03 = 2215 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_04 = 2216 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_05 = 2217 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_06 = 2218 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_07 = 2219 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_08 = 2220 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_09 = 2221 , + HELP_TEXT_MALE_VILLAGER_PICKED_UP_10 = 2222 , + HELP_TEXT_FEMALE_VILLAGER_PICKED_UP_01 = 2223 , + HELP_TEXT_FEMALE_VILLAGER_PICKED_UP_02 = 2224 , + HELP_TEXT_FEMALE_VILLAGER_PICKED_UP_03 = 2225 , + HELP_TEXT_FEMALE_VILLAGER_PICKED_UP_04 = 2226 , + HELP_TEXT_FEMALE_VILLAGER_PICKED_UP_05 = 2227 , + HELP_TEXT_FEMALE_VILLAGER_PICKED_UP_06 = 2228 , + HELP_TEXT_FEMALE_VILLAGER_PICKED_UP_07 = 2229 , + HELP_TEXT_MALE_VILLAGER_LANDING_01 = 2230 , + HELP_TEXT_MALE_VILLAGER_LANDING_02 = 2231 , + HELP_TEXT_MALE_VILLAGER_LANDING_03 = 2232 , + HELP_TEXT_MALE_VILLAGER_LANDING_04 = 2233 , + HELP_TEXT_MALE_VILLAGER_LANDING_05 = 2234 , + HELP_TEXT_MALE_VILLAGER_LANDING_06 = 2235 , + HELP_TEXT_FEMALE_VILLAGER_LANDING_01 = 2236 , + HELP_TEXT_FEMALE_VILLAGER_LANDING_02 = 2237 , + HELP_TEXT_FEMALE_VILLAGER_LANDING_03 = 2238 , + HELP_TEXT_FEMALE_VILLAGER_LANDING_04 = 2239 , + HELP_TEXT_FEMALE_VILLAGER_LANDING_05 = 2240 , + HELP_TEXT_FEMALE_VILLAGER_LANDING_06 = 2241 , + HELP_TEXT_YOU_DESTROYED_SOMETHING_01 = 2242 , + HELP_TEXT_YOU_DESTROYED_SOMETHING_02 = 2243 , + HELP_TEXT_YOU_DESTROYED_SOMETHING_03 = 2244 , + HELP_TEXT_YOU_DESTROYED_SOMETHING_04 = 2245 , + HELP_TEXT_YOU_DESTROYED_SOMETHING_05 = 2246 , + HELP_TEXT_OPPOSITE_GA_01 = 2247 , + HELP_TEXT_OPPOSITE_GA_02 = 2248 , + HELP_TEXT_OPPOSITE_GA_03 = 2249 , + HELP_TEXT_OPPOSITE_GA_04 = 2250 , + HELP_TEXT_OPPOSITE_GA_05 = 2251 , + HELP_TEXT_OPPOSITE_GA_06 = 2252 , + HELP_TEXT_OPPOSITE_GA_07 = 2253 , + HELP_TEXT_OPPOSITE_GA_08 = 2254 , + HELP_TEXT_OPPOSITE_GA_09 = 2255 , + HELP_TEXT_OPPOSITE_GA_10 = 2256 , + HELP_TEXT_OPPOSITE_GA_11 = 2257 , + HELP_TEXT_OPPOSITE_GA_12 = 2258 , + HELP_TEXT_OPPOSITE_GA_13 = 2259 , + HELP_TEXT_OPPOSITE_EA_01 = 2260 , + HELP_TEXT_OPPOSITE_EA_02 = 2261 , + HELP_TEXT_OPPOSITE_EA_03 = 2262 , + HELP_TEXT_OPPOSITE_EA_04 = 2263 , + HELP_TEXT_OPPOSITE_EA_05 = 2264 , + HELP_TEXT_OPPOSITE_EA_06 = 2265 , + HELP_TEXT_OPPOSITE_EA_07 = 2266 , + HELP_TEXT_OPPOSITE_EA_08 = 2267 , + HELP_TEXT_OPPOSITE_EA_09 = 2268 , + HELP_TEXT_OPPOSITE_EA_10 = 2269 , + HELP_TEXT_OPPOSITE_EA_11 = 2270 , + HELP_TEXT_OPPOSITE_EA_12 = 2271 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_01 = 2272 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_02 = 2273 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_03 = 2274 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_04 = 2275 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_05 = 2276 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_06 = 2277 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_07 = 2278 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_08 = 2279 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_09 = 2280 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_10 = 2281 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_11 = 2282 , + HELP_TEXT_INCREASING_ALIGNMENT_GA_12 = 2283 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_01 = 2284 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_02 = 2285 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_03 = 2286 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_04 = 2287 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_05 = 2288 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_06 = 2289 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_07 = 2290 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_08 = 2291 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_09 = 2292 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_10 = 2293 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_11 = 2294 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_12 = 2295 , + HELP_TEXT_INCREASING_ALIGNMENT_EA_13 = 2296 , + HELP_TEXT_BATTLE_ALERT_GA_01 = 2297 , + HELP_TEXT_BATTLE_ALERT_GA_02 = 2298 , + HELP_TEXT_BATTLE_ALERT_GA_03 = 2299 , + HELP_TEXT_BATTLE_ALERT_GA_04 = 2300 , + HELP_TEXT_BATTLE_ALERT_GA_05 = 2301 , + HELP_TEXT_BATTLE_ALERT_GA_06 = 2302 , + HELP_TEXT_BATTLE_ALERT_GA_07 = 2303 , + HELP_TEXT_BATTLE_ALERT_GA_08 = 2304 , + HELP_TEXT_BATTLE_ALERT_GA_09 = 2305 , + HELP_TEXT_BATTLE_ALERT_GA_10 = 2306 , + HELP_TEXT_BATTLE_ALERT_GA_11 = 2307 , + HELP_TEXT_BATTLE_ALERT_GA_12 = 2308 , + HELP_TEXT_BATTLE_ALERT_GA_13 = 2309 , + HELP_TEXT_BATTLE_ALERT_WINNING_GA_01 = 2310 , + HELP_TEXT_BATTLE_ALERT_WINNING_GA_02 = 2311 , + HELP_TEXT_BATTLE_ALERT_WINNING_GA_03 = 2312 , + HELP_TEXT_BATTLE_ALERT_WINNING_GA_04 = 2313 , + HELP_TEXT_BATTLE_ALERT_WINNING_GA_05 = 2314 , + HELP_TEXT_BATTLE_ALERT_WINNING_GA_06 = 2315 , + HELP_TEXT_BATTLE_ALERT_WINNING_GA_07 = 2316 , + HELP_TEXT_BATTLE_ALERT_WINNING_GA_08 = 2317 , + HELP_TEXT_BATTLE_ALERT_WINNING_EA_01 = 2318 , + HELP_TEXT_BATTLE_ALERT_WINNING_EA_02 = 2319 , + HELP_TEXT_BATTLE_ALERT_WINNING_EA_03 = 2320 , + HELP_TEXT_BATTLE_ALERT_WINNING_EA_04 = 2321 , + HELP_TEXT_BATTLE_ALERT_WINNING_EA_05 = 2322 , + HELP_TEXT_BATTLE_ALERT_WINNING_EA_06 = 2323 , + HELP_TEXT_BATTLE_ALERT_WINNING_EA_07 = 2324 , + HELP_TEXT_BATTLE_ALERT_WINNING_EA_08 = 2325 , + HELP_TEXT_BATTLE_ALERT_WINNING_EA_09 = 2326 , + HELP_TEXT_BATTLE_ALERT_LOSING_GA_01 = 2327 , + HELP_TEXT_BATTLE_ALERT_LOSING_GA_02 = 2328 , + HELP_TEXT_BATTLE_ALERT_LOSING_GA_03 = 2329 , + HELP_TEXT_BATTLE_ALERT_LOSING_GA_04 = 2330 , + HELP_TEXT_BATTLE_ALERT_LOSING_GA_05 = 2331 , + HELP_TEXT_BATTLE_ALERT_LOSING_GA_06 = 2332 , + HELP_TEXT_BATTLE_ALERT_LOSING_GA_07 = 2333 , + HELP_TEXT_BATTLE_ALERT_LOSING_GA_08 = 2334 , + HELP_TEXT_BATTLE_ALERT_LOSING_GA_09 = 2335 , + HELP_TEXT_BATTLE_ALERT_LOSING_EA_01 = 2336 , + HELP_TEXT_BATTLE_ALERT_LOSING_EA_02 = 2337 , + HELP_TEXT_BATTLE_ALERT_LOSING_EA_03 = 2338 , + HELP_TEXT_BATTLE_ALERT_LOSING_EA_04 = 2339 , + HELP_TEXT_BATTLE_ALERT_LOSING_EA_05 = 2340 , + HELP_TEXT_BATTLE_ALERT_LOSING_EA_06 = 2341 , + HELP_TEXT_BATTLE_ALERT_LOSING_EA_07 = 2342 , + HELP_TEXT_BATTLE_ALERT_LOSING_EA_08 = 2343 , + HELP_TEXT_BATTLE_ALERT_LOSING_EA_09 = 2344 , + HELP_TEXT_BATTLE_ALERT_EA_01 = 2345 , + HELP_TEXT_BATTLE_ALERT_EA_02 = 2346 , + HELP_TEXT_BATTLE_ALERT_EA_03 = 2347 , + HELP_TEXT_BATTLE_ALERT_EA_04 = 2348 , + HELP_TEXT_BATTLE_ALERT_EA_05 = 2349 , + HELP_TEXT_BATTLE_ALERT_EA_06 = 2350 , + HELP_TEXT_BATTLE_ALERT_EA_07 = 2351 , + HELP_TEXT_BATTLE_ALERT_EA_08 = 2352 , + HELP_TEXT_BATTLE_ALERT_EA_09 = 2353 , + HELP_TEXT_BATTLE_ALERT_EA_10 = 2354 , + HELP_TEXT_BATTLE_ALERT_EA_11 = 2355 , + HELP_TEXT_BATTLE_ALERT_EA_12 = 2356 , + HELP_TEXT_BATTLE_ALERT_EA_13 = 2357 , + HELP_TEXT_BATTLE_ALERT_EA_14 = 2358 , + HELP_TEXT_BATTLE_ALERT_EA_15 = 2359 , + HELP_TEXT_BATTLE_ALERT_EA_16 = 2360 , + HELP_TEXT_BATTLE_ALERT_EA_17 = 2361 , + HELP_TEXT_BATTLE_ALERT_EA_18 = 2362 , + HELP_TEXT_BATTLE_ALERT_EA_19 = 2363 , + HELP_TEXT_BATTLE_ALERT_EA_20 = 2364 , + HELP_TEXT_BATTLE_ALERT_EA_21 = 2365 , + HELP_TEXT_BATTLE_ALERT_EA_22 = 2366 , + HELP_TEXT_BATTLE_ALERT_EA_23 = 2367 , + HELP_TEXT_BATTLE_ALERT_EA_24 = 2368 , + HELP_TEXT_BATTLE_ALERT_EA_25 = 2369 , + HELP_TEXT_BATTLE_ALERT_EA_26 = 2370 , + HELP_TEXT_TOWN_ALERT_GA_01 = 2371 , + HELP_TEXT_TOWN_ALERT_GA_02 = 2372 , + HELP_TEXT_TOWN_ALERT_GA_03 = 2373 , + HELP_TEXT_TOWN_ALERT_GA_04 = 2374 , + HELP_TEXT_TOWN_ALERT_GA_05 = 2375 , + HELP_TEXT_TOWN_ALERT_GA_06 = 2376 , + HELP_TEXT_TOWN_ALERT_GA_07 = 2377 , + HELP_TEXT_TOWN_ALERT_GA_08 = 2378 , + HELP_TEXT_TOWN_ALERT_GA_09 = 2379 , + HELP_TEXT_TOWN_ALERT_GA_10 = 2380 , + HELP_TEXT_TOWN_ALERT_GA_11 = 2381 , + HELP_TEXT_TOWN_ALERT_GA_12 = 2382 , + HELP_TEXT_TOWN_ALERT_GA_13 = 2383 , + HELP_TEXT_TOWN_ALERT_GA_14 = 2384 , + HELP_TEXT_TOWN_ALERT_GA_15 = 2385 , + HELP_TEXT_TOWN_ALERT_GA_16 = 2386 , + HELP_TEXT_TOWN_ALERT_GA_17 = 2387 , + HELP_TEXT_TOWN_ALERT_GA_18 = 2388 , + HELP_TEXT_TOWN_ALERT_GA_19 = 2389 , + HELP_TEXT_TOWN_ALERT_GA_20 = 2390 , + HELP_TEXT_TOWN_ALERT_GA_21 = 2391 , + HELP_TEXT_TOWN_ALERT_GA_22 = 2392 , + HELP_TEXT_TOWN_ALERT_GA_23 = 2393 , + HELP_TEXT_TOWN_ALERT_GA_24 = 2394 , + HELP_TEXT_TOWN_ALERT_GA_25 = 2395 , + HELP_TEXT_TOWN_ALERT_GA_26 = 2396 , + HELP_TEXT_TOWN_ALERT_GA_27 = 2397 , + HELP_TEXT_TOWN_ALERT_EA_01 = 2398 , + HELP_TEXT_TOWN_ALERT_EA_02 = 2399 , + HELP_TEXT_TOWN_ALERT_EA_03 = 2400 , + HELP_TEXT_TOWN_ALERT_EA_04 = 2401 , + HELP_TEXT_TOWN_ALERT_EA_05 = 2402 , + HELP_TEXT_TOWN_ALERT_EA_06 = 2403 , + HELP_TEXT_TOWN_ALERT_EA_07 = 2404 , + HELP_TEXT_TOWN_ALERT_EA_08 = 2405 , + HELP_TEXT_TOWN_ALERT_EA_09 = 2406 , + HELP_TEXT_TOWN_ALERT_EA_10 = 2407 , + HELP_TEXT_TOWN_ALERT_EA_11 = 2408 , + HELP_TEXT_TOWN_ALERT_EA_12 = 2409 , + HELP_TEXT_TOWN_ALERT_EA_13 = 2410 , + HELP_TEXT_TOWN_ALERT_EA_14 = 2411 , + HELP_TEXT_TOWN_ALERT_EA_15 = 2412 , + HELP_TEXT_TOWN_ALERT_EA_16 = 2413 , + HELP_TEXT_TOWN_ALERT_EA_17 = 2414 , + HELP_TEXT_TOWN_ALERT_EA_18 = 2415 , + HELP_TEXT_TOWN_ALERT_EA_19 = 2416 , + HELP_TEXT_TOWN_ALERT_EA_20 = 2417 , + HELP_TEXT_AUDIO_CD_INSERTED_01 = 2418 , + HELP_TEXT_AUDIO_CD_INSERTED_02 = 2419 , + HELP_TEXT_AUDIO_CD_INSERTED_03 = 2420 , + HELP_TEXT_AUDIO_CD_INSERTED_04 = 2421 , + HELP_TEXT_AUDIO_CD_INSERTED_05 = 2422 , + HELP_TEXT_AUDIO_CD_INSERTED_06 = 2423 , + HELP_TEXT_CREATURE_SWAP_CONFIRM_01 = 2424 , + HELP_TEXT_CREATURE_SWAP_CONFIRM_02 = 2425 , + HELP_TEXT_CREATURE_SWAP_CONFIRM_03 = 2426 , + HELP_TEXT_TITLE_01 = 2427 , + HELP_TEXT_TITLE_02 = 2428 , + HELP_TEXT_TITLE_03 = 2429 , + HELP_TEXT_TITLE_04 = 2430 , + HELP_TEXT_TITLE_05 = 2431 , + HELP_TEXT_TITLE_06 = 2432 , + HELP_TEXT_TITLE_08 = 2433 , + HELP_TEXT_TITLE_10 = 2434 , + HELP_TEXT_TITLE_11 = 2435 , + HELP_TEXT_TITLE_12 = 2436 , + HELP_TEXT_TITLE_15 = 2437 , + HELP_TEXT_TITLE_16 = 2438 , + HELP_TEXT_TITLE_17 = 2439 , + HELP_TEXT_TITLE_18 = 2440 , + HELP_TEXT_TITLE_19 = 2441 , + HELP_TEXT_TITLE_20 = 2442 , + HELP_TEXT_TITLE_21 = 2443 , + HELP_TEXT_TITLE_23 = 2444 , + HELP_TEXT_TITLE_24 = 2445 , + HELP_TEXT_TITLE_26 = 2446 , + HELP_TEXT_TITLE_27 = 2447 , + HELP_TEXT_TITLE_28 = 2448 , + HELP_TEXT_TITLE_29 = 2449 , + HELP_TEXT_TITLE_30 = 2450 , + HELP_TEXT_TITLE_31 = 2451 , + HELP_TEXT_TITLE_32 = 2452 , + HELP_TEXT_TITLE_33 = 2453 , + HELP_TEXT_TITLE_34 = 2454 , + HELP_TEXT_TITLE_35 = 2455 , + HELP_TEXT_TITLE_36 = 2456 , + HELP_TEXT_TITLE_37 = 2457 , + HELP_TEXT_TITLE_38 = 2458 , + HELP_TEXT_TITLE_43 = 2459 , + HELP_TEXT_TITLE_44 = 2460 , + HELP_TEXT_TITLE_54 = 2461 , + HELP_TEXT_TITLE_65 = 2462 , + HELP_TEXT_TITLE_85 = 2463 , + HELP_TEXT_TITLE_90 = 2464 , + HELP_TEXT_TITLE_101 = 2465 , + HELP_TEXT_TITLE_102 = 2466 , + HELP_TEXT_TITLE_103 = 2467 , + HELP_TEXT_TITLE_104 = 2468 , + HELP_TEXT_TITLE_105 = 2469 , + HELP_TEXT_TITLE_106 = 2470 , + HELP_TEXT_TITLE_107 = 2471 , + HELP_TEXT_TITLE_108 = 2472 , + HELP_TEXT_TITLE_109 = 2473 , + HELP_TEXT_TITLE_110 = 2474 , + HELP_TEXT_TITLE_111 = 2475 , + HELP_TEXT_TITLE_112 = 2476 , + HELP_TEXT_TITLE_113 = 2477 , + HELP_TEXT_TITLE_114 = 2478 , + HELP_TEXT_TITLE_115 = 2479 , + HELP_TEXT_REMINDER_03 = 2480 , + HELP_TEXT_REMINDER_05 = 2481 , + HELP_TEXT_REMINDER_06 = 2482 , + HELP_TEXT_REMINDER_07 = 2483 , + HELP_TEXT_REMINDER_08 = 2484 , + HELP_TEXT_REMINDER_10 = 2485 , + HELP_TEXT_REMINDER_12 = 2486 , + HELP_TEXT_REMINDER_13 = 2487 , + HELP_TEXT_REMINDER_16 = 2488 , + HELP_TEXT_REMINDER_17 = 2489 , + HELP_TEXT_REMINDER_18 = 2490 , + HELP_TEXT_REMINDER_19 = 2491 , + HELP_TEXT_REMINDER_20 = 2492 , + HELP_TEXT_REMINDER_24 = 2493 , + HELP_TEXT_REMINDER_25 = 2494 , + HELP_TEXT_REMINDER_30 = 2495 , + HELP_TEXT_REMINDER_31 = 2496 , + HELP_TEXT_REMINDER_32 = 2497 , + HELP_TEXT_REMINDER_33 = 2498 , + HELP_TEXT_REMINDER_34 = 2499 , + HELP_TEXT_REMINDER_35 = 2500 , + HELP_TEXT_REMINDER_36 = 2501 , + HELP_TEXT_REMINDER_37 = 2502 , + HELP_TEXT_REMINDER_38 = 2503 , + HELP_TEXT_REMINDER_39 = 2504 , + HELP_TEXT_REMINDER_40 = 2505 , + HELP_TEXT_REMINDER_41 = 2506 , + HELP_TEXT_REMINDER_42 = 2507 , + HELP_TEXT_REMINDER_43 = 2508 , + HELP_TEXT_REMINDER_44 = 2509 , + HELP_TEXT_REMINDER_45 = 2510 , + HELP_TEXT_REMINDER_46 = 2511 , + HELP_TEXT_REMINDER_47 = 2512 , + HELP_TEXT_REMINDER_48 = 2513 , + HELP_TEXT_REMINDER_49 = 2514 , + HELP_TEXT_REMINDER_50 = 2515 , + HELP_TEXT_REMINDER_51 = 2516 , + HELP_TEXT_REMINDER_52 = 2517 , + HELP_TEXT_REMINDER_53 = 2518 , + HELP_TEXT_REMINDER_54 = 2519 , + HELP_TEXT_REMINDER_55 = 2520 , + HELP_TEXT_REMINDER_56 = 2521 , + HELP_TEXT_REMINDER_57 = 2522 , + HELP_TEXT_REMINDER_96 = 2523 , + HELP_TEXT_REMINDER_97 = 2524 , + HELP_TEXT_REMINDER_98 = 2525 , + HELP_TEXT_REMINDER_99 = 2526 , + HELP_TEXT_REMINDER_100 = 2527 , + HELP_TEXT_REMINDER_101 = 2528 , + HELP_TEXT_REMINDER_102 = 2529 , + HELP_TEXT_REMINDER_103 = 2530 , + HELP_TEXT_REMINDER_104 = 2531 , + HELP_TEXT_REMINDER_106 = 2532 , + HELP_TEXT_REMINDER_107 = 2533 , + HELP_TEXT_REMINDER_108 = 2534 , + HELP_TEXT_REMINDER_109 = 2535 , + HELP_TEXT_REMINDER_110 = 2536 , + HELP_TEXT_REMINDER_111 = 2537 , + HELP_TEXT_REMINDER_112 = 2538 , + HELP_TEXT_REMINDER_113 = 2539 , + HELP_TEXT_REMINDER_114 = 2540 , + HELP_TEXT_REMINDER_115 = 2541 , + HELP_TEXT_REMINDER_116 = 2542 , + HELP_TEXT_REMINDER_117 = 2543 , + HELP_TEXT_REMINDER_118 = 2544 , + HELP_TEXT_REMINDER_119 = 2545 , + HELP_TEXT_REMINDER_120 = 2546 , + HELP_TEXT_REMINDER_121 = 2547 , + HELP_TEXT_QUESTION_TREE_01 = 2548 , + HELP_TEXT_QUESTION_FOLLOWER_01 = 2549 , + HELP_TEXT_QUESTION_NON_FOLLOWER_01 = 2550 , + HELP_TEXT_QUESTION_BARREL_01 = 2551 , + HELP_TEXT_QUESTION_ROCK_01 = 2552 , + HELP_TEXT_QUESTION_THING_01 = 2553 , + HELP_TEXT_QUESTION_THING_02 = 2554 , + HELP_TEXT_QUESTION_FOOD_01 = 2555 , + HELP_TEXT_QUESTION_WOOD_01 = 2556 , + HELP_TEXT_QUESTION_MUSHROOM_01 = 2557 , + HELP_TEXT_QUESTION_METEORITE_01 = 2558 , + HELP_TEXT_QUESTION_YOUR_CREATURE_01 = 2559 , + HELP_TEXT_QUESTION_CHEST_01 = 2560 , + HELP_TEXT_QUESTION_CREED_01 = 2561 , + HELP_TEXT_QUESTION_WATERFALL_01 = 2562 , + HELP_TEXT_QUESTION_ABODE_01 = 2563 , + HELP_TEXT_QUESTION_CITADEL_01 = 2564 , + HELP_TEXT_QUESTION_FIELD_01 = 2565 , + HELP_TEXT_QUESTION_FISH_FARM_OLD_01 = 2566 , + HELP_TEXT_QUESTION_TOWN_CENTRE_01 = 2567 , + HELP_TEXT_QUESTION_TOWN_CENTRE_02 = 2568 , + HELP_TEXT_QUESTION_TOWN_CENTRE_03 = 2569 , + HELP_TEXT_QUESTION_TOWN_CENTRE_04 = 2570 , + HELP_TEXT_QUESTION_WORKSHOP_01 = 2571 , + HELP_TEXT_QUESTION_GRAVEYARD = 2572 , + HELP_TEXT_QUESTION_CRECHE_01 = 2573 , + HELP_TEXT_QUESTION_STORAGE_PIT_01 = 2574 , + HELP_TEXT_QUESTION_WONDER_01 = 2575 , + HELP_TEXT_QUESTION_FOOTBALL_PITCH = 2576 , + HELP_TEXT_QUESTION_FARM_01 = 2577 , + HELP_TEXT_QUESTION_ALTAR_01 = 2578 , + HELP_TEXT_QUESTION_ALTAR_02 = 2579 , + HELP_TEXT_QUESTION_ALTAR_03 = 2580 , + HELP_TEXT_QUESTION_LION_01 = 2581 , + HELP_TEXT_QUESTION_TIGER_01 = 2582 , + HELP_TEXT_QUESTION_WOLF_01 = 2583 , + HELP_TEXT_QUESTION_LEOPARD_01 = 2584 , + HELP_TEXT_QUESTION_TURTLE_01 = 2585 , + HELP_TEXT_QUESTION_CROW_01 = 2586 , + HELP_TEXT_QUESTION_DOVE_01 = 2587 , + HELP_TEXT_QUESTION_SWALLOW_01 = 2588 , + HELP_TEXT_QUESTION_PIGEON_01 = 2589 , + HELP_TEXT_QUESTION_SEAGULL_01 = 2590 , + HELP_TEXT_QUESTION_SHEEP_01 = 2591 , + HELP_TEXT_QUESTION_COW = 2592 , + HELP_TEXT_QUESTION_HORSE_01 = 2593 , + HELP_TEXT_QUESTION_PIG_01 = 2594 , + HELP_TEXT_QUESTION_MORE_FIRE_01 = 2595 , + HELP_TEXT_QUESTION_MORE_FOOD_01 = 2596 , + HELP_TEXT_REQUESTER_BOXES_01 = 2597 , + HELP_TEXT_REQUESTER_BOXES_02 = 2598 , + HELP_TEXT_REQUESTER_BOXES_03 = 2599 , + HELP_TEXT_REQUESTER_BOXES_04 = 2600 , + HELP_TEXT_FOOD_REWARD_01 = 2601 , + HELP_TEXT_WOOD_REWARD_01 = 2602 , + HELP_TEXT_FOREST_REWARD_01 = 2603 , + HELP_TEXT_STORM_REWARD_01 = 2604 , + HELP_TEXT_STORM_GESTURE1_REWARD_01 = 2605 , + HELP_TEXT_STORM_GESTURE2_REWARD_01 = 2606 , + HELP_TEXT_STORM_GESTURE3_REWARD_01 = 2607 , + HELP_TEXT_TELEPORT_REWARD_01 = 2608 , + HELP_TEXT_SPIRITUAL_SHIELD_REWARD_01 = 2609 , + HELP_TEXT_PHYSICAL_SHIELD_REWARD_01 = 2610 , + HELP_TEXT_HEAL_REWARD_01 = 2611 , + HELP_TEXT_HEAL_MANY_REWARD_01 = 2612 , + HELP_TEXT_FIREBALL_REWARD_01 = 2613 , + HELP_TEXT_FIREBALL_GESTURE1_REWARD_01 = 2614 , + HELP_TEXT_FIREBALL_GESTURE2_REWARD_01 = 2615 , + HELP_TEXT_NEW_REWARD_01 = 2616 , + HELP_TEXT_NEW_REWARD_02 = 2617 , + HELP_TEXT_NEW_REWARD_03 = 2618 , + HELP_TEXT_NEW_REWARD_04 = 2619 , + HELP_TEXT_NEW_REWARD_05 = 2620 , + HELP_TEXT_NEW_REWARD_06 = 2621 , + HELP_TEXT_NEW_REWARD_07 = 2622 , + HELP_TEXT_NEW_REWARD_08 = 2623 , + HELP_TEXT_NEW_REWARD_09 = 2624 , + HELP_TEXT_NEW_REWARD_10 = 2625 , + HELP_TEXT_NEW_REWARD_11 = 2626 , + HELP_TEXT_NEW_REWARD_12 = 2627 , + HELP_TEXT_NEW_REWARD_13 = 2628 , + HELP_TEXT_NEW_REWARD_14 = 2629 , + HELP_TEXT_NEW_REWARD_15 = 2630 , + HELP_TEXT_NEW_REWARD_16 = 2631 , + HELP_TEXT_NEW_REWARD_17 = 2632 , + HELP_TEXT_NEW_REWARD_18 = 2633 , + HELP_TEXT_NEW_REWARD_19 = 2634 , + HELP_TEXT_NEW_REWARD_20 = 2635 , + HELP_TEXT_NEW_REWARD_21 = 2636 , + HELP_TEXT_NEW_REWARD_22 = 2637 , + HELP_TEXT_NEW_REWARD_23 = 2638 , + HELP_TEXT_NEW_REWARD_24 = 2639 , + HELP_TEXT_NEW_REWARD_25 = 2640 , + HELP_TEXT_NEW_REWARD_26 = 2641 , + HELP_TEXT_NEW_REWARD_27 = 2642 , + HELP_TEXT_NEW_REWARD_28 = 2643 , + HELP_TEXT_NEW_REWARD_29 = 2644 , + HELP_TEXT_NEW_REWARD_30 = 2645 , + HELP_TEXT_NEW_REWARD_31 = 2646 , + HELP_TEXT_NEW_REWARD_32 = 2647 , + HELP_TEXT_NEW_REWARD_33 = 2648 , + HELP_TEXT_NEW_REWARD_34 = 2649 , + HELP_TEXT_NEW_REWARD_35 = 2650 , + HELP_TEXT_NEW_REWARD_36 = 2651 , + HELP_TEXT_NEW_REWARD_37 = 2652 , + HELP_TEXT_NEW_REWARD_38 = 2653 , + HELP_TEXT_NEW_REWARD_39 = 2654 , + HELP_TEXT_NEW_REWARD_40 = 2655 , + HELP_TEXT_ACTIONS_SELECT = 2656 , + HELP_TEXT_ACTIONS_APPLY = 2657 , + HELP_TEXT_ACTIONS_HELP = 2658 , + HELP_TEXT_ACTIONS_MOVELEFT = 2659 , + HELP_TEXT_ACTIONS_MOVERIGHT = 2660 , + HELP_TEXT_ACTIONS_MOVEFORWARD = 2661 , + HELP_TEXT_ACTIONS_MOVEBACKWARD = 2662 , + HELP_TEXT_ACTIONS_ZOOMIN = 2663 , + HELP_TEXT_ACTIONS_ZOOMOUT = 2664 , + HELP_TEXT_ACTIONS_ZOOMON = 2665 , + HELP_TEXT_ACTIONS_TILTUP = 2666 , + HELP_TEXT_ACTIONS_TILTDOWN = 2667 , + HELP_TEXT_ACTIONS_ROTATELEFT = 2668 , + HELP_TEXT_ACTIONS_ROTATERIGHT = 2669 , + HELP_TEXT_ACTIONS_TILTROTATEON = 2670 , + HELP_TEXT_ACTIONS_TILTROTATEAROUNDMOUSE = 2671 , + HELP_TEXT_ACTIONS_ZOOMTO_CITADEL = 2672 , + HELP_TEXT_ACTIONS_ZOOMTO_CREATURE = 2673 , + HELP_TEXT_ACTIONS_ZOOMTO_REALM = 2674 , + HELP_TEXT_ACTIONS_ZOOMTO_INSIDECITADEL = 2675 , + HELP_TEXT_ACTIONS_ZOOMTO_CREATUREROOM = 2676 , + HELP_TEXT_ACTIONS_ZOOMTO_CHALLENGEROOM = 2677 , + HELP_TEXT_ACTIONS_ZOOMTO_SAVEGAMEROOM = 2678 , + HELP_TEXT_ACTIONS_ZOOMTO_OPTIONSROOM = 2679 , + HELP_TEXT_ACTIONS_ZOOMTO_MULTIPLAYERROOM = 2680 , + HELP_TEXT_ACTIONS_LEASH = 2681 , + HELP_TEXT_ACTIONS_TALK = 2682 , + HELP_TEXT_ACTIONS_SHOWVILLAGERNAME = 2683 , + HELP_TEXT_ACTIONS_LEFTMOUSEBUTTON = 2684 , + HELP_TEXT_ACTIONS_RIGHTMOUSEBUTTON = 2685 , + HELP_TEXT_ACTIONS_MIDDLEMOUSEBUTTON = 2686 , + HELP_TEXT_ACTIONS_WHEEL_UP = 2687 , + HELP_TEXT_ACTIONS_WHEEL_DOWN = 2688 , + HELP_TEXT_ACTIONS_KEY_REQUEST = 2689 , + HELP_TEXT_ACTIONS_SHOWVILLAGERDETAILS = 2690 , + HELP_TEXT_CITADEL_CHALLENGE_ROOM = 2691 , + HELP_TEXT_CITADEL_CREATURE_CAVE = 2692 , + HELP_TEXT_CITADEL_CREDITS_ROOM = 2693 , + HELP_TEXT_CITADEL_EXIT = 2694 , + HELP_TEXT_CITADEL_MULTIPLAYER_ROOM = 2695 , + HELP_TEXT_CITADEL_OPTIONS_ROOM = 2696 , + HELP_TEXT_CITADEL_SAVE_LOAD_GAME_ROOM = 2697 , + HELP_TEXT_GENERAL_CHALLENGE_START_01 = 2698 , + HELP_TEXT_GENERAL_CHALLENGE_START_02 = 2699 , + HELP_TEXT_GENERAL_CHALLENGE_START_03 = 2700 , + HELP_TEXT_GENERAL_CHALLENGE_START_04 = 2701 , + HELP_TEXT_GENERAL_CHALLENGE_START_05 = 2702 , + HELP_TEXT_GENERAL_CHALLENGE_START_06 = 2703 , + HELP_TEXT_GENERAL_CHALLENGE_START_07 = 2704 , + HELP_TEXT_GENERAL_CHALLENGE_START_08 = 2705 , + HELP_TEXT_GENERAL_CHALLENGE_START_09 = 2706 , + HELP_TEXT_GENERAL_CHALLENGE_START_10 = 2707 , + HELP_TEXT_SPECIFIC_CHALLENGE_START_11 = 2708 , + HELP_TEXT_SPECIFIC_CHALLENGE_START_12 = 2709 , + HELP_TEXT_SPECIFIC_CHALLENGE_START_13 = 2710 , + HELP_TEXT_GENERAL_CHALLENGE_START_14 = 2711 , + HELP_TEXT_GENERAL_CHALLENGE_START_15 = 2712 , + HELP_TEXT_QUESTION_SPELL_ICON_01 = 2713 , + HELP_TEXT_QUESTION_TOWN_SPELL_ICON_01 = 2714 , + HELP_TEXT_QUESTION_STORM_SPELL_01 = 2715 , + HELP_TEXT_QUESTION_STORM_SPELL_02 = 2716 , + HELP_TEXT_QUESTION_NATURE_SPELL_01 = 2717 , + HELP_TEXT_QUESTION_NATURE_SPELL_02 = 2718 , + HELP_TEXT_QUESTION_NATURE_SPELL_03 = 2719 , + HELP_TEXT_QUESTION_FIRE_SPELL_01 = 2720 , + HELP_TEXT_QUESTION_FIRE_SPELL_02 = 2721 , + HELP_TEXT_QUESTION_FOOD_SPELL_01 = 2722 , + HELP_TEXT_QUESTION_FOOD_SPELL_02 = 2723 , + HELP_TEXT_QUESTION_SHIELD_SPELL_01 = 2724 , + HELP_TEXT_QUESTION_SHIELD_SPELL_02 = 2725 , + HELP_TEXT_QUESTION_SHIELD_SPELL_03 = 2726 , + HELP_TEXT_QUESTION_PHYSICAL_SHIELD_SPELL_01 = 2727 , + HELP_TEXT_QUESTION_PHYSICAL_SHIELD_SPELL_02 = 2728 , + HELP_TEXT_QUESTION_PHYSICAL_SHIELD_SPELL_03 = 2729 , + HELP_TEXT_QUESTION_LIGHTNING_BOLT_SPELL_01 = 2730 , + HELP_TEXT_QUESTION_LIGHTNING_BOLT_SPELL_02 = 2731 , + HELP_TEXT_QUESTION_HEAL_SPELL_01 = 2732 , + HELP_TEXT_QUESTION_HEAL_SPELL_02 = 2733 , + HELP_TEXT_QUESTION_WOOD_SPELL_01 = 2734 , + HELP_TEXT_QUESTION_WOOD_SPELL_02 = 2735 , + HELP_TEXT_QUESTION_BEAM_EXPLOSION_SPELL_01 = 2736 , + HELP_TEXT_QUESTION_BEAM_EXPLOSION_SPELL_02 = 2737 , + HELP_TEXT_QUESTION_TELEPORT_SPELL_01 = 2738 , + HELP_TEXT_QUESTION_TELEPORT_SPELL_02 = 2739 , + HELP_TEXT_QUESTION_TELEPORT_SPELL_03 = 2740 , + HELP_TEXT_QUESTION_TELEPORT_SPELL_04 = 2741 , + HELP_TEXT_QUESTION_TELEPORT_SPELL_05 = 2742 , + HELP_TEXT_QUESTION_TELEPORT_SPELL_06 = 2743 , + HELP_TEXT_QUESTION_WATER_SPELL_01 = 2744 , + HELP_TEXT_QUESTION_WATER_SPELL_02 = 2745 , + HELP_TEXT_QUESTION_FLOCK_FLYING_SPELL_01 = 2746 , + HELP_TEXT_QUESTION_FLOCK_FLYING_SPELL_02 = 2747 , + HELP_TEXT_QUESTION_FLOCK_GROUND_SPELL_01 = 2748 , + HELP_TEXT_QUESTION_FLOCK_GROUND_SPELL_02 = 2749 , + HELP_TEXT_QUESTION_CREATURE_SPELL_FREEZE_SPELL_01 = 2750 , + HELP_TEXT_QUESTION_CREATURE_SPELL_FREEZE_SPELL_02 = 2751 , + HELP_TEXT_QUESTION_CREATURE_SPELL_SMALL_SPELL_01 = 2752 , + HELP_TEXT_QUESTION_CREATURE_SPELL_SMALL_SPELL_02 = 2753 , + HELP_TEXT_QUESTION_CREATURE_SPELL_BIG_SPELL_01 = 2754 , + HELP_TEXT_QUESTION_CREATURE_SPELL_BIG_SPELL_02 = 2755 , + HELP_TEXT_QUESTION_CREATURE_SPELL_WEAK_SPELL_01 = 2756 , + HELP_TEXT_QUESTION_CREATURE_SPELL_WEAK_SPELL_02 = 2757 , + HELP_TEXT_QUESTION_CREATURE_SPELL_STRONG_SPELL_01 = 2758 , + HELP_TEXT_QUESTION_CREATURE_SPELL_STRONG_SPELL_02 = 2759 , + HELP_TEXT_QUESTION_CREATURE_SPELL_INVISIBLE_SPELL_01 = 2760 , + HELP_TEXT_QUESTION_CREATURE_SPELL_INVISIBLE_SPELL_02 = 2761 , + HELP_TEXT_QUESTION_CREATURE_SPELL_COMPASSION_SPELL_01 = 2762 , + HELP_TEXT_QUESTION_CREATURE_SPELL_COMPASSION_SPELL_02 = 2763 , + HELP_TEXT_QUESTION_CREATURE_SPELL_ANGRY_SPELL_01 = 2764 , + HELP_TEXT_QUESTION_CREATURE_SPELL_ANGRY_SPELL_02 = 2765 , + HELP_TEXT_QUESTION_CREATURE_SPELL_ITCHY_SPELL_01 = 2766 , + HELP_TEXT_QUESTION_CREATURE_SPELL_ITCHY_SPELL_02 = 2767 , + HELP_TEXT_QUESTION_CREATURE_SPELL_ANTI_SPELL_01 = 2768 , + HELP_TEXT_QUESTION_CREATURE_SPELL_ANTI_SPELL_02 = 2769 , + HELP_TEXT_QUESTION_CREATURE_SPELL_FAST_SPELL_01 = 2770 , + HELP_TEXT_QUESTION_CREATURE_SPELL_FAST_SPELL_02 = 2771 , + HELP_TEXT_QUESTION_VILLAGER_INFO_HOUSEWIFE_FEMALE_01 = 2772 , + HELP_TEXT_QUESTION_VILLAGER_INFO_FORESTER_MALE_01 = 2773 , + HELP_TEXT_QUESTION_VILLAGER_INFO_FISHERMAN_MALE_01 = 2774 , + HELP_TEXT_QUESTION_VILLAGER_INFO_FARMER_MALE_01 = 2775 , + HELP_TEXT_QUESTION_VILLAGER_INFO_SHEPHERD_MALE_01 = 2776 , + HELP_TEXT_QUESTION_VILLAGER_INFO_LEADER_MALE_01 = 2777 , + HELP_TEXT_QUESTION_VILLAGER_INFO_TRADER_MALE_01 = 2778 , + HELP_TEXT_QUESTION_VILLAGER_INFO_PIED_PIPER_01 = 2779 , + HELP_TEXT_QUESTION_VILLAGER_INFO_SHAOLIN_01 = 2780 , + HELP_TEXT_QUESTION_VILLAGER_INFO_HEALER_01 = 2781 , + HELP_TEXT_QUESTION_VILLAGER_INFO_MARAUDER_01 = 2782 , + HELP_TEXT_QUESTION_VILLAGER_INFO_RAGGED_DUDE_01 = 2783 , + HELP_TEXT_QUESTION_VILLAGER_INFO_OGRE_01 = 2784 , + HELP_TEXT_QUESTION_VILLAGER_INFO_CREATURE_MIRROR_01 = 2785 , + HELP_TEXT_QUESTION_VILLAGER_INFO_NOMAD_01 = 2786 , + HELP_TEXT_QUESTION_VILLAGER_INFO_AZTEC_LEADER_01 = 2787 , + HELP_TEXT_QUESTION_VILLAGER_INFO_HERMIT_01 = 2788 , + HELP_TEXT_QUESTION_VILLAGER_INFO_ENGINEER_01 = 2789 , + HELP_TEXT_QUESTION_VILLAGER_INFO_SHEPHERD_01 = 2790 , + HELP_TEXT_QUESTION_VILLAGER_INFO_BANDITS_01 = 2791 , + HELP_TEXT_QUESTION_WORSHIP_SITE_INFO_CELTIC_01 = 2792 , + HELP_TEXT_QUESTION_WORSHIP_SITE_INFO_AFRICAN_01 = 2793 , + HELP_TEXT_QUESTION_WORSHIP_SITE_INFO_AZTEC_01 = 2794 , + HELP_TEXT_QUESTION_WORSHIP_SITE_INFO_JAPANESE_01 = 2795 , + HELP_TEXT_QUESTION_WORSHIP_SITE_INFO_INDIAN_01 = 2796 , + HELP_TEXT_QUESTION_WORSHIP_SITE_INFO_EGYPTIAN_01 = 2797 , + HELP_TEXT_QUESTION_WORSHIP_SITE_INFO_GREEK_01 = 2798 , + HELP_TEXT_QUESTION_WORSHIP_SITE_INFO_NORSE_01 = 2799 , + HELP_TEXT_QUESTION_WORSHIP_SITE_INFO_TIBETAN_01 = 2800 , + HELP_TEXT_QUESTION_ABODE_INFO_HUT_01 = 2801 , + HELP_TEXT_QUESTION_ABODE_INFO_TENT_01 = 2802 , + HELP_TEXT_QUESTION_ABODE_INFO_SHACK_X_01 = 2803 , + HELP_TEXT_QUESTION_ABODE_INFO_SHACK_Y_01 = 2804 , + HELP_TEXT_QUESTION_ABODE_INFO_TOTEM_01 = 2805 , + HELP_TEXT_QUESTION_ABODE_INFO_TOTEM_02 = 2806 , + HELP_TEXT_QUESTION_ABODE_INFO_TOTEM_03 = 2807 , + HELP_TEXT_QUESTION_ABODE_INFO_STORAGE_PIT_01 = 2808 , + HELP_TEXT_QUESTION_ABODE_INFO_STORAGE_PIT_02 = 2809 , + HELP_TEXT_QUESTION_ABODE_INFO_STORAGE_PIT_03 = 2810 , + HELP_TEXT_QUESTION_ABODE_INFO_STORAGE_PIT_04 = 2811 , + HELP_TEXT_QUESTION_ABODE_INFO_STORAGE_PIT_05 = 2812 , + HELP_TEXT_QUESTION_ABODE_INFO_CRECHE_01 = 2813 , + HELP_TEXT_QUESTION_ABODE_INFO_WORKSHOP_01 = 2814 , + HELP_TEXT_QUESTION_ABODE_INFO_WORKSHOP_02 = 2815 , + HELP_TEXT_QUESTION_ABODE_INFO_WORKSHOP_03 = 2816 , + HELP_TEXT_QUESTION_ABODE_INFO_WORKSHOP_04 = 2817 , + HELP_TEXT_QUESTION_ABODE_INFO_WORKSHOP_05 = 2818 , + HELP_TEXT_QUESTION_ABODE_INFO_WORKSHOP_06 = 2819 , + HELP_TEXT_QUESTION_ABODE_INFO_WORKSHOP_07 = 2820 , + HELP_TEXT_QUESTION_ABODE_INFO_WONDER_01 = 2821 , + HELP_TEXT_QUESTION_ABODE_INFO_WONDER_02 = 2822 , + HELP_TEXT_QUESTION_ABODE_INFO_GRAVEYARD_01 = 2823 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_01 = 2824 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_02 = 2825 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_03 = 2826 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_04 = 2827 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_05 = 2828 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_06 = 2829 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_07 = 2830 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_08 = 2831 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_09 = 2832 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_10 = 2833 , + HELP_TEXT_QUESTION_ABODE_INFO_TOWN_CENTRE_11 = 2834 , + HELP_TEXT_QUESTION_ABODE_INFO_TEMPLE_X_01 = 2835 , + HELP_TEXT_QUESTION_ABODE_INFO_TEMPLE_Y_01 = 2836 , + HELP_TEXT_QUESTION_CELTIC_WONDER_01 = 2837 , + HELP_TEXT_QUESTION_AZTEC_WONDER_01 = 2838 , + HELP_TEXT_QUESTION_JAPANESE_WONDER_01 = 2839 , + HELP_TEXT_QUESTION_INDIAN_WONDER_01 = 2840 , + HELP_TEXT_QUESTION_EGYPTIAN_WONDER_01 = 2841 , + HELP_TEXT_QUESTION_GREEK_WONDER_01 = 2842 , + HELP_TEXT_QUESTION_NORSE_WONDER_01 = 2843 , + HELP_TEXT_QUESTION_TIBETAN_WONDER_01 = 2844 , + HELP_TEXT_QUESTION_TREE_INFO_01 = 2845 , + HELP_TEXT_QUESTION_TREE_INFO_02 = 2846 , + HELP_TEXT_QUESTION_TREE_INFO_03 = 2847 , + HELP_TEXT_QUESTION_TREE_INFO_04 = 2848 , + HELP_TEXT_QUESTION_TREE_INFO_05 = 2849 , + HELP_TEXT_QUESTION_TREE_INFO_06 = 2850 , + HELP_TEXT_QUESTION_TREE_INFO_07 = 2851 , + HELP_TEXT_QUESTION_TREE_INFO_BUSH_01 = 2852 , + HELP_TEXT_QUESTION_TREE_INFO_COPSE_01 = 2853 , + HELP_TEXT_QUESTION_TREE_INFO_HEDGE_01 = 2854 , + HELP_TEXT_QUESTION_FIELD_INFO_SQUARE_2x2_01 = 2855 , + HELP_TEXT_QUESTION_FIELD_INFO_SQUARE_2x2_WITH_FENCE_01 = 2856 , + HELP_TEXT_QUESTION_TREE_INFO_BURNT = 2857 , + HELP_TEXT_QUESTION_FISH_FARM_01 = 2858 , + HELP_TEXT_QUESTION_FEATURE_INFO_AZTC_OLMECHEAD_01 = 2859 , + HELP_TEXT_QUESTION_FEATURE_INFO_AZTC_STATUE_01 = 2860 , + HELP_TEXT_QUESTION_FEATURE_INFO_AZTC_SUNTEMPLE_01 = 2861 , + HELP_TEXT_QUESTION_FEATURE_INFO_AZTC_TEMPLE_01 = 2862 , + HELP_TEXT_QUESTION_FEATURE_INFO_EGPT_NEEDLE_01 = 2863 , + HELP_TEXT_QUESTION_FEATURE_INFO_EGPT_PYRAMID_01 = 2864 , + HELP_TEXT_QUESTION_FEATURE_INFO_EGPT_WELL_01 = 2865 , + HELP_TEXT_QUESTION_FEATURE_INFO_GREK_ACROPOLIS_01 = 2866 , + HELP_TEXT_QUESTION_FEATURE_INFO_TIBT_LARGE_PILLER_01 = 2867 , + HELP_TEXT_QUESTION_FEATURE_INFO_TIBT_TEMPLE_01 = 2868 , + HELP_TEXT_QUESTION_FEATURE_INFO_MINE_ENTRANCE_01 = 2869 , + HELP_TEXT_QUESTION_FEATURE_INFO_MAGIC_MUSHROOM_01 = 2870 , + HELP_TEXT_QUESTION_FEATURE_INFO_TOADSTOOL_01 = 2871 , + HELP_TEXT_QUESTION_FEATURE_INFO_ARK_01 = 2872 , + HELP_TEXT_QUESTION_FEATURE_INFO_ARK_DRY_DOCK_01 = 2873 , + HELP_TEXT_QUESTION_FEATURE_INFO_ARK_WRECK_01 = 2874 , + HELP_TEXT_QUESTION_FEATURE_INFO_WHALE_01 = 2875 , + HELP_TEXT_QUESTION_POT_INFO_FOOD_POT_01 = 2876 , + HELP_TEXT_QUESTION_POT_INFO_WOOD_POT_01 = 2877 , + HELP_TEXT_QUESTION_POT_INFO_STORAGE_PIT_FOOD_PILE_01 = 2878 , + HELP_TEXT_QUESTION_POT_INFO_WOOD_PILE_01 = 2879 , + HELP_TEXT_QUESTION_POT_INFO_FOOD_PILE_01 = 2880 , + HELP_TEXT_QUESTION_POT_INFO_MAGIC_WOOD_01 = 2881 , + HELP_TEXT_QUESTION_POT_INFO_MAGIC_FOOD_01 = 2882 , + HELP_TEXT_QUESTION_POT_INFO_HAND_WOOD_01 = 2883 , + HELP_TEXT_QUESTION_POT_INFO_HAND_FOOD_01 = 2884 , + HELP_TEXT_QUESTION_POT_INFO_TREE_BRANCH_EVERGREEN_IN_HAND_01 = 2885 , + HELP_TEXT_QUESTION_POT_INFO_TREE_BRANCH_HARDWOOD_IN_HAND_01 = 2886 , + HELP_TEXT_QUESTION_POT_INFO_TREE_FRUIT_IN_HAND_01 = 2887 , + HELP_TEXT_QUESTION_POT_INFO_TREE_LOGS_IN_HAND_01 = 2888 , + HELP_TEXT_QUESTION_POT_INFO_WHEAT_IN_HAND_01 = 2889 , + HELP_TEXT_QUESTION_POT_INFO_FISH_01 = 2890 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_EGPT_BARREL_01 = 2891 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_EGPT_CART_01 = 2892 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_EGPT_POT_A_01 = 2893 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_EGPT_POT_B_01 = 2894 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_MAGIC_FOOD_01 = 2895 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_LUMP_OF_POO_01 = 2896 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_WATER_JUG_01 = 2897 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_ARROW_01 = 2898 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_BALL_01 = 2899 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_CART_01 = 2900 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_FOOD_POT_01 = 2901 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_WOOD_POT_01 = 2902 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_PILE_FOOD_01 = 2903 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_PILE_WOOD_01 = 2904 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_MAGIC_WOOD_01 = 2905 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_CROP_01 = 2906 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_SCAFFOLD_01 = 2907 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_MAGIC_MUSHROOM_01 = 2908 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_TOADSTOOL_01 = 2909 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_CREATURE_SWAP_ORB_01_01 = 2910 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_CREATURE_SWAP_ORB_02_01 = 2911 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_CREED_01 = 2912 , + HELP_TEXT_QUESTION_MOBILE_OBJECT_INFO_ARK_01 = 2913 , + HELP_TEXT_QUESTION_WALL_SECTION_INFO_BASIC_01 = 2914 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_CELT_FENCE_SHORT_01 = 2915 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_CELT_FENCE_TALL_01 = 2916 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_ROCK_01 = 2917 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_DEAD_TREE_01 = 2918 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_PHYSICAL_SHIELD_01 = 2919 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_SINGING_STONE__01 = 2920 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_SINGING_STONE_BASE_01 = 2921 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_BONFIRE_01 = 2922 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_CREATURE_CAGE_01 = 2923 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_IDOL_01 = 2924 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_VORTEX_01 = 2925 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_TELEPORT_01 = 2926 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_WEEPING_STONE_01 = 2927 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_BOULDER_01 = 2928 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_ALTAR_01 = 2929 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_APE_01 = 2930 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_COW_01 = 2931 , + HELP_TEXT_QUESTION_MOBILE_STATIC_INFO_TIGER_01 = 2932 , + HELP_TEXT_QUESTION_BIG_FOREST_01 = 2933 , + HELP_TEXT_QUESTION_ANIMAL_INFO_LION = 2934 , + HELP_TEXT_QUESTION_ANIMAL_INFO_TIGER = 2935 , + HELP_TEXT_QUESTION_ANIMAL_INFO_WOLF = 2936 , + HELP_TEXT_QUESTION_ANIMAL_INFO_LEOPARD = 2937 , + HELP_TEXT_QUESTION_ANIMAL_INFO_SHEEP = 2938 , + HELP_TEXT_QUESTION_ANIMAL_INFO_TORTOISE = 2939 , + HELP_TEXT_QUESTION_ANIMAL_INFO_COW = 2940 , + HELP_TEXT_QUESTION_ANIMAL_INFO_HORSE = 2941 , + HELP_TEXT_QUESTION_ANIMAL_INFO_PIG = 2942 , + HELP_TEXT_QUESTION_ANIMAL_INFO_ZEBRA = 2943 , + HELP_TEXT_QUESTION_ANIMAL_INFO_CROW = 2944 , + HELP_TEXT_QUESTION_ANIMAL_INFO_DOVE = 2945 , + HELP_TEXT_QUESTION_ANIMAL_INFO_SWALLOW = 2946 , + HELP_TEXT_QUESTION_ANIMAL_INFO_PIGEON = 2947 , + HELP_TEXT_QUESTION_ANIMAL_INFO_SEAGULL = 2948 , + HELP_TEXT_QUESTION_ANIMAL_INFO_BAT = 2949 , + HELP_TEXT_QUESTION_ANIMAL_INFO_MANDRILL = 2950 , + HELP_TEXT_QUESTION_ANIMAL_INFO_RHINO = 2951 , + HELP_TEXT_QUESTION_ANIMAL_INFO_GORILLA = 2952 , + HELP_TEXT_QUESTION_ANIMAL_INFO_CITADEL_DOVE = 2953 , + HELP_TEXT_QUESTION_ANIMAL_INFO_CITADEL_BAT = 2954 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_GENERAL_01 = 2955 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_DEEP_WATER_01 = 2956 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_SHALLOW_WATER_01 = 2957 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_RIVER_MUD_01 = 2958 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_WET_EARTH_01 = 2959 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_EARTH_01 = 2960 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_SAND_01 = 2961 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_GRAVEL_01 = 2962 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_ROCKS_01 = 2963 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_SMALL_LOOSE_01 = 2964 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_LARGE_ROCKS_01 = 2965 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_SOLID_ROCK_01 = 2966 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_WET_SOLID_ROCK_01 = 2967 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_UNSTABLE_SOLID_ROCK_01 = 2968 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_GRASS_01 = 2969 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_WET_GRASS_01 = 2970 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_DRY_GRASS_01 = 2971 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_RUSHES_01 = 2972 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_FERNS_01 = 2973 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_CORN_01 = 2974 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_SCRUB_01 = 2975 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_HEATHER_01 = 2976 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_FOREST_UNDERGROWTH_01 = 2977 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_SNOW_01 = 2978 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_PACK_ICE_01 = 2979 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_SOLID_ICE_01 = 2980 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_SNOWY_MOUNTAIN_TOPS_01 = 2981 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_PAVEMENT_01 = 2982 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_WET_PAVEMENT_01 = 2983 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_CRYSTAL_01 = 2984 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_TYPE_METAL_01 = 2985 , + HELP_TEXT_QUESTION_TERRAIN_MATERIAL_JUNGLE_FLOOR_01 = 2986 , + HELP_TEXT_QUESTION_SHOW_NEEDS_INFO_HUNGER_01 = 2987 , + HELP_TEXT_QUESTION_SHOW_NEEDS_INFO_LIFE_01 = 2988 , + HELP_TEXT_QUESTION_NORMAL_BALL_01 = 2989 , + HELP_TEXT_QUESTION_NORMAL_ARROW_01 = 2990 , + HELP_TEXT_QUESTION_FOOTBALL_INFO_FOOTBALL_PITCH_01 = 2991 , + HELP_TEXT_QUESTION_TOTEM_STATUE_INFO_ONE_01 = 2992 , + HELP_TEXT_QUESTION_TOTEM_STATUE_INFO_ONE_02 = 2993 , + HELP_TEXT_QUESTION_NOT_INTERESTED_01 = 2994 , + HELP_TEXT_QUESTION_NOT_INTERESTED_02 = 2995 , + HELP_TEXT_QUESTION_NOT_INTERESTED_03 = 2996 , + HELP_TEXT_QUESTION_NOT_INTERESTED_04 = 2997 , + HELP_TEXT_QUESTION_NOT_INTERESTED_05 = 2998 , + HELP_TEXT_QUESTION_NOT_INTERESTED_06 = 2999 , + HELP_TEXT_QUESTION_NOT_INTERESTED_07 = 3000 , + HELP_TEXT_QUESTION_NOT_INTERESTED_08 = 3001 , + HELP_TEXT_QUESTION_NOT_INTERESTED_09 = 3002 , + HELP_TEXT_QUESTION_NOT_INTERESTED_10 = 3003 , + HELP_TEXT_QUESTION_NOT_INTERESTED_11 = 3004 , + HELP_TEXT_QUESTION_NOT_INTERESTED_12 = 3005 , + HELP_TEXT_QUESTION_NOT_INTERESTED_13 = 3006 , + HELP_TEXT_QUESTION_NOT_INTERESTED_14 = 3007 , + HELP_TEXT_QUESTION_VILLAGER_NONBELIEVER_EXTRA_01 = 3008 , + HELP_TEXT_QUESTION_VILLAGER_NONBELIEVER_EXTRA_02 = 3009 , + HELP_TEXT_QUESTION_VILLAGER_NONBELIEVER_EXTRA_03 = 3010 , + HELP_TEXT_QUESTION_VILLAGER_NONBELIEVER_EXTRA_04 = 3011 , + HELP_TEXT_QUESTION_VILLAGER_NONBELIEVER_EXTRA_05 = 3012 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_BELIEF_01 = 3013 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_FOOD_01 = 3014 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_WOOD_01 = 3015 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_REST_01 = 3016 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_PROTECTION_01 = 3017 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_HOME_01 = 3018 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_CIVIC_01 = 3019 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_EXPAND_01 = 3020 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_REPAIR_01 = 3021 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_WONDER_01 = 3022 , + HELP_TEXT_QUESTION_VILLAGER_STATE_IN_DANCE_01 = 3023 , + HELP_TEXT_QUESTION_VILLAGER_STATE_DYING_01 = 3024 , + HELP_TEXT_QUESTION_VILLAGER_STATE_DROWNING_01 = 3025 , + HELP_TEXT_QUESTION_VILLAGER_STATE_BEING_EATEN_01 = 3026 , + HELP_TEXT_QUESTION_VILLAGER_STATE_BUILDING_01 = 3027 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GOTO_WORSHIP_SITE_WITH_SUPPLIES_01 = 3028 , + HELP_TEXT_QUESTION_VILLAGER_STATE_FORESTER_01 = 3029 , + HELP_TEXT_QUESTION_VILLAGER_STATE_FISHING_01 = 3030 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GOTO_WORSHIP_SITE_01 = 3031 , + HELP_TEXT_QUESTION_VILLAGER_STATE_FARMER_01 = 3032 , + HELP_TEXT_QUESTION_VILLAGER_STATE_FOOTBALL_01 = 3033 , + HELP_TEXT_QUESTION_VILLAGER_STATE_WORSHIPPING_CREATURE_01 = 3034 , + HELP_TEXT_QUESTION_VILLAGER_STATE_SHEPHERD_01 = 3035 , + HELP_TEXT_QUESTION_VILLAGER_STATE_HOUSEWIFE_01 = 3036 , + HELP_TEXT_QUESTION_VILLAGER_STATE_HOUSEWIFE_GIVING_BIRTH_01 = 3037 , + HELP_TEXT_QUESTION_VILLAGER_STATE_HAVING_SEX_01 = 3038 , + HELP_TEXT_QUESTION_VILLAGER_STATE_MOURN_DEAD_PERSON_01 = 3039 , + HELP_TEXT_QUESTION_VILLAGER_STATE_NOTHING_TO_DO_01 = 3040 , + HELP_TEXT_QUESTION_VILLAGER_STATE_WORSHIPPING_01 = 3041 , + HELP_TEXT_QUESTION_VILLAGER_STATE_POISONED_01 = 3042 , + HELP_TEXT_QUESTION_VILLAGER_STATE_SCARED_01 = 3043 , + HELP_TEXT_QUESTION_VILLAGER_STATE_DEAD_01 = 3044 , + HELP_TEXT_QUESTION_VILLAGER_STATE_PLAYING_GAME_01 = 3045 , + HELP_TEXT_QUESTION_VILLAGER_STATE_SUPPLY_STORAGE_PIT_01 = 3046 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GET_FOOD_STORAGE_PIT_01 = 3047 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GET_WOOD_STORAGE_PIT_01 = 3048 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GET_STORAGE_PIT_01 = 3049 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GOING_HOME_01 = 3050 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GOING_TO_STORAGE_PIT_01 = 3051 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GOING_TO_WORSHIP_SITE_01 = 3052 , + HELP_TEXT_QUESTION_VILLAGER_STATE_FOLLOW_MUM_01 = 3053 , + HELP_TEXT_QUESTION_VILLAGER_STATE_IN_CRECHE_01 = 3054 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GO_TO_WORKSHOP_01 = 3055 , + HELP_TEXT_QUESTION_VILLAGER_STATE_PUTTING_OUT_FIRE_01 = 3056 , + HELP_TEXT_QUESTION_VILLAGER_STATE_ON_FIRE_01 = 3057 , + HELP_TEXT_QUESTION_VILLAGER_STATE_SLEEPING_OUTSIDE_01 = 3058 , + HELP_TEXT_QUESTION_REWARD_01 = 3059 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FIREBALL_01 = 3060 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FIREBALL_PU_ONE_01 = 3061 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FIREBALL_PU_TWO_01 = 3062 , + HELP_TEXT_QUESTION_MAGIC_TYPE_LIGHTNING_BOLT_01 = 3063 , + HELP_TEXT_QUESTION_MAGIC_TYPE_LIGHTNING_BOLT_PU_ONE_01 = 3064 , + HELP_TEXT_QUESTION_MAGIC_TYPE_LIGHTNING_BOLT_PU_TWO_01 = 3065 , + HELP_TEXT_QUESTION_MAGIC_TYPE_EXPLOSION_ONE_01 = 3066 , + HELP_TEXT_QUESTION_MAGIC_TYPE_EXPLOSION_ONE_PU_ONE_01 = 3067 , + HELP_TEXT_QUESTION_MAGIC_TYPE_EXPLOSION_ONE_PU_TWO_01 = 3068 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FIREWORK_01 = 3069 , + HELP_TEXT_QUESTION_MAGIC_TYPE_HEAL_01 = 3070 , + HELP_TEXT_QUESTION_MAGIC_TYPE_HEAL_PU_ONE_01 = 3071 , + HELP_TEXT_QUESTION_MAGIC_TYPE_TELEPORT_01 = 3072 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FOREST_01 = 3073 , + HELP_TEXT_QUESTION_MAGIC_TYPE_PRIEST_01 = 3074 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FOOD_01 = 3075 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FOOD_PU_ONE_01 = 3076 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FOOD_PU_TWO_01 = 3077 , + HELP_TEXT_QUESTION_MAGIC_TYPE_STORM_WIND_01 = 3078 , + HELP_TEXT_QUESTION_MAGIC_TYPE_STORM_WIND_RAIN_01 = 3079 , + HELP_TEXT_QUESTION_MAGIC_TYPE_STORM_WIND_RAIN_LIGHTNING_01 = 3080 , + HELP_TEXT_QUESTION_MAGIC_TYPE_TORNADO_01 = 3081 , + HELP_TEXT_QUESTION_MAGIC_TYPE_SHIELD_01 = 3082 , + HELP_TEXT_QUESTION_MAGIC_TYPE_SHIELD_PU_ONE_01 = 3083 , + HELP_TEXT_QUESTION_MAGIC_TYPE_PHYSICAL_SHIELD_01 = 3084 , + HELP_TEXT_QUESTION_MAGIC_TYPE_WOOD_01 = 3085 , + HELP_TEXT_QUESTION_MAGIC_TYPE_WATER_01 = 3086 , + HELP_TEXT_QUESTION_MAGIC_TYPE_WATER_PU_ONE_01 = 3087 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FLOCK_FLYING_01 = 3088 , + HELP_TEXT_QUESTION_MAGIC_TYPE_FLOCK_GROUND_01 = 3089 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_BELIEF_DESCRIPTION_01 = 3090 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_FOOD_DESCRIPTION_01 = 3091 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_WOOD_DESCRIPTION_01 = 3092 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_REST_DESCRIPTION_01 = 3093 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_PROTECTION_DESCRIPTION_01 = 3094 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_HOME_DESCRIPTION_01 = 3095 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_CIVIC_DESCRIPTION_01 = 3096 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_EXPAND_DESCRIPTION_01 = 3097 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_REPAIR_DESCRIPTION_01 = 3098 , + HELP_TEXT_QUESTION_TOWN_CENTRE_STATS_WONDER_DESCRIPTION_01 = 3099 , + HELP_TEXT_QUESTION_APE_CREATURE_01 = 3100 , + HELP_TEXT_QUESTION_APE_CREATURE_02 = 3101 , + HELP_TEXT_QUESTION_COW_CREATURE_01 = 3102 , + HELP_TEXT_QUESTION_COW_CREATURE_02 = 3103 , + HELP_TEXT_QUESTION_TIGER_CREATURE_01 = 3104 , + HELP_TEXT_QUESTION_TIGER_CREATURE_02 = 3105 , + HELP_TEXT_QUESTION_LEOPARD_CREATURE_01 = 3106 , + HELP_TEXT_QUESTION_LEOPARD_CREATURE_02 = 3107 , + HELP_TEXT_QUESTION_WOLF_CREATURE_01 = 3108 , + HELP_TEXT_QUESTION_WOLF_CREATURE_02 = 3109 , + HELP_TEXT_QUESTION_LION_CREATURE_01 = 3110 , + HELP_TEXT_QUESTION_LION_CREATURE_02 = 3111 , + HELP_TEXT_QUESTION_HORSE_CREATURE_01 = 3112 , + HELP_TEXT_QUESTION_HORSE_CREATURE_02 = 3113 , + HELP_TEXT_QUESTION_TORTOISE_CREATURE_01 = 3114 , + HELP_TEXT_QUESTION_TORTOISE_CREATURE_02 = 3115 , + HELP_TEXT_QUESTION_ZEBRA_CREATURE_01 = 3116 , + HELP_TEXT_QUESTION_ZEBRA_CREATURE_02 = 3117 , + HELP_TEXT_QUESTION_BEAR_CREATURE_01 = 3118 , + HELP_TEXT_QUESTION_BEAR_CREATURE_02 = 3119 , + HELP_TEXT_QUESTION_POLAR_BEAR_CREATURE_01 = 3120 , + HELP_TEXT_QUESTION_POLAR_BEAR_CREATURE_02 = 3121 , + HELP_TEXT_QUESTION_SHEEP_CREATURE_01 = 3122 , + HELP_TEXT_QUESTION_SHEEP_CREATURE_02 = 3123 , + HELP_TEXT_QUESTION_MANDRILL_CREATURE_01 = 3124 , + HELP_TEXT_QUESTION_MANDRILL_CREATURE_02 = 3125 , + HELP_TEXT_QUESTION_RHINO_CREATURE_01 = 3126 , + HELP_TEXT_QUESTION_RHINO_CREATURE_02 = 3127 , + HELP_TEXT_QUESTION_GORILLA_CREATURE_01 = 3128 , + HELP_TEXT_QUESTION_GORILLA_CREATURE_02 = 3129 , + HELP_TEXT_QUESTION_CHILD_01 = 3130 , + HELP_TEXT_QUESTION_CHILD_02 = 3131 , + HELP_TEXT_QUESTION_CHILD_03 = 3132 , + HELP_TEXT_QUESTION_CHILD_04 = 3133 , + HELP_TEXT_QUESTION_CHILD_05 = 3134 , + HELP_TEXT_QUESTION_CHILD_06 = 3135 , + HELP_TEXT_QUESTION_VAGRANT_01 = 3136 , + HELP_TEXT_QUESTION_VILLAGER_DISCIPLE_NONE = 3137 , + HELP_TEXT_QUESTION_VILLAGER_DISCIPLE_FARMER = 3138 , + HELP_TEXT_QUESTION_VILLAGER_DISCIPLE_FORESTER = 3139 , + HELP_TEXT_QUESTION_VILLAGER_DISCIPLE_FISHERMAN = 3140 , + HELP_TEXT_QUESTION_VILLAGER_DISCIPLE_BUILDER = 3141 , + HELP_TEXT_QUESTION_VILLAGER_DISCIPLE_BREEDER = 3142 , + HELP_TEXT_QUESTION_VILLAGER_DISCIPLE_PROTECTION = 3143 , + HELP_TEXT_QUESTION_VILLAGER_DISCIPLE_MISSIONARY = 3144 , + HELP_TEXT_QUESTION_BLANK_SCULPTOR_STONE = 3145 , + HELP_TEXT_HAND_HELP_ORB_01 = 3146 , + HELP_TEXT_NEW_HAND_01 = 3147 , + HELP_TEXT_NEW_HAND_02 = 3148 , + HELP_TEXT_NEW_HAND_03 = 3149 , + HELP_TEXT_NEW_HAND_04 = 3150 , + HELP_TEXT_NEW_HAND_05 = 3151 , + HELP_TEXT_NEW_HAND_06 = 3152 , + HELP_TEXT_NEW_HAND_07 = 3153 , + HELP_TEXT_NEW_HAND_08 = 3154 , + HELP_TEXT_NEW_HAND_09 = 3155 , + HELP_TEXT_NEW_HAND_10 = 3156 , + HELP_TEXT_NEW_HAND_11 = 3157 , + HELP_TEXT_NEW_HAND_12 = 3158 , + HELP_TEXT_NEW_HAND_13 = 3159 , + HELP_TEXT_NEW_HAND_14 = 3160 , + HELP_TEXT_NEW_HAND_15 = 3161 , + HELP_TEXT_NEW_HAND_16 = 3162 , + HELP_TEXT_NEW_HAND_17 = 3163 , + HELP_TEXT_NEW_HAND_18 = 3164 , + HELP_TEXT_NEW_HAND_19 = 3165 , + HELP_TEXT_NEW_HAND_20 = 3166 , + HELP_TEXT_NEW_HAND_21 = 3167 , + HELP_TEXT_NEW_HAND_22 = 3168 , + HELP_TEXT_NEW_HAND_23 = 3169 , + HELP_TEXT_NEW_HAND_24 = 3170 , + HELP_TEXT_NEW_HAND_25 = 3171 , + HELP_TEXT_NEW_HAND_26 = 3172 , + HELP_TEXT_NEW_HAND_27 = 3173 , + HELP_TEXT_NEW_HAND_28 = 3174 , + HELP_TEXT_NEW_HAND_29 = 3175 , + HELP_TEXT_NEW_HAND_30 = 3176 , + HELP_TEXT_NEW_HAND_31 = 3177 , + HELP_TEXT_NEW_HAND_32 = 3178 , + HELP_TEXT_NEW_HAND_33 = 3179 , + HELP_TEXT_NEW_HAND_34 = 3180 , + HELP_TEXT_NEW_HAND_35 = 3181 , + HELP_TEXT_NEW_HAND_36 = 3182 , + HELP_TEXT_NEW_HAND_37 = 3183 , + HELP_TEXT_NEW_HAND_38 = 3184 , + HELP_TEXT_NEW_HAND_39 = 3185 , + HELP_TEXT_NEW_HAND_40 = 3186 , + HELP_TEXT_NEW_HAND_41 = 3187 , + HELP_TEXT_NEW_HAND_42 = 3188 , + HELP_TEXT_NEW_HAND_43 = 3189 , + HELP_TEXT_NEW_HAND_44 = 3190 , + HELP_TEXT_NEW_HAND_45 = 3191 , + HELP_TEXT_NEW_HAND_46 = 3192 , + HELP_TEXT_NEW_HAND_47 = 3193 , + HELP_TEXT_NEW_HAND_48 = 3194 , + HELP_TEXT_BANTER_SET_01_TEXT_01 = 3195 , + HELP_TEXT_BANTER_SET_01_TEXT_02 = 3196 , + HELP_TEXT_BANTER_SET_01_TEXT_03 = 3197 , + HELP_TEXT_BANTER_SET_01_TEXT_04 = 3198 , + HELP_TEXT_BANTER_SET_02_TEXT_01 = 3199 , + HELP_TEXT_BANTER_SET_02_TEXT_02 = 3200 , + HELP_TEXT_BANTER_SET_02_TEXT_03 = 3201 , + HELP_TEXT_BANTER_SET_02_TEXT_04 = 3202 , + HELP_TEXT_BANTER_SET_03_TEXT_01 = 3203 , + HELP_TEXT_BANTER_SET_03_TEXT_02 = 3204 , + HELP_TEXT_BANTER_SET_03_TEXT_03 = 3205 , + HELP_TEXT_BANTER_SET_03_TEXT_04 = 3206 , + HELP_TEXT_BANTER_SET_04_TEXT_01 = 3207 , + HELP_TEXT_BANTER_SET_04_TEXT_02 = 3208 , + HELP_TEXT_BANTER_SET_04_TEXT_03 = 3209 , + HELP_TEXT_BANTER_SET_04_TEXT_04 = 3210 , + HELP_TEXT_BANTER_SET_05_TEXT_01 = 3211 , + HELP_TEXT_BANTER_SET_05_TEXT_02 = 3212 , + HELP_TEXT_BANTER_SET_06_TEXT_01 = 3213 , + HELP_TEXT_BANTER_SET_06_TEXT_02 = 3214 , + HELP_TEXT_BANTER_SET_06_TEXT_03 = 3215 , + HELP_TEXT_BANTER_SET_06_TEXT_04 = 3216 , + HELP_TEXT_BANTER_SET_07_TEXT_01 = 3217 , + HELP_TEXT_BANTER_SET_07_TEXT_02 = 3218 , + HELP_TEXT_BANTER_SET_07_TEXT_03 = 3219 , + HELP_TEXT_BANTER_SET_07_TEXT_04 = 3220 , + HELP_TEXT_BANTER_SET_07_TEXT_05 = 3221 , + HELP_TEXT_BANTER_SET_08_TEXT_01 = 3222 , + HELP_TEXT_BANTER_SET_08_TEXT_02 = 3223 , + HELP_TEXT_BANTER_SET_08_TEXT_03 = 3224 , + HELP_TEXT_BANTER_SET_08_TEXT_04 = 3225 , + HELP_TEXT_BANTER_SET_09_TEXT_01 = 3226 , + HELP_TEXT_BANTER_SET_09_TEXT_02 = 3227 , + HELP_TEXT_BANTER_SET_09_TEXT_03 = 3228 , + HELP_TEXT_BANTER_SET_09_TEXT_04 = 3229 , + HELP_TEXT_BANTER_SET_09_TEXT_05 = 3230 , + HELP_TEXT_BANTER_SET_09_TEXT_06 = 3231 , + HELP_TEXT_BANTER_SET_09_TEXT_07 = 3232 , + HELP_TEXT_BANTER_SET_10_TEXT_01 = 3233 , + HELP_TEXT_BANTER_SET_10_TEXT_02 = 3234 , + HELP_TEXT_BANTER_SET_10_TEXT_03 = 3235 , + HELP_TEXT_BANTER_SET_10_TEXT_04 = 3236 , + HELP_TEXT_BANTER_SET_10_TEXT_05 = 3237 , + HELP_TEXT_BANTER_SET_11_TEXT_01 = 3238 , + HELP_TEXT_BANTER_SET_11_TEXT_02 = 3239 , + HELP_TEXT_BANTER_SET_11_TEXT_03 = 3240 , + HELP_TEXT_BANTER_SET_11_TEXT_04 = 3241 , + HELP_TEXT_BANTER_SET_12_TEXT_01 = 3242 , + HELP_TEXT_BANTER_SET_12_TEXT_02 = 3243 , + HELP_TEXT_BANTER_SET_12_TEXT_03 = 3244 , + HELP_TEXT_BANTER_SET_12_TEXT_04 = 3245 , + HELP_TEXT_BANTER_SET_12_TEXT_05 = 3246 , + HELP_TEXT_BANTER_SET_13_TEXT_01 = 3247 , + HELP_TEXT_BANTER_SET_13_TEXT_02 = 3248 , + HELP_TEXT_BANTER_SET_13_TEXT_03 = 3249 , + HELP_TEXT_BANTER_SET_13_TEXT_04 = 3250 , + HELP_TEXT_BANTER_SET_13_TEXT_05 = 3251 , + HELP_TEXT_BANTER_SET_14_TEXT_01 = 3252 , + HELP_TEXT_BANTER_SET_14_TEXT_02 = 3253 , + HELP_TEXT_BANTER_SET_15_TEXT_01 = 3254 , + HELP_TEXT_BANTER_SET_15_TEXT_02 = 3255 , + HELP_TEXT_BANTER_SET_15_TEXT_03 = 3256 , + HELP_TEXT_BANTER_SET_15_TEXT_04 = 3257 , + HELP_TEXT_BANTER_SET_15_TEXT_05 = 3258 , + HELP_TEXT_BANTER_SET_15_TEXT_06 = 3259 , + HELP_TEXT_BANTER_SET_16_TEXT_01 = 3260 , + HELP_TEXT_BANTER_SET_16_TEXT_02 = 3261 , + HELP_TEXT_BANTER_SET_16_TEXT_03 = 3262 , + HELP_TEXT_BANTER_SET_16_TEXT_04 = 3263 , + HELP_TEXT_BANTER_SET_16_TEXT_05 = 3264 , + HELP_TEXT_BANTER_SET_16_TEXT_06 = 3265 , + HELP_TEXT_BANTER_SET_17_TEXT_01 = 3266 , + HELP_TEXT_BANTER_SET_17_TEXT_02 = 3267 , + HELP_TEXT_BANTER_SET_17_TEXT_03 = 3268 , + HELP_TEXT_BANTER_SET_17_TEXT_04 = 3269 , + HELP_TEXT_BANTER_SET_17_TEXT_05 = 3270 , + HELP_TEXT_BANTER_SET_18_TEXT_01 = 3271 , + HELP_TEXT_BANTER_SET_18_TEXT_02 = 3272 , + HELP_TEXT_BANTER_SET_18_TEXT_03 = 3273 , + HELP_TEXT_BANTER_SET_18_TEXT_04 = 3274 , + HELP_TEXT_BANTER_SET_18_TEXT_05 = 3275 , + HELP_TEXT_BANTER_SET_18_TEXT_06 = 3276 , + HELP_TEXT_BANTER_SET_18_TEXT_07 = 3277 , + HELP_TEXT_BANTER_SET_18_TEXT_08 = 3278 , + HELP_TEXT_BANTER_SET_18_TEXT_09 = 3279 , + HELP_TEXT_BANTER_SET_19_TEXT_01 = 3280 , + HELP_TEXT_BANTER_SET_19_TEXT_02 = 3281 , + HELP_TEXT_BANTER_SET_19_TEXT_03 = 3282 , + HELP_TEXT_BANTER_SET_19_TEXT_04 = 3283 , + HELP_TEXT_BANTER_SET_19_TEXT_05 = 3284 , + HELP_TEXT_BANTER_SET_19_TEXT_06 = 3285 , + HELP_TEXT_BANTER_SET_20_TEXT_01 = 3286 , + HELP_TEXT_BANTER_SET_20_TEXT_02 = 3287 , + HELP_TEXT_BANTER_SET_20_TEXT_03 = 3288 , + HELP_TEXT_BANTER_SET_20_TEXT_04 = 3289 , + HELP_TEXT_BANTER_SET_21_TEXT_01 = 3290 , + HELP_TEXT_BANTER_SET_21_TEXT_02 = 3291 , + HELP_TEXT_BANTER_SET_21_TEXT_03 = 3292 , + HELP_TEXT_BANTER_SET_21_TEXT_04 = 3293 , + HELP_TEXT_BANTER_SET_22_TEXT_01 = 3294 , + HELP_TEXT_BANTER_SET_22_TEXT_02 = 3295 , + HELP_TEXT_BANTER_SET_22_TEXT_03 = 3296 , + HELP_TEXT_BANTER_SET_23_TEXT_01 = 3297 , + HELP_TEXT_BANTER_SET_23_TEXT_02 = 3298 , + HELP_TEXT_BANTER_SET_23_TEXT_03 = 3299 , + HELP_TEXT_BANTER_SET_23_TEXT_04 = 3300 , + HELP_TEXT_BANTER_SET_23_TEXT_05 = 3301 , + HELP_TEXT_BANTER_SET_23_TEXT_06 = 3302 , + HELP_TEXT_BANTER_SET_23_TEXT_07 = 3303 , + HELP_TEXT_BANTER_SET_24_TEXT_01 = 3304 , + HELP_TEXT_BANTER_SET_24_TEXT_02 = 3305 , + HELP_TEXT_BANTER_SET_24_TEXT_03 = 3306 , + HELP_TEXT_BANTER_SET_25_TEXT_01 = 3307 , + HELP_TEXT_BANTER_SET_25_TEXT_02 = 3308 , + HELP_TEXT_BANTER_SET_25_TEXT_03 = 3309 , + HELP_TEXT_BANTER_SET_25_TEXT_04 = 3310 , + HELP_TEXT_BANTER_SET_25_TEXT_05 = 3311 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_01 = 3312 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_02 = 3313 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_03 = 3314 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_04 = 3315 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_05 = 3316 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_06 = 3317 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_07 = 3318 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_08 = 3319 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_09 = 3320 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_10 = 3321 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_11 = 3322 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_12 = 3323 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_13 = 3324 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_14 = 3325 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_15 = 3326 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_16 = 3327 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_17 = 3328 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_18 = 3329 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_19 = 3330 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_20 = 3331 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_21 = 3332 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_22 = 3333 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_23 = 3334 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_24 = 3335 , + HELP_TEXT_MULTIPLAYER_BANTER_SET_01_TEXT_25 = 3336 , + HELP_TEXT_HAND_FIREBALL_PU_ONE_01 = 3337 , + HELP_TEXT_HAND_FIREBALL_PU_TWO_01 = 3338 , + HELP_TEXT_HAND_LIGHTNING_BOLT_PU_ONE_01 = 3339 , + HELP_TEXT_HAND_LIGHTNING_BOLT_PU_TWO_01 = 3340 , + HELP_TEXT_HAND_EXPLOSION_ONE_PU_ONE_01 = 3341 , + HELP_TEXT_HAND_HEAL_PU_ONE_01 = 3342 , + HELP_TEXT_HAND_STORM_WIND_RAIN_01 = 3343 , + HELP_TEXT_HAND_STORM_WIND_RAIN_LIGHTNING_01 = 3344 , + HELP_TEXT_HAND_SHIELD_PU_ONE_01 = 3345 , + HELP_TEXT_HAND_POO_01 = 3346 , + HELP_TEXT_HAND_POO_02 = 3347 , + HELP_TEXT_HAND_POO_03 = 3348 , + HELP_TEXT_HAND_POO_04 = 3349 , + HELP_TEXT_HAND_POO_05 = 3350 , + HELP_TEXT_HAND_FUNGUS_01 = 3351 , + HELP_TEXT_HAND_ON_FIRE_01 = 3352 , + HELP_TEXT_HAND_ON_FIRE_02 = 3353 , + HELP_TEXT_HAND_MAGIC_MUSHROOM_01 = 3354 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_01 = 3355 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_02 = 3356 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_01 = 3357 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_02 = 3358 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_03 = 3359 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_04 = 3360 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_05 = 3361 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_06 = 3362 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_07 = 3363 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_08 = 3364 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_09 = 3365 , + HELP_TEXT_QUESTION_SCROLL_HIGHLIGHT_NEW_10 = 3366 , + HELP_TEXT_HAND_CREATURE_SPELL_FREEZE_01 = 3367 , + HELP_TEXT_HAND_CREATURE_SPELL_SMALL_01 = 3368 , + HELP_TEXT_HAND_CREATURE_SPELL_BIG_01 = 3369 , + HELP_TEXT_HAND_CREATURE_SPELL_WEAK_01 = 3370 , + HELP_TEXT_HAND_CREATURE_SPELL_STRONG_01 = 3371 , + HELP_TEXT_HAND_CREATURE_SPELL_INVISIBLE_01 = 3372 , + HELP_TEXT_HAND_CREATURE_SPELL_COMPASSION_01 = 3373 , + HELP_TEXT_HAND_CREATURE_SPELL_ANGRY_01 = 3374 , + HELP_TEXT_HAND_CREATURE_SPELL_ITCHY_01 = 3375 , + HELP_TEXT_NEW_INTERFACE_01 = 3376 , + HELP_TEXT_NEW_INTERFACE_02 = 3377 , + HELP_TEXT_NEW_INTERFACE_03 = 3378 , + HELP_TEXT_NEW_INTERFACE_04 = 3379 , + HELP_TEXT_NEW_INTERFACE_05 = 3380 , + HELP_TEXT_NEW_INTERFACE_06 = 3381 , + HELP_TEXT_NEW_INTERFACE_07 = 3382 , + HELP_TEXT_NEW_INTERFACE_08 = 3383 , + HELP_TEXT_NEW_INTERFACE_09 = 3384 , + HELP_TEXT_NEW_INTERFACE_10 = 3385 , + HELP_TEXT_NEW_INTERFACE_11 = 3386 , + HELP_TEXT_NEW_INTERFACE_12 = 3387 , + HELP_TEXT_NEW_INTERFACE_13 = 3388 , + HELP_TEXT_NEW_INTERFACE_14 = 3389 , + HELP_TEXT_NEW_INTERFACE_15 = 3390 , + HELP_TEXT_NEW_INTERFACE_16 = 3391 , + HELP_TEXT_NEW_INTERFACE_17 = 3392 , + HELP_TEXT_NEW_INTERFACE_18 = 3393 , + HELP_TEXT_NEW_INTERFACE_19 = 3394 , + HELP_TEXT_NEW_INTERFACE_20 = 3395 , + HELP_TEXT_NEW_INTERFACE_21 = 3396 , + HELP_TEXT_NEW_INTERFACE_22 = 3397 , + HELP_TEXT_NEW_INTERFACE_23 = 3398 , + HELP_TEXT_NEW_INTERFACE_24 = 3399 , + HELP_TEXT_NEW_INTERFACE_25 = 3400 , + HELP_TEXT_NEW_INTERFACE_26 = 3401 , + HELP_TEXT_NEW_INTERFACE_27 = 3402 , + HELP_TEXT_NEW_INTERFACE_28 = 3403 , + HELP_TEXT_NEW_INTERFACE_29 = 3404 , + HELP_TEXT_NEW_INTERFACE_30 = 3405 , + HELP_TEXT_NEW_INTERFACE_31 = 3406 , + HELP_TEXT_NEW_INTERFACE_32 = 3407 , + HELP_TEXT_NEW_INTERFACE_33 = 3408 , + HELP_TEXT_GENERAL_LEAVE_THROUGH_VORTEX_01 = 3409 , + HELP_TEXT_GENERAL_LEAVE_THROUGH_VORTEX_02 = 3410 , + HELP_TEXT_GENERAL_LEAVE_THROUGH_VORTEX_03 = 3411 , + HELP_TEXT_DIALOG_WELCOME = 3412 , + HELP_TEXT_DIALOG_STARTGAME = 3413 , + HELP_TEXT_DIALOG_CONTINUEGAME = 3414 , + HELP_TEXT_DIALOG_LOADOLDGAME = 3415 , + HELP_TEXT_DIALOG_JOINGONLINE = 3416 , + HELP_TEXT_DIALOG_CHANGEPLAYER = 3417 , + HELP_TEXT_DIALOG_OPTIONS = 3418 , + HELP_TEXT_DIALOG_QUIT = 3419 , + HELP_TEXT_DIALOG_SELECT_A_PLAYER = 3420 , + HELP_TEXT_DIALOG_PLAYERSYMBOL = 3421 , + HELP_TEXT_DIALOG_CREATURETATOO = 3422 , + HELP_TEXT_DIALOG_CREATURENAME = 3423 , + HELP_TEXT_DIALOG_TATOOPOSITION = 3424 , + HELP_TEXT_DIALOG_TATOOBACK = 3425 , + HELP_TEXT_DIALOG_TATOOHEAD = 3426 , + HELP_TEXT_DIALOG_TATOOCHEST = 3427 , + HELP_TEXT_DIALOG_TATOOBUM = 3428 , + HELP_TEXT_DIALOG_TATOOLEFTARM = 3429 , + HELP_TEXT_DIALOG_TATOORIGHTARM = 3430 , + HELP_TEXT_DIALOG_TATOOLEFTHAND = 3431 , + HELP_TEXT_DIALOG_TATOORIGHTHAND = 3432 , + HELP_TEXT_DIALOG_CREATENEWPLAYER = 3433 , + HELP_TEXT_DIALOG_DELETEPLAYER = 3434 , + HELP_TEXT_DIALOG_EDITTATOO = 3435 , + HELP_TEXT_DIALOG_SOUNDANDVIDEOCONTROL = 3436 , + HELP_TEXT_DIALOG_VIDEOCONTROL = 3437 , + HELP_TEXT_DIALOG_MASTERVOLUME = 3438 , + HELP_TEXT_DIALOG_MUSICVOLUME = 3439 , + HELP_TEXT_DIALOG_VIDEODETAIL = 3440 , + HELP_TEXT_DIALOG_LEFTHANDED = 3441 , + HELP_TEXT_DIALOG_HELPCONTROLS = 3442 , + HELP_TEXT_DIALOG_NOHELP = 3443 , + HELP_TEXT_DIALOG_LOWHELP = 3444 , + HELP_TEXT_DIALOG_MIDDLEHELP = 3445 , + HELP_TEXT_DIALOG_HIGHHELP = 3446 , + HELP_TEXT_DIALOG_ALLHELP = 3447 , + HELP_TEXT_DIALOG_NOTEXT = 3448 , + HELP_TEXT_DIALOG_STORYTEXT = 3449 , + HELP_TEXT_DIALOG_ALLTEXT = 3450 , + HELP_TEXT_DIALOG_NOTOOLTIPS = 3451 , + HELP_TEXT_DIALOG_MINIMUMTOOLTIPS = 3452 , + HELP_TEXT_DIALOG_INTELLIGENTNOTOOLTIPS = 3453 , + HELP_TEXT_DIALOG_ALLTOOLTIPS = 3454 , + HELP_TEXT_DIALOG_CREATUREHELP = 3455 , + HELP_TEXT_DIALOG_HELPTEXTSPEED = 3456 , + HELP_TEXT_DIALOG_CONTROLOPTIONS = 3457 , + HELP_TEXT_DIALOG_BACK = 3458 , + HELP_TEXT_DIALOG_CONTROLTITLE = 3459 , + HELP_TEXT_DIALOG_LOADDEFAULTS = 3460 , + HELP_TEXT_DIALOG_KEYREMINDER = 3461 , + HELP_TEXT_DIALOG_PLEASETYPENAME = 3462 , + HELP_TEXT_DIALOG_PLAYER = 3463 , + HELP_TEXT_DIALOG_SYMBOL = 3464 , + HELP_TEXT_DIALOG_AERYOUSUREDELETE = 3465 , + HELP_TEXT_DIALOG_NAMEANDPASSWORD = 3466 , + HELP_TEXT_DIALOG_LOGINNAME = 3467 , + HELP_TEXT_DIALOG_PASSWORD = 3468 , + HELP_TEXT_DIALOG_LOGIN = 3469 , + HELP_TEXT_DIALOG_REGISTER = 3470 , + HELP_TEXT_DIALOG_CONNECTIONLIST = 3471 , + HELP_TEXT_DIALOG_USELOBBY = 3472 , + HELP_TEXT_DIALOG_BYPASSLOGIN = 3473 , + HELP_TEXT_DIALOG_FULLCHECKSUM = 3474 , + HELP_TEXT_DIALOG_SAVEPACKETS = 3475 , + HELP_TEXT_DIALOG_REPLAYPACKETS = 3476 , + HELP_TEXT_DIALOG_PACKETINFO = 3477 , + HELP_TEXT_DIALOG_REGISTRATIONNAME = 3478 , + HELP_TEXT_DIALOG_LOGINPASSWORD = 3479 , + HELP_TEXT_DIALOG_LOBBYSERVER = 3480 , + HELP_TEXT_DIALOG_PLAYERALREADYEXISTS = 3481 , + HELP_TEXT_DIALOG_INVALIDPLAYERNAME = 3482 , + HELP_TEXT_DIALOG_ENTERLOGINNAME = 3483 , + HELP_TEXT_DIALOG_ENTERPASSWORD = 3484 , + HELP_TEXT_DIALOG_WEBLAUNCH = 3485 , + HELP_TEXT_DIALOG_CONNECTING = 3486 , + HELP_TEXT_DIALOG_AUTHENTICATING = 3487 , + HELP_TEXT_DIALOG_CONNECTIONESTABLISHED = 3488 , + HELP_TEXT_DIALOG_AUTHENTICATINGOK = 3489 , + HELP_TEXT_DIALOG_AUTHENTICATINGERROR = 3490 , + HELP_TEXT_DIALOG_LOGGINGON = 3491 , + HELP_TEXT_DIALOG_ERRORHASOCCURED = 3492 , + HELP_TEXT_DIALOG_DISCONNECTED = 3493 , + HELP_TEXT_DIALOG_PASSWORDEXPIRED = 3494 , + HELP_TEXT_DIALOG_YOUARENOTREGISTERED = 3495 , + HELP_TEXT_DIALOG_INVALIDDETAILS = 3496 , + HELP_TEXT_DIALOG_LOGINFAILED = 3497 , + HELP_TEXT_DIALOG_ERRORCODEWAS = 3498 , + HELP_TEXT_DIALOG_LOBBYRETURNEDERROR = 3499 , + HELP_TEXT_DIALOG_COULDNOTREACHLOBBYSERVER = 3500 , + HELP_TEXT_DIALOG_CONNECTED = 3501 , + HELP_TEXT_DIALOG_DEFAULT = 3502 , + HELP_TEXT_DIALOG_NOCONNECTIONSAVAILABLE = 3503 , + HELP_TEXT_DIALOG_CONNECTIONSUCCESSFULL = 3504 , + HELP_TEXT_DIALOG_PLAYERS = 3505 , + HELP_TEXT_DIALOG_SUPERPACKETS = 3506 , + HELP_TEXT_DIALOG_PREVIOUSGAMEWENTOUTOFSYNC = 3507 , + HELP_TEXT_DIALOG_NOTENOUGHINFO = 3508 , + HELP_TEXT_DIALOG_DIALUPERROR = 3509 , + HELP_TEXT_DIALOG_CONNECT = 3510 , + HELP_TEXT_DIALOG_DISCONNECT = 3511 , + HELP_TEXT_DIALOG_REFRESH = 3512 , + HELP_TEXT_DIALOG_JOIN = 3513 , + HELP_TEXT_DIALOG_TYPEMESSAGE = 3514 , + HELP_TEXT_DIALOG_LEAVECHANNEL = 3515 , + HELP_TEXT_DIALOG_LOBBYSTARTGAME = 3516 , + HELP_TEXT_DIALOG_ROOM = 3517 , + HELP_TEXT_DIALOG_ROOMPASSWORD = 3518 , + HELP_TEXT_DIALOG_ENTERREALM = 3519 , + HELP_TEXT_DIALOG_LOBBYSAVEPACKETS = 3520 , + HELP_TEXT_DIALOG_PLEASEENTERROOMNAME = 3521 , + HELP_TEXT_DIALOG_FAILEDTOJOIN = 3522 , + HELP_TEXT_DIALOG_ONLAN = 3523 , + HELP_TEXT_DIALOG_ONLOBBY = 3524 , + HELP_TEXT_DIALOG_INTERNALSYNCRONOUS = 3525 , + HELP_TEXT_DIALOG_USER = 3526 , + HELP_TEXT_DIALOG_WARNINGVERSIONMISMATCH = 3527 , + HELP_TEXT_DIALOG_HASJOINEDCHANNEL = 3528 , + HELP_TEXT_DIALOG_HASLEFTCHANNEL = 3529 , + HELP_TEXT_DIALOG_TATOODRAG = 3530 , + HELP_TEXT_DIALOG_LEFT = 3531 , + HELP_TEXT_DIALOG_RIGHT = 3532 , + HELP_TEXT_DIALOG_LANSTRING = 3533 , + HELP_TEXT_DIALOG_PROFILEPLAYER = 3534 , + HELP_TEXT_DIALOG_AREYOUSUREQUIT = 3535 , + HELP_TEXT_DIALOG_AUTOSAVE = 3536 , + HELP_TEXT_DIALOG_DETAIL_00 = 3537 , + HELP_TEXT_DIALOG_DETAIL_01 = 3538 , + HELP_TEXT_DIALOG_DETAIL_02 = 3539 , + HELP_TEXT_DIALOG_DETAIL_03 = 3540 , + HELP_TEXT_DIALOG_DETAIL_04 = 3541 , + HELP_TEXT_DIALOG_DETAIL_05 = 3542 , + HELP_TEXT_DIALOG_DETAIL_06 = 3543 , + HELP_TEXT_DIALOG_VIDEOCHANGE = 3544 , + HELP_TEXT_DIALOG_AREYOUSURESTART = 3545 , + HELP_TEXT_DIALOG_CHOOSEINET = 3546 , + HELP_TEXT_DIALOG_LOGINHELP = 3547 , + HELP_TEXT_DIALOG_ENTERDETAILS = 3548 , + HELP_TEXT_DIALOG_GAMELIST = 3549 , + HELP_TEXT_DIALOG_CHATROOM = 3550 , + HELP_TEXT_DIALOG_PLAYERLIST = 3551 , + HELP_TEXT_DIALOG_HELP_01 = 3552 , + HELP_TEXT_DIALOG_HELP_02 = 3553 , + HELP_TEXT_DIALOG_HELP_03 = 3554 , + HELP_TEXT_DIALOG_HELP_04 = 3555 , + HELP_TEXT_DIALOG_HELP_05 = 3556 , + HELP_TEXT_DIALOG_HELP_06 = 3557 , + HELP_TEXT_DIALOG_HELP_07 = 3558 , + HELP_TEXT_DIALOG_HELP_08 = 3559 , + HELP_TEXT_DIALOG_HELP_09 = 3560 , + HELP_TEXT_DIALOG_HELP_10 = 3561 , + HELP_TEXT_DIALOG_HELP_11 = 3562 , + HELP_TEXT_DIALOG_GLOBALLOBBY = 3563 , + HELP_TEXT_DIALOG_LEAVE_GAME = 3564 , + HELP_TEXT_DIALOG_INCOMPATIBLE_VERSION_01 = 3565 , + HELP_TEXT_DIALOG_SOUNDS_OFF_01 = 3566 , + HELP_TEXT_DIALOG_CDPLAYER = 3567 , + HELP_TEXT_DIALOG_CDPLAYERPOLL = 3568 , + HELP_TEXT_DIALOG_SAVECOMPLETE_01 = 3569 , + HELP_TEXT_DIALOG_SAVECOMPLETE_02 = 3570 , + HELP_TEXT_DIALOG_LOADCOMPLETE_01 = 3571 , + HELP_TEXT_DIALOG_LOADCOMPLETE_02 = 3572 , + HELP_TEXT_DIALOG_QUIT_QUESTION = 3573 , + HELP_TEXT_DIALOG_RESTART = 3574 , + HELP_TEXT_DIALOG_RESTART_WARNING = 3575 , + HELP_TEXT_DIALOG_AREYOUSURENEWGAME = 3576 , + HELP_TEXT_DIALOG_WEATHER_INFO = 3577 , + HELP_TEXT_ANNOUNCER_VOICE_TELEPORT_01 = 3578 , + HELP_TEXT_ANNOUNCER_VOICE_FOREST_01 = 3579 , + HELP_TEXT_ANNOUNCER_VOICE_FOOD_01 = 3580 , + HELP_TEXT_ANNOUNCER_VOICE_STORM_01 = 3581 , + HELP_TEXT_ANNOUNCER_VOICE_SHIELD_01 = 3582 , + HELP_TEXT_ANNOUNCER_VOICE_PHYSICAL_SHIELD_01 = 3583 , + HELP_TEXT_ANNOUNCER_VOICE_WOOD_01 = 3584 , + HELP_TEXT_ANNOUNCER_VOICE_WATER_01 = 3585 , + HELP_TEXT_ANNOUNCER_VOICE_FLOCK_FLYING_01 = 3586 , + HELP_TEXT_ANNOUNCER_VOICE_FLOCK_GROUND_01 = 3587 , + HELP_TEXT_ANNOUNCER_VOICE_HEAL_01 = 3588 , + HELP_TEXT_ANNOUNCER_VOICE_LIGHTNING_01 = 3589 , + HELP_TEXT_ANNOUNCER_VOICE_FIREBALL_01 = 3590 , + HELP_TEXT_ANNOUNCER_VOICE_BEAM_EXPLOSION_01 = 3591 , + HELP_TEXT_ANNOUNCER_VOICE_POWERUP_01 = 3592 , + HELP_TEXT_ANNOUNCER_VOICE_POWERUP_02 = 3593 , + HELP_TEXT_ANNOUNCER_VOICE_POWERUP_03 = 3594 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_01 = 3595 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_02 = 3596 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_03 = 3597 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_04 = 3598 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_05 = 3599 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_06 = 3600 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_07 = 3601 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_08 = 3602 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_09 = 3603 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_10 = 3604 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_11 = 3605 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_12 = 3606 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_13 = 3607 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_14 = 3608 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_15 = 3609 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_16 = 3610 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_17 = 3611 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_18 = 3612 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_19 = 3613 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_20 = 3614 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_21 = 3615 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_22 = 3616 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_23 = 3617 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_24 = 3618 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_25 = 3619 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_26 = 3620 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_27 = 3621 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_28 = 3622 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_29 = 3623 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_30 = 3624 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_31 = 3625 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_32 = 3626 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_33 = 3627 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_34 = 3628 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_35 = 3629 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_36 = 3630 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_37 = 3631 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_38 = 3632 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_39 = 3633 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_40 = 3634 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_41 = 3635 , + HELP_TEXT_ADMIN_REGISTRATION_TEXT_42 = 3636 , + HELP_TEXT_INTERFACE_LOOK_AT_LAND_01 = 3637 , + HELP_TEXT_INTERFACE_LOOK_AT_LAND_02 = 3638 , + HELP_TEXT_INTERFACE_LOOK_AT_LAND_03 = 3639 , + HELP_TEXT_INTERFACE_LOOK_AT_LAND_04 = 3640 , + HELP_TEXT_INTERFACE_LOOK_AT_LAND_05 = 3641 , + HELP_TEXT_INTERFACE_LOOK_AT_LAND_06 = 3642 , + HELP_TEXT_INTERFACE_LOOK_AT_SKY_01 = 3643 , + HELP_TEXT_INTERFACE_LOOK_AT_SKY_02 = 3644 , + HELP_TEXT_INTERFACE_LOOK_AT_SKY_03 = 3645 , + HELP_TEXT_INTERFACE_LOOK_AT_SKY_04 = 3646 , + HELP_TEXT_INTERFACE_LOOK_AT_SKY_05 = 3647 , + HELP_TEXT_INTERFACE_LOOK_AT_SKY_06 = 3648 , + HELP_TEXT_INTERFACE_NEAR_INCLUSION_DISTANCE_01 = 3649 , + HELP_TEXT_INTERFACE_NEAR_INCLUSION_DISTANCE_02 = 3650 , + HELP_TEXT_INTERFACE_NEAR_INCLUSION_DISTANCE_03 = 3651 , + HELP_TEXT_INTERFACE_NEAR_INCLUSION_DISTANCE_04 = 3652 , + HELP_TEXT_INTERFACE_NEAR_INCLUSION_DISTANCE_05 = 3653 , + HELP_TEXT_INTERFACE_NEAR_INCLUSION_DISTANCE_06 = 3654 , + HELP_TEXT_INTERRUPTION_01 = 3655 , + HELP_TEXT_INTERRUPTION_02 = 3656 , + HELP_TEXT_INTERRUPTION_03 = 3657 , + HELP_TEXT_INTERRUPTION_04 = 3658 , + HELP_TEXT_INTERRUPTION_05 = 3659 , + HELP_TEXT_INTERRUPTION_06 = 3660 , + HELP_TEXT_INTERRUPTION_07 = 3661 , + HELP_TEXT_INTERRUPTION_08 = 3662 , + HELP_TEXT_INTERRUPTION_09 = 3663 , + HELP_TEXT_INTERRUPTION_10 = 3664 , + HELP_TEXT_INTERRUPTION_11 = 3665 , + HELP_TEXT_INTERRUPTION_12 = 3666 , + HELP_TEXT_INTERRUPTION_13 = 3667 , + HELP_TEXT_INTERRUPTION_14 = 3668 , + HELP_TEXT_INTERRUPTION_15 = 3669 , + HELP_TEXT_INTERRUPTION_16 = 3670 , + HELP_TEXT_INTERRUPTION_17 = 3671 , + HELP_TEXT_INTERRUPTION_18 = 3672 , + HELP_TEXT_INTERRUPTION_19 = 3673 , + HELP_TEXT_INTERRUPTION_20 = 3674 , + HELP_TEXT_INTERRUPTION_21 = 3675 , + HELP_TEXT_INTERRUPTION_22 = 3676 , + HELP_TEXT_INTERRUPTION_23 = 3677 , + HELP_TEXT_INTERRUPTION_24 = 3678 , + HELP_TEXT_INTERRUPTION_25 = 3679 , + HELP_TEXT_INTERRUPTION_26 = 3680 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_01 = 3681 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_02 = 3682 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_03 = 3683 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_04 = 3684 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_05 = 3685 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_06 = 3686 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_07 = 3687 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_08 = 3688 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_09 = 3689 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_10 = 3690 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_11 = 3691 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_12 = 3692 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_13 = 3693 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_14 = 3694 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_15 = 3695 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_16 = 3696 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_17 = 3697 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_18 = 3698 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_19 = 3699 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_20 = 3700 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_21 = 3701 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_22 = 3702 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_23 = 3703 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_24 = 3704 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_25 = 3705 , + HELP_TEXT_INTERRUPTION_IN_CITADEL_26 = 3706 , + HELP_TEXT_TOOLTIP_01 = 3707 , + HELP_TEXT_TOOLTIP_02 = 3708 , + HELP_TEXT_TOOLTIP_03 = 3709 , + HELP_TEXT_TOOLTIP_04 = 3710 , + HELP_TEXT_TOOLTIP_05 = 3711 , + HELP_TEXT_TOOLTIP_06 = 3712 , + HELP_TEXT_TOOLTIP_07 = 3713 , + HELP_TEXT_TOOLTIP_08 = 3714 , + HELP_TEXT_TOOLTIP_09 = 3715 , + HELP_TEXT_TOOLTIP_10 = 3716 , + HELP_TEXT_TOOLTIP_11 = 3717 , + HELP_TEXT_TOOLTIP_12 = 3718 , + HELP_TEXT_TOOLTIP_13 = 3719 , + HELP_TEXT_TOOLTIP_14 = 3720 , + HELP_TEXT_TOOLTIP_15 = 3721 , + HELP_TEXT_TOOLTIP_16 = 3722 , + HELP_TEXT_TOOLTIP_17 = 3723 , + HELP_TEXT_TOOLTIP_18 = 3724 , + HELP_TEXT_TOOLTIP_19 = 3725 , + HELP_TEXT_TOOLTIP_20 = 3726 , + HELP_TEXT_TOOLTIP_21 = 3727 , + HELP_TEXT_TOOLTIP_22 = 3728 , + HELP_TEXT_TOOLTIP_23 = 3729 , + HELP_TEXT_TOOLTIP_24 = 3730 , + HELP_TEXT_TOOLTIP_25 = 3731 , + HELP_TEXT_TOOLTIP_26 = 3732 , + HELP_TEXT_TOOLTIP_27 = 3733 , + HELP_TEXT_TOOLTIP_28 = 3734 , + HELP_TEXT_TOOLTIP_29 = 3735 , + HELP_TEXT_TOOLTIP_30 = 3736 , + HELP_TEXT_TOOLTIP_31 = 3737 , + HELP_TEXT_TOOLTIP_32 = 3738 , + HELP_TEXT_TOOLTIP_33 = 3739 , + HELP_TEXT_TOOLTIP_34 = 3740 , + HELP_TEXT_TOOLTIP_35 = 3741 , + HELP_TEXT_TOOLTIP_36 = 3742 , + HELP_TEXT_TOOLTIP_37 = 3743 , + HELP_TEXT_TOOLTIP_38 = 3744 , + HELP_TEXT_TOOLTIP_39 = 3745 , + HELP_TEXT_TOOLTIP_40 = 3746 , + HELP_TEXT_TOOLTIP_41 = 3747 , + HELP_TEXT_TOOLTIP_42 = 3748 , + HELP_TEXT_TOOLTIP_43 = 3749 , + HELP_TEXT_TOOLTIP_44 = 3750 , + HELP_TEXT_TOOLTIP_45 = 3751 , + HELP_TEXT_TOOLTIP_46 = 3752 , + HELP_TEXT_TOOLTIP_47 = 3753 , + HELP_TEXT_TOOLTIP_48 = 3754 , + HELP_TEXT_TOOLTIP_49 = 3755 , + HELP_TEXT_TOOLTIP_50 = 3756 , + HELP_TEXT_TOOLTIP_51 = 3757 , + HELP_TEXT_TOOLTIP_52 = 3758 , + HELP_TEXT_TOOLTIP_53 = 3759 , + HELP_TEXT_TOOLTIP_54 = 3760 , + HELP_TEXT_TOOLTIP_55 = 3761 , + HELP_TEXT_TOOLTIP_56 = 3762 , + HELP_TEXT_TOOLTIP_57 = 3763 , + HELP_TEXT_TOOLTIP_58 = 3764 , + HELP_TEXT_TOOLTIP_59 = 3765 , + HELP_TEXT_TOOLTIP_60 = 3766 , + HELP_TEXT_TOOLTIP_61 = 3767 , + HELP_TEXT_TOOLTIP_62 = 3768 , + HELP_TEXT_TOOLTIP_63 = 3769 , + HELP_TEXT_TOOLTIP_64 = 3770 , + HELP_TEXT_TOOLTIP_65 = 3771 , + HELP_TEXT_TOOLTIP_66 = 3772 , + HELP_TEXT_TOOLTIP_67 = 3773 , + HELP_TEXT_TOOLTIP_68 = 3774 , + HELP_TEXT_TOOLTIP_69 = 3775 , + HELP_TEXT_TOOLTIP_70 = 3776 , + HELP_TEXT_TOOLTIP_71 = 3777 , + HELP_TEXT_TOOLTIP_72 = 3778 , + HELP_TEXT_TOOLTIP_73 = 3779 , + HELP_TEXT_TOOLTIP_74 = 3780 , + HELP_TEXT_TOOLTIP_75 = 3781 , + HELP_TEXT_TOOLTIP_76 = 3782 , + HELP_TEXT_TOOLTIP_77 = 3783 , + HELP_TEXT_TOOLTIP_78 = 3784 , + HELP_TEXT_TOOLTIP_79 = 3785 , + HELP_TEXT_TOOLTIP_80 = 3786 , + HELP_TEXT_TOOLTIP_81 = 3787 , + HELP_TEXT_TOOLTIP_82 = 3788 , + HELP_TEXT_TOOLTIP_83 = 3789 , + HELP_TEXT_TOOLTIP_84 = 3790 , + HELP_TEXT_TOOLTIP_85 = 3791 , + HELP_TEXT_TOOLTIP_86 = 3792 , + HELP_TEXT_TOOLTIP_87 = 3793 , + HELP_TEXT_TOOLTIP_88 = 3794 , + HELP_TEXT_TOOLTIP_89 = 3795 , + HELP_TEXT_TOOLTIP_90 = 3796 , + HELP_TEXT_TOOLTIP_91 = 3797 , + HELP_TEXT_TOOLTIP_92 = 3798 , + HELP_TEXT_TOOLTIP_93 = 3799 , + HELP_TEXT_TOOLTIP_94 = 3800 , + HELP_TEXT_TOOLTIP_95 = 3801 , + HELP_TEXT_TOOLTIP_96 = 3802 , + HELP_TEXT_TOOLTIP_97 = 3803 , + HELP_TEXT_TOOLTIP_98 = 3804 , + HELP_TEXT_TOOLTIP_99 = 3805 , + HELP_TEXT_TOOLTIP_100 = 3806 , + HELP_TEXT_TOOLTIP_101 = 3807 , + HELP_TEXT_TOOLTIP_102 = 3808 , + HELP_TEXT_TOOLTIP_103 = 3809 , + HELP_TEXT_TOOLTIP_104 = 3810 , + HELP_TEXT_TOOLTIP_105 = 3811 , + HELP_TEXT_TOOLTIP_106 = 3812 , + HELP_TEXT_TOOLTIP_107 = 3813 , + HELP_TEXT_TOOLTIP_108 = 3814 , + HELP_TEXT_TOOLTIP_109 = 3815 , + HELP_TEXT_TOOLTIP_110 = 3816 , + HELP_TEXT_TOOLTIP_111 = 3817 , + HELP_TEXT_TOOLTIP_112 = 3818 , + HELP_TEXT_TOOLTIP_113 = 3819 , + HELP_TEXT_TOOLTIP_114 = 3820 , + HELP_TEXT_TOOLTIP_115 = 3821 , + HELP_TEXT_TOOLTIP_116 = 3822 , + HELP_TEXT_TOOLTIP_117 = 3823 , + HELP_TEXT_TOOLTIP_118 = 3824 , + HELP_TEXT_TOOLTIP_119 = 3825 , + HELP_TEXT_TOOLTIP_120 = 3826 , + HELP_TEXT_TOOLTIP_121 = 3827 , + HELP_TEXT_TOOLTIP_122 = 3828 , + HELP_TEXT_TOOLTIP_123 = 3829 , + HELP_TEXT_TOOLTIP_124 = 3830 , + HELP_TEXT_TOOLTIP_125 = 3831 , + HELP_TEXT_TOOLTIP_126 = 3832 , + HELP_TEXT_TOOLTIP_127 = 3833 , + HELP_TEXT_TOOLTIP_128 = 3834 , + HELP_TEXT_TOOLTIP_129 = 3835 , + HELP_TEXT_TOOLTIP_130 = 3836 , + HELP_TEXT_TOOLTIP_131 = 3837 , + HELP_TEXT_TOOLTIP_132 = 3838 , + HELP_TEXT_TOOLTIP_133 = 3839 , + HELP_TEXT_TOOLTIP_134 = 3840 , + HELP_TEXT_TOOLTIP_135 = 3841 , + HELP_TEXT_TOOLTIP_136 = 3842 , + HELP_TEXT_TOOLTIP_137 = 3843 , + HELP_TEXT_TOOLTIP_138 = 3844 , + HELP_TEXT_TOOLTIP_139 = 3845 , + HELP_TEXT_TOOLTIP_140 = 3846 , + HELP_TEXT_TOOLTIP_141 = 3847 , + HELP_TEXT_TOOLTIP_142 = 3848 , + HELP_TEXT_TOOLTIP_143 = 3849 , + HELP_TEXT_TOOLTIP_144 = 3850 , + HELP_TEXT_TOOLTIP_145 = 3851 , + HELP_TEXT_TOOLTIP_146 = 3852 , + HELP_TEXT_TOOLTIP_147 = 3853 , + HELP_TEXT_TOOLTIP_148 = 3854 , + HELP_TEXT_TOOLTIP_149 = 3855 , + HELP_TEXT_TOOLTIP_150 = 3856 , + HELP_TEXT_TOOLTIP_151 = 3857 , + HELP_TEXT_TOOLTIP_152 = 3858 , + HELP_TEXT_TOOLTIP_153 = 3859 , + HELP_TEXT_TOOLTIP_154 = 3860 , + HELP_TEXT_TOOLTIP_155 = 3861 , + HELP_TEXT_TOOLTIP_156 = 3862 , + HELP_TEXT_TOOLTIP_157 = 3863 , + HELP_TEXT_TOOLTIP_158 = 3864 , + HELP_TEXT_TOOLTIP_159 = 3865 , + HELP_TEXT_TOOLTIP_160 = 3866 , + HELP_TEXT_TOOLTIP_161 = 3867 , + HELP_TEXT_TOOLTIP_162 = 3868 , + HELP_TEXT_TOOLTIP_163 = 3869 , + HELP_TEXT_TOOLTIP_164 = 3870 , + HELP_TEXT_TOOLTIP_165 = 3871 , + HELP_TEXT_TOOLTIP_166 = 3872 , + HELP_TEXT_TOOLTIP_167 = 3873 , + HELP_TEXT_TOOLTIP_168 = 3874 , + HELP_TEXT_TOOLTIP_169 = 3875 , + HELP_TEXT_TOOLTIP_170 = 3876 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_01 = 3877 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_02 = 3878 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_03 = 3879 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_04 = 3880 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_05 = 3881 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_06 = 3882 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_07 = 3883 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_08 = 3884 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_09 = 3885 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_INITIAL_10 = 3886 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_01 = 3887 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_02 = 3888 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_03 = 3889 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_04 = 3890 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_05 = 3891 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_06 = 3892 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_07 = 3893 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_08 = 3894 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_09 = 3895 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_10 = 3896 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_11 = 3897 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_12 = 3898 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_EAT_13 = 3899 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_PLAY_01 = 3900 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_PLAY_02 = 3901 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_PLAY_03 = 3902 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_PLAY_04 = 3903 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_POO_01 = 3904 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_POO_02 = 3905 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_POO_03 = 3906 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_POO_04 = 3907 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_POO_05 = 3908 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEARN_TO_POO_06 = 3909 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_01 = 3910 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_02 = 3911 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_03 = 3912 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_04 = 3913 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_05 = 3914 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_06 = 3915 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_07 = 3916 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_08 = 3917 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_09 = 3918 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_10 = 3919 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_ANGRY_11 = 3920 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_01 = 3921 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_02 = 3922 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_03 = 3923 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_04 = 3924 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_05 = 3925 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_06 = 3926 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_07 = 3927 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_08 = 3928 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_09 = 3929 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_10 = 3930 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_THIRSTY_11 = 3931 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_01 = 3932 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_02 = 3933 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_03 = 3934 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_04 = 3935 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_05 = 3936 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_06 = 3937 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_07 = 3938 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_08 = 3939 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_09 = 3940 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_10 = 3941 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_11 = 3942 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_12 = 3943 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_13 = 3944 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_OBJECT_14 = 3945 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_01 = 3946 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_02 = 3947 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_03 = 3948 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_04 = 3949 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_05 = 3950 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_06 = 3951 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_07 = 3952 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_08 = 3953 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_09 = 3954 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_10 = 3955 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_11 = 3956 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_12 = 3957 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_13 = 3958 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_14 = 3959 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_15 = 3960 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_16 = 3961 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_17 = 3962 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_18 = 3963 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_19 = 3964 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_20 = 3965 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_21 = 3966 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_22 = 3967 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_23 = 3968 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_24 = 3969 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_25 = 3970 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_26 = 3971 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_27 = 3972 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_28 = 3973 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_29 = 3974 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_30 = 3975 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_31 = 3976 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_32 = 3977 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_33 = 3978 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_FRIENDS_WITH_GUIDE_01 = 3979 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_FRIENDS_WITH_GUIDE_02 = 3980 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_FRIENDS_WITH_GUIDE_03 = 3981 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_FRIENDS_WITH_GUIDE_04 = 3982 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_FRIENDS_WITH_GUIDE_05 = 3983 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_FRIENDS_WITH_GUIDE_06 = 3984 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_01 = 3985 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_02 = 3986 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_03 = 3987 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_04 = 3988 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_05 = 3989 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_06 = 3990 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_07 = 3991 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_08 = 3992 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_09 = 3993 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GENERAL_10 = 3994 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_01 = 3995 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_02 = 3996 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_03 = 3997 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_04 = 3998 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_05 = 3999 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_06 = 4000 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_07 = 4001 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_08 = 4002 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_09 = 4003 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_EXPLORE_WITH_GUIDE_10 = 4004 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_SPELLS_01 = 4005 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_SPELLS_02 = 4006 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_SPELLS_03 = 4007 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_SPELLS_04 = 4008 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_SPELLS_05 = 4009 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_SPELLS_06 = 4010 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_01 = 4011 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_02 = 4012 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_03 = 4013 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_04 = 4014 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_05 = 4015 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_06 = 4016 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_07 = 4017 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_08 = 4018 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_09 = 4019 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_10 = 4020 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_11 = 4021 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_12 = 4022 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_13 = 4023 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_14 = 4024 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_15 = 4025 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_16 = 4026 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_17 = 4027 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_18 = 4028 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_19 = 4029 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_20 = 4030 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_21 = 4031 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_22 = 4032 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_23 = 4033 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_24 = 4034 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_25 = 4035 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_26 = 4036 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_27 = 4037 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_IMPRESSES_TOWN_28 = 4038 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_ANGER_01 = 4039 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_ANGER_02 = 4040 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_ANGER_03 = 4041 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_ANGER_04 = 4042 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_ANGER_05 = 4043 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_ANGER_06 = 4044 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_ANGER_07 = 4045 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_01 = 4046 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_02 = 4047 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_03 = 4048 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_04 = 4049 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_05 = 4050 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_06 = 4051 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_07 = 4052 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_08 = 4053 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_09 = 4054 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_10 = 4055 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_TO_HELP_TOWN_01 = 4056 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_TO_HELP_TOWN_02 = 4057 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_TO_HELP_TOWN_03 = 4058 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_TO_HELP_TOWN_04 = 4059 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_TO_HELP_TOWN_05 = 4060 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_01 = 4061 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_02 = 4062 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_03 = 4063 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_04 = 4064 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_05 = 4065 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_06 = 4066 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_07 = 4067 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_08 = 4068 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_09 = 4069 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_10 = 4070 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_P_N_R_11 = 4071 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_INTRO_01 = 4072 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_INTRO_02 = 4073 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_INTRO_03 = 4074 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_INTRO_04 = 4075 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_INTRO_05 = 4076 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_INTRO_06 = 4077 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PULL_01 = 4078 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PULL_02 = 4079 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PULL_03 = 4080 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PULL_04 = 4081 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PICKUP_01 = 4082 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PICKUP_02 = 4083 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PICKUP_03 = 4084 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PICKUP_04 = 4085 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PICKUP_05 = 4086 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PICKUP_06 = 4087 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PICKUP_07 = 4088 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_PICKUP_08 = 4089 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_01 = 4090 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_02 = 4091 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_03 = 4092 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_04 = 4093 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_05 = 4094 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_06 = 4095 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_07 = 4096 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_08 = 4097 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_09 = 4098 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_10 = 4099 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_11 = 4100 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_12 = 4101 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_13 = 4102 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_14 = 4103 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_HOUSE_15 = 4104 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_VILLAGER_01 = 4105 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_VILLAGER_02 = 4106 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_VILLAGER_03 = 4107 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_TO_VILLAGER_04 = 4108 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_01 = 4109 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_02 = 4110 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_03 = 4111 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_04 = 4112 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_05 = 4113 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_06 = 4114 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_07 = 4115 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_08 = 4116 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_09 = 4117 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_10 = 4118 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_LEASH_GOOD_AND_EVIL_11 = 4119 , + HELP_TEXT_CREATURE_DEVELOPMENT_STAGE_FULLY_MATURE_01 = 4120 , + HELP_TEXT_CREATURE_DEVELOPMENT_STAGE_FULLY_MATURE_02 = 4121 , + HELP_TEXT_CREATURE_DEVELOPMENT_CLICK_HOLD_01 = 4122 , + HELP_TEXT_CREATURE_DEVELOPMENT_CLICK_HOLD_02 = 4123 , + HELP_TEXT_NEWEST_GET_CREATURE_05 = 4124 , + HELP_TEXT_NEWEST_GET_CREATURE_06 = 4125 , + HELP_TEXT_NEWEST_GET_CREATURE_07 = 4126 , + HELP_TEXT_NEWEST_GET_CREATURE_08 = 4127 , + HELP_TEXT_NEWEST_GET_CREATURE_09 = 4128 , + HELP_TEXT_NEWEST_GET_CREATURE_10 = 4129 , + HELP_TEXT_NEWEST_GET_CREATURE_11 = 4130 , + HELP_TEXT_NEWEST_GET_CREATURE_12 = 4131 , + HELP_TEXT_NEWEST_GET_CREATURE_13 = 4132 , + HELP_TEXT_NEWEST_GET_CREATURE_14 = 4133 , + HELP_TEXT_NEWEST_GET_CREATURE_15 = 4134 , + HELP_TEXT_NEWEST_GET_CREATURE_16 = 4135 , + HELP_TEXT_NEWEST_GET_CREATURE_19 = 4136 , + HELP_TEXT_NEWEST_GET_CREATURE_21 = 4137 , + HELP_TEXT_NEWEST_GET_CREATURE_22 = 4138 , + HELP_TEXT_NEWEST_GET_CREATURE_23 = 4139 , + HELP_TEXT_NEWEST_GET_CREATURE_26 = 4140 , + HELP_TEXT_NEWEST_GET_CREATURE_28 = 4141 , + HELP_TEXT_NEWEST_GET_CREATURE_29 = 4142 , + HELP_TEXT_DYK_TITLE = 4143 , + HELP_TEXT_DYK_01 = 4144 , + HELP_TEXT_DYK_02 = 4145 , + HELP_TEXT_DYK_03 = 4146 , + HELP_TEXT_DYK_04 = 4147 , + HELP_TEXT_DYK_06 = 4148 , + HELP_TEXT_DYK_07 = 4149 , + HELP_TEXT_DYK_08 = 4150 , + HELP_TEXT_DYK_10 = 4151 , + HELP_TEXT_DYK_11 = 4152 , + HELP_TEXT_DYK_12 = 4153 , + HELP_TEXT_DYK_13 = 4154 , + HELP_TEXT_DYK_14 = 4155 , + HELP_TEXT_DYK_15 = 4156 , + HELP_TEXT_DYK_16 = 4157 , + HELP_TEXT_DYK_17 = 4158 , + HELP_TEXT_DYK_18 = 4159 , + HELP_TEXT_DYK_20 = 4160 , + HELP_TEXT_DYK_21 = 4161 , + HELP_TEXT_DYK_22 = 4162 , + HELP_TEXT_DYK_23 = 4163 , + HELP_TEXT_DYK_24 = 4164 , + HELP_TEXT_DYK_26 = 4165 , + HELP_TEXT_DYK_27 = 4166 , + HELP_TEXT_DYK_29 = 4167 , + HELP_TEXT_DYK_31 = 4168 , + HELP_TEXT_DYK_33 = 4169 , + HELP_TEXT_DYK_34 = 4170 , + HELP_TEXT_DYK_35 = 4171 , + HELP_TEXT_DYK_37 = 4172 , + HELP_TEXT_DYK_39 = 4173 , + HELP_TEXT_DYK_41 = 4174 , + HELP_TEXT_DYK_42 = 4175 , + HELP_TEXT_DYK_43 = 4176 , + HELP_TEXT_DYK_44 = 4177 , + HELP_TEXT_DYK_46 = 4178 , + HELP_TEXT_DYK_47 = 4179 , + HELP_TEXT_DYK_48 = 4180 , + HELP_TEXT_DYK_50 = 4181 , + HELP_TEXT_DYK_51 = 4182 , + HELP_TEXT_DYK_52 = 4183 , + HELP_TEXT_DYK_53 = 4184 , + HELP_TEXT_DYK_54 = 4185 , + HELP_TEXT_DYK_55 = 4186 , + HELP_TEXT_DYK_56 = 4187 , + HELP_TEXT_DYK_58 = 4188 , + HELP_TEXT_DYK_60 = 4189 , + HELP_TEXT_DYK_67 = 4190 , + HELP_TEXT_DYK_68 = 4191 , + HELP_TEXT_DYK_69 = 4192 , + HELP_TEXT_DYK_70 = 4193 , + HELP_TEXT_DYK_74 = 4194 , + HELP_TEXT_DYK_75 = 4195 , + HELP_TEXT_DYK_76 = 4196 , + HELP_TEXT_DYK_77 = 4197 , + HELP_TEXT_DYK_78 = 4198 , + HELP_TEXT_DYK_79 = 4199 , + HELP_TEXT_DYK_80 = 4200 , + HELP_TEXT_DYK_81 = 4201 , + HELP_TEXT_DYK_82 = 4202 , + HELP_TEXT_DYK_83 = 4203 , + HELP_TEXT_DYK_84 = 4204 , + HELP_TEXT_DYK_85 = 4205 , + HELP_TEXT_DYK_86 = 4206 , + HELP_TEXT_DYK_87 = 4207 , + HELP_TEXT_DYK_88 = 4208 , + HELP_TEXT_DYK_89 = 4209 , + HELP_TEXT_DYK_90 = 4210 , + HELP_TEXT_DYK_91 = 4211 , + HELP_TEXT_DYK_92 = 4212 , + HELP_TEXT_DYK_93 = 4213 , + HELP_TEXT_DYK_94 = 4214 , + HELP_TEXT_DYK_95 = 4215 , + HELP_TEXT_DYK_96 = 4216 , + HELP_TEXT_DYK_97 = 4217 , + HELP_TEXT_DYK_98 = 4218 , + HELP_TEXT_DYK_99 = 4219 , + HELP_TEXT_DYK_100 = 4220 , + HELP_TEXT_DYK_101 = 4221 , + HELP_TEXT_DYK_102 = 4222 , + HELP_TEXT_DYK_103 = 4223 , + HELP_TEXT_DYK_104 = 4224 , + HELP_TEXT_DYK_105 = 4225 , + HELP_TEXT_DYK_106 = 4226 , + HELP_TEXT_DYK_107 = 4227 , + HELP_TEXT_DYK_108 = 4228 , + HELP_TEXT_DYK_109 = 4229 , + HELP_TEXT_DYK_110 = 4230 , + HELP_TEXT_DYK_111 = 4231 , + HELP_TEXT_DYK_112 = 4232 , + HELP_TEXT_DYK_RULES_01 = 4233 , + HELP_TEXT_DYK_RULES_02 = 4234 , + HELP_TEXT_DYK_RULES_03 = 4235 , + HELP_TEXT_DYK_RULES_04 = 4236 , + HELP_TEXT_DYK_RULES_05 = 4237 , + HELP_TEXT_DYK_RULES_06 = 4238 , + HELP_TEXT_DYK_RULES_07 = 4239 , + HELP_TEXT_DYK_RULES_08 = 4240 , + HELP_TEXT_DYK_RULES_09 = 4241 , + HELP_TEXT_DYK_RULES_10 = 4242 , + HELP_TEXT_DYK_RULES_11 = 4243 , + HELP_TEXT_PUZZLE_MASTER_01 = 4244 , + HELP_TEXT_PUZZLE_MASTER_02 = 4245 , + HELP_TEXT_PUZZLE_MASTER_03 = 4246 , + HELP_TEXT_PUZZLE_MASTER_04 = 4247 , + HELP_TEXT_PUZZLE_MASTER_05 = 4248 , + HELP_TEXT_PUZZLE_MASTER_06 = 4249 , + HELP_TEXT_PUZZLE_MASTER_07 = 4250 , + HELP_TEXT_PUZZLE_MASTER_08 = 4251 , + HELP_TEXT_PUZZLE_MASTER_09 = 4252 , + HELP_TEXT_PUZZLE_MASTER_10 = 4253 , + HELP_TEXT_PUZZLE_MASTER_11 = 4254 , + HELP_TEXT_PUZZLE_MASTER_12 = 4255 , + HELP_TEXT_PUZZLE_MASTER_13 = 4256 , + HELP_TEXT_PUZZLE_MASTER_14 = 4257 , + HELP_TEXT_PUZZLE_MASTER_15 = 4258 , + HELP_TEXT_PUZZLE_MASTER_16 = 4259 , + HELP_TEXT_PLAYERTHANKS = 4260 , + HELP_TEXT_WIN_GAME_01 = 4261 , + HELP_TEXT_WIN_GAME_02 = 4262 , + HELP_TEXT_WIN_GAME_03 = 4263 , + HELP_TEXT_WIN_GAME_04 = 4264 , + HELP_TEXT_WIN_GAME_05 = 4265 , + HELP_TEXT_WIN_GAME_06 = 4266 , + HELP_TEXT_SPELL_SEED_TYPE_WOOD_01 = 4267 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_FREEZE = 4268 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_SMALL = 4269 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_BIG = 4270 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_WEAK = 4271 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_STRONG = 4272 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_INVISIBLE = 4273 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_COMPASSION = 4274 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_ANGRY = 4275 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_ITCHY = 4276 , + HELP_TEXT_SPELL_SEED_TYPE_TELEPORT = 4277 , + HELP_TEXT_SPELL_SEED_TYPE_BEAM_EXPLOSION = 4278 , + HELP_TEXT_NEW_REMINDER_04 = 4279 , + HELP_TEXT_NEW_REMINDER_05 = 4280 , + HELP_TEXT_NEW_REMINDER_06 = 4281 , + HELP_TEXT_NEW_REMINDER_07 = 4282 , + HELP_TEXT_NEW_REMINDER_08 = 4283 , + HELP_TEXT_NEW_REMINDER_09 = 4284 , + HELP_TEXT_NEW_REMINDER_13 = 4285 , + HELP_TEXT_NEW_REMINDER_14 = 4286 , + HELP_TEXT_NEW_REMINDER_15 = 4287 , + HELP_TEXT_NEW_REMINDER_22 = 4288 , + HELP_TEXT_NEW_REMINDER_37 = 4289 , + HELP_TEXT_NEW_REMINDER_38 = 4290 , + HELP_TEXT_NEW_REMINDER_39 = 4291 , + HELP_TEXT_NEW_REMINDER_52 = 4292 , + HELP_TEXT_NEW_REMINDER_53 = 4293 , + HELP_TEXT_NEW_REMINDER_61 = 4294 , + HELP_TEXT_NEW_REMINDER_73 = 4295 , + HELP_TEXT_NEW_REMINDER_94 = 4296 , + HELP_TEXT_NEW_REMINDER_104 = 4297 , + HELP_TEXT_NEW_REMINDER_106 = 4298 , + HELP_TEXT_NEW_REMINDER_107 = 4299 , + HELP_TEXT_NEW_REMINDER_108 = 4300 , + HELP_TEXT_NEW_REMINDER_109 = 4301 , + HELP_TEXT_NEW_REMINDER_137 = 4302 , + HELP_TEXT_ROTATION_YES_01 = 4303 , + HELP_TEXT_ROTATION_YES_02 = 4304 , + HELP_TEXT_ROTATION_YES_03 = 4305 , + HELP_TEXT_ROTATION_YES_04 = 4306 , + HELP_TEXT_ROTATION_YES_05 = 4307 , + HELP_TEXT_ROTATION_YES_06 = 4308 , + HELP_TEXT_ROTATION_YES_07 = 4309 , + HELP_TEXT_ROTATION_YES_08 = 4310 , + HELP_TEXT_ROTATION_YES_09 = 4311 , + HELP_TEXT_ROTATION_YES_10 = 4312 , + HELP_TEXT_ROTATION_YES_11 = 4313 , + HELP_TEXT_ROTATION_YES_12 = 4314 , + HELP_TEXT_ROTATION_YES_13 = 4315 , + HELP_TEXT_ROTATION_YES_14 = 4316 , + HELP_TEXT_ROTATION_YES_15 = 4317 , + HELP_TEXT_ROTATION_NO_01 = 4318 , + HELP_TEXT_ROTATION_NO_02 = 4319 , + HELP_TEXT_ROTATION_NO_03 = 4320 , + HELP_TEXT_ROTATION_NO_04 = 4321 , + HELP_TEXT_ROTATION_NO_05 = 4322 , + HELP_TEXT_ROTATION_NO_06 = 4323 , + HELP_TEXT_ROTATION_NO_07 = 4324 , + HELP_TEXT_ROTATION_NO_08 = 4325 , + HELP_TEXT_ROTATION_NO_09 = 4326 , + HELP_TEXT_ROTATION_NO_10 = 4327 , + HELP_TEXT_ROTATION_NO_11 = 4328 , + HELP_TEXT_ROTATION_NO_12 = 4329 , + HELP_TEXT_ROTATION_NO_13 = 4330 , + HELP_TEXT_ROTATION_NO_14 = 4331 , + HELP_TEXT_ROTATION_NO_15 = 4332 , + HELP_TEXT_ROTATION_BETTER_01 = 4333 , + HELP_TEXT_ROTATION_BETTER_02 = 4334 , + HELP_TEXT_ROTATION_BETTER_03 = 4335 , + HELP_TEXT_ROTATION_BETTER_04 = 4336 , + HELP_TEXT_ROTATION_BETTER_05 = 4337 , + HELP_TEXT_ROTATION_BETTER_06 = 4338 , + HELP_TEXT_ROTATION_BETTER_07 = 4339 , + HELP_TEXT_ROTATION_BETTER_08 = 4340 , + HELP_TEXT_ROTATION_BETTER_09 = 4341 , + HELP_TEXT_ROTATION_BETTER_10 = 4342 , + HELP_TEXT_ROTATION_BETTER_11 = 4343 , + HELP_TEXT_ROTATION_BETTER_12 = 4344 , + HELP_TEXT_ROTATION_BETTER_13 = 4345 , + HELP_TEXT_ROTATION_BETTER_14 = 4346 , + HELP_TEXT_ROTATION_BETTER_15 = 4347 , + HELP_TEXT_ROTATION_DONE_01 = 4348 , + HELP_TEXT_ROTATION_DONE_02 = 4349 , + HELP_TEXT_MULTIPLAYER_SETUP_CITADEL_TOWNS_01 = 4350 , + HELP_TEXT_MULTIPLAYER_SETUP_NEUTRAL_TOWNS_01 = 4351 , + HELP_TEXT_MULTIPLAYER_SETUP_GUARANTEED_PLAYERS_01 = 4352 , + HELP_TEXT_MULTIPLAYER_SETUP_CREATURE_ALLOWED_01 = 4353 , + HELP_TEXT_MULTIPLAYER_SETUP_ROCKS_ALLOWED_01 = 4354 , + HELP_TEXT_MULTIPLAYER_SETUP_TREES_ALLOWED_01 = 4355 , + HELP_TEXT_MULTIPLAYER_SETUP_FIELDS_ALLOWED_01 = 4356 , + HELP_TEXT_MULTIPLAYER_SETUP_FISH_ALLOWED_01 = 4357 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELLSELECTION_01 = 4358 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_01 = 4359 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_02 = 4360 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_03 = 4361 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_04 = 4362 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_05 = 4363 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_06 = 4364 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_07 = 4365 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_08 = 4366 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_09 = 4367 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_10 = 4368 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELL_11 = 4369 , + HELP_TEXT_MULTIPLAYER_SETUP_SPELLSELECTION_02 = 4370 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_01 = 4371 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_02 = 4372 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_03 = 4373 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_04 = 4374 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_05 = 4375 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_06 = 4376 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_07 = 4377 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_08 = 4378 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_09 = 4379 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_10 = 4380 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_11 = 4381 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_12 = 4382 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_13 = 4383 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_14 = 4384 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_15 = 4385 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_16 = 4386 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_17 = 4387 , + HELP_TEXT_NEW_CREATURE_RETRIEVE_18 = 4388 , + HELP_TEXT_NEW_TEMPLE_WELCOME_01 = 4389 , + HELP_TEXT_NEW_TEMPLE_WELCOME_02 = 4390 , + HELP_TEXT_NEW_TEMPLE_WELCOME_03 = 4391 , + HELP_TEXT_NEW_TEMPLE_WELCOME_04 = 4392 , + HELP_TEXT_NEW_TEMPLE_WELCOME_05 = 4393 , + HELP_TEXT_NEW_TEMPLE_WELCOME_06 = 4394 , + HELP_TEXT_NEW_TEMPLE_WELCOME_07 = 4395 , + HELP_TEXT_NEW_TEMPLE_WELCOME_08 = 4396 , + HELP_TEXT_NEW_TEMPLE_WELCOME_09 = 4397 , + HELP_TEXT_NEW_TEMPLE_WELCOME_10 = 4398 , + HELP_TEXT_NEW_TEMPLE_WELCOME_11 = 4399 , + HELP_TEXT_NEW_TEMPLE_WELCOME_12 = 4400 , + HELP_TEXT_NEW_TEMPLE_WELCOME_13 = 4401 , + HELP_TEXT_NEW_TEMPLE_WELCOME_14 = 4402 , + HELP_TEXT_NEW_TEMPLE_WELCOME_15 = 4403 , + HELP_TEXT_NEW_TEMPLE_WELCOME_16 = 4404 , + HELP_TEXT_NEW_TEMPLE_WELCOME_17 = 4405 , + HELP_TEXT_NEW_TEMPLE_WELCOME_18 = 4406 , + HELP_TEXT_NEW_TEMPLE_WELCOME_19 = 4407 , + HELP_TEXT_NEW_TEMPLE_WELCOME_20 = 4408 , + HELP_TEXT_NEW_TEMPLE_WELCOME_21 = 4409 , + HELP_TEXT_NEW_TEMPLE_WELCOME_22 = 4410 , + HELP_TEXT_NEW_TEMPLE_WELCOME_23 = 4411 , + HELP_TEXT_NEW_TEMPLE_WELCOME_24 = 4412 , + HELP_TEXT_NEW_TEMPLE_WELCOME_25 = 4413 , + HELP_TEXT_NEW_TEMPLE_WELCOME_26 = 4414 , + HELP_TEXT_NEW_TEMPLE_WELCOME_27 = 4415 , + HELP_TEXT_NEW_TEMPLE_WELCOME_28 = 4416 , + HELP_TEXT_NEW_TEMPLE_WELCOME_29 = 4417 , + HELP_TEXT_NEW_TEMPLE_WELCOME_30 = 4418 , + HELP_TEXT_NEW_TEMPLE_WELCOME_31 = 4419 , + HELP_TEXT_NEW_TEMPLE_WELCOME_32 = 4420 , + HELP_TEXT_NEW_TEMPLE_WELCOME_33 = 4421 , + HELP_TEXT_NEW_TEMPLE_WELCOME_34 = 4422 , + HELP_TEXT_NEW_TEMPLE_WELCOME_35 = 4423 , + HELP_TEXT_NEW_TEMPLE_WELCOME_36 = 4424 , + HELP_TEXT_NEW_TEMPLE_WELCOME_37 = 4425 , + HELP_TEXT_NEW_TEMPLE_WELCOME_38 = 4426 , + HELP_TEXT_NEW_TEMPLE_WELCOME_39 = 4427 , + HELP_TEXT_NEW_TEMPLE_WELCOME_40 = 4428 , + HELP_TEXT_NEW_TEMPLE_WELCOME_41 = 4429 , + HELP_TEXT_NEW_TEMPLE_WELCOME_42 = 4430 , + HELP_TEXT_NEW_TEMPLE_WELCOME_43 = 4431 , + HELP_TEXT_NEW_TEMPLE_WELCOME_44 = 4432 , + HELP_TEXT_NEW_TEMPLE_WELCOME_45 = 4433 , + HELP_TEXT_NEW_TEMPLE_WELCOME_46 = 4434 , + HELP_TEXT_NEW_TEMPLE_WELCOME_47 = 4435 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_01 = 4436 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_02 = 4437 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_03 = 4438 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_04 = 4439 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_05 = 4440 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_06 = 4441 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_07 = 4442 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_08 = 4443 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_09 = 4444 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_10 = 4445 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_11 = 4446 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_12 = 4447 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO2_01 = 4448 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO2_02 = 4449 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO2_03 = 4450 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO2_04 = 4451 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO2_05 = 4452 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO2_06 = 4453 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO2_07 = 4454 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO2_08 = 4455 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_13 = 4456 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_14 = 4457 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_15 = 4458 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_16 = 4459 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_17 = 4460 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_18 = 4461 , + HELP_TEXT_DEFINITELY_NEWEST_INTRO_19 = 4462 , + HELP_TEXT_MULTIPLAYER_SETUP_LEVEL_01 = 4463 , + HELP_TEXT_MULTIPLAYER_SETUP_LEVEL_02 = 4464 , + HELP_TEXT_MULTIPLAYER_SETUP_LEVEL_03 = 4465 , + HELP_TEXT_MULTIPLAYER_SETUP_LABEL_01 = 4466 , + HELP_TEXT_MULTIPLAYER_SETUP_LABEL_02 = 4467 , + HELP_TEXT_MULTIPLAYER_SETUP_LABEL_03 = 4468 , + HELP_TEXT_MULTIPLAYER_SETUP_LABEL_04 = 4469 , + HELP_TEXT_MULTIPLAYER_SETUP_LABEL_05 = 4470 , + HELP_TEXT_MULTIPLAYER_SETUP_LABEL_06 = 4471 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_01 = 4472 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_02 = 4473 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_03 = 4474 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_04 = 4475 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_05 = 4476 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_06 = 4477 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_07 = 4478 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_08 = 4479 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_09 = 4480 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_10 = 4481 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_11 = 4482 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_12 = 4483 , + HELP_TEXT_MULTIPLAYER_SETUP_HELP_13 = 4484 , + HELP_TEXT_LEAVE_THROUGH_VORTEX1_QUEST_REMINDER_01 = 4485 , + HELP_TEXT_SHAOLIN_QUEST_REMINDER_02 = 4486 , + HELP_TEXT_LEAVE_THROUGH_VORTEX3_QUEST_REMINDER_02 = 4487 , + HELP_TEXT_FIRST_METEORITE_QUEST_REMINDER_02 = 4488 , + HELP_TEXT_METEORITE_OGRE_QUEST_REMINDER_02 = 4489 , + HELP_TEXT_METEORITE_NOMAD_QUEST_REMINDER_02 = 4490 , + HELP_TEXT_RETAKE_AZTEC_VILLAGE_QUEST_REMINDER_02 = 4491 , + HELP_TEXT_NEW_LAND_2_ENTRY_01 = 4492 , + HELP_TEXT_NEW_LAND_2_ENTRY_02 = 4493 , + HELP_TEXT_NEW_LAND_2_ENTRY_03 = 4494 , + HELP_TEXT_NEW_LAND_2_ENTRY_04 = 4495 , + HELP_TEXT_NEW_LAND_2_ENTRY_05 = 4496 , + HELP_TEXT_NEW_LAND_2_ENTRY_06 = 4497 , + HELP_TEXT_NEW_LAND_2_ENTRY_07 = 4498 , + HELP_TEXT_NEW_LAND_2_ENTRY_08 = 4499 , + HELP_TEXT_NEW_LAND_2_ENTRY_09 = 4500 , + HELP_TEXT_NEW_LAND_2_ENTRY_10 = 4501 , + HELP_TEXT_NEW_LAND_2_ENTRY_11 = 4502 , + HELP_TEXT_NEW_LAND_2_ENTRY_12 = 4503 , + HELP_TEXT_NEW_LAND_2_ENTRY_13 = 4504 , + HELP_TEXT_NEW_LAND_2_ENTRY_14 = 4505 , + HELP_TEXT_NEW_LAND_2_ENTRY_16 = 4506 , + HELP_TEXT_NEW_LAND_2_ENTRY_17 = 4507 , + HELP_TEXT_NEW_LAND_2_ENTRY_19 = 4508 , + HELP_TEXT_NEW_LAND_2_ENTRY_20 = 4509 , + HELP_TEXT_NEW_LAND_2_ENTRY_21 = 4510 , + HELP_TEXT_NEW_LAND_2_ENTRY_22 = 4511 , + HELP_TEXT_NEW_LAND_2_ENTRY_23 = 4512 , + HELP_TEXT_NEW_LAND_2_ENTRY_24 = 4513 , + HELP_TEXT_NEW_LAND_2_ENTRY_28 = 4514 , + HELP_TEXT_NEW_LAND_2_ENTRY_29 = 4515 , + HELP_TEXT_NEW_LAND_2_ENTRY_30 = 4516 , + HELP_TEXT_NEW_LAND_2_ENTRY_31 = 4517 , + HELP_TEXT_NEW_LAND_2_ENTRY_32 = 4518 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_01 = 4519 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_02 = 4520 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_03 = 4521 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_04 = 4522 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_05 = 4523 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_06 = 4524 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_07 = 4525 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_08 = 4526 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_09 = 4527 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_10 = 4528 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_11 = 4529 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_12 = 4530 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_13 = 4531 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_14 = 4532 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_15 = 4533 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_16 = 4534 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_17 = 4535 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_18 = 4536 , + HELP_TEXT_NEW_LAND_2_LEARN_MIRACLES_19 = 4537 , + HELP_TEXT_NEW_LAND_2_NEXTKHAZAR_13 = 4538 , + HELP_TEXT_NEW_LAND_2_LETHYS_REACTION_01 = 4539 , + HELP_TEXT_NEW_LAND_2_LETHYS_REACTION_02 = 4540 , + HELP_TEXT_NEW_LAND_2_LETHYS_REACTION_03 = 4541 , + HELP_TEXT_NEW_LAND_2_LETHYS_REACTION_04 = 4542 , + HELP_TEXT_NEW_LAND_2_LETHYS_REACTION_05 = 4543 , + HELP_TEXT_NEW_LAND_2_LETHYS_REACTION_06 = 4544 , + HELP_TEXT_NEW_LAND_2_KHAZAR_REACTION_01 = 4545 , + HELP_TEXT_NEW_LAND_2_KHAZAR_REACTION_02 = 4546 , + HELP_TEXT_NEW_LAND_2_KHAZAR_REACTION_03 = 4547 , + HELP_TEXT_NEW_LAND_2_KHAZAR_REACTION_04 = 4548 , + HELP_TEXT_NEW_LAND_2_KHAZAR_REACTION_05 = 4549 , + HELP_TEXT_NEW_LAND_2_KHAZAR_REACTION_06 = 4550 , + HELP_TEXT_NEW_LAND_2_NOTIFIER_01 = 4551 , + HELP_TEXT_NEW_LAND_2_NOTIFIER_02 = 4552 , + HELP_TEXT_NEW_LAND_2_NOTIFIER_03 = 4553 , + HELP_TEXT_NEW_LAND_2_NOTIFIER_04 = 4554 , + HELP_TEXT_NEW_LAND_2_NOTIFIER_05 = 4555 , + HELP_TEXT_NEW_LAND_2_FIREBALL_01 = 4556 , + HELP_TEXT_NEW_LAND_2_FIREBALL_02 = 4557 , + HELP_TEXT_NEW_LAND_2_FIREBALL_03 = 4558 , + HELP_TEXT_NEW_LAND_2_FIREBALL_04 = 4559 , + HELP_TEXT_NEW_LAND_2_FIREBALL_05 = 4560 , + HELP_TEXT_NEW_LAND_2_FIREBALL_06 = 4561 , + HELP_TEXT_NEW_LAND_2_FIREBALL_07 = 4562 , + HELP_TEXT_NEW_LAND_2_FIREBALL_08 = 4563 , + HELP_TEXT_NEW_LAND_2_FIREBALL_09 = 4564 , + HELP_TEXT_NEW_LAND_2_FIREBALL_10 = 4565 , + HELP_TEXT_NEW_LAND_2_FIREBALL_11 = 4566 , + HELP_TEXT_NEW_LAND_2_FIREBALL_12 = 4567 , + HELP_TEXT_NEW_LAND_2_FIREBALL_13 = 4568 , + HELP_TEXT_NEW_LAND_2_FIREBALL_14 = 4569 , + HELP_TEXT_NEW_LAND_2_FIREBALL_15 = 4570 , + HELP_TEXT_NEW_LAND_2_FIREBALL_16 = 4571 , + HELP_TEXT_NEW_LAND_2_FIREBALL_17 = 4572 , + HELP_TEXT_NEW_LAND_2_FIREBALL_18 = 4573 , + HELP_TEXT_NEW_LAND_2_SHIELD_01 = 4574 , + HELP_TEXT_NEW_LAND_2_SHIELD_02 = 4575 , + HELP_TEXT_NEW_LAND_2_SHIELD_03 = 4576 , + HELP_TEXT_NEW_LAND_2_SHIELD_04 = 4577 , + HELP_TEXT_NEW_LAND_2_SHIELD_05 = 4578 , + HELP_TEXT_NEW_LAND_2_SHIELD_06 = 4579 , + HELP_TEXT_NEW_LAND_2_SHIELD_07 = 4580 , + HELP_TEXT_NEW_LAND_2_SHIELD_08 = 4581 , + HELP_TEXT_NEW_LAND_2_SHIELD_09 = 4582 , + HELP_TEXT_NEW_LAND_2_SHIELD_10 = 4583 , + HELP_TEXT_NEW_LAND_2_SHIELD_11 = 4584 , + HELP_TEXT_NEW_LAND_2_SHIELD_12 = 4585 , + HELP_TEXT_NEW_LAND_2_SHIELD_13 = 4586 , + HELP_TEXT_NEW_LAND_2_SHIELD_14 = 4587 , + HELP_TEXT_NEW_LAND_2_SHIELD_15 = 4588 , + HELP_TEXT_NEW_LAND_2_SHIELD_16 = 4589 , + HELP_TEXT_NEW_LAND_2_SHIELD_17 = 4590 , + HELP_TEXT_NEW_LAND_2_SHIELD_18 = 4591 , + HELP_TEXT_NEW_LAND_2_SHIELD_19 = 4592 , + HELP_TEXT_NEW_LAND_2_SHIELD_20 = 4593 , + HELP_TEXT_NEW_LAND_2_SHIELD_21 = 4594 , + HELP_TEXT_NEW_LAND_2_SHIELD_22 = 4595 , + HELP_TEXT_NEW_LAND_2_SHIELD_23 = 4596 , + HELP_TEXT_NEW_LAND_2_SHIELD_24 = 4597 , + HELP_TEXT_NEW_LAND_2_SHIELD_25 = 4598 , + HELP_TEXT_NEW_LAND_2_SHIELD_26 = 4599 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_01 = 4600 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_02 = 4601 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_03 = 4602 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_04 = 4603 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_05 = 4604 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_06 = 4605 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_07 = 4606 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_08 = 4607 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_09 = 4608 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_10 = 4609 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_REMINDER_11 = 4610 , + HELP_TEXT_SPOOKY_NAMES_01 = 4611 , + HELP_TEXT_SPOOKY_NAMES_02 = 4612 , + HELP_TEXT_SPOOKY_NAMES_03 = 4613 , + HELP_TEXT_SPOOKY_NAMES_04 = 4614 , + HELP_TEXT_SPOOKY_NAMES_05 = 4615 , + HELP_TEXT_SPOOKY_NAMES_06 = 4616 , + HELP_TEXT_SPOOKY_NAMES_07 = 4617 , + HELP_TEXT_SPOOKY_NAMES_08 = 4618 , + HELP_TEXT_SPOOKY_NAMES_09 = 4619 , + HELP_TEXT_SPOOKY_NAMES_10 = 4620 , + HELP_TEXT_SPOOKY_NAMES_11 = 4621 , + HELP_TEXT_SPOOKY_NAMES_12 = 4622 , + HELP_TEXT_SPOOKY_NAMES_13 = 4623 , + HELP_TEXT_SPOOKY_NAMES_14 = 4624 , + HELP_TEXT_SPOOKY_NAMES_15 = 4625 , + HELP_TEXT_SPOOKY_NAMES_16 = 4626 , + HELP_TEXT_SPOOKY_NAMES_17 = 4627 , + HELP_TEXT_SPOOKY_NAMES_18 = 4628 , + HELP_TEXT_SPOOKY_NAMES_19 = 4629 , + HELP_TEXT_SPOOKY_NAMES_20 = 4630 , + HELP_TEXT_SPOOKY_NAMES_21 = 4631 , + HELP_TEXT_SPOOKY_NAMES_22 = 4632 , + HELP_TEXT_SPOOKY_NAMES_23 = 4633 , + HELP_TEXT_SPOOKY_NAMES_24 = 4634 , + HELP_TEXT_SPOOKY_NAMES_25 = 4635 , + HELP_TEXT_SPOOKY_NAMES_26 = 4636 , + HELP_TEXT_SPOOKY_NAMES_27 = 4637 , + HELP_TEXT_SPOOKY_NAMES_28 = 4638 , + HELP_TEXT_SPOOKY_NAMES_29 = 4639 , + HELP_TEXT_SPOOKY_NAMES_30 = 4640 , + HELP_TEXT_SPOOKY_NAMES_31 = 4641 , + HELP_TEXT_SPOOKY_NAMES_32 = 4642 , + HELP_TEXT_SPOOKY_NAMES_33 = 4643 , + HELP_TEXT_SPOOKY_NAMES_34 = 4644 , + HELP_TEXT_SPOOKY_NAMES_35 = 4645 , + HELP_TEXT_SPOOKY_NAMES_36 = 4646 , + HELP_TEXT_SPOOKY_NAMES_37 = 4647 , + HELP_TEXT_SPOOKY_NAMES_38 = 4648 , + HELP_TEXT_SPOOKY_NAMES_39 = 4649 , + HELP_TEXT_SPOOKY_NAMES_40 = 4650 , + HELP_TEXT_SPOOKY_NAMES_41 = 4651 , + HELP_TEXT_SPOOKY_NAMES_42 = 4652 , + HELP_TEXT_SPOOKY_NAMES_43 = 4653 , + HELP_TEXT_SPOOKY_NAMES_44 = 4654 , + HELP_TEXT_SPOOKY_NAMES_45 = 4655 , + HELP_TEXT_SPOOKY_NAMES_46 = 4656 , + HELP_TEXT_SPOOKY_NAMES_47 = 4657 , + HELP_TEXT_SPOOKY_NAMES_48 = 4658 , + HELP_TEXT_SPOOKY_NAMES_49 = 4659 , + HELP_TEXT_SPOOKY_NAMES_50 = 4660 , + HELP_TEXT_SPOOKY_NAMES_51 = 4661 , + HELP_TEXT_SPOOKY_NAMES_52 = 4662 , + HELP_TEXT_SPOOKY_NAMES_53 = 4663 , + HELP_TEXT_SPOOKY_NAMES_54 = 4664 , + HELP_TEXT_SPOOKY_NAMES_55 = 4665 , + HELP_TEXT_SPOOKY_NAMES_56 = 4666 , + HELP_TEXT_SPOOKY_NAMES_57 = 4667 , + HELP_TEXT_SPOOKY_NAMES_58 = 4668 , + HELP_TEXT_SPOOKY_NAMES_59 = 4669 , + HELP_TEXT_SPOOKY_NAMES_60 = 4670 , + HELP_TEXT_SPOOKY_NAMES_61 = 4671 , + HELP_TEXT_SPOOKY_NAMES_62 = 4672 , + HELP_TEXT_SPOOKY_NAMES_63 = 4673 , + HELP_TEXT_SPOOKY_NAMES_64 = 4674 , + HELP_TEXT_SPOOKY_NAMES_65 = 4675 , + HELP_TEXT_SPOOKY_NAMES_66 = 4676 , + HELP_TEXT_SPOOKY_NAMES_67 = 4677 , + HELP_TEXT_SPOOKY_NAMES_68 = 4678 , + HELP_TEXT_SPOOKY_NAMES_69 = 4679 , + HELP_TEXT_SPOOKY_NAMES_70 = 4680 , + HELP_TEXT_SPOOKY_NAMES_71 = 4681 , + HELP_TEXT_SPOOKY_NAMES_72 = 4682 , + HELP_TEXT_SPOOKY_NAMES_73 = 4683 , + HELP_TEXT_SPOOKY_NAMES_74 = 4684 , + HELP_TEXT_SPOOKY_NAMES_75 = 4685 , + HELP_TEXT_SPOOKY_NAMES_76 = 4686 , + HELP_TEXT_SPOOKY_NAMES_77 = 4687 , + HELP_TEXT_SPOOKY_NAMES_78 = 4688 , + HELP_TEXT_SPOOKY_NAMES_79 = 4689 , + HELP_TEXT_SPOOKY_NAMES_80 = 4690 , + HELP_TEXT_SPOOKY_NAMES_81 = 4691 , + HELP_TEXT_SPOOKY_NAMES_82 = 4692 , + HELP_TEXT_SPOOKY_NAMES_83 = 4693 , + HELP_TEXT_SPOOKY_NAMES_84 = 4694 , + HELP_TEXT_SPOOKY_NAMES_85 = 4695 , + HELP_TEXT_SPOOKY_NAMES_86 = 4696 , + HELP_TEXT_SPOOKY_NAMES_87 = 4697 , + HELP_TEXT_SPOOKY_NAMES_88 = 4698 , + HELP_TEXT_SPOOKY_NAMES_89 = 4699 , + HELP_TEXT_SPOOKY_NAMES_90 = 4700 , + HELP_TEXT_SPOOKY_NAMES_91 = 4701 , + HELP_TEXT_SPOOKY_NAMES_92 = 4702 , + HELP_TEXT_SPOOKY_NAMES_93 = 4703 , + HELP_TEXT_SPOOKY_NAMES_94 = 4704 , + HELP_TEXT_SPOOKY_NAMES_95 = 4705 , + HELP_TEXT_SPOOKY_NAMES_96 = 4706 , + HELP_TEXT_SPOOKY_NAMES_97 = 4707 , + HELP_TEXT_SPOOKY_NAMES_98 = 4708 , + HELP_TEXT_SPOOKY_NAMES_99 = 4709 , + HELP_TEXT_SPOOKY_NAMES_100 = 4710 , + HELP_TEXT_FISHING_PUZZLE_01 = 4711 , + HELP_TEXT_FISHING_PUZZLE_02 = 4712 , + HELP_TEXT_FISHING_PUZZLE_03 = 4713 , + HELP_TEXT_FISHING_PUZZLE_04 = 4714 , + HELP_TEXT_FISHING_PUZZLE_05 = 4715 , + HELP_TEXT_FISHING_PUZZLE_06 = 4716 , + HELP_TEXT_FISHING_PUZZLE_07 = 4717 , + HELP_TEXT_FISHING_PUZZLE_08 = 4718 , + HELP_TEXT_FISHING_PUZZLE_09 = 4719 , + HELP_TEXT_FISHING_PUZZLE_10 = 4720 , + HELP_TEXT_FISHING_PUZZLE_11 = 4721 , + HELP_TEXT_FISHING_PUZZLE_12 = 4722 , + HELP_TEXT_FISHING_PUZZLE_13 = 4723 , + HELP_TEXT_FISHING_PUZZLE_14 = 4724 , + HELP_TEXT_GUIDE_DIES_01 = 4725 , + HELP_TEXT_GUIDE_DIES_02 = 4726 , + HELP_TEXT_GUIDE_DIES_03 = 4727 , + HELP_TEXT_GUIDE_DIES_04 = 4728 , + HELP_TEXT_GUIDE_DIES_05 = 4729 , + HELP_TEXT_GUIDE_DIES_06 = 4730 , + HELP_TEXT_GUIDE_DIES_07 = 4731 , + HELP_TEXT_GUIDE_DIES_08 = 4732 , + HELP_TEXT_GUIDE_DIES_09 = 4733 , + HELP_TEXT_GUIDE_DIES_10 = 4734 , + HELP_TEXT_GUIDE_DIES_11 = 4735 , + HELP_TEXT_GUIDE_DIES_12 = 4736 , + HELP_TEXT_GUIDE_DIES_13 = 4737 , + HELP_TEXT_GUIDE_DIES_14 = 4738 , + HELP_TEXT_GUIDE_DIES_15 = 4739 , + HELP_TEXT_GUIDE_DIES_16 = 4740 , + HELP_TEXT_GUIDE_DIES_17 = 4741 , + HELP_TEXT_GUIDE_DIES_18 = 4742 , + HELP_TEXT_GUIDE_DIES_19 = 4743 , + HELP_TEXT_GUIDE_DIES_20 = 4744 , + HELP_TEXT_GUIDE_DIES_21 = 4745 , + HELP_TEXT_GUIDE_DIES_22 = 4746 , + HELP_TEXT_GUIDE_DIES_23 = 4747 , + HELP_TEXT_GUIDE_DIES_24 = 4748 , + HELP_TEXT_GUIDE_DIES_25 = 4749 , + HELP_TEXT_GUIDE_DIES_26 = 4750 , + HELP_TEXT_GUIDE_DIES_27 = 4751 , + HELP_TEXT_GUIDE_DIES_28 = 4752 , + HELP_TEXT_GUIDE_DIES_29 = 4753 , + HELP_TEXT_GUIDE_DIES_30 = 4754 , + HELP_TEXT_TRAINER_HAS_NO_CREATURES_01 = 4755 , + HELP_TEXT_GAME_PAUSED = 4756 , + HELP_TEXT_GAME_SLOWMO = 4757 , + HELP_TEXT_GAME_FASTMO = 4758 , + HELP_TEXT_KIDNAPPED_WOMEN_01 = 4759 , + HELP_TEXT_KIDNAPPED_WOMEN_02 = 4760 , + HELP_TEXT_KIDNAPPED_WOMEN_03 = 4761 , + HELP_TEXT_KIDNAPPED_WOMEN_04 = 4762 , + HELP_TEXT_INGAME_CREDITS_01 = 4763 , + HELP_TEXT_INGAME_CREDITS_02 = 4764 , + HELP_TEXT_INGAME_CREDITS_03 = 4765 , + HELP_TEXT_INGAME_CREDITS_04 = 4766 , + HELP_TEXT_INGAME_CREDITS_05 = 4767 , + HELP_TEXT_INGAME_CREDITS_06 = 4768 , + HELP_TEXT_INGAME_CREDITS_07 = 4769 , + HELP_TEXT_INGAME_CREDITS_08 = 4770 , + HELP_TEXT_INGAME_CREDITS_09 = 4771 , + HELP_TEXT_INGAME_CREDITS_10 = 4772 , + HELP_TEXT_INGAME_CREDITS_11 = 4773 , + HELP_TEXT_INGAME_CREDITS_12 = 4774 , + HELP_TEXT_INGAME_CREDITS_13 = 4775 , + HELP_TEXT_INGAME_CREDITS_14 = 4776 , + HELP_TEXT_INGAME_CREDITS_15 = 4777 , + HELP_TEXT_INGAME_CREDITS_16 = 4778 , + HELP_TEXT_INGAME_CREDITS_17 = 4779 , + HELP_TEXT_INGAME_CREDITS_18 = 4780 , + HELP_TEXT_INGAME_CREDITS_19 = 4781 , + HELP_TEXT_INGAME_CREDITS_20 = 4782 , + HELP_TEXT_INGAME_CREDITS_21 = 4783 , + HELP_TEXT_INGAME_CREDITS_22 = 4784 , + HELP_TEXT_INGAME_CREDITS_23 = 4785 , + HELP_TEXT_INGAME_CREDITS_24 = 4786 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_01 = 4787 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_02 = 4788 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_03 = 4789 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_04 = 4790 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_05 = 4791 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_06 = 4792 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_07 = 4793 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_08 = 4794 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_09 = 4795 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_10 = 4796 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_11 = 4797 , + HELP_TEXT_MISSIONARY_SONG_VERSE1_12 = 4798 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_01 = 4799 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_02 = 4800 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_03 = 4801 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_04 = 4802 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_05 = 4803 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_06 = 4804 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_07 = 4805 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_08 = 4806 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_09 = 4807 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_10 = 4808 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_11 = 4809 , + HELP_TEXT_MISSIONARY_SONG_VERSE2_12 = 4810 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_01 = 4811 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_02 = 4812 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_03 = 4813 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_04 = 4814 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_05 = 4815 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_06 = 4816 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_07 = 4817 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_08 = 4818 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_09 = 4819 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_10 = 4820 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_11 = 4821 , + HELP_TEXT_MISSIONARY_SONG_VERSE3_12 = 4822 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_01 = 4823 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_02 = 4824 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_03 = 4825 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_04 = 4826 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_05 = 4827 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_06 = 4828 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_07 = 4829 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_08 = 4830 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_09 = 4831 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_10 = 4832 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_11 = 4833 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_12 = 4834 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_13 = 4835 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_14 = 4836 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_15 = 4837 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_16 = 4838 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_17 = 4839 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_18 = 4840 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_19 = 4841 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_20 = 4842 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_21 = 4843 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_22 = 4844 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_23 = 4845 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_24 = 4846 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_25 = 4847 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_26 = 4848 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_27 = 4849 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_28 = 4850 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_29 = 4851 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_30 = 4852 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_31 = 4853 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_32 = 4854 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_33 = 4855 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_34 = 4856 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_35 = 4857 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_36 = 4858 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_37 = 4859 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_38 = 4860 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_39 = 4861 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_40 = 4862 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_41 = 4863 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_42 = 4864 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_43 = 4865 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_44 = 4866 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_45 = 4867 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_46 = 4868 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_47 = 4869 , + HELP_TEXT_DIALOG_MULTIPLAYER_MAP_48 = 4870 , + HELP_TEXT_NONAME_SAVED_GAME_01 = 4871 , + HELP_TEXT_MAGIC_MUSHROOM_01 = 4872 , + HELP_TEXT_MAGIC_MUSHROOM_02 = 4873 , + HELP_TEXT_MAGIC_MUSHROOM_03 = 4874 , + HELP_TEXT_MAGIC_MUSHROOM_04 = 4875 , + HELP_TEXT_MAGIC_MUSHROOM_05 = 4876 , + HELP_TEXT_MAGIC_MUSHROOM_06 = 4877 , + HELP_TEXT_MAGIC_MUSHROOM_07 = 4878 , + HELP_TEXT_MAGIC_MUSHROOM_08 = 4879 , + HELP_TEXT_DIALOG_NEW_LAND4_START_01 = 4880 , + HELP_TEXT_DIALOG_NEW_LAND4_START_02 = 4881 , + HELP_TEXT_DIALOG_NEW_LAND4_START_03 = 4882 , + HELP_TEXT_DIALOG_NEW_LAND4_START_04 = 4883 , + HELP_TEXT_GOOD_LIVE_HERE_01 = 4884 , + HELP_TEXT_GOOD_LIVE_HERE_02 = 4885 , + HELP_TEXT_EVIL_LIVE_HERE_01 = 4886 , + HELP_TEXT_EVIL_LIVE_HERE_02 = 4887 , + HELP_TEXT_DISCIPLE_GOOD_01 = 4888 , + HELP_TEXT_DISCIPLE_GOOD_02 = 4889 , + HELP_TEXT_DISCIPLE_GOOD_03 = 4890 , + HELP_TEXT_DISCIPLE_GOOD_04 = 4891 , + HELP_TEXT_DISCIPLE_GOOD_05 = 4892 , + HELP_TEXT_DISCIPLE_GOOD_06 = 4893 , + HELP_TEXT_DISCIPLE_GOOD_07 = 4894 , + HELP_TEXT_DISCIPLE_GOOD_08 = 4895 , + HELP_TEXT_DISCIPLE_GOOD_09 = 4896 , + HELP_TEXT_DISCIPLE_NEUTRAL_01 = 4897 , + HELP_TEXT_DISCIPLE_NEUTRAL_02 = 4898 , + HELP_TEXT_DISCIPLE_NEUTRAL_03 = 4899 , + HELP_TEXT_DISCIPLE_NEUTRAL_04 = 4900 , + HELP_TEXT_DISCIPLE_NEUTRAL_05 = 4901 , + HELP_TEXT_DISCIPLE_NEUTRAL_06 = 4902 , + HELP_TEXT_DISCIPLE_NEUTRAL_07 = 4903 , + HELP_TEXT_DISCIPLE_NEUTRAL_08 = 4904 , + HELP_TEXT_DISCIPLE_NEUTRAL_09 = 4905 , + HELP_TEXT_DISCIPLE_EVIL_01 = 4906 , + HELP_TEXT_DISCIPLE_EVIL_02 = 4907 , + HELP_TEXT_DISCIPLE_EVIL_03 = 4908 , + HELP_TEXT_DISCIPLE_EVIL_04 = 4909 , + HELP_TEXT_DISCIPLE_EVIL_05 = 4910 , + HELP_TEXT_DISCIPLE_EVIL_06 = 4911 , + HELP_TEXT_DISCIPLE_EVIL_07 = 4912 , + HELP_TEXT_DISCIPLE_EVIL_08 = 4913 , + HELP_TEXT_DISCIPLE_EVIL_09 = 4914 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_01 = 4915 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_02 = 4916 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_03 = 4917 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_04 = 4918 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_05 = 4919 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_06 = 4920 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_07 = 4921 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_08 = 4922 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_09 = 4923 , + HELP_TEXT_VILLAGER_VOICE_ATTACK_10 = 4924 , + HELP_TEXT_VILLAGER_VOICE_FIRE_01 = 4925 , + HELP_TEXT_VILLAGER_VOICE_FIRE_02 = 4926 , + HELP_TEXT_VILLAGER_VOICE_FIRE_03 = 4927 , + HELP_TEXT_VILLAGER_VOICE_FIRE_04 = 4928 , + HELP_TEXT_VILLAGER_VOICE_FIRE_05 = 4929 , + HELP_TEXT_VILLAGER_VOICE_FIRE_06 = 4930 , + HELP_TEXT_VILLAGER_VOICE_FIRE_07 = 4931 , + HELP_TEXT_VILLAGER_VOICE_FIRE_08 = 4932 , + HELP_TEXT_VILLAGER_VOICE_FIRE_09 = 4933 , + HELP_TEXT_VILLAGER_VOICE_FIRE_10 = 4934 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_01 = 4935 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_02 = 4936 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_03 = 4937 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_04 = 4938 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_05 = 4939 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_06 = 4940 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_07 = 4941 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_08 = 4942 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_09 = 4943 , + HELP_TEXT_VILLAGER_VOICE_LIGHTNING_10 = 4944 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_01 = 4945 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_02 = 4946 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_03 = 4947 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_04 = 4948 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_05 = 4949 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_06 = 4950 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_07 = 4951 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_08 = 4952 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_09 = 4953 , + HELP_TEXT_VILLAGER_VOICE_MONSTER_10 = 4954 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_01 = 4955 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_02 = 4956 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_03 = 4957 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_04 = 4958 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_05 = 4959 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_06 = 4960 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_07 = 4961 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_08 = 4962 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_09 = 4963 , + HELP_TEXT_VILLAGER_VOICE_ROCKS_10 = 4964 , + HELP_TEXT_VILLAGER_VOICE_GOOD_AWE_01 = 4965 , + HELP_TEXT_VILLAGER_VOICE_GOOD_AWE_02 = 4966 , + HELP_TEXT_VILLAGER_VOICE_GOOD_AWE_03 = 4967 , + HELP_TEXT_VILLAGER_VOICE_EVIL_AWE_01 = 4968 , + HELP_TEXT_VILLAGER_VOICE_EVIL_AWE_02 = 4969 , + HELP_TEXT_VILLAGER_VOICE_EVIL_AWE_03 = 4970 , + HELP_TEXT_VILLAGER_VOICE_PLEASED_FOOD_01 = 4971 , + HELP_TEXT_VILLAGER_VOICE_PLEASED_FOOD_02 = 4972 , + HELP_TEXT_VILLAGER_VOICE_PLEASED_FOOD_03 = 4973 , + HELP_TEXT_VILLAGER_VOICE_PLEASED_WOOD_01 = 4974 , + HELP_TEXT_VILLAGER_VOICE_PLEASED_WOOD_02 = 4975 , + HELP_TEXT_VILLAGER_VOICE_PLEASED_WOOD_03 = 4976 , + HELP_TEXT_VILLAGER_VOICE_PLEASED_RAIN_01 = 4977 , + HELP_TEXT_VILLAGER_VOICE_PLEASED_RAIN_02 = 4978 , + HELP_TEXT_VILLAGER_VOICE_PLEASED_RAIN_03 = 4979 , + HELP_TEXT_VILLAGER_VOICE_DISPLEASED_FOOD_01 = 4980 , + HELP_TEXT_VILLAGER_VOICE_DISPLEASED_FOOD_02 = 4981 , + HELP_TEXT_VILLAGER_VOICE_DISPLEASED_FOOD_03 = 4982 , + HELP_TEXT_VILLAGER_VOICE_DISPLEASED_WOOD_01 = 4983 , + HELP_TEXT_VILLAGER_VOICE_DISPLEASED_WOOD_02 = 4984 , + HELP_TEXT_VILLAGER_VOICE_DISPLEASED_WOOD_03 = 4985 , + HELP_TEXT_VILLAGER_VOICE_DISPLEASED_RAIN_01 = 4986 , + HELP_TEXT_VILLAGER_VOICE_DISPLEASED_RAIN_02 = 4987 , + HELP_TEXT_VILLAGER_VOICE_DISPLEASED_RAIN_03 = 4988 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_WOOD_01 = 4989 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_WOOD_02 = 4990 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_WOOD_03 = 4991 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_FOOD_01 = 4992 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_FOOD_02 = 4993 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_FOOD_03 = 4994 , + HELP_TEXT_VILLAGER_CHANTER_VOICE_DESIRE_FOOD_01 = 4995 , + HELP_TEXT_VILLAGER_CHANTER_VOICE_DESIRE_FOOD_02 = 4996 , + HELP_TEXT_VILLAGER_CHANTER_VOICE_DESIRE_FOOD_03 = 4997 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_BUILD_03 = 4998 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_OFFSPRING_01 = 4999 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_OFFSPRING_02 = 5000 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_OFFSPRING_03 = 5001 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_MERCY_01 = 5002 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_MERCY_02 = 5003 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_MERCY_03 = 5004 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_EXPAND_01 = 5005 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_EXPAND_02 = 5006 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_EXPAND_03 = 5007 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_PROTECTION_01 = 5008 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_PROTECTION_02 = 5009 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_PROTECTION_03 = 5010 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_REBUILD_01 = 5011 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_REBUILD_02 = 5012 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_REBUILD_03 = 5013 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_REST_01 = 5014 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_REST_02 = 5015 , + HELP_TEXT_VILLAGER_VOICE_DESIRE_REST_03 = 5016 , + HELP_TEXT_GUIDANCE_SAMPLE_NEEDWORSHIPPERS_FOOD_01 = 5017 , + HELP_TEXT_GUIDANCE_SAMPLE_NEEDWORSHIPPERS_FOOD_02 = 5018 , + HELP_TEXT_GUIDANCE_SAMPLE_NEEDWORSHIPPERS_FOOD_03 = 5019 , + HELP_TEXT_GUIDANCE_SAMPLE_NEEDWORSHIPPERS_FOOD_04 = 5020 , + HELP_TEXT_GUIDANCE_SAMPLE_NEEDWORSHIPPERS_01 = 5021 , + HELP_TEXT_GUIDANCE_SAMPLE_NEEDWORSHIPPERS_02 = 5022 , + HELP_TEXT_GUIDANCE_SAMPLE_NEEDWORSHIPPERS_03 = 5023 , + HELP_TEXT_GUIDANCE_SAMPLE_NEEDWORSHIPPERS_04 = 5024 , + HELP_TEXT_NEMESIS_CREATURE_NAME_01 = 5025 , + HELP_TEXT_LETHYS_CREATURE_NAME_01 = 5026 , + HELP_TEXT_KHAZAR_CREATURE_NAME_01 = 5027 , + HELP_TEXT_GUIDE_CREATURE_NAME_01 = 5028 , + HELP_TEXT_OGRE_NAME_01 = 5029 , + HELP_TEXT_OGRE_NAME_02 = 5030 , + HELP_TEXT_OGRE_NAME_03 = 5031 , + HELP_TEXT_MIRROR_NAME_01 = 5032 , + HELP_TEXT_CHIMP_NAME_01 = 5033 , + HELP_TEXT_CHIMP_NAME_02 = 5034 , + HELP_TEXT_CHIMP_NAME_03 = 5035 , + HELP_TEXT_CHIMP_NAME_04 = 5036 , + HELP_TEXT_L3_INTRO_01 = 5037 , + HELP_TEXT_L3_INTRO_02 = 5038 , + HELP_TEXT_L3_INTRO_03 = 5039 , + HELP_TEXT_L3_INTRO_04 = 5040 , + HELP_TEXT_L3_INTRO_05 = 5041 , + HELP_TEXT_L3_INTRO_06 = 5042 , + HELP_TEXT_L3_INTRO_07 = 5043 , + HELP_TEXT_L3_INTRO_08 = 5044 , + HELP_TEXT_L3_INTRO_09 = 5045 , + HELP_TEXT_L3_INTRO_10 = 5046 , + HELP_TEXT_L3_INTRO_11 = 5047 , + HELP_TEXT_L3_TAKE_OVER_TOWN_01 = 5048 , + HELP_TEXT_L3_TAKE_OVER_TOWN_02 = 5049 , + HELP_TEXT_L3_TAKE_OVER_TOWN_03 = 5050 , + HELP_TEXT_L3_TAKE_OVER_TOWN_04 = 5051 , + HELP_TEXT_L3_TAKE_OVER_TOWN_05 = 5052 , + HELP_TEXT_L3_TAKE_OVER_TOWN_06 = 5053 , + HELP_TEXT_L3_FREE_CREATURE_01 = 5054 , + HELP_TEXT_L3_FREE_CREATURE_02 = 5055 , + HELP_TEXT_L3_FREE_CREATURE_03 = 5056 , + HELP_TEXT_L3_FREE_CREATURE_04 = 5057 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_01 = 5058 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_02 = 5059 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_03 = 5060 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_04 = 5061 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_05 = 5062 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_06 = 5063 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_07 = 5064 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_08 = 5065 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_09 = 5066 , + HELP_TEXT_L3_LETHYS_GIVES_CREED_10 = 5067 , + HELP_TEXT_L3_MONK_01 = 5068 , + HELP_TEXT_L3_MONK_02 = 5069 , + HELP_TEXT_L3_MONK_03 = 5070 , + HELP_TEXT_L3_MONK_04 = 5071 , + HELP_TEXT_L3_MONK_05 = 5072 , + HELP_TEXT_L3_MONK_06 = 5073 , + HELP_TEXT_L3_MONK_07 = 5074 , + HELP_TEXT_L3_MONK_08 = 5075 , + HELP_TEXT_L3_MONK_09 = 5076 , + HELP_TEXT_L3_MONK_10 = 5077 , + HELP_TEXT_L3_MONK_11 = 5078 , + HELP_TEXT_L3_MONK_12 = 5079 , + HELP_TEXT_L3_MONK_13 = 5080 , + HELP_TEXT_L3_MONK_14 = 5081 , + HELP_TEXT_L3_MONK_15 = 5082 , + HELP_TEXT_L3_MONK_16 = 5083 , + HELP_TEXT_L3_MONK_17 = 5084 , + HELP_TEXT_L3_MONK_18 = 5085 , + HELP_TEXT_L3_MONK_19 = 5086 , + HELP_TEXT_L3_MONK_20 = 5087 , + HELP_TEXT_L3_MONK_21 = 5088 , + HELP_TEXT_L3_MONK_22 = 5089 , + HELP_TEXT_L3_MONK_23 = 5090 , + HELP_TEXT_L3_MONK_24 = 5091 , + HELP_TEXT_L3_MONK_25 = 5092 , + HELP_TEXT_L3_MONK_26 = 5093 , + HELP_TEXT_L3_LETHYS_FIREBALLS_01 = 5094 , + HELP_TEXT_L3_LETHYS_FIREBALLS_02 = 5095 , + HELP_TEXT_L3_LETHYS_FIREBALLS_03 = 5096 , + HELP_TEXT_L3_LETHYS_FIREBALLS_04 = 5097 , + HELP_TEXT_L3_LETHYS_FIREBALLS_05 = 5098 , + HELP_TEXT_L3_LETHYS_FIREBALLS_06 = 5099 , + HELP_TEXT_L3_LETHYS_FIREBALLS_07 = 5100 , + HELP_TEXT_L3_LETHYS_FIREBALLS_08 = 5101 , + HELP_TEXT_L3_LETHYS_FIREBALLS_09 = 5102 , + HELP_TEXT_L3_LETHYS_FIREBALLS_10 = 5103 , + HELP_TEXT_L3_LETHYS_FIREBALLS_MONK_HELPS_01 = 5104 , + HELP_TEXT_L3_LETHYS_FIREBALLS_MONK_HELPS_02 = 5105 , + HELP_TEXT_L3_LETHYS_FIREBALLS_MONK_HELPS_03 = 5106 , + HELP_TEXT_L3_LETHYS_WOLVES_01 = 5107 , + HELP_TEXT_L3_LETHYS_WOLVES_02 = 5108 , + HELP_TEXT_L3_LETHYS_WOLVES_03 = 5109 , + HELP_TEXT_L3_LETHYS_WOLVES_04 = 5110 , + HELP_TEXT_L3_LETHYS_WOLVES_05 = 5111 , + HELP_TEXT_L3_LETHYS_WOLVES_06 = 5112 , + HELP_TEXT_L3_LETHYS_WOLVES_MONK_HELPS_01 = 5113 , + HELP_TEXT_L3_LETHYS_WOLVES_MONK_HELPS_02 = 5114 , + HELP_TEXT_L3_LETHYS_WOLVES_MONK_HELPS_03 = 5115 , + HELP_TEXT_L3_MONKS_WONDER_01 = 5116 , + HELP_TEXT_L3_MONKS_WONDER_02 = 5117 , + HELP_TEXT_L3_MONKS_WONDER_03 = 5118 , + HELP_TEXT_L3_MONKS_WONDER_04 = 5119 , + HELP_TEXT_CREATURE_BREEDER_01 = 5120 , + HELP_TEXT_CREATURE_BREEDER_02 = 5121 , + HELP_TEXT_CREATURE_BREEDER_03 = 5122 , + HELP_TEXT_CREATURE_BREEDER_04 = 5123 , + HELP_TEXT_CREATURE_BREEDER_05 = 5124 , + HELP_TEXT_CREATURE_BREEDER_06 = 5125 , + HELP_TEXT_CREATURE_BREEDER_07 = 5126 , + HELP_TEXT_CREATURE_BREEDER_08 = 5127 , + HELP_TEXT_CREATURE_BREEDER_09 = 5128 , + HELP_TEXT_CREATURE_BREEDER_10 = 5129 , + HELP_TEXT_CREATURE_BREEDER_11 = 5130 , + HELP_TEXT_HAND_DEMO_ROTATING_01 = 5131 , + HELP_TEXT_HAND_DEMO_ROTATING_02 = 5132 , + HELP_TEXT_HAND_DEMO_ROTATING_03 = 5133 , + HELP_TEXT_HAND_DEMO_ROTATING_04 = 5134 , + HELP_TEXT_HAND_DEMO_ROTATING_05 = 5135 , + HELP_TEXT_HAND_DEMO_PITCHING_01 = 5136 , + HELP_TEXT_HAND_DEMO_PITCHING_02 = 5137 , + HELP_TEXT_HAND_DEMO_PITCHING_03 = 5138 , + HELP_TEXT_HAND_DEMO_PITCHING_04 = 5139 , + HELP_TEXT_HAND_DEMO_GIVE_FOOD_01 = 5140 , + HELP_TEXT_HAND_DEMO_GIVE_FOOD_02 = 5141 , + HELP_TEXT_HAND_DEMO_GIVE_FOOD_03 = 5142 , + HELP_TEXT_HAND_DEMO_GIVE_FOOD_04 = 5143 , + HELP_TEXT_HAND_DEMO_SHIELD_01 = 5144 , + HELP_TEXT_HAND_DEMO_SHIELD_02 = 5145 , + HELP_TEXT_HAND_DEMO_SHIELD_03 = 5146 , + HELP_TEXT_HAND_DEMO_SHIELD_04 = 5147 , + HELP_TEXT_HAND_DEMO_FIREBALL_01 = 5148 , + HELP_TEXT_HAND_DEMO_FIREBALL_02 = 5149 , + HELP_TEXT_HAND_DEMO_FIREBALL_03 = 5150 , + HELP_TEXT_HAND_DEMO_FIREBALL_04 = 5151 , + HELP_TEXT_HAND_DEMO_TOOLTIP = 5152 , + HELP_TEXT_HAND_DEMO_DRAG_01 = 5153 , + HELP_TEXT_HAND_DEMO_DRAG_02 = 5154 , + HELP_TEXT_HAND_DEMO_DRAG_03 = 5155 , + HELP_TEXT_HAND_DEMO_DRAG_04 = 5156 , + HELP_TEXT_HAND_DEMO_ZOOM_02 = 5157 , + HELP_TEXT_HAND_DEMO_ZOOM_03 = 5158 , + HELP_TEXT_HAND_DEMO_ZOOM_04 = 5159 , + HELP_TEXT_HAND_DEMO_ZOOM_05 = 5160 , + HELP_TEXT_HAND_DEMO_ZOOM_06 = 5161 , + HELP_TEXT_HAND_DEMO_WORSHIP_01 = 5162 , + HELP_TEXT_HAND_DEMO_WORSHIP_02 = 5163 , + HELP_TEXT_HAND_DEMO_WORSHIP_03 = 5164 , + HELP_TEXT_HAND_DEMO_WORSHIP_04 = 5165 , + HELP_TEXT_HAND_DEMO_USE_KEYBOARD_01 = 5166 , + HELP_TEXT_HAND_DEMO_USE_KEYBOARD_02 = 5167 , + HELP_TEXT_HAND_DEMO_USE_KEYBOARD_03 = 5168 , + HELP_TEXT_HAND_DEMO_USE_KEYBOARD_04 = 5169 , + HELP_TEXT_ROOM_CITADEL_SAVEGAME_ROOM_SAVEMESSAGE = 5170 , + HELP_TEXT_ROOM_CITADEL_CHALLENGE_ROOM_TIME = 5171 , + HELP_TEXT_ROOM_CITADEL_CHALLENGE_ROOM_PERCENTCOMPLETE = 5172 , + HELP_TEXT_ROOM_CITADEL_SAVEGAME_ROOM_LOADREQUEST = 5173 , + HELP_TEXT_ROOM_CITADEL_SAVEGAME_ROOM_SAVEREQUEST = 5174 , + HELP_TEXT_ROOM_CITADEL_SAVEGAME_ROOM_DELETEREQUEST = 5175 , + HELP_TEXT_TOTD_01 = 5176 , + HELP_TEXT_TOTD_02 = 5177 , + HELP_TEXT_TOTD_03 = 5178 , + HELP_TEXT_TOTD_04 = 5179 , + HELP_TEXT_TOTD_05 = 5180 , + HELP_TEXT_TOTD_06 = 5181 , + HELP_TEXT_TOTD_07 = 5182 , + HELP_TEXT_TOTD_08 = 5183 , + HELP_TEXT_TOTD_09 = 5184 , + HELP_TEXT_TOTD_10 = 5185 , + HELP_TEXT_TOTD_11 = 5186 , + HELP_TEXT_TOTD_12 = 5187 , + HELP_TEXT_TOTD_13 = 5188 , + HELP_TEXT_TOTD_14 = 5189 , + HELP_TEXT_TOTD_15 = 5190 , + HELP_TEXT_TOTD_16 = 5191 , + HELP_TEXT_TOTD_17 = 5192 , + HELP_TEXT_TOTD_18 = 5193 , + HELP_TEXT_TOTD_19 = 5194 , + HELP_TEXT_TOTD_20 = 5195 , + HELP_TEXT_TOTD_21 = 5196 , + HELP_TEXT_TOTD_22 = 5197 , + HELP_TEXT_TOTD_23 = 5198 , + HELP_TEXT_TOTD_24 = 5199 , + HELP_TEXT_TOTD_25 = 5200 , + HELP_TEXT_TOTD_26 = 5201 , + HELP_TEXT_TOTD_27 = 5202 , + HELP_TEXT_TOTD_28 = 5203 , + HELP_TEXT_TOTD_29 = 5204 , + HELP_TEXT_TOTD_30 = 5205 , + HELP_TEXT_TOTD_31 = 5206 , + HELP_TEXT_TOTD_32 = 5207 , + HELP_TEXT_TOTD_33 = 5208 , + HELP_TEXT_TOTD_34 = 5209 , + HELP_TEXT_TOTD_35 = 5210 , + HELP_TEXT_TOTD_LAST = 5211 , + HELP_TEXT_FINAL_BEGINNING_01 = 5212 , + HELP_TEXT_FINAL_BEGINNING_02 = 5213 , + HELP_TEXT_FINAL_BEGINNING_03 = 5214 , + HELP_TEXT_FINAL_BEGINNING_04 = 5215 , + HELP_TEXT_FINAL_BEGINNING_05 = 5216 , + HELP_TEXT_FINAL_BEGINNING_06 = 5217 , + HELP_TEXT_FINAL_BEGINNING_09 = 5218 , + HELP_TEXT_FINAL_BEGINNING_10 = 5219 , + HELP_TEXT_FINAL_BEGINNING_12 = 5220 , + HELP_TEXT_FINAL_BEGINNING_13 = 5221 , + HELP_TEXT_FINAL_BEGINNING_15 = 5222 , + HELP_TEXT_FINAL_BEGINNING_16 = 5223 , + HELP_TEXT_FINAL_BEGINNING_18 = 5224 , + HELP_TEXT_FINAL_BEGINNING_19 = 5225 , + HELP_TEXT_FINAL_BEGINNING_20 = 5226 , + HELP_TEXT_FINAL_BEGINNING_21 = 5227 , + HELP_TEXT_FINAL_BEGINNING_22 = 5228 , + HELP_TEXT_FINAL_BEGINNING_23 = 5229 , + HELP_TEXT_FINAL_BEGINNING_28 = 5230 , + HELP_TEXT_FINAL_BEGINNING_29 = 5231 , + HELP_TEXT_FINAL_BEGINNING_30 = 5232 , + HELP_TEXT_FINAL_BEGINNING_31 = 5233 , + HELP_TEXT_FINAL_BEGINNING_33 = 5234 , + HELP_TEXT_FINAL_BEGINNING_34 = 5235 , + HELP_TEXT_FINAL_BEGINNING_35 = 5236 , + HELP_TEXT_FINAL_BEGINNING_36 = 5237 , + HELP_TEXT_FINAL_BEGINNING_37 = 5238 , + HELP_TEXT_FINAL_BEGINNING_38 = 5239 , + HELP_TEXT_FINAL_BEGINNING_39 = 5240 , + HELP_TEXT_FINAL_BEGINNING_40 = 5241 , + HELP_TEXT_FINAL_BEGINNING_41 = 5242 , + HELP_TEXT_FINAL_BEGINNING_42 = 5243 , + HELP_TEXT_FINAL_BEGINNING_43 = 5244 , + HELP_TEXT_FINAL_BEGINNING_44 = 5245 , + HELP_TEXT_FINAL_BEGINNING_45 = 5246 , + HELP_TEXT_FINAL_BEGINNING_46 = 5247 , + HELP_TEXT_FINAL_BEGINNING_47 = 5248 , + HELP_TEXT_FINAL_BEGINNING_48 = 5249 , + HELP_TEXT_FINAL_BEGINNING_49 = 5250 , + HELP_TEXT_FINAL_BEGINNING_50 = 5251 , + HELP_TEXT_FINAL_BEGINNING_51 = 5252 , + HELP_TEXT_FINAL_BEGINNING_60 = 5253 , + HELP_TEXT_FINAL_BEGINNING_61 = 5254 , + HELP_TEXT_FINAL_BEGINNING_62 = 5255 , + HELP_TEXT_FINAL_BEGINNING_63 = 5256 , + HELP_TEXT_FINAL_BEGINNING_64 = 5257 , + HELP_TEXT_FINAL_BEGINNING_67 = 5258 , + HELP_TEXT_FINAL_BEGINNING_68 = 5259 , + HELP_TEXT_FINAL_BEGINNING_69 = 5260 , + HELP_TEXT_FINAL_BEGINNING_70 = 5261 , + HELP_TEXT_FINAL_BEGINNING_71 = 5262 , + HELP_TEXT_FRONT_END_01 = 5263 , + HELP_TEXT_FRONT_END_02 = 5264 , + HELP_TEXT_FRONT_END_03 = 5265 , + HELP_TEXT_FRONT_END_04 = 5266 , + HELP_TEXT_FRONT_END_05 = 5267 , + HELP_TEXT_FRONT_END_06 = 5268 , + HELP_TEXT_FRONT_END_07 = 5269 , + HELP_TEXT_FRONT_END_08 = 5270 , + HELP_TEXT_FRONT_END_09 = 5271 , + HELP_TEXT_FRONT_END_10 = 5272 , + HELP_TEXT_FRONT_END_11 = 5273 , + HELP_TEXT_FRONT_END_12 = 5274 , + HELP_TEXT_FIRST_REWARD_01 = 5275 , + HELP_TEXT_FIRST_REWARD_02 = 5276 , + HELP_TEXT_FIRST_REWARD_03 = 5277 , + HELP_TEXT_SPELL_DISPENSER_01 = 5278 , + HELP_TEXT_SPELL_DISPENSER_02 = 5279 , + HELP_TEXT_SPELL_DISPENSER_03 = 5280 , + HELP_TEXT_SPELL_DISPENSER_04 = 5281 , + HELP_TEXT_SPELL_DISPENSER_05 = 5282 , + HELP_TEXT_SPELL_DISPENSER_06 = 5283 , + HELP_TEXT_BEACH_PUZZLE_01 = 5284 , + HELP_TEXT_BEACH_PUZZLE_02 = 5285 , + HELP_TEXT_BEACH_PUZZLE_03 = 5286 , + HELP_TEXT_BEACH_PUZZLE_04 = 5287 , + HELP_TEXT_BEACH_PUZZLE_05 = 5288 , + HELP_TEXT_BEACH_PUZZLE_06 = 5289 , + HELP_TEXT_BEACH_PUZZLE_07 = 5290 , + HELP_TEXT_BEACH_PUZZLE_08 = 5291 , + HELP_TEXT_BEACH_PUZZLE_09 = 5292 , + HELP_TEXT_BEACH_PUZZLE_10 = 5293 , + HELP_TEXT_BEACH_PUZZLE_11 = 5294 , + HELP_TEXT_BEACH_PUZZLE_12 = 5295 , + HELP_TEXT_BEACH_PUZZLE_13 = 5296 , + HELP_TEXT_BEACH_PUZZLE_14 = 5297 , + HELP_TEXT_BEACH_PUZZLE_15 = 5298 , + HELP_TEXT_BEACH_PUZZLE_16 = 5299 , + HELP_TEXT_BEACH_PUZZLE_17 = 5300 , + HELP_TEXT_BEACH_PUZZLE_18 = 5301 , + HELP_TEXT_BEACH_PUZZLE_19 = 5302 , + HELP_TEXT_NEW_L4_VORTEX_NOTIFIER = 5303 , + HELP_TEXT_NEW_L4_INTRO_01 = 5304 , + HELP_TEXT_NEW_L4_INTRO_02 = 5305 , + HELP_TEXT_NEW_L4_INTRO_03 = 5306 , + HELP_TEXT_NEW_L4_INTRO_04 = 5307 , + HELP_TEXT_NEW_L4_INTRO_05 = 5308 , + HELP_TEXT_NEW_L4_INTRO_06 = 5309 , + HELP_TEXT_NEW_L4_INTRO_07 = 5310 , + HELP_TEXT_NEW_L4_INTRO_08 = 5311 , + HELP_TEXT_NEW_L4_INTRO_09 = 5312 , + HELP_TEXT_NEW_L4_INTRO_10 = 5313 , + HELP_TEXT_NEW_L4_INTRO_11 = 5314 , + HELP_TEXT_NEW_L4_INTRO_12 = 5315 , + HELP_TEXT_NEW_L4_INTRO_13 = 5316 , + HELP_TEXT_NEW_L4_INTRO_14 = 5317 , + HELP_TEXT_NEW_L4_INTRO_15 = 5318 , + HELP_TEXT_NEW_L4_INTRO_16 = 5319 , + HELP_TEXT_NEW_L4_INTRO_17 = 5320 , + HELP_TEXT_NEW_L4_INTRO_18 = 5321 , + HELP_TEXT_NEW_L4_INTRO_19 = 5322 , + HELP_TEXT_NEW_L4_INTRO_20 = 5323 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_01 = 5324 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_02 = 5325 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_03 = 5326 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_04 = 5327 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_05 = 5328 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_06 = 5329 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_07 = 5330 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_08 = 5331 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_09 = 5332 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_10 = 5333 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_11 = 5334 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_12 = 5335 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_13 = 5336 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_14 = 5337 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_15 = 5338 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_16 = 5339 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_17 = 5340 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_18 = 5341 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_19 = 5342 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_20 = 5343 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_21 = 5344 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_22 = 5345 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_23 = 5346 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_24 = 5347 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_25 = 5348 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_26 = 5349 , + HELP_TEXT_NEW_L4_BLIND_WOMAN_27 = 5350 , + HELP_TEXT_BLIND_WOMAN_07 = 5351 , + HELP_TEXT_BLIND_WOMAN_08 = 5352 , + HELP_TEXT_BLIND_WOMAN_09 = 5353 , + HELP_TEXT_BLIND_WOMAN_10 = 5354 , + HELP_TEXT_BLIND_WOMAN_11 = 5355 , + HELP_TEXT_BLIND_WOMAN_12 = 5356 , + HELP_TEXT_BLIND_WOMAN_19 = 5357 , + HELP_TEXT_NEW_L4_METEORITES_01 = 5358 , + HELP_TEXT_NEW_L4_METEORITES_02 = 5359 , + HELP_TEXT_NEW_L4_METEORITES_03 = 5360 , + HELP_TEXT_NEW_L4_METEORITES_04 = 5361 , + HELP_TEXT_NEW_L4_METEORITES_05 = 5362 , + HELP_TEXT_NEW_L4_METEORITES_06 = 5363 , + HELP_TEXT_NEW_L4_METEORITES_07 = 5364 , + HELP_TEXT_NEW_L4_METEORITES_08 = 5365 , + HELP_TEXT_NEW_L4_METEORITES_09 = 5366 , + HELP_TEXT_NEW_L4_METEORITES_10 = 5367 , + HELP_TEXT_NEW_L4_METEORITES_11 = 5368 , + HELP_TEXT_NEW_L4_METEORITES_12 = 5369 , + HELP_TEXT_NEW_L4_METEORITES_13 = 5370 , + HELP_TEXT_NEW_L4_METEORITES_14 = 5371 , + HELP_TEXT_NEW_L4_METEORITES_15 = 5372 , + HELP_TEXT_NEW_L4_METEORITES_16 = 5373 , + HELP_TEXT_NEW_L4_METEORITES_17 = 5374 , + HELP_TEXT_NEW_L4_METEORITES_18 = 5375 , + HELP_TEXT_NEW_L4_METEORITES_19 = 5376 , + HELP_TEXT_NEW_L4_METEORITES_20 = 5377 , + HELP_TEXT_NEW_L4_METEORITES_21 = 5378 , + HELP_TEXT_NEW_L4_METEORITES_22 = 5379 , + HELP_TEXT_NEW_L4_METEORITES_23 = 5380 , + HELP_TEXT_NEW_L4_METEORITES_24 = 5381 , + HELP_TEXT_NEW_L4_METEORITES_25 = 5382 , + HELP_TEXT_NEW_L4_METEORITES_26 = 5383 , + HELP_TEXT_NEW_L4_METEORITES_27 = 5384 , + HELP_TEXT_NEW_L4_METEORITES_28 = 5385 , + HELP_TEXT_NEW_L4_METEORITES_29 = 5386 , + HELP_TEXT_NEW_L4_METEORITES_30 = 5387 , + HELP_TEXT_NEW_L4_METEORITES_31 = 5388 , + HELP_TEXT_NEW_L4_METEORITES_32 = 5389 , + HELP_TEXT_NEW_L4_METEORITES_33 = 5390 , + HELP_TEXT_NEW_L4_METEORITES_34 = 5391 , + HELP_TEXT_NEW_L4_METEORITES_35 = 5392 , + HELP_TEXT_NEW_L4_METEORITES_36 = 5393 , + HELP_TEXT_NEW_L4_METEORITES_37 = 5394 , + HELP_TEXT_NEW_L4_METEORITES_38 = 5395 , + HELP_TEXT_NEW_L4_METEORITES_39 = 5396 , + HELP_TEXT_NEW_L4_METEORITES_40 = 5397 , + HELP_TEXT_NEW_L4_METEORITES_41 = 5398 , + HELP_TEXT_NEW_L4_METEORITES_42 = 5399 , + HELP_TEXT_NEW_L4_METEORITES_43 = 5400 , + HELP_TEXT_NEW_L4_METEORITES_44 = 5401 , + HELP_TEXT_NEW_L4_METEORITES_45 = 5402 , + HELP_TEXT_NEW_L4_METEORITES_46 = 5403 , + HELP_TEXT_NEW_L4_METEORITES_47 = 5404 , + HELP_TEXT_NEW_L4_METEORITES_48 = 5405 , + HELP_TEXT_NEW_L4_METEORITES_49 = 5406 , + HELP_TEXT_NEW_L4_METEORITES_50 = 5407 , + HELP_TEXT_NEW_L4_METEORITES_51 = 5408 , + HELP_TEXT_NEW_L4_METEORITES_52 = 5409 , + HELP_TEXT_NEW_L4_METEORITES_53 = 5410 , + HELP_TEXT_NEW_L4_METEORITES_54 = 5411 , + HELP_TEXT_NEW_L4_METEORITES_55 = 5412 , + HELP_TEXT_NEW_L4_METEORITES_56 = 5413 , + HELP_TEXT_NEW_L4_METEORITES_57 = 5414 , + HELP_TEXT_NEW_L4_METEORITES_58 = 5415 , + HELP_TEXT_NEW_L4_METEORITES_59 = 5416 , + HELP_TEXT_NEW_L4_METEORITES_60 = 5417 , + HELP_TEXT_NEW_L4_METEORITES_61 = 5418 , + HELP_TEXT_NEW_L4_METEORITES_62 = 5419 , + HELP_TEXT_NEW_L4_METEORITES_63 = 5420 , + HELP_TEXT_NEW_L4_METEORITES_64 = 5421 , + HELP_TEXT_NEW_L4_METEORITES_65 = 5422 , + HELP_TEXT_NEW_L4_METEORITES_66 = 5423 , + HELP_TEXT_NEW_L4_METEORITES_67 = 5424 , + HELP_TEXT_NEW_L4_METEORITES_68 = 5425 , + HELP_TEXT_NEW_L4_METEORITES_69 = 5426 , + HELP_TEXT_NEW_L4_METEORITES_70 = 5427 , + HELP_TEXT_NEW_L4_METEORITES_71 = 5428 , + HELP_TEXT_NEW_L4_METEORITES_72 = 5429 , + HELP_TEXT_NEW_L4_METEORITES_73 = 5430 , + HELP_TEXT_NEW_L4_METEORITES_74 = 5431 , + HELP_TEXT_NEW_L4_METEORITES_75 = 5432 , + HELP_TEXT_NEW_L4_METEORITES_76 = 5433 , + HELP_TEXT_NEW_L4_METEORITES_77 = 5434 , + HELP_TEXT_NEW_L4_METEORITES_78 = 5435 , + HELP_TEXT_NEW_L4_METEORITES_79 = 5436 , + HELP_TEXT_NEW_L4_METEORITES_80 = 5437 , + HELP_TEXT_NEW_L4_METEORITES_81 = 5438 , + HELP_TEXT_NEW_L4_METEORITES_82 = 5439 , + HELP_TEXT_NEW_L4_METEORITES_83 = 5440 , + HELP_TEXT_NEW_L4_METEORITES_84 = 5441 , + HELP_TEXT_NEW_L4_METEORITES_85 = 5442 , + HELP_TEXT_NEW_L4_METEORITES_86 = 5443 , + HELP_TEXT_NEW_L4_METEORITES_87 = 5444 , + HELP_TEXT_NEW_L4_PUZZLE_01 = 5445 , + HELP_TEXT_NEW_L4_PUZZLE_02 = 5446 , + HELP_TEXT_NEW_L4_PUZZLE_03 = 5447 , + HELP_TEXT_NEW_L4_PUZZLE_04 = 5448 , + HELP_TEXT_NEW_L4_OGRE_01 = 5449 , + HELP_TEXT_NEW_L4_OGRE_02 = 5450 , + HELP_TEXT_NEW_L4_OGRE_03 = 5451 , + HELP_TEXT_NEW_L4_OGRE_04 = 5452 , + HELP_TEXT_NEW_L4_OGRE_05 = 5453 , + HELP_TEXT_NEW_L4_OGRE_06 = 5454 , + HELP_TEXT_NEW_L4_OGRE_07 = 5455 , + HELP_TEXT_NEW_L4_OGRE_08 = 5456 , + HELP_TEXT_NEW_L4_OGRE_09 = 5457 , + HELP_TEXT_NEW_L4_OGRE_10 = 5458 , + HELP_TEXT_NEW_L4_OGRE_11 = 5459 , + HELP_TEXT_NEW_L4_OGRE_12 = 5460 , + HELP_TEXT_NEW_L4_OGRE_13 = 5461 , + HELP_TEXT_NEW_L4_OGRE_14 = 5462 , + HELP_TEXT_NEW_L4_OGRE_15 = 5463 , + HELP_TEXT_NEW_L4_OGRE_16 = 5464 , + HELP_TEXT_NEW_L4_OGRE_17 = 5465 , + HELP_TEXT_NEW_L4_VORTEX_01 = 5466 , + HELP_TEXT_NEW_L4_VORTEX_02 = 5467 , + HELP_TEXT_NEW_L4_VORTEX_03 = 5468 , + HELP_TEXT_NEW_L4_VORTEX_04 = 5469 , + HELP_TEXT_NEW_L4_VORTEX_05 = 5470 , + HELP_TEXT_NEW_L4_VORTEX_06 = 5471 , + HELP_TEXT_NEW_L4_VORTEX_07 = 5472 , + HELP_TEXT_NEW_L4_VORTEX_08 = 5473 , + HELP_TEXT_NEW_L4_VORTEX_09 = 5474 , + HELP_TEXT_NEW_L4_VORTEX_10 = 5475 , + HELP_TEXT_NEW_L4_VORTEX_11 = 5476 , + HELP_TEXT_NEW_L4_VORTEX_12 = 5477 , + HELP_TEXT_NEW_L4_VORTEX_13 = 5478 , + HELP_TEXT_NEW_L4_VORTEX_14 = 5479 , + HELP_TEXT_NEW_L4_VORTEX_15 = 5480 , + HELP_TEXT_NEW_L4_VORTEX_16 = 5481 , + HELP_TEXT_NEW_L4_VORTEX_17 = 5482 , + HELP_TEXT_NEW_L4_VORTEX_18 = 5483 , + HELP_TEXT_NEW_L5_INTRO_01 = 5484 , + HELP_TEXT_NEW_L5_INTRO_02 = 5485 , + HELP_TEXT_NEW_L5_INTRO_03 = 5486 , + HELP_TEXT_NEW_L5_INTRO_04 = 5487 , + HELP_TEXT_NEW_L5_INTRO_05 = 5488 , + HELP_TEXT_NEW_L5_INTRO_06 = 5489 , + HELP_TEXT_NEW_L5_INTRO_07 = 5490 , + HELP_TEXT_NEW_L5_INTRO_08 = 5491 , + HELP_TEXT_NEW_L5_INTRO_09 = 5492 , + HELP_TEXT_NEW_L5_INTRO_10 = 5493 , + HELP_TEXT_NEW_L5_INTRO_11 = 5494 , + HELP_TEXT_NEW_L5_INTRO_12 = 5495 , + HELP_TEXT_NEW_L5_INTRO_13 = 5496 , + HELP_TEXT_NEW_L5_INTRO_14 = 5497 , + HELP_TEXT_NEW_L5_INTRO_15 = 5498 , + HELP_TEXT_NEW_L5_INTRO_16 = 5499 , + HELP_TEXT_NEW_L5_VILLAGE1_01 = 5500 , + HELP_TEXT_NEW_L5_VILLAGE1_02 = 5501 , + HELP_TEXT_NEW_L5_VILLAGE1_03 = 5502 , + HELP_TEXT_NEW_L5_VILLAGE1_04 = 5503 , + HELP_TEXT_NEW_L5_VILLAGE2_01 = 5504 , + HELP_TEXT_NEW_L5_VILLAGE2_02 = 5505 , + HELP_TEXT_NEW_L5_VILLAGE2_03 = 5506 , + HELP_TEXT_NEW_L5_VILLAGE2_04 = 5507 , + HELP_TEXT_NEW_L5_VILLAGE2_05 = 5508 , + HELP_TEXT_NEW_L5_VILLAGE2_06 = 5509 , + HELP_TEXT_NEW_L5_VILLAGE2_07 = 5510 , + HELP_TEXT_NEW_L5_VILLAGE2_08 = 5511 , + HELP_TEXT_NEW_L5_VILLAGE2_09 = 5512 , + HELP_TEXT_NEW_L5_VILLAGE2_10 = 5513 , + HELP_TEXT_NEW_L5_VILLAGE2_11 = 5514 , + HELP_TEXT_NEW_L5_VILLAGE2_12 = 5515 , + HELP_TEXT_NEW_L5_VILLAGE2_13 = 5516 , + HELP_TEXT_NEW_L5_VILLAGE2_14 = 5517 , + HELP_TEXT_NEW_L5_VILLAGE2_15 = 5518 , + HELP_TEXT_NEW_L5_VILLAGE3_01 = 5519 , + HELP_TEXT_NEW_L5_VILLAGE3_02 = 5520 , + HELP_TEXT_NEW_L5_VILLAGE3_03 = 5521 , + HELP_TEXT_NEW_L5_VILLAGE3_04 = 5522 , + HELP_TEXT_NEW_L5_VILLAGE3_05 = 5523 , + HELP_TEXT_NEW_L5_VILLAGE3_06 = 5524 , + HELP_TEXT_NEW_L5_VILLAGE3_07 = 5525 , + HELP_TEXT_NEW_L5_VILLAGE3_08 = 5526 , + HELP_TEXT_NEW_L5_VILLAGE3_09 = 5527 , + HELP_TEXT_NEW_L5_VILLAGE3_10 = 5528 , + HELP_TEXT_NEW_L5_VILLAGE3_11 = 5529 , + HELP_TEXT_NEW_L5_VILLAGE3_12 = 5530 , + HELP_TEXT_NEW_L5_VILLAGE3_13 = 5531 , + HELP_TEXT_NEW_L5_VILLAGE3_14 = 5532 , + HELP_TEXT_NEW_L5_VILLAGE3_15 = 5533 , + HELP_TEXT_NEW_L5_VILLAGE3_16 = 5534 , + HELP_TEXT_NEW_L5_VILLAGE3_18 = 5535 , + HELP_TEXT_NEW_L5_VILLAGE3_19 = 5536 , + HELP_TEXT_NEW_L5_VILLAGE3_20 = 5537 , + HELP_TEXT_NEW_L5_VILLAGE3_21 = 5538 , + HELP_TEXT_NEW_L5_VILLAGE3_22 = 5539 , + HELP_TEXT_NEW_L5_VILLAGE3_23 = 5540 , + HELP_TEXT_NEW_L5_VILLAGE3_24 = 5541 , + HELP_TEXT_NEW_L5_VILLAGE3_25 = 5542 , + HELP_TEXT_NEW_L5_VILLAGE3_26 = 5543 , + HELP_TEXT_NEW_L5_VILLAGE3_27 = 5544 , + HELP_TEXT_NEW_L5_VILLAGE3_28 = 5545 , + HELP_TEXT_NEW_L5_VILLAGE3_29 = 5546 , + HELP_TEXT_NEW_L5_VILLAGE3_30 = 5547 , + HELP_TEXT_NEW_L5_VILLAGE3_31 = 5548 , + HELP_TEXT_NEW_L5_VILLAGE3_32 = 5549 , + HELP_TEXT_NEW_L5_CREATURE_RESTORED_01 = 5550 , + HELP_TEXT_NEW_L5_CREATURE_RESTORED_02 = 5551 , + HELP_TEXT_NEW_L5_CREATURE_RESTORED_03 = 5552 , + HELP_TEXT_NEW_L5_CREATURE_RESTORED_04 = 5553 , + HELP_TEXT_NEW_L5_CREATURE_RESTORED_05 = 5554 , + HELP_TEXT_NEW_L5_CREATURE_RESTORED_06 = 5555 , + HELP_TEXT_NEW_L5_CREATURE_RESTORED_07 = 5556 , + HELP_TEXT_NEW_L5_CREATURE_RESTORED_08 = 5557 , + HELP_TEXT_NEW_L5_CREATURE_RESTORED_09 = 5558 , + HELP_TEXT_NEW_L5_VILLAGE4_01 = 5559 , + HELP_TEXT_NEW_L5_VILLAGE4_02 = 5560 , + HELP_TEXT_NEW_L5_VILLAGE4_03 = 5561 , + HELP_TEXT_NEW_L5_VILLAGE4_04 = 5562 , + HELP_TEXT_NEW_L5_VILLAGE4_05 = 5563 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_01 = 5564 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_02 = 5565 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_03 = 5566 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_04 = 5567 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_05 = 5568 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_06 = 5569 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_07 = 5570 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_08 = 5571 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_09 = 5572 , + HELP_TEXT_NEW_L5_MIRROR_FIGHT_10 = 5573 , + HELP_TEXT_NEW_L5_END_SEQUENCE_01 = 5574 , + HELP_TEXT_NEW_L5_END_SEQUENCE_02 = 5575 , + HELP_TEXT_NEW_L5_END_SEQUENCE_03 = 5576 , + HELP_TEXT_NEW_L5_END_SEQUENCE_04 = 5577 , + HELP_TEXT_NEW_L5_END_SEQUENCE_05 = 5578 , + HELP_TEXT_NEW_L5_END_SEQUENCE_06 = 5579 , + HELP_TEXT_NEW_L5_END_SEQUENCE_07 = 5580 , + HELP_TEXT_NEW_L5_END_SEQUENCE_08 = 5581 , + HELP_TEXT_NEW_L5_END_SEQUENCE_09 = 5582 , + HELP_TEXT_NEW_L5_MISSIONARIES_01 = 5583 , + HELP_TEXT_NEW_L5_MISSIONARIES_02 = 5584 , + HELP_TEXT_NEW_L5_MISSIONARIES_03 = 5585 , + HELP_TEXT_NEW_L5_MISSIONARIES_04 = 5586 , + HELP_TEXT_NEW_L5_MISSIONARIES_05 = 5587 , + HELP_TEXT_NEW_L5_MISSIONARIES_06 = 5588 , + HELP_TEXT_NEW_L5_MISSIONARIES_07 = 5589 , + HELP_TEXT_NEW_L5_MISSIONARIES_08 = 5590 , + HELP_TEXT_NEW_L5_MISSIONARIES_09 = 5591 , + HELP_TEXT_NEW_L5_MISSIONARIES_10 = 5592 , + HELP_TEXT_NEW_L5_MISSIONARIES_11 = 5593 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_01 = 5594 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_02 = 5595 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_03 = 5596 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_04 = 5597 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_05 = 5598 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_06 = 5599 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_07 = 5600 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_08 = 5601 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_09 = 5602 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_10 = 5603 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_11 = 5604 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_12 = 5605 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_13 = 5606 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_14 = 5607 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_15 = 5608 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_16 = 5609 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_17 = 5610 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_18 = 5611 , + HELP_TEXT_NEW_L5_JAP_TRAITOR_19 = 5612 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_01 = 5613 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_02 = 5614 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_03 = 5615 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_04 = 5616 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_05 = 5617 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_06 = 5618 , + HELP_TEXT_NEW_L5_LION_PUZZLE_01 = 5619 , + HELP_TEXT_NEW_L5_LION_PUZZLE_02 = 5620 , + HELP_TEXT_NEW_L5_LION_PUZZLE_03 = 5621 , + HELP_TEXT_NEW_L5_LION_PUZZLE_04 = 5622 , + HELP_TEXT_NEW_L5_LION_PUZZLE_05 = 5623 , + HELP_TEXT_NEW_L5_LION_PUZZLE_06 = 5624 , + HELP_TEXT_NEW_L5_LION_PUZZLE_07 = 5625 , + HELP_TEXT_NEW_L5_LION_PUZZLE_08 = 5626 , + HELP_TEXT_NEW_L5_LION_PUZZLE_09 = 5627 , + HELP_TEXT_NEW_L5_LION_PUZZLE_10 = 5628 , + HELP_TEXT_NEW_L5_FIRE_ON_HIGH_01 = 5629 , + HELP_TEXT_NEW_L5_FIRE_ON_HIGH_02 = 5630 , + HELP_TEXT_NEW_L5_FIRE_ON_HIGH_03 = 5631 , + HELP_TEXT_NEW_L5_FIRE_ON_HIGH_04 = 5632 , + HELP_TEXT_NEW_L5_FIRE_ON_HIGH_05 = 5633 , + HELP_TEXT_NEW_L5_CRUSADERS_01 = 5634 , + HELP_TEXT_NEW_L5_CRUSADERS_02 = 5635 , + HELP_TEXT_NEW_L5_CRUSADERS_03 = 5636 , + HELP_TEXT_NEW_L5_CRUSADERS_04 = 5637 , + HELP_TEXT_NEW_L5_CRUSADERS_05 = 5638 , + HELP_TEXT_NEW_L5_CRUSADERS_06 = 5639 , + HELP_TEXT_NEW_L5_CRUSADERS_07 = 5640 , + HELP_TEXT_NEW_L5_CRUSADERS_08 = 5641 , + HELP_TEXT_NEW_L5_CRUSADERS_09 = 5642 , + HELP_TEXT_NEW_L5_CRUSADERS_10 = 5643 , + HELP_TEXT_NEW_L5_CRUSADERS_11 = 5644 , + HELP_TEXT_NEW_L5_CRUSADERS_12 = 5645 , + HELP_TEXT_NEW_L5_CRUSADERS_13 = 5646 , + HELP_TEXT_NEW_L5_CRUSADERS_14 = 5647 , + HELP_TEXT_NEW_L5_CRUSADERS_15 = 5648 , + HELP_TEXT_NEW_L5_CRUSADERS_16 = 5649 , + HELP_TEXT_NEW_L5_CRUSADERS_17 = 5650 , + HELP_TEXT_NEW_L5_CRUSADERS_18 = 5651 , + HELP_TEXT_NEW_L5_CRUSADERS_19 = 5652 , + HELP_TEXT_NEW_L5_CRUSADERS_20 = 5653 , + HELP_TEXT_NEW_L5_CRUSADERS_21 = 5654 , + HELP_TEXT_NEW_L5_CRUSADERS_22 = 5655 , + HELP_TEXT_NEW_L5_CRUSADERS_23 = 5656 , + HELP_TEXT_NEW_L5_CRUSADERS_24 = 5657 , + HELP_TEXT_NEW_L5_CRUSADERS_25 = 5658 , + HELP_TEXT_NEW_L5_CRUSADERS_26 = 5659 , + HELP_TEXT_NEW_L5_CRUSADERS_27 = 5660 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_01 = 5661 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_02 = 5662 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_03 = 5663 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_04 = 5664 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_05 = 5665 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_06 = 5666 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_07 = 5667 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_08 = 5668 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_09 = 5669 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_10 = 5670 , + HELP_TEXT_NEW_L5_NEMESIS_EXPLAINS_CREED_11 = 5671 , + HELP_TEXT_IMMERSION_MOUSE_01 = 5672 , + HELP_TEXT_IMMERSION_MOUSE_02 = 5673 , + HELP_TEXT_IMMERSION_MOUSE_03 = 5674 , + HELP_TEXT_IMMERSION_MOUSE_04 = 5675 , + HELP_TEXT_IMMERSION_MOUSE_05 = 5676 , + HELP_TEXT_IMMERSION_MOUSE_06 = 5677 , + HELP_TEXT_IMMERSION_MOUSE_07 = 5678 , + HELP_TEXT_HAND_DEMO_THROWING_01 = 5679 , + HELP_TEXT_HAND_DEMO_THROWING_02 = 5680 , + HELP_TEXT_HAND_DEMO_THROWING_03 = 5681 , + HELP_TEXT_HAND_DEMO_THROWING_04 = 5682 , + HELP_TEXT_HAND_DEMO_THROWING_05 = 5683 , + HELP_TEXT_HAND_DEMO_THROWING_06 = 5684 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_11 = 5685 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_12 = 5686 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_13 = 5687 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_14 = 5688 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_15 = 5689 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_16 = 5690 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_17 = 5691 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_18 = 5692 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_19 = 5693 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_20 = 5694 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_21 = 5695 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_22 = 5696 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_23 = 5697 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_24 = 5698 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_25 = 5699 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_26 = 5700 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_27 = 5701 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_28 = 5702 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_29 = 5703 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_30 = 5704 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_31 = 5705 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_32 = 5706 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_33 = 5707 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_34 = 5708 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_35 = 5709 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_36 = 5710 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_GUIDE_TEACHES_FIGHT_37 = 5711 , + HELP_TEXT_NEW_DEVELOPMENT_STAGE_MEET_GUIDE_34 = 5712 , + HELP_TEXT_CREATURE_GUARDIAN_11 = 5713 , + HELP_TEXT_CREATURE_GUARDIAN_12 = 5714 , + HELP_TEXT_CREATURE_GUARDIAN_13 = 5715 , + HELP_TEXT_CREATURE_GUARDIAN_14 = 5716 , + HELP_TEXT_CREATURE_GUARDIAN_15 = 5717 , + HELP_TEXT_NEW_ENUM_01 = 5718 , + HELP_TEXT_NEW_ENUM_02 = 5719 , + HELP_TEXT_NEW_ENUM_03 = 5720 , + HELP_TEXT_NEW_ENUM_04 = 5721 , + HELP_TEXT_NEW_ENUM_05 = 5722 , + HELP_TEXT_NEW_ENUM_06 = 5723 , + HELP_TEXT_NEW_ENUM_07 = 5724 , + HELP_TEXT_NEW_ENUM_08 = 5725 , + HELP_TEXT_NEW_ENUM_09 = 5726 , + HELP_TEXT_NEW_ENUM_10 = 5727 , + HELP_TEXT_NEW_ENUM_11 = 5728 , + HELP_TEXT_NEW_ENUM_12 = 5729 , + HELP_TEXT_NEW_ENUM_13 = 5730 , + HELP_TEXT_NEW_ENUM_14 = 5731 , + HELP_TEXT_NEW_ENUM_15 = 5732 , + HELP_TEXT_NEW_ENUM_16 = 5733 , + HELP_TEXT_NEW_ENUM_17 = 5734 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_07 = 5735 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_08 = 5736 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_09 = 5737 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_10 = 5738 , + HELP_TEXT_NEW_L5_CREATURE_CURSE_11 = 5739 , + HELP_TEXT_DEATH_IN_VILLAGE_01 = 5740 , + HELP_TEXT_DEATH_IN_VILLAGE_02 = 5741 , + HELP_TEXT_DEATH_IN_VILLAGE_03 = 5742 , + HELP_TEXT_DEATH_IN_VILLAGE_04 = 5743 , + HELP_TEXT_DEATH_IN_VILLAGE_05 = 5744 , + HELP_TEXT_DEATH_IN_VILLAGE_06 = 5745 , + HELP_TEXT_DEATH_IN_VILLAGE_07 = 5746 , + HELP_TEXT_DEATH_IN_VILLAGE_08 = 5747 , + HELP_TEXT_DEATH_IN_VILLAGE_09 = 5748 , + HELP_TEXT_DEATH_IN_VILLAGE_10 = 5749 , + HELP_TEXT_WORSHIP_DEATHS_01 = 5750 , + HELP_TEXT_WORSHIP_DEATHS_02 = 5751 , + HELP_TEXT_TUTORIAL_LAND_01 = 5752 , + HELP_TEXT_TUTORIAL_LAND_02 = 5753 , + HELP_TEXT_TUTORIAL_LAND_03 = 5754 , + HELP_TEXT_TUTORIAL_LAND_04 = 5755 , + HELP_TEXT_TUTORIAL_LAND_05 = 5756 , + HELP_TEXT_TUTORIAL_LAND_06 = 5757 , + HELP_TEXT_TUTORIAL_LAND_07 = 5758 , + HELP_TEXT_TUTORIAL_LAND_08 = 5759 , + HELP_TEXT_TUTORIAL_LAND_09 = 5760 , + HELP_TEXT_TUTORIAL_LAND_10 = 5761 , + HELP_TEXT_TUTORIAL_LAND_11 = 5762 , + HELP_TEXT_TUTORIAL_LAND_12 = 5763 , + HELP_TEXT_TUTORIAL_LAND_13 = 5764 , + HELP_TEXT_TUTORIAL_LAND_14 = 5765 , + HELP_TEXT_TUTORIAL_LAND_15 = 5766 , + HELP_TEXT_TUTORIAL_LAND_16 = 5767 , + HELP_TEXT_TUTORIAL_LAND_17 = 5768 , + HELP_TEXT_TUTORIAL_LAND_18 = 5769 , + HELP_TEXT_TUTORIAL_LAND_19 = 5770 , + HELP_TEXT_TUTORIAL_LAND_20 = 5771 , + HELP_TEXT_TUTORIAL_LAND_21 = 5772 , + HELP_TEXT_TUTORIAL_LAND_22 = 5773 , + HELP_TEXT_TUTORIAL_LAND_23 = 5774 , + HELP_TEXT_TUTORIAL_LAND_24 = 5775 , + HELP_TEXT_TUTORIAL_LAND_25 = 5776 , + HELP_TEXT_TUTORIAL_LAND_26 = 5777 , + HELP_TEXT_TUTORIAL_LAND_27 = 5778 , + HELP_TEXT_TUTORIAL_LAND_28 = 5779 , + HELP_TEXT_TUTORIAL_LAND_29 = 5780 , + HELP_TEXT_TUTORIAL_LAND_30 = 5781 , + HELP_TEXT_TUTORIAL_LAND_31 = 5782 , + HELP_TEXT_TUTORIAL_LAND_32 = 5783 , + HELP_TEXT_TUTORIAL_LAND_33 = 5784 , + HELP_TEXT_TUTORIAL_LAND_34 = 5785 , + HELP_TEXT_TUTORIAL_LAND_35 = 5786 , + HELP_TEXT_TUTORIAL_LAND_36 = 5787 , + HELP_TEXT_TUTORIAL_LAND_37 = 5788 , + HELP_TEXT_TUTORIAL_LAND_38 = 5789 , + HELP_TEXT_TUTORIAL_LAND_39 = 5790 , + HELP_TEXT_TUTORIAL_LAND_40 = 5791 , + HELP_TEXT_TUTORIAL_LAND_41 = 5792 , + HELP_TEXT_TUTORIAL_LAND_42 = 5793 , + HELP_TEXT_TUTORIAL_LAND_43 = 5794 , + HELP_TEXT_TUTORIAL_LAND_44 = 5795 , + HELP_TEXT_TUTORIAL_LAND_45 = 5796 , + HELP_TEXT_TUTORIAL_LAND_46 = 5797 , + HELP_TEXT_TUTORIAL_LAND_47 = 5798 , + HELP_TEXT_TUTORIAL_LAND_48 = 5799 , + HELP_TEXT_TUTORIAL_LAND_49 = 5800 , + HELP_TEXT_TUTORIAL_LAND_50 = 5801 , + HELP_TEXT_TUTORIAL_LAND_51 = 5802 , + HELP_TEXT_TUTORIAL_LAND_52 = 5803 , + HELP_TEXT_TUTORIAL_LAND_53 = 5804 , + HELP_TEXT_TUTORIAL_LAND_54 = 5805 , + HELP_TEXT_TUTORIAL_LAND_55 = 5806 , + HELP_TEXT_TUTORIAL_LAND_56 = 5807 , + HELP_TEXT_TUTORIAL_LAND_57 = 5808 , + HELP_TEXT_TUTORIAL_LAND_58 = 5809 , + HELP_TEXT_TUTORIAL_LAND_59 = 5810 , + HELP_TEXT_TUTORIAL_LAND_60 = 5811 , + HELP_TEXT_TUTORIAL_LAND_61 = 5812 , + HELP_TEXT_TUTORIAL_LAND_62 = 5813 , + HELP_TEXT_TUTORIAL_LAND_63 = 5814 , + HELP_TEXT_TUTORIAL_LAND_64 = 5815 , + HELP_TEXT_TUTORIAL_LAND_65 = 5816 , + HELP_TEXT_TUTORIAL_LAND_66 = 5817 , + HELP_TEXT_TUTORIAL_LAND_67 = 5818 , + HELP_TEXT_TUTORIAL_LAND_68 = 5819 , + HELP_TEXT_TUTORIAL_LAND_69 = 5820 , + HELP_TEXT_TUTORIAL_LAND_70 = 5821 , + HELP_TEXT_TUTORIAL_LAND_71 = 5822 , + HELP_TEXT_TUTORIAL_LAND_72 = 5823 , + HELP_TEXT_TUTORIAL_LAND_73 = 5824 , + HELP_TEXT_TUTORIAL_LAND_74 = 5825 , + HELP_TEXT_TUTORIAL_LAND_75 = 5826 , + HELP_TEXT_TUTORIAL_LAND_76 = 5827 , + HELP_TEXT_TUTORIAL_LAND_77 = 5828 , + HELP_TEXT_TUTORIAL_LAND_78 = 5829 , + HELP_TEXT_TUTORIAL_LAND_79 = 5830 , + HELP_TEXT_TUTORIAL_LAND_80 = 5831 , + HELP_TEXT_TUTORIAL_LAND_81 = 5832 , + HELP_TEXT_TUTORIAL_LAND_82 = 5833 , + HELP_TEXT_TUTORIAL_LAND_83 = 5834 , + HELP_TEXT_TUTORIAL_LAND_84 = 5835 , + HELP_TEXT_TUTORIAL_LAND_85 = 5836 , + HELP_TEXT_TUTORIAL_LAND_86 = 5837 , + HELP_TEXT_TUTORIAL_LAND_87 = 5838 , + HELP_TEXT_TUTORIAL_LAND_88 = 5839 , + HELP_TEXT_TUTORIAL_LAND_89 = 5840 , + HELP_TEXT_TUTORIAL_LAND_90 = 5841 , + HELP_TEXT_TUTORIAL_LAND_91 = 5842 , + HELP_TEXT_TUTORIAL_LAND_92 = 5843 , + HELP_TEXT_TUTORIAL_LAND_93 = 5844 , + HELP_TEXT_TUTORIAL_LAND_94 = 5845 , + HELP_TEXT_TUTORIAL_LAND_95 = 5846 , + HELP_TEXT_TUTORIAL_LAND_96 = 5847 , + HELP_TEXT_TUTORIAL_LAND_97 = 5848 , + HELP_TEXT_TUTORIAL_LAND_98 = 5849 , + HELP_TEXT_TUTORIAL_LAND_99 = 5850 , + HELP_TEXT_TUTORIAL_LAND_100 = 5851 , + HELP_TEXT_TUTORIAL_LAND_101 = 5852 , + HELP_TEXT_TUTORIAL_LAND_102 = 5853 , + HELP_TEXT_TUTORIAL_LAND_103 = 5854 , + HELP_TEXT_TUTORIAL_LAND_104 = 5855 , + HELP_TEXT_TUTORIAL_LAND_105 = 5856 , + HELP_TEXT_TUTORIAL_LAND_106 = 5857 , + HELP_TEXT_TUTORIAL_LAND_107 = 5858 , + HELP_TEXT_TUTORIAL_LAND_108 = 5859 , + HELP_TEXT_TUTORIAL_LAND_109 = 5860 , + HELP_TEXT_TUTORIAL_LAND_110 = 5861 , + HELP_TEXT_TUTORIAL_LAND_111 = 5862 , + HELP_TEXT_TUTORIAL_LAND_112 = 5863 , + HELP_TEXT_JUST_IN_CASE_01 = 5864 , + HELP_TEXT_JUST_IN_CASE_02 = 5865 , + HELP_TEXT_JUST_IN_CASE_03 = 5866 , + HELP_TEXT_JUST_IN_CASE_04 = 5867 , + HELP_TEXT_JUST_IN_CASE_05 = 5868 , + HELP_TEXT_JUST_IN_CASE_06 = 5869 , + HELP_TEXT_JUST_IN_CASE_07 = 5870 , + HELP_TEXT_JUST_IN_CASE_08 = 5871 , + HELP_TEXT_JUST_IN_CASE_09 = 5872 , + HELP_TEXT_JUST_IN_CASE_10 = 5873 , + HELP_TEXT_JUST_IN_CASE_11 = 5874 , + HELP_TEXT_JUST_IN_CASE_12 = 5875 , + HELP_TEXT_JUST_IN_CASE_13 = 5876 , + HELP_TEXT_JUST_IN_CASE_14 = 5877 , + HELP_TEXT_JUST_IN_CASE_15 = 5878 , + HELP_TEXT_JUST_IN_CASE_16 = 5879 , + HELP_TEXT_JUST_IN_CASE_17 = 5880 , + HELP_TEXT_JUST_IN_CASE_18 = 5881 , + HELP_TEXT_JUST_IN_CASE_19 = 5882 , + HELP_TEXT_JUST_IN_CASE_20 = 5883 , + HELP_TEXT_JUST_IN_CASE_21 = 5884 , + HELP_TEXT_JUST_IN_CASE_22 = 5885 , + HELP_TEXT_JUST_IN_CASE_23 = 5886 , + HELP_TEXT_JUST_IN_CASE_24 = 5887 , + HELP_TEXT_JUST_IN_CASE_25 = 5888 , + HELP_TEXT_JUST_IN_CASE_26 = 5889 , + HELP_TEXT_JUST_IN_CASE_27 = 5890 , + HELP_TEXT_JUST_IN_CASE_28 = 5891 , + HELP_TEXT_JUST_IN_CASE_29 = 5892 , + HELP_TEXT_JUST_IN_CASE_30 = 5893 , + HELP_TEXT_JUST_IN_CASE_31 = 5894 , + HELP_TEXT_JUST_IN_CASE_32 = 5895 , + HELP_TEXT_JUST_IN_CASE_33 = 5896 , + HELP_TEXT_JUST_IN_CASE_34 = 5897 , + HELP_TEXT_JUST_IN_CASE_35 = 5898 , + HELP_TEXT_JUST_IN_CASE_36 = 5899 , + HELP_TEXT_JUST_IN_CASE_37 = 5900 , + HELP_TEXT_JUST_IN_CASE_38 = 5901 , + HELP_TEXT_JUST_IN_CASE_39 = 5902 , + HELP_TEXT_JUST_IN_CASE_40 = 5903 , + HELP_TEXT_JUST_IN_CASE_41 = 5904 , + HELP_TEXT_JUST_IN_CASE_42 = 5905 , + HELP_TEXT_JUST_IN_CASE_43 = 5906 , + HELP_TEXT_JUST_IN_CASE_44 = 5907 , + HELP_TEXT_JUST_IN_CASE_45 = 5908 , + HELP_TEXT_JUST_IN_CASE_46 = 5909 , + HELP_TEXT_QUESTION_VILLAGER_STATE_LOOK_AT_OBJECT = 5910 , + HELP_TEXT_QUESTION_VILLAGER_STATE_INSPECT_OBJECT = 5911 , + HELP_TEXT_QUESTION_VILLAGER_STATE_LOOK_AT_FLYING_OBJECT = 5912 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GOTO_FOOD_REACTION = 5913 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GOTO_WOOD_REACTION = 5914 , + HELP_TEXT_QUESTION_VILLAGER_STATE_FLEEING_AND_LOOK_AT_OBJECT = 5915 , + HELP_TEXT_QUESTION_VILLAGER_STATE_ARRIVES_AT_STORAGE_PIT_FOR_MATERIALS = 5916 , + HELP_TEXT_QUESTION_VILLAGER_STATE_HOUSEWIFE_RETURN_HOME_WITH_FOOD = 5917 , + HELP_TEXT_QUESTION_VILLAGER_STATE_MOURN_DEATH = 5918 , + HELP_TEXT_QUESTION_VILLAGER_STATE_WATCHING_FIGHT = 5919 , + HELP_TEXT_QUESTION_VILLAGER_STATE_HOMELESS_EAT_DINNER = 5920 , + HELP_TEXT_QUESTION_VILLAGER_STATE_INSPECT_CREATURE = 5921 , + HELP_TEXT_QUESTION_VILLAGER_STATE_FLEEING_FROM_CREATURE_REACTION = 5922 , + HELP_TEXT_QUESTION_VILLAGER_STATE_DECIDE_WHAT_TO_DO = 5923 , + HELP_TEXT_QUESTION_VILLAGER_STATE_EAT_OUTSIDE = 5924 , + HELP_TEXT_QUESTION_VILLAGER_STATE_SHEPHERD_TAKE_ANIMAL_FOR_SLAUGHTER = 5925 , + HELP_TEXT_QUESTION_VILLAGER_STATE_AFTER_TAP_ON_ABODE = 5926 , + HELP_TEXT_QUESTION_VILLAGER_STATE_SCRIPT_WANDER_AROUND_POS = 5927 , + HELP_TEXT_QUESTION_VILLAGER_STATE_CONTROLLED_BY_CREATURE = 5928 , + HELP_TEXT_QUESTION_VILLAGER_STATE_SEEN_DEAD_PERSON = 5929 , + HELP_TEXT_QUESTION_VILLAGER_STATE_DISCIPLE_NOTHING_TO_DO = 5930 , + HELP_TEXT_QUESTION_VILLAGER_STATE_ARTIFACT_DANCE = 5931 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GO_AND_HIDE_IN_NEARBY_BUILDING = 5932 , + HELP_TEXT_QUESTION_VILLAGER_STATE_LOOK_TO_SEE_IF_IT_IS_SAFE = 5933 , + HELP_TEXT_QUESTION_VILLAGER_STATE_SLEEP_ON_FLOOR = 5934 , + HELP_TEXT_QUESTION_VILLAGER_STATE_GET_FOOD_AT_WORSHIPSITE = 5935 , + HELP_TEXT_QUESTION_VILLAGER_STATE_AFTER_EMERGENCY = 5936 , + HELP_TEXT_QUESTION_VILLAGER_STATE_CHILLING = 5937 , + HELP_TEXT_QUESTION_EXTRA_01 = 5938 , + HELP_TEXT_QUESTION_EXTRA_02 = 5939 , + HELP_TEXT_QUESTION_EXTRA_03 = 5940 , + HELP_TEXT_QUESTION_EXTRA_04 = 5941 , + HELP_TEXT_QUESTION_EXTRA_05 = 5942 , + HELP_TEXT_QUESTION_EXTRA_06 = 5943 , + HELP_TEXT_QUESTION_EXTRA_07 = 5944 , + HELP_TEXT_QUESTION_EXTRA_08 = 5945 , + HELP_TEXT_QUESTION_EXTRA_09 = 5946 , + HELP_TEXT_QUESTION_EXTRA_10 = 5947 , + HELP_TEXT_QUESTION_EXTRA_11 = 5948 , + HELP_TEXT_QUESTION_EXTRA_12 = 5949 , + HELP_TEXT_QUESTION_EXTRA_13 = 5950 , + HELP_TEXT_QUESTION_EXTRA_14 = 5951 , + HELP_TEXT_QUESTION_EXTRA_15 = 5952 , + HELP_TEXT_QUESTION_EXTRA_16 = 5953 , + HELP_TEXT_QUESTION_EXTRA_17 = 5954 , + HELP_TEXT_QUESTION_EXTRA_18 = 5955 , + HELP_TEXT_QUESTION_EXTRA_19 = 5956 , + HELP_TEXT_QUESTION_EXTRA_20 = 5957 , + HELP_TEXT_QUESTION_EXTRA_21 = 5958 , + HELP_TEXT_QUESTION_EXTRA_22 = 5959 , + HELP_TEXT_QUESTION_EXTRA_23 = 5960 , + HELP_TEXT_QUESTION_EXTRA_24 = 5961 , + HELP_TEXT_QUESTION_EXTRA_25 = 5962 , + HELP_TEXT_QUESTION_EXTRA_26 = 5963 , + HELP_TEXT_QUESTION_EXTRA_27 = 5964 , + HELP_TEXT_QUESTION_EXTRA_28 = 5965 , + HELP_TEXT_QUESTION_EXTRA_29 = 5966 , + HELP_TEXT_QUESTION_EXTRA_30 = 5967 , + HELP_TEXT_QUESTION_EXTRA_31 = 5968 , + HELP_TEXT_QUESTION_EXTRA_32 = 5969 , + HELP_TEXT_QUESTION_EXTRA_33 = 5970 , + HELP_TEXT_QUESTION_EXTRA_34 = 5971 , + HELP_TEXT_QUESTION_EXTRA_35 = 5972 , + HELP_TEXT_QUESTION_EXTRA_36 = 5973 , + HELP_TEXT_QUESTION_EXTRA_37 = 5974 , + HELP_TEXT_QUESTION_EXTRA_38 = 5975 , + HELP_TEXT_QUESTION_EXTRA_39 = 5976 , + HELP_TEXT_QUESTION_EXTRA_40 = 5977 , + HELP_TEXT_QUESTION_EXTRA_41 = 5978 , + HELP_TEXT_QUESTION_EXTRA_42 = 5979 , + HELP_TEXT_QUESTION_EXTRA_43 = 5980 , + HELP_TEXT_QUESTION_EXTRA_44 = 5981 , + HELP_TEXT_QUESTION_EXTRA_45 = 5982 , + HELP_TEXT_QUESTION_EXTRA_46 = 5983 , + HELP_TEXT_QUESTION_EXTRA_47 = 5984 , + HELP_TEXT_QUESTION_EXTRA_48 = 5985 , + HELP_TEXT_QUESTION_EXTRA_49 = 5986 , + HELP_TEXT_QUESTION_EXTRA_50 = 5987 , + HELP_TEXT_QUESTION_EXTRA_51 = 5988 , + HELP_TEXT_QUESTION_EXTRA_52 = 5989 , + HELP_TEXT_QUESTION_EXTRA_53 = 5990 , + HELP_TEXT_QUESTION_EXTRA_54 = 5991 , + HELP_TEXT_QUESTION_EXTRA_55 = 5992 , + HELP_TEXT_QUESTION_EXTRA_56 = 5993 , + HELP_TEXT_QUESTION_EXTRA_57 = 5994 , + HELP_TEXT_QUESTION_EXTRA_58 = 5995 , + HELP_TEXT_QUESTION_EXTRA_59 = 5996 , + HELP_TEXT_QUESTION_EXTRA_60 = 5997 , + HELP_TEXT_QUESTION_EXTRA_61 = 5998 , + HELP_TEXT_QUESTION_EXTRA_62 = 5999 , + HELP_TEXT_QUESTION_EXTRA_63 = 6000 , + HELP_TEXT_QUESTION_EXTRA_64 = 6001 , + HELP_TEXT_QUESTION_EXTRA_65 = 6002 , + HELP_TEXT_QUESTION_EXTRA_66 = 6003 , + HELP_TEXT_QUESTION_EXTRA_67 = 6004 , + HELP_TEXT_QUESTION_EXTRA_68 = 6005 , + HELP_TEXT_QUESTION_EXTRA_69 = 6006 , + HELP_TEXT_QUESTION_EXTRA_70 = 6007 , + HELP_TEXT_QUESTION_EXTRA_71 = 6008 , + HELP_TEXT_QUESTION_EXTRA_72 = 6009 , + HELP_TEXT_QUESTION_EXTRA_73 = 6010 , + HELP_TEXT_QUESTION_EXTRA_74 = 6011 , + HELP_TEXT_QUESTION_EXTRA_75 = 6012 , + HELP_TEXT_QUESTION_EXTRA_76 = 6013 , + HELP_TEXT_QUESTION_EXTRA_77 = 6014 , + HELP_TEXT_QUESTION_EXTRA_78 = 6015 , + HELP_TEXT_QUESTION_EXTRA_79 = 6016 , + HELP_TEXT_QUESTION_EXTRA_80 = 6017 , + HELP_TEXT_QUESTION_EXTRA_81 = 6018 , + HELP_TEXT_QUESTION_EXTRA_82 = 6019 , + HELP_TEXT_QUESTION_EXTRA_83 = 6020 , + HELP_TEXT_QUESTION_EXTRA_84 = 6021 , + HELP_TEXT_QUESTION_EXTRA_85 = 6022 , + HELP_TEXT_QUESTION_EXTRA_86 = 6023 , + HELP_TEXT_QUESTION_EXTRA_87 = 6024 , + HELP_TEXT_PLAGUE_19 = 6025 , + HELP_TEXT_PLAGUE_20 = 6026 , + HELP_TEXT_PLAGUE_21 = 6027 , + HELP_TEXT_MARAUDERS_16 = 6028 , + HELP_TEXT_MARAUDERS_17 = 6029 , + HELP_TEXT_MARAUDERS_18 = 6030 , + HELP_TEXT_MARAUDERS_19 = 6031 , + HELP_TEXT_MARAUDERS_20 = 6032 , + HELP_TEXT_MARAUDERS_21 = 6033 , + HELP_TEXT_MARAUDERS_22 = 6034 , + HELP_TEXT_MARAUDERS_23 = 6035 , + HELP_TEXT_MARAUDERS_24 = 6036 , + HELP_TEXT_MARAUDERS_25 = 6037 , + HELP_TEXT_MARAUDERS_26 = 6038 , + HELP_TEXT_MARAUDERS_27 = 6039 , + HELP_TEXT_MORE_SINGING_STONES_01 = 6040 , + HELP_TEXT_MORE_SINGING_STONES_02 = 6041 , + HELP_TEXT_MORE_SINGING_STONES_03 = 6042 , + HELP_TEXT_MORE_SINGING_STONES_04 = 6043 , + HELP_TEXT_MORE_SINGING_STONES_05 = 6044 , + HELP_TEXT_MORE_SINGING_STONES_06 = 6045 , + HELP_TEXT_EXTRA_LAND_5_01 = 6046 , + HELP_TEXT_EXTRA_LAND_5_02 = 6047 , + HELP_TEXT_EXTRA_LAND_5_03 = 6048 , + HELP_TEXT_EXTRA_LAND_5_04 = 6049 , + HELP_TEXT_EXTRA_LAND_5_05 = 6050 , + HELP_TEXT_EXTRA_LAND_5_06 = 6051 , + HELP_TEXT_EXTRA_LAND_5_07 = 6052 , + HELP_TEXT_EXTRA_LAND_5_08 = 6053 , + HELP_TEXT_EXTRA_LAND_5_09 = 6054 , + HELP_TEXT_EXTRA_LAND_5_10 = 6055 , + HELP_TEXT_EXTRA_LAND_5_11 = 6056 , + HELP_TEXT_EXTRA_LAND_5_12 = 6057 , + HELP_TEXT_EXTRA_LAND_5_13 = 6058 , + HELP_TEXT_EXTRA_LAND_5_14 = 6059 , + HELP_TEXT_EXTRA_LAND_5_15 = 6060 , + HELP_TEXT_EXTRA_LAND_5_16 = 6061 , + HELP_TEXT_EXTRA_LAND_5_17 = 6062 , + HELP_TEXT_EXTRA_LAND_5_18 = 6063 , + HELP_TEXT_EXTRA_LAND_5_19 = 6064 , + HELP_TEXT_EXTRA_LAND_5_20 = 6065 , + HELP_TEXT_EXTRA_LAND_5_21 = 6066 , + HELP_TEXT_EXTRA_LAND_5_22 = 6067 , + HELP_TEXT_EXTRA_LAND_5_23 = 6068 , + HELP_TEXT_EXTRA_LAND_5_24 = 6069 , + HELP_TEXT_EXTRA_LAND_5_25 = 6070 , + HELP_TEXT_EXTRA_LAND_5_26 = 6071 , + HELP_TEXT_EXTRA_LAND_5_27 = 6072 , + HELP_TEXT_EXTRA_LAND_5_28 = 6073 , + HELP_TEXT_EXTRA_LAND_5_29 = 6074 , + HELP_TEXT_EXTRA_LAND_5_30 = 6075 , + HELP_TEXT_EXTRA_LAND_5_31 = 6076 , + HELP_TEXT_EXTRA_LAND_1_01 = 6077 , + HELP_TEXT_EXTRA_LAND_1_02 = 6078 , + HELP_TEXT_EXTRA_LAND_1_03 = 6079 , + HELP_TEXT_EXTRA_LAND_1_04 = 6080 , + HELP_TEXT_EXTRA_LAND_1_05 = 6081 , + HELP_TEXT_EXTRA_LAND_1_06 = 6082 , + HELP_TEXT_EXTRA_LAND_1_07 = 6083 , + HELP_TEXT_EXTRA_LAND_1_08 = 6084 , + HELP_TEXT_EXTRA_LAND_1_09 = 6085 , + HELP_TEXT_EXTRA_LAND_4_01 = 6086 , + HELP_TEXT_EXTRA_LAND_4_02 = 6087 , + HELP_TEXT_REST_HERE_01 = 6088 , + HELP_TEXT_REST_HERE_02 = 6089 , + HELP_TEXT_REST_HERE_03 = 6090 , + HELP_TEXT_REST_HERE_04 = 6091 , + HELP_TEXT_EXTRA_KHAZAR_01 = 6092 , + HELP_TEXT_EXTRA_KHAZAR_02 = 6093 , + HELP_TEXT_EXTRA_KHAZAR_03 = 6094 , + HELP_TEXT_EXTRA_KHAZAR_04 = 6095 , + HELP_TEXT_EXTRA_KHAZAR_05 = 6096 , + HELP_TEXT_EXTRA_KHAZAR_06 = 6097 , + HELP_TEXT_EXTRA_KHAZAR_07 = 6098 , + HELP_TEXT_EXTRA_KHAZAR_08 = 6099 , + HELP_TEXT_EXTRA_KHAZAR_09 = 6100 , + HELP_TEXT_EXTRA_KHAZAR_10 = 6101 , + HELP_TEXT_EXTRA_KHAZAR_11 = 6102 , + HELP_TEXT_EXTRA_KHAZAR_12 = 6103 , + HELP_TEXT_EXTRA_KHAZAR_13 = 6104 , + HELP_TEXT_EXTRA_KHAZAR_14 = 6105 , + HELP_TEXT_EXTRA_KHAZAR_15 = 6106 , + HELP_TEXT_EXTRA_KHAZAR_16 = 6107 , + HELP_TEXT_EXTRA_KHAZAR_17 = 6108 , + HELP_TEXT_EXTRA_KHAZAR_18 = 6109 , + HELP_TEXT_EXTRA_KHAZAR_19 = 6110 , + HELP_TEXT_EXTRA_KHAZAR_20 = 6111 , + HELP_TEXT_EXTRA_KHAZAR_21 = 6112 , + HELP_TEXT_EXTRA_KHAZAR_22 = 6113 , + HELP_TEXT_EXTRA_KHAZAR_23 = 6114 , + HELP_TEXT_EXTRA_KHAZAR_24 = 6115 , + HELP_TEXT_EXTRA_KHAZAR_25 = 6116 , + HELP_TEXT_EXTRA_KHAZAR_26 = 6117 , + HELP_TEXT_EXTRA_KHAZAR_27 = 6118 , + HELP_TEXT_EXTRA_KHAZAR_28 = 6119 , + HELP_TEXT_EXTRA_KHAZAR_29 = 6120 , + HELP_TEXT_PICKUP_01 = 6121 , + HELP_TEXT_PICKUP_CREATURE_GUIDE_01 = 6122 , + HELP_TEXT_PICKUP_CREATURE_GUIDE_02 = 6123 , + HELP_TEXT_PICKUP_CREATURE_GUIDE_03 = 6124 , + HELP_TEXT_PICKUP_CREATURE_GUIDE_04 = 6125 , + HELP_TEXT_PICKUP_FOLLOW_US_01 = 6126 , + HELP_TEXT_PICKUP_LEAVE_THROUGH_VORTEX1_01 = 6127 , + HELP_TEXT_PICKUP_LEAVE_THROUGH_VORTEX1_02 = 6128 , + HELP_TEXT_PICKUP_LEAVE_THROUGH_VORTEX1_03 = 6129 , + HELP_TEXT_PICKUP_LEAVE_THROUGH_VORTEX1_04 = 6130 , + HELP_TEXT_PICKUP_GREEDYFARMER_01 = 6131 , + HELP_TEXT_PICKUP_GREEDYFARMER_02 = 6132 , + HELP_TEXT_PICKUP_IDOLPYRE_01 = 6133 , + HELP_TEXT_PICKUP_IDOLPYRE_02 = 6134 , + HELP_TEXT_PICKUP_MISSIONARIES_01 = 6135 , + HELP_TEXT_STATE_INFO_LIFE = 6136 , + HELP_TEXT_STATE_INFO_FOOD_IN_BELLY = 6137 , + HELP_TEXT_STATE_INFO_AGE = 6138 , + HELP_TEXT_STATE_INFO_POISONED = 6139 , + HELP_TEXT_STATE_INFO_PREGNANT = 6140 , + HELP_TEXT_STATE_INVALID_STATE = 6141 , + HELP_TEXT_STATE_MOVE_TO_POS = 6142 , + HELP_TEXT_STATE_MOVE_TO_OBJECT = 6143 , + HELP_TEXT_STATE_MOVE_ON_STRUCTURE = 6144 , + HELP_TEXT_STATE_IN_SCRIPT = 6145 , + HELP_TEXT_STATE_IN_DANCE = 6146 , + HELP_TEXT_STATE_FLEEING_FROM_OBJECT_REACTION = 6147 , + HELP_TEXT_STATE_LOOKING_AT_OBJECT_REACTION = 6148 , + HELP_TEXT_STATE_FOLLOWING_OBJECT_REACTION = 6149 , + HELP_TEXT_STATE_INSPECT_OBJECT_REACTION = 6150 , + HELP_TEXT_STATE_FLYING = 6151 , + HELP_TEXT_STATE_LANDED = 6152 , + HELP_TEXT_STATE_LOOK_AT_FLYING_OBJECT_REACTION = 6153 , + HELP_TEXT_STATE_SET_DYING = 6154 , + HELP_TEXT_STATE_DYING = 6155 , + HELP_TEXT_STATE_DEAD = 6156 , + HELP_TEXT_STATE_DROWNING = 6157 , + HELP_TEXT_STATE_DOWNED = 6158 , + HELP_TEXT_STATE_BEING_EATEN = 6159 , + HELP_TEXT_STATE_GOTO_FOOD_REACTION = 6160 , + HELP_TEXT_STATE_ARRIVES_AT_FOOD_REACTION = 6161 , + HELP_TEXT_STATE_GOTO_WOOD_REACTION = 6162 , + HELP_TEXT_STATE_ARRIVES_AT_WOOD_REACTION = 6163 , + HELP_TEXT_STATE_WAIT_FOR_ANIMATION = 6164 , + HELP_TEXT_STATE_IN_HAND = 6165 , + HELP_TEXT_STATE_GOTO_PICKUP_BALL_REACTION = 6166 , + HELP_TEXT_STATE_ARRIVES_AT_PICKUP_BALL_REACTION = 6167 , + HELP_TEXT_STATE_MOVE_IN_FLOCK = 6168 , + HELP_TEXT_STATE_MOVE_ALONG_PATH = 6169 , + HELP_TEXT_STATE_MOVE_ON_PATH = 6170 , + HELP_TEXT_STATE_FLEEING_AND_LOOKING_AT_OBJECT_REACTION = 6171 , + HELP_TEXT_STATE_GOTO_STORAGE_PIT_FOR_DROP_OFF = 6172 , + HELP_TEXT_STATE_ARRIVES_AT_STORAGE_PIT_FOR_DROP_OFF = 6173 , + HELP_TEXT_STATE_GOTO_STORAGE_PIT_FOR_FOOD = 6174 , + HELP_TEXT_STATE_ARRIVES_AT_STORAGE_PIT_FOR_FOOD = 6175 , + HELP_TEXT_STATE_ARRIVES_AT_HOME_WITH_FOOD = 6176 , + HELP_TEXT_STATE_GO_HOME = 6177 , + HELP_TEXT_STATE_ARRIVES_HOME = 6178 , + HELP_TEXT_STATE_AT_HOME = 6179 , + HELP_TEXT_STATE_ARRIVES_AT_STORAGE_PIT_FOR_BUILDING_MATERIALS = 6180 , + HELP_TEXT_STATE_ARRIVES_AT_BUILDING_SITE = 6181 , + HELP_TEXT_STATE_BUILDING = 6182 , + HELP_TEXT_STATE_GOTO_STORAGE_PIT_FOR_WORSHIP_SUPPLIES = 6183 , + HELP_TEXT_STATE_ARRIVES_AT_STORAGE_PIT_FOR_WORSHIP_SUPPLIES = 6184 , + HELP_TEXT_STATE_GOTO_WORSHIP_SITE_WITH_SUPPLIES = 6185 , + HELP_TEXT_STATE_MOVE_TO_WORSHIP_SITE_WITH_SUPPLIES = 6186 , + HELP_TEXT_STATE_ARRIVES_AT_WORSHIP_SITE_WITH_SUPPLIES = 6187 , + HELP_TEXT_STATE_FORESTER_MOVE_TO_FOREST = 6188 , + HELP_TEXT_STATE_FORESTER_GOTO_FOREST = 6189 , + HELP_TEXT_STATE_FORESTER_ARRIVES_AT_FOREST = 6190 , + HELP_TEXT_STATE_FORESTER_CHOPS_TREE = 6191 , + HELP_TEXT_STATE_FORESTER_CHOPS_TREE_FOR_BUILDING = 6192 , + HELP_TEXT_STATE_FORESTER_FINISHED_FORESTERING = 6193 , + HELP_TEXT_STATE_ARRIVES_AT_BIG_FOREST = 6194 , + HELP_TEXT_STATE_ARRIVES_AT_BIG_FOREST_FOR_BUILDING = 6195 , + HELP_TEXT_STATE_FISHERMAN_ARRIVES_AT_FISHING = 6196 , + HELP_TEXT_STATE_FISHING = 6197 , + HELP_TEXT_STATE_WAIT_FOR_COUNTER = 6198 , + HELP_TEXT_STATE_GOTO_WORSHIP_SITE_FOR_WORSHIP = 6199 , + HELP_TEXT_STATE_ARRIVES_AT_WORSHIP_SITE_FOR_WORSHIP = 6200 , + HELP_TEXT_STATE_WORSHIPPING_AT_WORSHIP_SITE = 6201 , + HELP_TEXT_STATE_GOTO_ALTAR_FOR_REST = 6202 , + HELP_TEXT_STATE_ARRIVES_AT_ALTAR_FOR_REST = 6203 , + HELP_TEXT_STATE_AT_ALTAR_REST = 6204 , + HELP_TEXT_STATE_AT_ALTAR_FINISHED_REST = 6205 , + HELP_TEXT_STATE_RESTART_WORSHIPPING_AT_WORSHIP_SITE = 6206 , + HELP_TEXT_STATE_RESTART_WORSHIPPING_CREATURE = 6207 , + HELP_TEXT_STATE_RESTART_MEETING = 6208 , + HELP_TEXT_STATE_FARMER_ARRIVES_AT_FARM = 6209 , + HELP_TEXT_STATE_FARMER_PLANTS_CROP = 6210 , + HELP_TEXT_STATE_FARMER_DIGS_UP_CROP = 6211 , + HELP_TEXT_STATE_MOVE_TO_FOOTBALL_PITCH_CONSTRUCTION = 6212 , + HELP_TEXT_STATE_FOOTBALL_WALK_TO_POSITION = 6213 , + HELP_TEXT_STATE_FOOTBALL_WAIT_FOR_KICK_OFF = 6214 , + HELP_TEXT_STATE_FOOTBALL_ATTACKER = 6215 , + HELP_TEXT_STATE_FOOTBALL_GOALIE = 6216 , + HELP_TEXT_STATE_FOOTBALL_DEFENDER = 6217 , + HELP_TEXT_STATE_FOOTBALL_WON_GOAL = 6218 , + HELP_TEXT_STATE_FOOTBALL_LOST_GOAL = 6219 , + HELP_TEXT_STATE_START_MOVE_TO_PICK_UP_BALL_FOR_DEAD_BALL = 6220 , + HELP_TEXT_STATE_ARRIVED_AT_PICK_UP_BALL_FOR_DEAD_BALL = 6221 , + HELP_TEXT_STATE_ARRIVED_AT_PUT_DOWN_BALL_FOR_DEAD_BALL_START = 6222 , + HELP_TEXT_STATE_ARRIVED_AT_PUT_DOWN_BALL_FOR_DEAD_BALL_END = 6223 , + HELP_TEXT_STATE_FOOTBALL_MATCH_PAUSED = 6224 , + HELP_TEXT_STATE_FOOTBALL_WATCH_MATCH = 6225 , + HELP_TEXT_STATE_FOOTBALL_MEXICAN_WAVE = 6226 , + HELP_TEXT_STATE_CREATED = 6227 , + HELP_TEXT_STATE_ARRIVES_IN_ABODE_TO_TRADE = 6228 , + HELP_TEXT_STATE_ARRIVES_IN_ABODE_TO_PICK_UP_EXCESS = 6229 , + HELP_TEXT_STATE_MAKE_SCARED_STIFF = 6230 , + HELP_TEXT_STATE_SCARED_STIFF = 6231 , + HELP_TEXT_STATE_WORSHIPPING_CREATURE = 6232 , + HELP_TEXT_STATE_SHEPHERD_LOOK_FOR_FLOCK = 6233 , + HELP_TEXT_STATE_SHEPHERD_MOVE_FLOCK_TO_WATER = 6234 , + HELP_TEXT_STATE_SHEPHERD_MOVE_FLOCK_TO_FOOD = 6235 , + HELP_TEXT_STATE_SHEPHERD_MOVE_FLOCK_BACK = 6236 , + HELP_TEXT_STATE_SHEPHERD_DECIDE_WHAT_TO_DO_WITH_FLOCK = 6237 , + HELP_TEXT_STATE_SHEPHERD_WAIT_FOR_FLOCK = 6238 , + HELP_TEXT_STATE_SHEPHERD_SLAUGHTER_ANIMAL = 6239 , + HELP_TEXT_STATE_SHEPHERD_FETCH_STRAY = 6240 , + HELP_TEXT_STATE_SHEPHERD_GOTO_FLOCK = 6241 , + HELP_TEXT_STATE_HOUSEWIFE_AT_HOME = 6242 , + HELP_TEXT_STATE_HOUSEWIFE_GOTO_STORAGE_PIT = 6243 , + HELP_TEXT_STATE_HOUSEWIFE_ARRIVES_AT_STORAGE_PIT = 6244 , + HELP_TEXT_STATE_HOUSEWIFE_PICKUP_FROM_STORAGE_PIT = 6245 , + HELP_TEXT_STATE_HOUSEWIFE_RETURN_HOME_WITH_FOOD = 6246 , + HELP_TEXT_STATE_HOUSEWIFE_MAKE_DINNER = 6247 , + HELP_TEXT_STATE_HOUSEWIFE_SERVES_DINNER = 6248 , + HELP_TEXT_STATE_HOUSEWIFE_CLEARS_AWAY_DINNER = 6249 , + HELP_TEXT_STATE_HOUSEWIFE_DOES_HOUSEWORK = 6250 , + HELP_TEXT_STATE_HOUSEWIFE_GOSSIPS_AROUND_STORAGE_PIT = 6251 , + HELP_TEXT_STATE_HOUSEWIFE_STARTS_GIVING_BIRTH = 6252 , + HELP_TEXT_STATE_HOUSEWIFE_GIVING_BIRTH = 6253 , + HELP_TEXT_STATE_HOUSEWIFE_GIVEN_BIRTH = 6254 , + HELP_TEXT_STATE_CHILD_AT_CRECHE = 6255 , + HELP_TEXT_STATE_CHILD_FOLLOWS_MOTHER = 6256 , + HELP_TEXT_STATE_CHILD_BECOMES_ADULT = 6257 , + HELP_TEXT_STATE_SITS_DOWN_TO_DINNER = 6258 , + HELP_TEXT_STATE_EAT_FOOD = 6259 , + HELP_TEXT_STATE_EAT_FOOD_AT_HOME = 6260 , + HELP_TEXT_STATE_GOTO_BED_AT_HOME = 6261 , + HELP_TEXT_STATE_SLEEPING_AT_HOME = 6262 , + HELP_TEXT_STATE_WAKE_UP_AT_HOME = 6263 , + HELP_TEXT_STATE_START_HAVING_SEX = 6264 , + HELP_TEXT_STATE_HAVING_SEX = 6265 , + HELP_TEXT_STATE_STOP_HAVING_SEX = 6266 , + HELP_TEXT_STATE_START_HAVING_SEX_AT_HOME = 6267 , + HELP_TEXT_STATE_HAVING_SEX_AT_HOME = 6268 , + HELP_TEXT_STATE_STOP_HAVING_SEX_AT_HOME = 6269 , + HELP_TEXT_STATE_WAIT_FOR_DINNER = 6270 , + HELP_TEXT_STATE_HOMELESS_START = 6271 , + HELP_TEXT_STATE_VAGRANT_START = 6272 , + HELP_TEXT_STATE_MORN_DEATH = 6273 , + HELP_TEXT_STATE_PERFORM_INSPECTION_REACTION = 6274 , + HELP_TEXT_STATE_APPROACH_OBJECT_REACTION = 6275 , + HELP_TEXT_STATE_INITIALISE_TELL_OTHERS_ABOUT_OBJECT = 6276 , + HELP_TEXT_STATE_TELL_OTHERS_ABOUT_INTERESTING_OBJECT = 6277 , + HELP_TEXT_STATE_APPROACH_VILLAGER_TO_TALK_TO = 6278 , + HELP_TEXT_STATE_TELL_PARTICULAR_VILLAGER_ABOUT_OBJECT = 6279 , + HELP_TEXT_STATE_INITIALISE_LOOK_AROUND_FOR_VILLAGER_TO_TELL = 6280 , + HELP_TEXT_STATE_LOOK_AROUND_FOR_VILLAGER_TO_TELL = 6281 , + HELP_TEXT_STATE_MOVE_TOWARDS_OBJECT_TO_LOOK_AT = 6282 , + HELP_TEXT_STATE_INITIALISE_IMPRESSED_REACTION = 6283 , + HELP_TEXT_STATE_PERFORM_IMPRESSED_REACTION = 6284 , + HELP_TEXT_STATE_INITIALISE_FIGHT_REACTION = 6285 , + HELP_TEXT_STATE_PERFORM_FIGHT_REACTION = 6286 , + HELP_TEXT_STATE_HOMELESS_EAT_DINNER = 6287 , + HELP_TEXT_STATE_INSPECT_CREATURE_REACTION = 6288 , + HELP_TEXT_STATE_PERFORM_INSPECT_CREATURE_REACTION = 6289 , + HELP_TEXT_STATE_APPROACH_CREATURE_REACTION = 6290 , + HELP_TEXT_STATE_INITIALISE_BEWILDERED_BY_MAGIC_TREE_REACTION = 6291 , + HELP_TEXT_STATE_PERFORM_BEWILDERED_BY_MAGIC_TREE_REACTION = 6292 , + HELP_TEXT_STATE_TURN_TO_FACE_MAGIC_TREE = 6293 , + HELP_TEXT_STATE_LOOK_AT_MAGIC_TREE = 6294 , + HELP_TEXT_STATE_DANCE_FOR_EDITING_PURPOSES = 6295 , + HELP_TEXT_STATE_MOVE_TO_DANCE_POS = 6296 , + HELP_TEXT_STATE_INITIALISE_RESPECT_CREATURE_REACTION = 6297 , + HELP_TEXT_STATE_PERFORM_RESPECT_CREATURE_REACTION = 6298 , + HELP_TEXT_STATE_FINISH_RESPECT_CREATURE_REACTION = 6299 , + HELP_TEXT_STATE_APPROACH_HAND_REACTION = 6300 , + HELP_TEXT_STATE_FLEEING_FROM_CREATURE_REACTION = 6301 , + HELP_TEXT_STATE_TURN_TO_FACE_CREATURE_REACTION = 6302 , + HELP_TEXT_STATE_WATCH_FLYING_OBJECT_REACTION = 6303 , + HELP_TEXT_STATE_POINT_AT_FLYING_OBJECT_REACTION = 6304 , + HELP_TEXT_STATE_DECIDE_WHAT_TO_DO = 6305 , + HELP_TEXT_STATE_INTERACT_DECIDE_WHAT_TO_DO = 6306 , + HELP_TEXT_STATE_EAT_OUTSIDE = 6307 , + HELP_TEXT_STATE_GOTO_ABODE_BURNING_REACTION = 6308 , + HELP_TEXT_STATE_ARRIVES_AT_ABODE_BURNING_REACTION = 6309 , + HELP_TEXT_STATE_REPAIRS_ABODE = 6310 , + HELP_TEXT_STATE_RUN_AWAY_FROM_OBJECT_REACTION = 6311 , + HELP_TEXT_STATE_MOVE_TOWARDS_CREATURE_REACTION = 6312 , + HELP_TEXT_STATE_AMAZED_BY_MAGIC_SHIELD_REACTION = 6313 , + HELP_TEXT_STATE_VILLAGER_GOSSIPS = 6314 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_ANIMAL = 6315 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_WORSHIP_SITE = 6316 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_ABODE = 6317 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_FIELD = 6318 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_FISH_FARM = 6319 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_TREE = 6320 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_BALL = 6321 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_POT = 6322 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_FOOTBALL = 6323 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_VILLAGER = 6324 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_MAGIC_LIVING = 6325 , + HELP_TEXT_STATE_CHECK_INTERACT_WITH_ROCK = 6326 , + HELP_TEXT_STATE_ARRIVES_AT_ROCK_FOR_WOOD = 6327 , + HELP_TEXT_STATE_GOT_WOOD_FROM_ROCK = 6328 , + HELP_TEXT_STATE_REENTER_BUILDING_STATE = 6329 , + HELP_TEXT_STATE_ARRIVE_AT_PUSH_OBJECT = 6330 , + HELP_TEXT_STATE_TAKE_WOOD_FROM_TREE = 6331 , + HELP_TEXT_STATE_TAKE_WOOD_FROM_POT = 6332 , + HELP_TEXT_STATE_TAKE_WOOD_FROM_TREE_FOR_BUILDING = 6333 , + HELP_TEXT_STATE_TAKE_WOOD_FROM_POT_FOR_BUILDING = 6334 , + HELP_TEXT_STATE_SHEPHERD_TAKE_ANIMAL_FOR_SLAUGHTER = 6335 , + HELP_TEXT_STATE_SHEPHERD_TAKES_CONTROL_OF_FLOCK = 6336 , + HELP_TEXT_STATE_SHEPHERD_RELEASES_CONTROL_OF_FLOCK = 6337 , + HELP_TEXT_STATE_DANCE_BUT_NOT_WORSHIP = 6338 , + HELP_TEXT_STATE_FAINTING_REACTION = 6339 , + HELP_TEXT_STATE_START_CONFUSED_REACTION = 6340 , + HELP_TEXT_STATE_CONFUSED_REACTION = 6341 , + HELP_TEXT_STATE_AFTER_TAP_ON_ABODE = 6342 , + HELP_TEXT_STATE_WEAK_ON_GROUND = 6343 , + HELP_TEXT_STATE_SCRIPT_WANDER_AROUND_POSITION = 6344 , + HELP_TEXT_STATE_SCRIPT_PLAY_ANIM = 6345 , + HELP_TEXT_STATE_GO_TOWARDS_TELEPORT_REACTION = 6346 , + HELP_TEXT_STATE_TELEPORT_REACTION = 6347 , + HELP_TEXT_STATE_DANCE_WHILE_REACTING = 6348 , + HELP_TEXT_STATE_CONTROLLED_BY_CREATURE = 6349 , + HELP_TEXT_STATE_POINT_AT_DEAD_PERSON = 6350 , + HELP_TEXT_STATE_GO_TOWARDS_DEAD_PERSON = 6351 , + HELP_TEXT_STATE_LOOK_AT_DEAD_PERSON = 6352 , + HELP_TEXT_STATE_MOURN_DEAD_PERSON = 6353 , + HELP_TEXT_STATE_NOTHING_TO_DO = 6354 , + HELP_TEXT_STATE_ARRIVES_AT_WORKSHOP_FOR_DROP_OFF = 6355 , + HELP_TEXT_STATE_ARRIVES_AT_STORAGE_PIT_FOR_WORKSHOP_MATERIALS = 6356 , + HELP_TEXT_STATE_ARRIVES_AT_SCAFFOLD_FOR_PICKUP = 6357 , + HELP_TEXT_STATE_ARRIVES_AT_BUILDING_SITE_WITH_SCAFFOLD = 6358 , + HELP_TEXT_STATE_MOVE_SCAFFOLD_TO_BUILDING_SITE = 6359 , + HELP_TEXT_STATE_SHOW_POISONED = 6360 , + HELP_TEXT_STATE_HIDING_AT_WORSHIP_SITE = 6361 , + HELP_TEXT_STATE_CROWD_REACTION = 6362 , + HELP_TEXT_STATE_REACT_TO_FIRE = 6363 , + HELP_TEXT_STATE_PUT_OUT_FIRE_BY_BEATING = 6364 , + HELP_TEXT_STATE_PUT_OUT_FIRE_WITH_WATER = 6365 , + HELP_TEXT_STATE_GET_WATER_TO_PUT_OUT_FIRE = 6366 , + HELP_TEXT_STATE_ON_FIRE = 6367 , + HELP_TEXT_STATE_MOVE_AROUND_FIRE = 6368 , + HELP_TEXT_STATE_DISCIPLE_NOTHING_TO_DO = 6369 , + HELP_TEXT_STATE_FOOTBALL_MOVE_TO_BALL = 6370 , + HELP_TEXT_STATE_ARRIVES_AT_STORAGE_PIT_FOR_TRADER_PICK_UP = 6371 , + HELP_TEXT_STATE_ARRIVES_AT_STORAGE_PIT_FOR_TRADER_DROP_OFF = 6372 , + HELP_TEXT_STATE_BREEDER_DISCIPLE = 6373 , + HELP_TEXT_STATE_MISSIONARY_DISCIPLE = 6374 , + HELP_TEXT_STATE_REACT_TO_BREEDER = 6375 , + HELP_TEXT_STATE_SHEPHERD_CHECK_ANIMAL_FOR_SLAUGHTER = 6376 , + HELP_TEXT_STATE_INTERACT_DECIDE_WHAT_TO_DO_FOR_OTHER_VILLAGER = 6377 , + HELP_TEXT_STATE_ARTIFACT_DANCE = 6378 , + HELP_TEXT_STATE_FLEEING_FROM_PREDATOR_REACTION = 6379 , + HELP_TEXT_STATE_WAIT_FOR_WOOD = 6380 , + HELP_TEXT_STATE_INSPECT_OBJECT = 6381 , + HELP_TEXT_STATE_GO_HOME_AND_CHANGE = 6382 , + HELP_TEXT_STATE_WAIT_FOR_MATE = 6383 , + HELP_TEXT_STATE_GO_AND_HIDE_IN_NEARBY_BUILDING = 6384 , + HELP_TEXT_STATE_LOOK_TO_SEE_IF_IT_IS_SAFE = 6385 , + HELP_TEXT_STATE_SLEEP_IN_TENT = 6386 , + HELP_TEXT_STATE_PAUSE_FOR_A_SECOND = 6387 , + HELP_TEXT_STATE_PANIC_REACTION = 6388 , + HELP_TEXT_STATE_GET_FOOD_AT_WORSHIP_SITE = 6389 , + HELP_TEXT_STATE_GOTO_CONGREGATE_IN_TOWN_AFTER_EMERGENCY = 6390 , + HELP_TEXT_STATE_CONGREGATE_IN_TOWN_AFTER_EMERGENCY = 6391 , + HELP_TEXT_STATE_SCRIPT_IN_CROWD = 6392 , + HELP_TEXT_STATE_GO_AND_CHILLOUT_OUTSIDE_HOME = 6393 , + HELP_TEXT_STATE_SIT_AND_CHILLOUT = 6394 , + HELP_TEXT_STATE_SCRIPT_GO_AND_MOVE_ALONG_PATH = 6395 , + HELP_TEXT_MPFE_TITLE_CHOOSE_CONNECTION = 6396 , + HELP_TEXT_MPFE_STATUS_CC_STATUS_LIST = 6397 , + HELP_TEXT_MPFE_STATUS_CC_STATUS_BACK = 6398 , + HELP_TEXT_MPFE_STATUS_CC_STATUS_CONTINUE = 6399 , + HELP_TEXT_MPFE_LAN_STRING = 6400 , + HELP_TEXT_MPFE_FG_TITLE = 6401 , + HELP_TEXT_MPFE_FG_SEARCH_INTERNET = 6402 , + HELP_TEXT_MPFE_FG_SEARCH_LAN = 6403 , + HELP_TEXT_MPFE_TITLE_LOGIN_CONNECTION = 6404 , + HELP_TEXT_MPFE_LOGIN = 6405 , + HELP_TEXT_MPFE_USERNAME_LABEL = 6406 , + HELP_TEXT_MPFE_PASSWORD_LABEL = 6407 , + HELP_TEXT_MPFE_DOWNLOADING_MAP_LIST = 6408 , + HELP_TEXT_MPFE_COULD_NOT_CONNECT_TO_MAP_SERVER = 6409 , + HELP_TEXT_MPFE_ERROR_DOWNLOADING_MAPLIST = 6410 , + HELP_TEXT_MPFE_ERROR_CHANNELHOSTLEFT = 6411 , + HELP_TEXT_MPFE_ERROR_ALREADY_IN_ROOM = 6412 , + HELP_TEXT_MPFE_CS_TITLE = 6413 , + HELP_TEXT_MPFE_CS_TITLE_LAN = 6414 , + HELP_TEXT_MPFE_CS_HELPBUTTON = 6415 , + HELP_TEXT_MPFE_CS_JOINGAME_BUTTON = 6416 , + HELP_TEXT_MPFE_CS_CREATEGAME_BUTTON = 6417 , + HELP_TEXT_MPFE_CS_GAME_LABEL = 6418 , + HELP_TEXT_MPFE_CS_PASSWORD_LABEL = 6419 , + HELP_TEXT_MPFE_CS_CURRENTGAMES = 6420 , + HELP_TEXT_MPFE_CS_PLAYERSINGAME = 6421 , + HELP_TEXT_MPFE_GS_COULD_NOT_CONNECT = 6422 , + HELP_TEXT_MPFE_GS_DISCONNECTED = 6423 , + HELP_TEXT_MPFE_GS_CONNECTING = 6424 , + HELP_TEXT_MPFE_STARTGAME = 6425 , + HELP_TEXT_MPFE_PLAYING = 6426 , + HELP_TEXT_MPFE_WRONGVER = 6427 , + HELP_TEXT_MPFE_NEEDS_PASSWORD = 6428 , + HELP_TEXT_MPFE_ENTER_PASSWORD = 6429 , + HELP_TEXT_MPFE_WRONG_PASSWORD = 6430 , + HELP_TEXT_MPFE_PRIVMSG_RECEIVED = 6431 , + HELP_TEXT_MPFE_PRIVMSG_SENT = 6432 , + HELP_TEXT_MPFE_LAN_CONNECTING = 6433 , + HELP_TEXT_MPFER_COULDNOTQUERYDATABASE = 6434 , + HELP_TEXT_MPFER_NOTFOUNDINDATABASE = 6435 , + HELP_TEXT_MPFER_COULDNOTDOWNLOADMAP = 6436 , + HELP_TEXT_MPFER_COULDNOTDOWNLOADTHUMB = 6437 , + HELP_TEXT_MPFER_WANTSTOJOIN = 6438 , + HELP_TEXT_MPFER_OTHERCOULDNOTDOWNLOAD = 6439 , + HELP_TEXT_MPFER_STILLDOWNLOADING = 6440 , + HELP_TEXT_MPFER_DENIEDJOIN = 6441 , + HELP_TEXT_MPFER_KICKEDYOU = 6442 , + HELP_TEXT_MPFER_KICKEDYOUGAME = 6443 , + HELP_TEXT_MPFER_KICKFAILED = 6444 , + HELP_TEXT_MPFER_INVITESYOU = 6445 , + HELP_TEXT_DYK_EXPLAINED_01 = 6446 , + HELP_TEXT_DYK_EXPLAINED_02 = 6447 , + HELP_TEXT_DYK_EXPLAINED_03 = 6448 , + HELP_TEXT_CREATURE_WONT_ATTACK_OWN_TOWN_01 = 6449 , + HELP_TEXT_CREATURE_LOW_ENERGY_01 = 6450 , + HELP_TEXT_L2_GOD_REACTION_01 = 6451 , + HELP_TEXT_L2_GOD_REACTION_02 = 6452 , + HELP_TEXT_L2_GOD_REACTION_03 = 6453 , + HELP_TEXT_L2_GOD_REACTION_04 = 6454 , + HELP_TEXT_L2_GOD_REACTION_05 = 6455 , + HELP_TEXT_L2_GOD_REACTION_06 = 6456 , + HELP_TEXT_L2_GOD_REACTION_07 = 6457 , + HELP_TEXT_L2_GOD_REACTION_08 = 6458 , + HELP_TEXT_L2_GOD_REACTION_09 = 6459 , + HELP_TEXT_L2_GOD_REACTION_10 = 6460 , + HELP_TEXT_L2_GOD_REACTION_11 = 6461 , + HELP_TEXT_L2_GOD_REACTION_12 = 6462 , + HELP_TEXT_L2_GOD_REACTION_13 = 6463 , + HELP_TEXT_L2_GOD_REACTION_14 = 6464 , + HELP_TEXT_L2_GOD_REACTION_15 = 6465 , + HELP_TEXT_L2_GOD_REACTION_16 = 6466 , + HELP_TEXT_L2_GOD_REACTION_17 = 6467 , + HELP_TEXT_L2_GOD_REACTION_18 = 6468 , + HELP_TEXT_L2_GOD_REACTION_19 = 6469 , + HELP_TEXT_L2_GOD_REACTION_20 = 6470 , + HELP_TEXT_L2_GOD_REACTION_21 = 6471 , + HELP_TEXT_L2_GOD_REACTION_22 = 6472 , + HELP_TEXT_L2_GOD_REACTION_23 = 6473 , + HELP_TEXT_L2_GOD_REACTION_24 = 6474 , + HELP_TEXT_L2_GOD_REACTION_25 = 6475 , + HELP_TEXT_L2_GOD_REACTION_26 = 6476 , + HELP_TEXT_L2_GOD_REACTION_27 = 6477 , + HELP_TEXT_L2_GOD_REACTION_28 = 6478 , + HELP_TEXT_L2_GOD_REACTION_29 = 6479 , + HELP_TEXT_L2_GOD_REACTION_30 = 6480 , + HELP_TEXT_L2_GOD_REACTION_31 = 6481 , + HELP_TEXT_L2_GOD_REACTION_32 = 6482 , + HELP_TEXT_L2_GOD_REACTION_33 = 6483 , + HELP_TEXT_L2_GOD_REACTION_34 = 6484 , + HELP_TEXT_L2_GOD_REACTION_35 = 6485 , + HELP_TEXT_L2_GOD_REACTION_36 = 6486 , + HELP_TEXT_L2_GOD_REACTION_37 = 6487 , + HELP_TEXT_L2_GOD_REACTION_38 = 6488 , + HELP_TEXT_L2_GOD_REACTION_39 = 6489 , + HELP_TEXT_L2_GOD_REACTION_40 = 6490 , + HELP_TEXT_L2_GOD_REACTION_41 = 6491 , + HELP_TEXT_L2_GOD_REACTION_42 = 6492 , + HELP_TEXT_L2_GOD_REACTION_43 = 6493 , + HELP_TEXT_L2_GOD_REACTION_44 = 6494 , + HELP_TEXT_L2_GOD_REACTION_45 = 6495 , + HELP_TEXT_L2_GOD_REACTION_46 = 6496 , + HELP_TEXT_L2_GOD_REACTION_47 = 6497 , + HELP_TEXT_L2_GOD_REACTION_48 = 6498 , + HELP_TEXT_L2_GOD_REACTION_49 = 6499 , + HELP_TEXT_L2_GOD_REACTION_50 = 6500 , + HELP_TEXT_L2_GOD_REACTION_51 = 6501 , + HELP_TEXT_HIDDEN_SCRIPTS_01 = 6502 , + HELP_TEXT_HIDDEN_SCRIPTS_02 = 6503 , + HELP_TEXT_HIDDEN_SCRIPTS_03 = 6504 , + HELP_TEXT_HIDDEN_SCRIPTS_04 = 6505 , + HELP_TEXT_HIDDEN_SCRIPTS_05 = 6506 , + HELP_TEXT_HIDDEN_SCRIPTS_06 = 6507 , + HELP_TEXT_HIDDEN_SCRIPTS_07 = 6508 , + HELP_TEXT_HIDDEN_SCRIPTS_08 = 6509 , + HELP_TEXT_HIDDEN_SCRIPTS_09 = 6510 , + HELP_TEXT_HIDDEN_SCRIPTS_10 = 6511 , + HELP_TEXT_HIDDEN_SCRIPTS_11 = 6512 , + HELP_TEXT_HIDDEN_SCRIPTS_12 = 6513 , + HELP_TEXT_LIBRARY_ROOM_01 = 6514 , + HELP_TEXT_LIBRARY_ROOM_02 = 6515 , + HELP_TEXT_LIBRARY_ROOM_03 = 6516 , + HELP_TEXT_LIBRARY_ROOM_04 = 6517 , + HELP_TEXT_LIBRARY_ROOM_05 = 6518 , + HELP_TEXT_LIBRARY_ROOM_06 = 6519 , + HELP_TEXT_LIBRARY_ROOM_07 = 6520 , + HELP_TEXT_ROOM_CITADEL_SAVEGAME_ROOM_SAVECOUNT = 6521 , + HELP_TEXT_ROOM_CITADEL_SAVEGAME_ROOM_LOADCOUNT = 6522 , + HELP_TEXT_PAUSE_STATS_01 = 6523 , + HELP_TEXT_PAUSE_STATS_02 = 6524 , + HELP_TEXT_PAUSE_STATS_03 = 6525 , + HELP_TEXT_PAUSE_STATS_04 = 6526 , + HELP_TEXT_PAUSE_STATS_05 = 6527 , + HELP_TEXT_PAUSE_STATS_06 = 6528 , + HELP_TEXT_PAUSE_STATS_07 = 6529 , + HELP_TEXT_PAUSE_STATS_08 = 6530 , + HELP_TEXT_PAUSE_STATS_09 = 6531 , + HELP_TEXT_PAUSE_STATS_10 = 6532 , + HELP_TEXT_PAUSE_STATS_11 = 6533 , + HELP_TEXT_PAUSE_STATS_12 = 6534 , + HELP_TEXT_PAUSE_STATS_13 = 6535 , + HELP_TEXT_PAUSE_STATS_14 = 6536 , + HELP_TEXT_PAUSE_STATS_15 = 6537 , + HELP_TEXT_PAUSE_STATS_16 = 6538 , + HELP_TEXT_PAUSE_STATS_17 = 6539 , + HELP_TEXT_PAUSE_STATS_18 = 6540 , + HELP_TEXT_PAUSE_STATS_19 = 6541 , + HELP_TEXT_PAUSE_STATS_20 = 6542 , + HELP_TEXT_PAUSE_STATS_21 = 6543 , + HELP_TEXT_PAUSE_STATS_22 = 6544 , + HELP_TEXT_PAUSE_STATS_23 = 6545 , + HELP_TEXT_PAUSE_STATS_24 = 6546 , + HELP_TEXT_PAUSE_STATS_25 = 6547 , + HELP_TEXT_PAUSE_STATS_26 = 6548 , + HELP_TEXT_PAUSE_STATS_27 = 6549 , + HELP_TEXT_PAUSE_STATS_28 = 6550 , + HELP_TEXT_PAUSE_STATS_29 = 6551 , + HELP_TEXT_PAUSE_STATS_30 = 6552 , + HELP_TEXT_PAUSE_STATS_31 = 6553 , + HELP_TEXT_PAUSE_STATS_32 = 6554 , + HELP_TEXT_PAUSE_STATS_33 = 6555 , + HELP_TEXT_PAUSE_STATS_34 = 6556 , + HELP_TEXT_PAUSE_STATS_35 = 6557 , + HELP_TEXT_PAUSE_STATS_36 = 6558 , + HELP_TEXT_PAUSE_STATS_37 = 6559 , + HELP_TEXT_PAUSE_STATS_38 = 6560 , + HELP_TEXT_PAUSE_STATS_39 = 6561 , + HELP_TEXT_PAUSE_STATS_40 = 6562 , + HELP_TEXT_PAUSE_STATS_41 = 6563 , + HELP_TEXT_PAUSE_STATS_42 = 6564 , + HELP_TEXT_PAUSE_STATS_43 = 6565 , + HELP_TEXT_PAUSE_STATS_44 = 6566 , + HELP_TEXT_PAUSE_STATS_45 = 6567 , + HELP_TEXT_PAUSE_STATS_46 = 6568 , + HELP_TEXT_PAUSE_STATS_47 = 6569 , + HELP_TEXT_PAUSE_STATS_48 = 6570 , + HELP_TEXT_PAUSE_STATS_49 = 6571 , + HELP_TEXT_PAUSE_STATS_50 = 6572 , + HELP_TEXT_PAUSE_STATS_51 = 6573 , + HELP_TEXT_PAUSE_STATS_52 = 6574 , + HELP_TEXT_PAUSE_STATS_53 = 6575 , + HELP_TEXT_PAUSE_STATS_54 = 6576 , + HELP_TEXT_PAUSE_STATS_55 = 6577 , + HELP_TEXT_PAUSE_STATS_56 = 6578 , + HELP_TEXT_PAUSE_STATS_57 = 6579 , + HELP_TEXT_PAUSE_STATS_58 = 6580 , + HELP_TEXT_PAUSE_STATS_59 = 6581 , + HELP_TEXT_PAUSE_STATS_60 = 6582 , + HELP_TEXT_PAUSE_STATS_61 = 6583 , + HELP_TEXT_PAUSE_STATS_62 = 6584 , + HELP_TEXT_PAUSE_STATS_63 = 6585 , + HELP_TEXT_PAUSE_STATS_64 = 6586 , + HELP_TEXT_PAUSE_STATS_65 = 6587 , + HELP_TEXT_PAUSE_STATS_66 = 6588 , + HELP_TEXT_PAUSE_STATS_67 = 6589 , + HELP_TEXT_PAUSE_STATS_68 = 6590 , + HELP_TEXT_PAUSE_STATS_69 = 6591 , + HELP_TEXT_PAUSE_STATS_70 = 6592 , + HELP_TEXT_PAUSE_STATS_71 = 6593 , + HELP_TEXT_PAUSE_STATS_72 = 6594 , + HELP_TEXT_PAUSE_STATS_73 = 6595 , + HELP_TEXT_PAUSE_STATS_74 = 6596 , + HELP_TEXT_PAUSE_STATS_75 = 6597 , + HELP_TEXT_PAUSE_STATS_76 = 6598 , + HELP_TEXT_PAUSE_STATS_77 = 6599 , + HELP_TEXT_PAUSE_STATS_78 = 6600 , + HELP_TEXT_PAUSE_STATS_79 = 6601 , + HELP_TEXT_PAUSE_STATS_80 = 6602 , + HELP_TEXT_PAUSE_STATS_81 = 6603 , + HELP_TEXT_PAUSE_STATS_82 = 6604 , + HELP_TEXT_PAUSE_STATS_83 = 6605 , + HELP_TEXT_PAUSE_STATS_84 = 6606 , + HELP_TEXT_PAUSE_STATS_85 = 6607 , + HELP_TEXT_PAUSE_STATS_86 = 6608 , + HELP_TEXT_PAUSE_STATS_87 = 6609 , + HELP_TEXT_PAUSE_STATS_88 = 6610 , + HELP_TEXT_PAUSE_STATS_89 = 6611 , + HELP_TEXT_PAUSE_STATS_90 = 6612 , + HELP_TEXT_PAUSE_STATS_91 = 6613 , + HELP_TEXT_PAUSE_STATS_92 = 6614 , + HELP_TEXT_PAUSE_STATS_93 = 6615 , + HELP_TEXT_PAUSE_STATS_94 = 6616 , + HELP_TEXT_PAUSE_STATS_95 = 6617 , + HELP_TEXT_PAUSE_STATS_96 = 6618 , + HELP_TEXT_PAUSE_STATS_97 = 6619 , + HELP_TEXT_PAUSE_STATS_98 = 6620 , + HELP_TEXT_PAUSE_STATS_99 = 6621 , + HELP_TEXT_PAUSE_STATS_100 = 6622 , + HELP_TEXT_PAUSE_STATS_101 = 6623 , + HELP_TEXT_PAUSE_STATS_102 = 6624 , + HELP_TEXT_PAUSE_STATS_103 = 6625 , + HELP_TEXT_PAUSE_STATS_104 = 6626 , + HELP_TEXT_PAUSE_STATS_105 = 6627 , + HELP_TEXT_PAUSE_STATS_106 = 6628 , + HELP_TEXT_PAUSE_STATS_107 = 6629 , + HELP_TEXT_PAUSE_STATS_108 = 6630 , + HELP_TEXT_PAUSE_STATS_109 = 6631 , + HELP_TEXT_PAUSE_STATS_110 = 6632 , + HELP_TEXT_PAUSE_STATS_111 = 6633 , + HELP_TEXT_PAUSE_STATS_112 = 6634 , + HELP_TEXT_PAUSE_STATS_113 = 6635 , + HELP_TEXT_PAUSE_STATS_114 = 6636 , + HELP_TEXT_PAUSE_STATS_115 = 6637 , + HELP_TEXT_PAUSE_STATS_116 = 6638 , + HELP_TEXT_PAUSE_STATS_117 = 6639 , + HELP_TEXT_PAUSE_STATS_118 = 6640 , + HELP_TEXT_PAUSE_STATS_119 = 6641 , + HELP_TEXT_PAUSE_STATS_120 = 6642 , + HELP_TEXT_PAUSE_STATS_121 = 6643 , + HELP_TEXT_PAUSE_STATS_122 = 6644 , + HELP_TEXT_PAUSE_STATS_123 = 6645 , + HELP_TEXT_PAUSE_STATS_124 = 6646 , + HELP_TEXT_PAUSE_STATS_125 = 6647 , + HELP_TEXT_PAUSE_STATS_126 = 6648 , + HELP_TEXT_PAUSE_STATS_127 = 6649 , + HELP_TEXT_PAUSE_STATS_128 = 6650 , + HELP_TEXT_PAUSE_STATS_129 = 6651 , + HELP_TEXT_PAUSE_STATS_130 = 6652 , + HELP_TEXT_PAUSE_STATS_131 = 6653 , + HELP_TEXT_PAUSE_STATS_132 = 6654 , + HELP_TEXT_PAUSE_STATS_133 = 6655 , + HELP_TEXT_PAUSE_STATS_134 = 6656 , + HELP_TEXT_PAUSE_STATS_135 = 6657 , + HELP_TEXT_PAUSE_STATS_136 = 6658 , + HELP_TEXT_PAUSE_STATS_137 = 6659 , + HELP_TEXT_PAUSE_STATS_138 = 6660 , + HELP_TEXT_PAUSE_STATS_139 = 6661 , + HELP_TEXT_PAUSE_STATS_140 = 6662 , + HELP_TEXT_PAUSE_STATS_141 = 6663 , + HELP_TEXT_PAUSE_STATS_142 = 6664 , + HELP_TEXT_PAUSE_STATS_143 = 6665 , + HELP_TEXT_PAUSE_STATS_144 = 6666 , + HELP_TEXT_PAUSE_STATS_145 = 6667 , + HELP_TEXT_PAUSE_STATS_146 = 6668 , + HELP_TEXT_PAUSE_STATS_147 = 6669 , + HELP_TEXT_PAUSE_STATS_148 = 6670 , + HELP_TEXT_PAUSE_STATS_149 = 6671 , + HELP_TEXT_PAUSE_STATS_150 = 6672 , + HELP_TEXT_PAUSE_STATS_151 = 6673 , + HELP_TEXT_PAUSE_STATS_152 = 6674 , + HELP_TEXT_TUTORIAL_LAND_113 = 6675 , + HELP_TEXT_TUTORIAL_LAND_114 = 6676 , + HELP_TEXT_TUTORIAL_LAND_115 = 6677 , + HELP_TEXT_TUTORIAL_LAND_116 = 6678 , + HELP_TEXT_EMAIL_01 = 6679 , + HELP_TEXT_EMAIL_02 = 6680 , + HELP_TEXT_EMAIL_03 = 6681 , + HELP_TEXT_EMAIL_04 = 6682 , + HELP_TEXT_MISSIONARIES_54 = 6683 , + HELP_TEXT_DIALOG_ADDITION_01 = 6684 , + HELP_TEXT_FUTURE_ROOM_DIALOG_BOX = 6685 , + HELP_TEXT_MOUSE_ZOOM = 6686 , + HELP_TEXT_DYK_113 = 6687 , + HELP_TEXT_ACTIONS_NEXT_LEASH = 6688 , + HELP_TEXT_ACTIONS_PREVIOUS_LEASH = 6689 , + HELP_TEXT_CONNECTION_LOST = 6690 , + HELP_TEXT_CHOOSE_SKIRMISH_MAP = 6691 , + HELP_TEXT_GAME_OVER = 6692 , + HELP_TEXT_NEXT_LINE = 6693 , + HELP_TEXT_PREVIOUS_LINE = 6694 , + HELP_TEXT_MOST_RECENT_LINE = 6695 , + HELP_TEXT_PASSWORD_INCORRECT = 6696 , + HELP_TEXT_NEW_TEMPLE_WELCOME_48 = 6697 , + HELP_TEXT_NEW_TEMPLE_WELCOME_49 = 6698 , + HELP_TEXT_TEMPLE_SCROLLS_01 = 6699 , + HELP_TEXT_TEMPLE_SCROLLS_02 = 6700 , + HELP_TEXT_TEMPLE_SCROLLS_03 = 6701 , + HELP_TEXT_TEMPLE_SCROLLS_04 = 6702 , + HELP_TEXT_TEMPLE_SCROLLS_05 = 6703 , + HELP_TEXT_TEMPLE_SCROLLS_06 = 6704 , + HELP_TEXT_TEMPLE_SCROLLS_07 = 6705 , + HELP_TEXT_TEMPLE_SCROLLS_08 = 6706 , + HELP_TEXT_TEMPLE_SCROLLS_09 = 6707 , + HELP_TEXT_TEMPLE_SCROLLS_10 = 6708 , + HELP_TEXT_TEMPLE_SCROLLS_11 = 6709 , + HELP_TEXT_DIALOG_ADDITION_02 = 6710 , + HELP_TEXT_DIALOG_ADDITION_03 = 6711 , + HELP_TEXT_DIALOG_ADDITION_04 = 6712 , + HELP_TEXT_DIALOG_ADDITION_05 = 6713 , + HELP_TEXT_DIALOG_ADDITION_06 = 6714 , + HELP_TEXT_DIALOG_ADDITION_07 = 6715 , + HELP_TEXT_DIALOG_ADDITION_08 = 6716 , + HELP_TEXT_DIALOG_ADDITION_09 = 6717 , + HELP_TEXT_DIALOG_ADDITION_10 = 6718 , + HELP_TEXT_DIALOG_ADDITION_11 = 6719 , + HELP_TEXT_DIALOG_ADDITION_12 = 6720 , + HELP_TEXT_DIALOG_ADDITION_13 = 6721 , + HELP_TEXT_DIALOG_ADDITION_14 = 6722 , + HELP_TEXT_DIALOG_ADDITION_15 = 6723 , + HELP_TEXT_DIALOG_ADDITION_16 = 6724 , + HELP_TEXT_DIALOG_ADDITION_17 = 6725 , + HELP_TEXT_DIALOG_ADDITION_18 = 6726 , + HELP_TEXT_DIALOG_ADDITION_19 = 6727 , + HELP_TEXT_DIALOG_ADDITION_20 = 6728 , + HELP_TEXT_DIALOG_ADDITION_21 = 6729 , + HELP_TEXT_DIALOG_ADDITION_22 = 6730 , + HELP_TEXT_DIALOG_ADDITION_23 = 6731 , + HELP_TEXT_DIALOG_ADDITION_24 = 6732 , + HELP_TEXT_DIALOG_ADDITION_25 = 6733 , + HELP_TEXT_DIALOG_ADDITION_26 = 6734 , + HELP_TEXT_DIALOG_ADDITION_27 = 6735 , + HELP_TEXT_DIALOG_ADDITION_28 = 6736 , + HELP_TEXT_DIALOG_ADDITION_29 = 6737 , + HELP_TEXT_DIALOG_ADDITION_30 = 6738 , + HELP_TEXT_DIALOG_ADDITION_31 = 6739 , + HELP_TEXT_DIALOG_ADDITION_32 = 6740 , + HELP_TEXT_DIALOG_ADDITION_33 = 6741 , + HELP_TEXT_DIALOG_ADDITION_34 = 6742 , + HELP_TEXT_DIALOG_ADDITION_35 = 6743 , + HELP_TEXT_DIALOG_ADDITION_36 = 6744 , + HELP_TEXT_DIALOG_ADDITION_37 = 6745 , + HELP_TEXT_DIALOG_ADDITION_38 = 6746 , + HELP_TEXT_DIALOG_ADDITION_39 = 6747 , + HELP_TEXT_DIALOG_ADDITION_40 = 6748 , + HELP_TEXT_DIALOG_ADDITION_41 = 6749 , + HELP_TEXT_DIALOG_ADDITION_42 = 6750 , + HELP_TEXT_DIALOG_ADDITION_43 = 6751 , + HELP_TEXT_DIALOG_ADDITION_44 = 6752 , + HELP_TEXT_DIALOG_ADDITION_45 = 6753 , + HELP_TEXT_DIALOG_ADDITION_46 = 6754 , + HELP_TEXT_DIALOG_ADDITION_47 = 6755 , + HELP_TEXT_DIALOG_ADDITION_48 = 6756 , + HELP_TEXT_DIALOG_ADDITION_49 = 6757 , + HELP_TEXT_DIALOG_ADDITION_50 = 6758 , + HELP_TEXT_DIALOG_ADDITION_51 = 6759 , + HELP_TEXT_DIALOG_ADDITION_52 = 6760 , + HELP_TEXT_DIALOG_ADDITION_53 = 6761 , + HELP_TEXT_DIALOG_ADDITION_54 = 6762 , + HELP_TEXT_DIALOG_ADDITION_55 = 6763 , + HELP_TEXT_DIALOG_ADDITION_56 = 6764 , + HELP_TEXT_DIALOG_ADDITION_57 = 6765 , + HELP_TEXT_DIALOG_ADDITION_58 = 6766 , + HELP_TEXT_DIALOG_ADDITION_59 = 6767 , + HELP_TEXT_DIALOG_ADDITION_60 = 6768 , + HELP_TEXT_DIALOG_ADDITION_61 = 6769 , + HELP_TEXT_DIALOG_ADDITION_62 = 6770 , + HELP_TEXT_DIALOG_ADDITION_63 = 6771 , + HELP_TEXT_DIALOG_ADDITION_64 = 6772 , + HELP_TEXT_DIALOG_ADDITION_65 = 6773 , + HELP_TEXT_DIALOG_ADDITION_66 = 6774 , + HELP_TEXT_DIALOG_ADDITION_67 = 6775 , + HELP_TEXT_DIALOG_ADDITION_68 = 6776 , + HELP_TEXT_DIALOG_ADDITION_69 = 6777 , + HELP_TEXT_DIALOG_ADDITION_70 = 6778 , + HELP_TEXT_DIALOG_ADDITION_71 = 6779 , + HELP_TEXT_DIALOG_ADDITION_72 = 6780 , + HELP_TEXT_DIALOG_ADDITION_73 = 6781 , + HELP_TEXT_DIALOG_ADDITION_74 = 6782 , + HELP_TEXT_DIALOG_ADDITION_75 = 6783 , + HELP_TEXT_DIALOG_ADDITION_76 = 6784 , + HELP_TEXT_DIALOG_ADDITION_77 = 6785 , + HELP_TEXT_DIALOG_ADDITION_78 = 6786 , + HELP_TEXT_DIALOG_ADDITION_79 = 6787 , + HELP_TEXT_DIALOG_ADDITION_80 = 6788 , + HELP_TEXT_DIALOG_ADDITION_81 = 6789 , + HELP_TEXT_DIALOG_ADDITION_82 = 6790 , + HELP_TEXT_DIALOG_ADDITION_83 = 6791 , + HELP_TEXT_DIALOG_ADDITION_84 = 6792 , + HELP_TEXT_DIALOG_ADDITION_85 = 6793 , + HELP_TEXT_DIALOG_ADDITION_86 = 6794 , + HELP_TEXT_DIALOG_ADDITION_87 = 6795 , + HELP_TEXT_DIALOG_ADDITION_88 = 6796 , + HELP_TEXT_DIALOG_ADDITION_89 = 6797 , + HELP_TEXT_DIALOG_ADDITION_90 = 6798 , + HELP_TEXT_DIALOG_ADDITION_91 = 6799 , + HELP_TEXT_DIALOG_ADDITION_92 = 6800 , + HELP_TEXT_DIALOG_ADDITION_93 = 6801 , + HELP_TEXT_DIALOG_ADDITION_94 = 6802 , + HELP_TEXT_DIALOG_ADDITION_95 = 6803 , + HELP_TEXT_DIALOG_ADDITION_96 = 6804 , + HELP_TEXT_DIALOG_ADDITION_97 = 6805 , + HELP_TEXT_DIALOG_ADDITION_98 = 6806 , + HELP_TEXT_DIALOG_ADDITION_99 = 6807 , + HELP_TEXT_DIALOG_ADDITION_100 = 6808 , + HELP_TEXT_DIALOG_ADDITION_101 = 6809 , + HELP_TEXT_DIALOG_ADDITION_102 = 6810 , + HELP_TEXT_DIALOG_ADDITION_103 = 6811 , + HELP_TEXT_DIALOG_ADDITION_104 = 6812 , + HELP_TEXT_DIALOG_ADDITION_105 = 6813 , + HELP_TEXT_DIALOG_ADDITION_106 = 6814 , + HELP_TEXT_DIALOG_ADDITION_107 = 6815 , + HELP_TEXT_DIALOG_ADDITION_108 = 6816 , + HELP_TEXT_DIALOG_ADDITION_109 = 6817 , + HELP_TEXT_DIALOG_ADDITION_110 = 6818 , + HELP_TEXT_DIALOG_ADDITION_111 = 6819 , + HELP_TEXT_DIALOG_ADDITION_112 = 6820 , + HELP_TEXT_DIALOG_ADDITION_113 = 6821 , + HELP_TEXT_DIALOG_ADDITION_114 = 6822 , + HELP_TEXT_DIALOG_ADDITION_115 = 6823 , + HELP_TEXT_DIALOG_ADDITION_116 = 6824 , + HELP_TEXT_DIALOG_ADDITION_117 = 6825 , + HELP_TEXT_DIALOG_ADDITION_118 = 6826 , + HELP_TEXT_DIALOG_ADDITION_119 = 6827 , + HELP_TEXT_DIALOG_ADDITION_120 = 6828 , + HELP_TEXT_DIALOG_ADDITION_121 = 6829 , + HELP_TEXT_DIALOG_ADDITION_122 = 6830 , + HELP_TEXT_DIALOG_ADDITION_123 = 6831 , + HELP_TEXT_DIALOG_ADDITION_124 = 6832 , + HELP_TEXT_DIALOG_ADDITION_125 = 6833 , + HELP_TEXT_DIALOG_ADDITION_126 = 6834 , + HELP_TEXT_DIALOG_ADDITION_127 = 6835 , + HELP_TEXT_DIALOG_ADDITION_128 = 6836 , + HELP_TEXT_DIALOG_ADDITION_129 = 6837 , + HELP_TEXT_DIALOG_ADDITION_130 = 6838 , + HELP_TEXT_DIALOG_ADDITION_131 = 6839 , + HELP_TEXT_DIALOG_ADDITION_132 = 6840 , + HELP_TEXT_DIALOG_ADDITION_133 = 6841 , + HELP_TEXT_DIALOG_ADDITION_134 = 6842 , + HELP_TEXT_DIALOG_ADDITION_135 = 6843 , + HELP_TEXT_DIALOG_ADDITION_136 = 6844 , + HELP_TEXT_DIALOG_ADDITION_137 = 6845 , + HELP_TEXT_DIALOG_ADDITION_138 = 6846 , + HELP_TEXT_DIALOG_ADDITION_139 = 6847 , + HELP_TEXT_DIALOG_ADDITION_140 = 6848 , + HELP_TEXT_DIALOG_ADDITION_141 = 6849 , + HELP_TEXT_DIALOG_ADDITION_142 = 6850 , + HELP_TEXT_DIALOG_ADDITION_143 = 6851 , + HELP_TEXT_DIALOG_ADDITION_144 = 6852 , + HELP_TEXT_DIALOG_ADDITION_145 = 6853 , + HELP_TEXT_DIALOG_ADDITION_146 = 6854 , + HELP_TEXT_DIALOG_ADDITION_147 = 6855 , + HELP_TEXT_DIALOG_ADDITION_148 = 6856 , + HELP_TEXT_DIALOG_ADDITION_149 = 6857 , + HELP_TEXT_DIALOG_ADDITION_150 = 6858 , + HELP_TEXT_DIALOG_ADDITION_151 = 6859 , + HELP_TEXT_DIALOG_ADDITION_152 = 6860 , + HELP_TEXT_DIALOG_ADDITION_153 = 6861 , + HELP_TEXT_DIALOG_ADDITION_154 = 6862 , + HELP_TEXT_DIALOG_ADDITION_155 = 6863 , + HELP_TEXT_DIALOG_ADDITION_156 = 6864 , + HELP_TEXT_DIALOG_ADDITION_158 = 6865 , + HELP_TEXT_DIALOG_ADDITION_159 = 6866 , + HELP_TEXT_DIALOG_ADDITION_160 = 6867 , + HELP_TEXT_DIALOG_ADDITION_161 = 6868 , + HELP_TEXT_DIALOG_ADDITION_162 = 6869 , + HELP_TEXT_DIALOG_ADDITION_163 = 6870 , + HELP_TEXT_DIALOG_ADDITION_164 = 6871 , + HELP_TEXT_DIALOG_ADDITION_165 = 6872 , + HELP_TEXT_DIALOG_ADDITION_166 = 6873 , + HELP_TEXT_DIALOG_ADDITION_167 = 6874 , + HELP_TEXT_DIALOG_ADDITION_168 = 6875 , + HELP_TEXT_DIALOG_ADDITION_169 = 6876 , + HELP_TEXT_DIALOG_ADDITION_170 = 6877 , + HELP_TEXT_DIALOG_ADDITION_171 = 6878 , + HELP_TEXT_EXTRA_TRAINER_01 = 6879 , + HELP_TEXT_EXTRA_TRAINER_02 = 6880 , + HELP_TEXT_EXTRA_TRAINER_03 = 6881 , + HELP_TEXT_EXTRA_TRAINER_04 = 6882 , + HELP_TEXT_EXTRA_TRAINER_05 = 6883 , + HELP_TEXT_EXTRA_TRAINER_06 = 6884 , + HELP_TEXT_CANNOT_REDEFINE = 6885 , + HELP_TEXT_COULD_NOT_CONNECT = 6886 , + HELP_TEXT_FIREBALL_CHALLENGE_EXTRA_01 = 6887 , + HELP_TEXT_FIREBALL_CHALLENGE_EXTRA_02 = 6888 , + HELP_TEXT_INGAME_CREDITS_25 = 6889 , + HELP_TEXT_INGAME_CREDITS_26 = 6890 , + HELP_TEXT_INGAME_CREDITS_27 = 6891 , + HELP_TEXT_INGAME_CREDITS_28 = 6892 , + HELP_TEXT_INGAME_CREDITS_29 = 6893 , + HELP_TEXT_INGAME_CREDITS_30 = 6894 , + HELP_TEXT_INGAME_CREDITS_31 = 6895 , + HELP_TEXT_INGAME_CREDITS_32 = 6896 , + HELP_TEXT_EXTRA_GODS_PLAYGROUND_01 = 6897 , + HELP_TEXT_EXTRA_GODS_PLAYGROUND_02 = 6898 , + HELP_TEXT_EXTRA_GODS_PLAYGROUND_03 = 6899 , + HELP_TEXT_EXTRA_GODS_PLAYGROUND_04 = 6900 , + HELP_TEXT_TRAINER_EXTRA_TEXT_01 = 6901 , + HELP_TEXT_TRAINER_EXTRA_TEXT_02 = 6902 , + HELP_TEXT_MISSIONARIES_EXTRA_01 = 6903 , + HELP_TEXT_NO_CD = 6904 , + HELP_TEXT_ZOOM_TO_VILLAGE_STORE = 6905 , + HELP_TEXT_THANK_YOU_FOR_PLAYING = 6906 , + HELP_TEXT_NEWEST_GET_CREATURE_30 = 6907 , + HELP_TEXT_QUESTION_EXTRA_88 = 6908 , + HELP_TEXT_QUESTION_EXTRA_89 = 6909 , + HELP_TEXT_QUESTION_EXTRA_90 = 6910 , + HELP_TEXT_QUESTION_EXTRA_91 = 6911 , + HELP_TEXT_QUESTION_EXTRA_92 = 6912 , + HELP_TEXT_QUESTION_EXTRA_93 = 6913 , + HELP_TEXT_QUESTION_EXTRA_94 = 6914 , + HELP_TEXT_QUESTION_EXTRA_95 = 6915 , + HELP_TEXT_QUESTION_EXTRA_96 = 6916 , + HELP_TEXT_QUESTION_EXTRA_97 = 6917 , + HELP_TEXT_QUESTION_EXTRA_98 = 6918 , + HELP_TEXT_QUESTION_EXTRA_99 = 6919 , + HELP_TEXT_QUESTION_EXTRA_100 = 6920 , + HELP_TEXT_QUESTION_EXTRA_101 = 6921 , + HELP_TEXT_QUESTION_EXTRA_102 = 6922 , + HELP_TEXT_SYMBOL_EXTRA_01 = 6923 , + HELP_TEXT_SYMBOL_EXTRA_02 = 6924 , + HELP_TEXT_TUTORIAL_LAND_117 = 6925 , + HELP_TEXT_IMMERSION_MOUSE_EXTRA_01 = 6926 , + HELP_TEXT_IMMERSION_MOUSE_EXTRA_02 = 6927 , + HELP_TEXT_IMMERSION_MOUSE_EXTRA_03 = 6928 , + HELP_TEXT_GUIDE_EXTRA_LINES_01 = 6929 , + HELP_TEXT_GUIDE_EXTRA_LINES_02 = 6930 , + HELP_TEXT_GUIDE_EXTRA_LINES_03 = 6931 , + HELP_TEXT_GUIDE_EXTRA_LINES_04 = 6932 , + HELP_TEXT_GUIDE_EXTRA_LINES_05 = 6933 , + HELP_TEXT_GUIDE_EXTRA_LINES_06 = 6934 , + HELP_TEXT_GUIDE_EXTRA_LINES_07 = 6935 , + HELP_TEXT_GUIDE_EXTRA_LINES_08 = 6936 , + HELP_TEXT_GUIDE_EXTRA_LINES_09 = 6937 , + HELP_TEXT_KHAZAR_EXTRA_LINES_01 = 6938 , + HELP_TEXT_EXTRA_EVIL_ADVISOR_LINES_01 = 6939 , + HELP_TEXT_EXTRA_JOB_TITLES_01 = 6940 , + HELP_TEXT_EXTRA_JOB_TITLES_02 = 6941 , + HELP_TEXT_EXTRA_GOOD_ADVISOR_01 = 6942 , + HELP_TEXT_KHAZAR_EXTRA_LINES_02 = 6943 , + HELP_TEXT_KHAZAR_EXTRA_LINES_03 = 6944 , + HELP_TEXT_NEMESIS_EXTRA_LINES_01 = 6945 , + HELP_TEXT_NEMESIS_EXTRA_LINES_02 = 6946 , + HELP_TEXT_NEMESIS_EXTRA_LINES_03 = 6947 , + HELP_TEXT_NEMESIS_EXTRA_LINES_04 = 6948 , + HELP_TEXT_CREED_EXPLAINED_01 = 6949 , + HELP_TEXT_CREED_EXPLAINED_02 = 6950 , + HELP_TEXT_CREED_EXPLAINED_03 = 6951 , + HELP_TEXT_CREED_EXPLAINED_04 = 6952 , + HELP_TEXT_CREED_EXPLAINED_05 = 6953 , + HELP_TEXT_CREED_EXPLAINED_06 = 6954 , + HELP_TEXT_EXTRA_EVIL_ADVISOR_LINES_02 = 6955 , + HELP_TEXT_EXTRA_GOOD_ADVISOR_02 = 6956 , + HELP_TEXT_DYK_114 = 6957 , + HELP_TEXT_DYK_115 = 6958 , + HELP_TEXT_EXTRA_LETHYS_01 = 6959 , + HELP_TEXT_EXTRA_GOOD_ADVISOR_03 = 6960 , + HELP_TEXT_EXTRA_EVIL_ADVISOR_LINES_03 = 6961 , + HELP_TEXT_EXTRA_GOOD_ADVISOR_04 = 6962 , + HELP_TEXT_EXTRA_GOOD_ADVISOR_05 = 6963 , + HELP_TEXT_EXTRA_EVIL_ADVISOR_LINES_04 = 6964 , + HELP_TEXT_EXTRA_GOOD_ADVISOR_06 = 6965 , + HELP_TEXT_EXTRA_EVIL_ADVISOR_LINES_05 = 6966 , + HELP_TEXT_END_OF_GAME_EXTRA_01 = 6967 , + HELP_TEXT_END_OF_GAME_EXTRA_02 = 6968 , + HELP_TEXT_END_OF_GAME_EXTRA_03 = 6969 , + HELP_TEXT_END_OF_GAME_EXTRA_04 = 6970 , + HELP_TEXT_END_OF_GAME_EXTRA_05 = 6971 , + HELP_TEXT_END_OF_GAME_EXTRA_06 = 6972 , + HELP_TEXT_END_OF_GAME_EXTRA_07 = 6973 , + HELP_TEXT_END_OF_GAME_EXTRA_08 = 6974 , + HELP_TEXT_END_OF_GAME_EXTRA_09 = 6975 , + HELP_TEXT_END_OF_GAME_EXTRA_10 = 6976 , + HELP_TEXT_END_OF_GAME_EXTRA_11 = 6977 , + HELP_TEXT_END_OF_GAME_EXTRA_12 = 6978 , + HELP_TEXT_END_OF_GAME_EXTRA_13 = 6979 , + HELP_TEXT_END_OF_GAME_EXTRA_14 = 6980 , + HELP_TEXT_END_OF_GAME_EXTRA_15 = 6981 , + HELP_TEXT_END_OF_GAME_EXTRA_16 = 6982 , + HELP_TEXT_END_OF_GAME_EXTRA_17 = 6983 , + HELP_TEXT_LAST_LINES_01 = 6984 , + HELP_TEXT_LAST_LINES_02 = 6985 , + HELP_TEXT_LAST_LINES_03 = 6986 , + HELP_TEXT_LAST_LINES_04 = 6987 , + HELP_TEXT_LAST_LINES_05 = 6988 , + HELP_TEXT_LAST_LINES_06 = 6989 , + HELP_TEXT_LOSE_MULTIPLAYER_GAME_01 = 6990 , + HELP_TEXT_LOSE_SKIRMISH_GAME_01 = 6991 , + HELP_TEXT_NAME_LION_01 = 6992 , + HELP_TEXT_NAME_LION_02 = 6993 , + HELP_TEXT_NAME_TURTLE_01 = 6994 , + HELP_TEXT_NAME_TURTLE_02 = 6995 , + HELP_TEXT_NAME_COW_01 = 6996 , + HELP_TEXT_NAME_COW_02 = 6997 , + HELP_TEXT_NAME_MANDRILL_01 = 6998 , + HELP_TEXT_NAME_MANDRILL_02 = 6999 , + HELP_TEXT_NAME_MANDRILL_03 = 7000 , + HELP_TEXT_NAME_MANDRILL_04 = 7001 , + HELP_TEXT_NAME_MANDRILL_05 = 7002 , + HELP_TEXT_NAME_MANDRILL_06 = 7003 , + HELP_TEXT_NAME_TIGER_01 = 7004 , + HELP_TEXT_NAME_TIGER_02 = 7005 , + HELP_TEXT_NAME_LEOPARD_01 = 7006 , + HELP_TEXT_NAME_LEOPARD_02 = 7007 , + HELP_TEXT_NAME_ZEBRA_01 = 7008 , + HELP_TEXT_NAME_ZEBRA_02 = 7009 , + HELP_TEXT_NAME_WOLF_01 = 7010 , + HELP_TEXT_NAME_WOLF_02 = 7011 , + HELP_TEXT_NAME_SHEEP_01 = 7012 , + HELP_TEXT_NAME_SHEEP_02 = 7013 , + HELP_TEXT_NAME_RHINO_01 = 7014 , + HELP_TEXT_NAME_RHINO_02 = 7015 , + HELP_TEXT_NAME_BEAR_01 = 7016 , + HELP_TEXT_NAME_BEAR_02 = 7017 , + HELP_TEXT_NAME_HORSE_01 = 7018 , + HELP_TEXT_NAME_HORSE_02 = 7019 , + HELP_TEXT_NAME_APE_01 = 7020 , + HELP_TEXT_NAME_APE_02 = 7021 , + HELP_TEXT_NAME_GORILLA_01 = 7022 , + HELP_TEXT_NAME_GORILLA_02 = 7023 , + HELP_TEXT_NAME_CHIMP_01 = 7024 , + HELP_TEXT_NAME_CHIMP_02 = 7025 , + HELP_TEXT_NAME_CHIMP_03 = 7026 , + HELP_TEXT_NAME_CHIMP_04 = 7027 , + HELP_TEXT_NAME_CHICKEN_01 = 7028 , + HELP_TEXT_NAME_CHICKEN_02 = 7029 , + HELP_TEXT_NAME_CROCODILE_01 = 7030 , + HELP_TEXT_NAME_CROCODILE_02 = 7031 , + HELP_TEXT_NAME_POLAR_BEAR_01 = 7032 , + HELP_TEXT_NAME_POLAR_BEAR_02 = 7033 , + HELP_TEXT_NAME_OGRE_01 = 7034 , + HELP_TEXT_NAME_OGRE_02 = 7035 , + HELP_TEXT_NAME_OGRE_03 = 7036 , + HELP_TEXT_MISSIONARY_SONG_01 = 7037 , + HELP_TEXT_MISSIONARY_SONG_02 = 7038 , + HELP_TEXT_MISSIONARY_SONG_03 = 7039 , + HELP_TEXT_MISSIONARY_SONG_04 = 7040 , + HELP_TEXT_MISSIONARY_SONG_05 = 7041 , + HELP_TEXT_MISSIONARY_SONG_06 = 7042 , + HELP_TEXT_MISSIONARY_SONG_07 = 7043 , + HELP_TEXT_MISSIONARY_SONG_08 = 7044 , + HELP_TEXT_MISSIONARY_SONG_09 = 7045 , + HELP_TEXT_MISSIONARY_SONG_10 = 7046 , + HELP_TEXT_MISSIONARY_SONG_11 = 7047 , + HELP_TEXT_MISSIONARY_SONG_12 = 7048 , + HELP_TEXT_MISSIONARY_SONG_13 = 7049 , + HELP_TEXT_MISSIONARY_SONG_14 = 7050 , + HELP_TEXT_MISSIONARY_SONG_15 = 7051 , + HELP_TEXT_COW_BOWLING_10 = 7052 , + HELP_TEXT_COW_BOWLING_20 = 7053 , + HELP_TEXT_COW_BOWLING_30 = 7054 , + HELP_TEXT_COW_BOWLING_40 = 7055 , + HELP_TEXT_COW_BOWLING_50 = 7056 , + HELP_TEXT_COW_BOWLING_60 = 7057 , + HELP_TEXT_COW_BOWLING_70 = 7058 , + HELP_TEXT_COW_BOWLING_80 = 7059 , + HELP_TEXT_COW_BOWLING_90 = 7060 , + HELP_TEXT_COW_BOWLING_150 = 7061 , + HELP_TEXT_COW_BOWLING_160 = 7062 , + HELP_TEXT_COW_BOWLING_CANCEL_01 = 7063 , + HELP_TEXT_COW_BOWLING_CANCEL_02 = 7064 , + HELP_TEXT_COW_BOWLING_YOUR_GO_01 = 7065 , + HELP_TEXT_COW_BOWLING_YOUR_GO_02 = 7066 , + HELP_TEXT_COW_BOWLING_YOUR_GO_03 = 7067 , + HELP_TEXT_COW_BOWLING_YOUR_GO_04 = 7068 , + HELP_TEXT_COW_BOWLING_YOUR_GO_05 = 7069 , + HELP_TEXT_COW_BOWLING_COW_GO_01 = 7070 , + HELP_TEXT_COW_BOWLING_COW_GO_02 = 7071 , + HELP_TEXT_COW_BOWLING_COW_GO_03 = 7072 , + HELP_TEXT_COW_BOWLING_COW_GO_04 = 7073 , + HELP_TEXT_COW_BOWLING_COW_GO_05 = 7074 , + HELP_TEXT_COW_BOWLING_YOU_GOOD_01 = 7075 , + HELP_TEXT_COW_BOWLING_YOU_GOOD_02 = 7076 , + HELP_TEXT_COW_BOWLING_YOU_GOOD_03 = 7077 , + HELP_TEXT_COW_BOWLING_YOU_GOOD_04 = 7078 , + HELP_TEXT_COW_BOWLING_YOU_GOOD_05 = 7079 , + HELP_TEXT_COW_BOWLING_COW_GOOD_01 = 7080 , + HELP_TEXT_COW_BOWLING_COW_GOOD_02 = 7081 , + HELP_TEXT_COW_BOWLING_COW_GOOD_03 = 7082 , + HELP_TEXT_COW_BOWLING_COW_GOOD_04 = 7083 , + HELP_TEXT_COW_BOWLING_COW_GOOD_05 = 7084 , + HELP_TEXT_COW_BOWLING_YOU_BAD_01 = 7085 , + HELP_TEXT_COW_BOWLING_YOU_BAD_02 = 7086 , + HELP_TEXT_COW_BOWLING_YOU_BAD_03 = 7087 , + HELP_TEXT_COW_BOWLING_YOU_BAD_04 = 7088 , + HELP_TEXT_COW_BOWLING_YOU_BAD_05 = 7089 , + HELP_TEXT_COW_BOWLING_COW_BAD_01 = 7090 , + HELP_TEXT_COW_BOWLING_COW_BAD_02 = 7091 , + HELP_TEXT_COW_BOWLING_COW_BAD_03 = 7092 , + HELP_TEXT_COW_BOWLING_COW_BAD_04 = 7093 , + HELP_TEXT_COW_BOWLING_COW_BAD_05 = 7094 , + HELP_TEXT_COW_BOWLING_WINNING_01 = 7095 , + HELP_TEXT_COW_BOWLING_WINNING_02 = 7096 , + HELP_TEXT_COW_BOWLING_WINNING_03 = 7097 , + HELP_TEXT_COW_BOWLING_WINNING_04 = 7098 , + HELP_TEXT_COW_BOWLING_WINNING_05 = 7099 , + HELP_TEXT_COW_BOWLING_LOSING_01 = 7100 , + HELP_TEXT_COW_BOWLING_LOSING_02 = 7101 , + HELP_TEXT_COW_BOWLING_LOSING_03 = 7102 , + HELP_TEXT_COW_BOWLING_LOSING_04 = 7103 , + HELP_TEXT_COW_BOWLING_LOSING_05 = 7104 , + HELP_TEXT_COW_BOWLING_DRAWN_10 = 7105 , + HELP_TEXT_COW_BOWLING_DRAWING_10 = 7106 , + HELP_TEXT_COW_BOWLING_BLOCK_ALLEY_01 = 7107 , + HELP_TEXT_COW_BOWLING_BLOCK_ALLEY_02 = 7108 , + HELP_TEXT_COW_BOWLING_BLOCK_ALLEY_03 = 7109 , + HELP_TEXT_COW_BOWLING_COW_WON_01 = 7110 , + HELP_TEXT_COW_BOWLING_COW_WON_02 = 7111 , + HELP_TEXT_COW_BOWLING_COW_WON_03 = 7112 , + HELP_TEXT_COW_BOWLING_COW_WON_04 = 7113 , + HELP_TEXT_COW_BOWLING_COW_WON_05 = 7114 , + HELP_TEXT_COW_BOWLING_COW_LOST_10 = 7115 , + HELP_TEXT_COW_BOWLING_COW_LOST_20 = 7116 , + HELP_TEXT_COW_BOWLING_COW_JUST_LOSING_01 = 7117 , + HELP_TEXT_COW_BOWLING_COW_JUST_LOSING_02 = 7118 , + HELP_TEXT_COW_BOWLING_COW_JUST_LOSING_03 = 7119 , + HELP_TEXT_COW_BOWLING_ADVISOR_WELL_01 = 7120 , + HELP_TEXT_COW_BOWLING_ADVISOR_WELL_02 = 7121 , + HELP_TEXT_COW_BOWLING_ADVISOR_WELL_03 = 7122 , + HELP_TEXT_COW_BOWLING_ADVISOR_WELL_04 = 7123 , + HELP_TEXT_COW_BOWLING_ADVISOR_WELL_05 = 7124 , + HELP_TEXT_COW_BOWLING_ADVISOR_WELL_06 = 7125 , + HELP_TEXT_COW_BOWLING_ADVISOR_POOR_01 = 7126 , + HELP_TEXT_COW_BOWLING_ADVISOR_POOR_02 = 7127 , + HELP_TEXT_COW_BOWLING_ADVISOR_POOR_03 = 7128 , + HELP_TEXT_COW_BOWLING_ADVISOR_POOR_04 = 7129 , + HELP_TEXT_COW_BOWLING_ADVISOR_POOR_05 = 7130 , + HELP_TEXT_COW_BOWLING_ADVISOR_POOR_06 = 7131 , + HELP_TEXT_COW_BOWLING_DYK_01 = 7132 , + HELP_TEXT_MARBLES_NO_CREATURE_10 = 7133 , + HELP_TEXT_MARBLES_NO_CREATURE_20 = 7134 , + HELP_TEXT_MARBLES_NO_CREATURE_30 = 7135 , + HELP_TEXT_MARBLES_NO_CREATURE_40 = 7136 , + HELP_TEXT_MARBLES_10 = 7137 , + HELP_TEXT_MARBLES_20 = 7138 , + HELP_TEXT_MARBLES_30 = 7139 , + HELP_TEXT_MARBLES_35 = 7140 , + HELP_TEXT_MARBLES_40 = 7141 , + HELP_TEXT_MARBLES_50 = 7142 , + HELP_TEXT_MARBLES_60 = 7143 , + HELP_TEXT_MARBLES_65 = 7144 , + HELP_TEXT_MARBLES_70 = 7145 , + HELP_TEXT_MARBLES_80 = 7146 , + HELP_TEXT_MARBLES_90 = 7147 , + HELP_TEXT_MARBLES_100 = 7148 , + HELP_TEXT_MARBLES_101 = 7149 , + HELP_TEXT_MARBLES_102 = 7150 , + HELP_TEXT_MARBLES_APE_WINNING_01 = 7151 , + HELP_TEXT_MARBLES_APE_WINNING_02 = 7152 , + HELP_TEXT_MARBLES_APE_WINNING_03 = 7153 , + HELP_TEXT_MARBLES_APE_WINNING_04 = 7154 , + HELP_TEXT_MARBLES_APE_WINNING_05 = 7155 , + HELP_TEXT_MARBLES_APE_LOSING_01 = 7156 , + HELP_TEXT_MARBLES_APE_LOSING_02 = 7157 , + HELP_TEXT_MARBLES_APE_LOSING_03 = 7158 , + HELP_TEXT_MARBLES_APE_LOSING_04 = 7159 , + HELP_TEXT_MARBLES_APE_LOSING_05 = 7160 , + HELP_TEXT_MARBLES_APE_DRAWING_01 = 7161 , + HELP_TEXT_MARBLES_APE_DRAWING_02 = 7162 , + HELP_TEXT_MARBLES_APE_DRAWING_03 = 7163 , + HELP_TEXT_MARBLES_APE_WON_01 = 7164 , + HELP_TEXT_MARBLES_APE_WON_02 = 7165 , + HELP_TEXT_MARBLES_APE_WON_03 = 7166 , + HELP_TEXT_MARBLES_APE_WON_04 = 7167 , + HELP_TEXT_MARBLES_APE_WON_05 = 7168 , + HELP_TEXT_MARBLES_APE_LOST_01 = 7169 , + HELP_TEXT_MARBLES_APE_LOST_02 = 7170 , + HELP_TEXT_MARBLES_APE_LOST_03 = 7171 , + HELP_TEXT_MARBLES_APE_LOST_04 = 7172 , + HELP_TEXT_MARBLES_APE_LOST_05 = 7173 , + HELP_TEXT_MARBLES_GAME_DRAWN_01 = 7174 , + HELP_TEXT_MARBLES_GAME_DRAWN_02 = 7175 , + HELP_TEXT_MARBLES_GAME_DRAWN_03 = 7176 , + HELP_TEXT_MARBLES_GAME_DRAWN_04 = 7177 , + HELP_TEXT_MARBLES_GAME_DRAWN_05 = 7178 , + HELP_TEXT_MARBLES_ADVISOR_WELL_01 = 7179 , + HELP_TEXT_MARBLES_ADVISOR_WELL_02 = 7180 , + HELP_TEXT_MARBLES_ADVISOR_WELL_03 = 7181 , + HELP_TEXT_MARBLES_ADVISOR_WELL_04 = 7182 , + HELP_TEXT_MARBLES_ADVISOR_WELL_05 = 7183 , + HELP_TEXT_MARBLES_ADVISOR_POOR_01 = 7184 , + HELP_TEXT_MARBLES_ADVISOR_POOR_02 = 7185 , + HELP_TEXT_MARBLES_ADVISOR_POOR_03 = 7186 , + HELP_TEXT_MARBLES_ADVISOR_POOR_04 = 7187 , + HELP_TEXT_MARBLES_ADVISOR_POOR_05 = 7188 , + HELP_TEXT_MARBLES_DYK_01 = 7189 , + HELP_TEXT_ZEDI_FIGHT_NO_CREATURE_10 = 7190 , + HELP_TEXT_ZEDI_FIGHT_NO_CREATURE_20 = 7191 , + HELP_TEXT_ZEDI_FIGHT_NO_CREATURE_30 = 7192 , + HELP_TEXT_ZEDI_FIGHT_NO_CREATURE_40 = 7193 , + HELP_TEXT_ZEDI_FIGHT_NO_CREATURE_50 = 7194 , + HELP_TEXT_ZEDI_FIGHT_10 = 7195 , + HELP_TEXT_ZEDI_FIGHT_12 = 7196 , + HELP_TEXT_ZEDI_FIGHT_14 = 7197 , + HELP_TEXT_ZEDI_FIGHT_16 = 7198 , + HELP_TEXT_ZEDI_FIGHT_20 = 7199 , + HELP_TEXT_ZEDI_FIGHT_30 = 7200 , + HELP_TEXT_ZEDI_FIGHT_40 = 7201 , + HELP_TEXT_ZEDI_FIGHT_50 = 7202 , + HELP_TEXT_ZEDI_FIGHT_RHINO_WINNING_01 = 7203 , + HELP_TEXT_ZEDI_FIGHT_RHINO_WINNING_02 = 7204 , + HELP_TEXT_ZEDI_FIGHT_RHINO_WINNING_03 = 7205 , + HELP_TEXT_ZEDI_FIGHT_RHINO_WINNING_04 = 7206 , + HELP_TEXT_ZEDI_FIGHT_RHINO_WINNING_05 = 7207 , + HELP_TEXT_ZEDI_FIGHT_RHINO_LOSING_01 = 7208 , + HELP_TEXT_ZEDI_FIGHT_RHINO_LOSING_02 = 7209 , + HELP_TEXT_ZEDI_FIGHT_RHINO_LOSING_03 = 7210 , + HELP_TEXT_ZEDI_FIGHT_RHINO_LOSING_04 = 7211 , + HELP_TEXT_ZEDI_FIGHT_RHINO_LOSING_05 = 7212 , + HELP_TEXT_ZEDI_FIGHT_RHINO_WON_01 = 7213 , + HELP_TEXT_ZEDI_FIGHT_RHINO_WON_02 = 7214 , + HELP_TEXT_ZEDI_FIGHT_RHINO_WON_03 = 7215 , + HELP_TEXT_ZEDI_FIGHT_RHINO_LOST_01 = 7216 , + HELP_TEXT_ZEDI_FIGHT_RHINO_LOST_02 = 7217 , + HELP_TEXT_ZEDI_FIGHT_RHINO_LOST_03 = 7218 , + HELP_TEXT_ZEDI_FIGHT_ADVISOR_TYKE_01 = 7219 , + HELP_TEXT_ZEDI_FIGHT_ADVISOR_TYKE_02 = 7220 , + HELP_TEXT_ADVISORS_INTRODUCTION_10 = 7221 , + HELP_TEXT_ADVISORS_INTRODUCTION_20 = 7222 , + HELP_TEXT_ADVISORS_INTRODUCTION_30 = 7223 , + HELP_TEXT_ADVISORS_INTRODUCTION_40 = 7224 , + HELP_TEXT_ADVISORS_INTRODUCTION_50 = 7225 , + HELP_TEXT_ADVISORS_INTRODUCTION_60 = 7226 , + HELP_TEXT_ADVISORS_INTRODUCTION_70 = 7227 , + HELP_TEXT_ADVISORS_INTRODUCTION_80 = 7228 , + HELP_TEXT_ADVISORS_INTRODUCTION_90 = 7229 , + HELP_TEXT_LION_INTRODUCTION_10 = 7230 , + HELP_TEXT_LION_INTRODUCTION_20 = 7231 , + HELP_TEXT_LION_INTRODUCTION_21 = 7232 , + HELP_TEXT_LION_INTRODUCTION_22 = 7233 , + HELP_TEXT_LION_INTRODUCTION_30 = 7234 , + HELP_TEXT_LION_INTRODUCTION_40 = 7235 , + HELP_TEXT_LION_INTRODUCTION_50 = 7236 , + HELP_TEXT_LION_INTRODUCTION_60 = 7237 , + HELP_TEXT_LION_INTRODUCTION_70 = 7238 , + HELP_TEXT_LION_INTRODUCTION_80 = 7239 , + HELP_TEXT_LION_INTRODUCTION_90 = 7240 , + HELP_TEXT_LION_INTRODUCTION_100 = 7241 , + HELP_TEXT_LION_INTRODUCTION_110 = 7242 , + HELP_TEXT_LION_INTRODUCTION_120 = 7243 , + HELP_TEXT_LION_INTRODUCTION_130 = 7244 , + HELP_TEXT_LION_INTRODUCTION_140 = 7245 , + HELP_TEXT_LION_INTRODUCTION_150 = 7246 , + HELP_TEXT_LION_INTRODUCTION_160 = 7247 , + HELP_TEXT_LION_INTRODUCTION_170 = 7248 , + HELP_TEXT_LION_INTRODUCTION_180 = 7249 , + HELP_TEXT_LION_INTRODUCTION_190 = 7250 , + HELP_TEXT_LION_INTRODUCTION_200 = 7251 , + HELP_TEXT_LION_INTRODUCTION_210 = 7252 , + HELP_TEXT_LION_INTRODUCTION_215 = 7253 , + HELP_TEXT_LION_INTRODUCTION_220 = 7254 , + HELP_TEXT_LION_INTRODUCTION_230 = 7255 , + HELP_TEXT_LION_INTRODUCTION_240 = 7256 , + HELP_TEXT_LION_INTRODUCTION_250 = 7257 , + HELP_TEXT_LION_INTRODUCTION_260 = 7258 , + HELP_TEXT_LION_INTRODUCTION_270 = 7259 , + HELP_TEXT_LION_INTRODUCTION_280 = 7260 , + HELP_TEXT_LION_FIND_APPRENTICE_10 = 7261 , + HELP_TEXT_LION_FIND_APPRENTICE_20 = 7262 , + HELP_TEXT_LION_FIND_APPRENTICE_30 = 7263 , + HELP_TEXT_LION_FIND_APPRENTICE_40 = 7264 , + HELP_TEXT_LION_FIND_APPRENTICE_50 = 7265 , + HELP_TEXT_LION_FIND_APPRENTICE_60 = 7266 , + HELP_TEXT_LION_YOU_HAVE_APPRENTICE_10 = 7267 , + HELP_TEXT_LION_YOU_HAVE_APPRENTICE_20 = 7268 , + HELP_TEXT_LION_YOU_HAVE_APPRENTICE_30 = 7269 , + HELP_TEXT_LION_YOU_HAVE_APPRENTICE_40 = 7270 , + HELP_TEXT_LION_YOU_HAVE_APPRENTICE_50 = 7271 , + HELP_TEXT_LION_YOU_HAVE_APPRENTICE_60 = 7272 , + HELP_TEXT_RACE_10 = 7273 , + HELP_TEXT_RACE_20 = 7274 , + HELP_TEXT_RACE_30 = 7275 , + HELP_TEXT_RACE_40 = 7276 , + HELP_TEXT_RACE_50 = 7277 , + HELP_TEXT_RACE_70 = 7278 , + HELP_TEXT_RACE_80 = 7279 , + HELP_TEXT_RACE_90 = 7280 , + HELP_TEXT_RACE_100 = 7281 , + HELP_TEXT_RACE_110 = 7282 , + HELP_TEXT_RACE_120 = 7283 , + HELP_TEXT_RACE_130 = 7284 , + HELP_TEXT_RACE_TORTOISE_WINS_01 = 7285 , + HELP_TEXT_RACE_TORTOISE_WINS_02 = 7286 , + HELP_TEXT_RACE_TORTOISE_WINS_03 = 7287 , + HELP_TEXT_RACE_TORTOISE_WINS_04 = 7288 , + HELP_TEXT_RACE_TORTOISE_WINS_05 = 7289 , + HELP_TEXT_RACE_TORTOISE_LOSES_01 = 7290 , + HELP_TEXT_RACE_TORTOISE_LOSES_02 = 7291 , + HELP_TEXT_RACE_TORTOISE_LOSES_03 = 7292 , + HELP_TEXT_RACE_TORTOISE_LOSES_04 = 7293 , + HELP_TEXT_RACE_TORTOISE_LOSES_05 = 7294 , + HELP_TEXT_NEW_REWARD_41 = 7295 , + HELP_TEXT_NEW_REWARD_42 = 7296 , + HELP_TEXT_HAND_CREATURE_SPELL_ANTI_01_old = 7297 , + HELP_TEXT_HAND_CREATURE_SPELL_FAST_01 = 7298 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_ANTI = 7299 , + HELP_TEXT_SPELL_SEED_TYPE_CREATURE_SPELL_FAST = 7300 , + HELP_TEXT_SHEEP_TRIAL_5 = 7301 , + HELP_TEXT_SHEEP_TRIAL_10 = 7302 , + HELP_TEXT_SHEEP_TRIAL_20 = 7303 , + HELP_TEXT_SHEEP_TRIAL_30 = 7304 , + HELP_TEXT_SHEEP_TRIAL_40 = 7305 , + HELP_TEXT_SHEEP_TRIAL_50 = 7306 , + HELP_TEXT_SHEEP_TRIAL_60 = 7307 , + HELP_TEXT_SHEEP_TRIAL_70 = 7308 , + HELP_TEXT_SHEEP_TRIAL_90 = 7309 , + HELP_TEXT_SHEEP_TRIAL_100 = 7310 , + HELP_TEXT_SHEEP_TRIAL_110 = 7311 , + HELP_TEXT_SHEEP_TRIAL_120 = 7312 , + HELP_TEXT_SHEEP_TRIAL_130 = 7313 , + HELP_TEXT_WOLF_TRIAL_10 = 7314 , + HELP_TEXT_WOLF_TRIAL_20 = 7315 , + HELP_TEXT_WOLF_TRIAL_30 = 7316 , + HELP_TEXT_WOLF_TRIAL_40 = 7317 , + HELP_TEXT_WOLF_TRIAL_50 = 7318 , + HELP_TEXT_WOLF_TRIAL_60 = 7319 , + HELP_TEXT_WOLF_TRIAL_70 = 7320 , + HELP_TEXT_WOLF_TRIAL_75 = 7321 , + HELP_TEXT_WOLF_TRIAL_80 = 7322 , + HELP_TEXT_WOLF_TRIAL_90 = 7323 , + HELP_TEXT_WOLF_TRIAL_100 = 7324 , + HELP_TEXT_WOLF_TRIAL_110 = 7325 , + HELP_TEXT_WOLF_TRIAL_120 = 7326 , + HELP_TEXT_WOLF_TRIAL_130 = 7327 , + HELP_TEXT_WOLF_TRIAL_140 = 7328 , + HELP_TEXT_WOLF_TRIAL_150 = 7329 , + HELP_TEXT_WOLF_TRIAL_170 = 7330 , + HELP_TEXT_WOLF_TRIAL_180 = 7331 , + HELP_TEXT_WOLF_TRIAL_185 = 7332 , + HELP_TEXT_WOLF_TRIAL_190 = 7333 , + HELP_TEXT_WOLF_TRIAL_200 = 7334 , + HELP_TEXT_WOLF_TRIAL_210 = 7335 , + HELP_TEXT_WOLF_TRIAL_220 = 7336 , + HELP_TEXT_WOLF_TRIAL_230 = 7337 , + HELP_TEXT_WOLF_TRIAL_240 = 7338 , + HELP_TEXT_WOLF_TRIAL_250 = 7339 , + HELP_TEXT_WOLF_TRIAL_260 = 7340 , + HELP_TEXT_WOLF_TRIAL_265 = 7341 , + HELP_TEXT_WOLF_TRIAL_270 = 7342 , + HELP_TEXT_WOLF_TRIAL_275 = 7343 , + HELP_TEXT_WOLF_TRIAL_280 = 7344 , + HELP_TEXT_WOLF_TRIAL_290 = 7345 , + HELP_TEXT_GREEDY_HERMIT_10 = 7346 , + HELP_TEXT_GREEDY_HERMIT_20 = 7347 , + HELP_TEXT_GREEDY_HERMIT_30 = 7348 , + HELP_TEXT_GREEDY_HERMIT_40 = 7349 , + HELP_TEXT_GREEDY_HERMIT_50 = 7350 , + HELP_TEXT_GREEDY_HERMIT_60 = 7351 , + HELP_TEXT_GREEDY_HERMIT_70 = 7352 , + HELP_TEXT_GREEDY_HERMIT_80 = 7353 , + HELP_TEXT_GREEDY_HERMIT_90 = 7354 , + HELP_TEXT_GREEDY_HERMIT_100 = 7355 , + HELP_TEXT_GREEDY_HERMIT_110 = 7356 , + HELP_TEXT_GREEDY_HERMIT_120 = 7357 , + HELP_TEXT_GREEDY_HERMIT_130 = 7358 , + HELP_TEXT_GREEDY_HERMIT_140 = 7359 , + HELP_TEXT_GREEDY_HERMIT_150 = 7360 , + HELP_TEXT_GREEDY_HERMIT_160 = 7361 , + HELP_TEXT_GREEDY_HERMIT_170 = 7362 , + HELP_TEXT_GREEDY_HERMIT_180 = 7363 , + HELP_TEXT_GREEDY_HERMIT_185 = 7364 , + HELP_TEXT_GREEDY_HERMIT_190 = 7365 , + HELP_TEXT_GREEDY_HERMIT_200 = 7366 , + HELP_TEXT_GREEDY_HERMIT_210 = 7367 , + HELP_TEXT_GREEDY_HERMIT_220 = 7368 , + HELP_TEXT_GREEDY_HERMIT_230 = 7369 , + HELP_TEXT_GREEDY_HERMIT_240 = 7370 , + HELP_TEXT_KINGOFTHECASTLE_10 = 7371 , + HELP_TEXT_KINGOFTHECASTLE_20 = 7372 , + HELP_TEXT_KINGOFTHECASTLE_30 = 7373 , + HELP_TEXT_KINGOFTHECASTLE_40 = 7374 , + HELP_TEXT_KINGOFTHECASTLE_50 = 7375 , + HELP_TEXT_KINGOFTHECASTLE_60 = 7376 , + HELP_TEXT_KINGOFTHECASTLE_70 = 7377 , + HELP_TEXT_KINGOFTHECASTLE_80 = 7378 , + HELP_TEXT_KINGOFTHECASTLE_90 = 7379 , + HELP_TEXT_KINGOFTHECASTLE_100 = 7380 , + HELP_TEXT_KINGOFTHECASTLE_110 = 7381 , + HELP_TEXT_KINGOFTHECASTLE_120 = 7382 , + HELP_TEXT_KINGOFTHECASTLE_130 = 7383 , + HELP_TEXT_KINGOFTHECASTLE_140 = 7384 , + HELP_TEXT_KINGOFTHECASTLE_150 = 7385 , + HELP_TEXT_KINGOFTHECASTLE_160 = 7386 , + HELP_TEXT_KINGOFTHECASTLE_170 = 7387 , + HELP_TEXT_KINGOFTHECASTLE_180 = 7388 , + HELP_TEXT_KINGOFTHECASTLE_190 = 7389 , + HELP_TEXT_KINGOFTHECASTLE_200 = 7390 , + HELP_TEXT_KINGOFTHECASTLE_210 = 7391 , + HELP_TEXT_KINGOFTHECASTLE_220 = 7392 , + HELP_TEXT_KINGOFTHECASTLE_230 = 7393 , + HELP_TEXT_KINGOFTHECASTLE_240 = 7394 , + HELP_TEXT_KINGOFTHECASTLE_250 = 7395 , + HELP_TEXT_KINGOFTHECASTLE_260 = 7396 , + HELP_TEXT_KINGOFTHECASTLE_270 = 7397 , + HELP_TEXT_KINGOFTHECASTLE_280 = 7398 , + HELP_TEXT_KINGOFTHECASTLE_FIGHT_10 = 7399 , + HELP_TEXT_KINGOFTHECASTLE_FIGHT_20 = 7400 , + HELP_TEXT_KINGOFTHECASTLE_FIGHT_30 = 7401 , + HELP_TEXT_KINGOFTHECASTLE_FIGHT_40 = 7402 , + HELP_TEXT_KINGOFTHECASTLE_FIGHT_50 = 7403 , + HELP_TEXT_KINGOFTHECASTLE_GAME_10 = 7404 , + HELP_TEXT_KINGOFTHECASTLE_GAME_20 = 7405 , + HELP_TEXT_KINGOFTHECASTLE_GAME_30 = 7406 , + HELP_TEXT_KINGOFTHECASTLE_GAME_40 = 7407 , + HELP_TEXT_KINGOFTHECASTLE_GAME_50 = 7408 , + HELP_TEXT_KINGOFTHECASTLE_GAME_60 = 7409 , + HELP_TEXT_KINGOFTHECASTLE_GAME_70 = 7410 , + HELP_TEXT_KINGOFTHECASTLE_GAME_80 = 7411 , + HELP_TEXT_KINGOFTHECASTLE_GAME_90 = 7412 , + HELP_TEXT_KINGOFTHECASTLE_GAME_100 = 7413 , + HELP_TEXT_KINGOFTHECASTLE_GAME_110 = 7414 , + HELP_TEXT_KINGOFTHECASTLE_GAME_120 = 7415 , + HELP_TEXT_KINGOFTHECASTLE_GAME_130 = 7416 , + HELP_TEXT_KINGOFTHECASTLE_GAME_140 = 7417 , + HELP_TEXT_KINGOFTHECASTLE_GAME_150 = 7418 , + HELP_TEXT_KINGOFTHECASTLE_GAME_160 = 7419 , + HELP_TEXT_KINGOFTHECASTLE_GAME_170 = 7420 , + HELP_TEXT_KINGOFTHECASTLE_GAME_180 = 7421 , + HELP_TEXT_KINGOFTHECASTLE_GAME_190 = 7422 , + HELP_TEXT_KINGOFTHECASTLE_GAME_200 = 7423 , + HELP_TEXT_KINGOFTHECASTLE_GAME_210 = 7424 , + HELP_TEXT_KINGOFTHECASTLE_GAME_220 = 7425 , + HELP_TEXT_KINGOFTHECASTLE_GAME_230 = 7426 , + HELP_TEXT_KINGOFTHECASTLE_GAME_240 = 7427 , + HELP_TEXT_KINGOFTHECASTLE_GAME_250 = 7428 , + HELP_TEXT_KINGOFTHECASTLE_GAME_260 = 7429 , + HELP_TEXT_KINGOFTHECASTLE_GAME_270 = 7430 , + HELP_TEXT_KINGOFTHECASTLE_GAME_280 = 7431 , + HELP_TEXT_KINGOFTHECASTLE_GAME_290 = 7432 , + HELP_TEXT_KINGOFTHECASTLE_GAME_300 = 7433 , + HELP_TEXT_KINGOFTHECASTLE_GAME_310 = 7434 , + HELP_TEXT_KINGOFTHECASTLE_GAME_320 = 7435 , + HELP_TEXT_KINGOFTHECASTLE_GAME_330 = 7436 , + HELP_TEXT_KINGOFTHECASTLE_GAME_340 = 7437 , + HELP_TEXT_KINGOFTHECASTLE_GAME_350 = 7438 , + HELP_TEXT_KINGOFTHECASTLE_GAME_360 = 7439 , + HELP_TEXT_KINGOFTHECASTLE_GAME_370 = 7440 , + HELP_TEXT_KINGOFTHECASTLE_GAME_380 = 7441 , + HELP_TEXT_KINGOFTHECASTLE_GAME_390 = 7442 , + HELP_TEXT_KINGOFTHECASTLE_GAME_400 = 7443 , + HELP_TEXT_KINGOFTHECASTLE_GAME_410 = 7444 , + HELP_TEXT_KINGOFTHECASTLE_GAME_420 = 7445 , + HELP_TEXT_SMASH_BUILDINGS_10 = 7446 , + HELP_TEXT_SMASH_BUILDINGS_20 = 7447 , + HELP_TEXT_SMASH_BUILDINGS_30 = 7448 , + HELP_TEXT_SMASH_BUILDINGS_40 = 7449 , + HELP_TEXT_SMASH_BUILDINGS_50 = 7450 , + HELP_TEXT_SMASH_BUILDINGS_60 = 7451 , + HELP_TEXT_SMASH_BUILDINGS_70 = 7452 , + HELP_TEXT_SMASH_BUILDINGS_80 = 7453 , + HELP_TEXT_SMASH_BUILDINGS_90 = 7454 , + HELP_TEXT_SMASH_BUILDINGS_100 = 7455 , + HELP_TEXT_SMASH_BUILDINGS_110 = 7456 , + HELP_TEXT_SMASH_BUILDINGS_120 = 7457 , + HELP_TEXT_SMASH_BUILDINGS_130 = 7458 , + HELP_TEXT_SMASH_BUILDINGS_140 = 7459 , + HELP_TEXT_SMASH_BUILDINGS_150 = 7460 , + HELP_TEXT_SMASH_BUILDINGS_160 = 7461 , + HELP_TEXT_SMASH_BUILDINGS_170 = 7462 , + HELP_TEXT_SMASH_BUILDINGS_180 = 7463 , + HELP_TEXT_SMASH_BUILDINGS_190 = 7464 , + HELP_TEXT_SMASH_BUILDINGS_200 = 7465 , + HELP_TEXT_SMASH_BUILDINGS_210 = 7466 , + HELP_TEXT_SMASH_BUILDINGS_220 = 7467 , + HELP_TEXT_SMASH_BUILDINGS_230 = 7468 , + HELP_TEXT_SMASH_BUILDINGS_240 = 7469 , + HELP_TEXT_SMASH_BUILDINGS_250 = 7470 , + HELP_TEXT_SMASH_BUILDINGS_260 = 7471 , + HELP_TEXT_SMASH_BUILDINGS_270 = 7472 , + HELP_TEXT_SMASH_BUILDINGS_280 = 7473 , + HELP_TEXT_SMASH_BUILDINGS_290 = 7474 , + HELP_TEXT_SMASH_BUILDINGS_300 = 7475 , + HELP_TEXT_SMASH_BUILDINGS_310 = 7476 , + HELP_TEXT_SMASH_BUILDINGS_320 = 7477 , + HELP_TEXT_SMASH_BUILDINGS_330 = 7478 , + HELP_TEXT_SMASH_BUILDINGS_DONE_01 = 7479 , + HELP_TEXT_SMASH_BUILDINGS_DONE_02 = 7480 , + HELP_TEXT_SMASH_BUILDINGS_DONE_03 = 7481 , + HELP_TEXT_SMASH_BUILDINGS_DONE_04 = 7482 , + HELP_TEXT_SMASH_BUILDINGS_DONE_05 = 7483 , + HELP_TEXT_SPECIAL_CROPS_10 = 7484 , + HELP_TEXT_SPECIAL_CROPS_20 = 7485 , + HELP_TEXT_SPECIAL_CROPS_30 = 7486 , + HELP_TEXT_SPECIAL_CROPS_40 = 7487 , + HELP_TEXT_SPECIAL_CROPS_50 = 7488 , + HELP_TEXT_SPECIAL_CROPS_60 = 7489 , + HELP_TEXT_SPECIAL_CROPS_70 = 7490 , + HELP_TEXT_SPECIAL_CROPS_80 = 7491 , + HELP_TEXT_SPECIAL_CROPS_90 = 7492 , + HELP_TEXT_SPECIAL_CROPS_100 = 7493 , + HELP_TEXT_SPECIAL_CROPS_110 = 7494 , + HELP_TEXT_SPECIAL_CROPS_120 = 7495 , + HELP_TEXT_SPECIAL_CROPS_130 = 7496 , + HELP_TEXT_SPECIAL_CROPS_135 = 7497 , + HELP_TEXT_SPECIAL_CROPS_140 = 7498 , + HELP_TEXT_SPECIAL_CROPS_150 = 7499 , + HELP_TEXT_SPECIAL_CROPS_160 = 7500 , + HELP_TEXT_SPECIAL_CROPS_170 = 7501 , + HELP_TEXT_SPECIAL_CROPS_180 = 7502 , + HELP_TEXT_SPECIAL_CROPS_190 = 7503 , + HELP_TEXT_SPECIAL_CROPS_200 = 7504 , + HELP_TEXT_SPECIAL_CROPS_210 = 7505 , + HELP_TEXT_SPECIAL_CROPS_220 = 7506 , + HELP_TEXT_SPECIAL_CROPS_230 = 7507 , + HELP_TEXT_SPECIAL_CROPS_240 = 7508 , + HELP_TEXT_SPECIAL_CROPS_250 = 7509 , + HELP_TEXT_SPECIAL_CROPS_260 = 7510 , + HELP_TEXT_SPECIAL_CROPS_270 = 7511 , + HELP_TEXT_SPECIAL_CROPS_280 = 7512 , + HELP_TEXT_SPECIAL_CROPS_290 = 7513 , + HELP_TEXT_SPECIAL_CROPS_300 = 7514 , + HELP_TEXT_SPECIAL_CROPS_310 = 7515 , + HELP_TEXT_SPECIAL_CROPS_320 = 7516 , + HELP_TEXT_SPECIAL_CROPS_330 = 7517 , + HELP_TEXT_SPECIAL_CROPS_340 = 7518 , + HELP_TEXT_SPECIAL_CROPS_350 = 7519 , + HELP_TEXT_SPECIAL_CROPS_360 = 7520 , + HELP_TEXT_SPECIAL_CROPS_370 = 7521 , + HELP_TEXT_SPECIAL_CROPS_380 = 7522 , + HELP_TEXT_SPECIAL_CROPS_390 = 7523 , + HELP_TEXT_SPECIAL_CROPS_400 = 7524 , + HELP_TEXT_SPIRIT_TRIAL_10 = 7525 , + HELP_TEXT_SPIRIT_TRIAL_20 = 7526 , + HELP_TEXT_SPIRIT_TRIAL_30 = 7527 , + HELP_TEXT_SPIRIT_TRIAL_40 = 7528 , + HELP_TEXT_SPIRIT_TRIAL_45 = 7529 , + HELP_TEXT_SPIRIT_TRIAL_50 = 7530 , + HELP_TEXT_SPIRIT_TRIAL_65 = 7531 , + HELP_TEXT_SPIRIT_TRIAL_70 = 7532 , + HELP_TEXT_SPIRIT_TRIAL_80 = 7533 , + HELP_TEXT_SPIRIT_TRIAL_90 = 7534 , + HELP_TEXT_SPIRIT_TRIAL_100 = 7535 , + HELP_TEXT_SPIRIT_TRIAL_110 = 7536 , + HELP_TEXT_SPIRIT_TRIAL_120 = 7537 , + HELP_TEXT_SPIRIT_TRIAL_130 = 7538 , + HELP_TEXT_SPIRIT_TRIAL_140 = 7539 , + HELP_TEXT_SPIRIT_TRIAL_150 = 7540 , + HELP_TEXT_SPIRIT_TRIAL_160 = 7541 , + HELP_TEXT_TYKESCOMINGOFAGE_10 = 7542 , + HELP_TEXT_TYKESCOMINGOFAGE_20 = 7543 , + HELP_TEXT_TYKESCOMINGOFAGE_30 = 7544 , + HELP_TEXT_TYKESCOMINGOFAGE_40 = 7545 , + HELP_TEXT_TYKESCOMINGOFAGE_50 = 7546 , + HELP_TEXT_TYKESCOMINGOFAGE_60 = 7547 , + HELP_TEXT_TYKESCOMINGOFAGE_70 = 7548 , + HELP_TEXT_TYKESCOMINGOFAGE_80 = 7549 , + HELP_TEXT_TYKESCOMINGOFAGE_90 = 7550 , + HELP_TEXT_TYKESCOMINGOFAGE_100 = 7551 , + HELP_TEXT_TYKESCOMINGOFAGE_110 = 7552 , + HELP_TEXT_TYKESCOMINGOFAGE_120 = 7553 , + HELP_TEXT_TYKESCOMINGOFAGE_130 = 7554 , + HELP_TEXT_TYKESCOMINGOFAGE_140 = 7555 , + HELP_TEXT_TYKESCOMINGOFAGE_150 = 7556 , + HELP_TEXT_TYKESCOMINGOFAGE_160 = 7557 , + HELP_TEXT_TYKESCOMINGOFAGE_170 = 7558 , + HELP_TEXT_TYKESCOMINGOFAGE_180 = 7559 , + HELP_TEXT_TYKESCOMINGOFAGE_190 = 7560 , + HELP_TEXT_TYKESCOMINGOFAGE_200 = 7561 , + HELP_TEXT_TYKESCOMINGOFAGE_210 = 7562 , + HELP_TEXT_TYKESCOMINGOFAGE_220 = 7563 , + HELP_TEXT_TYKESCOMINGOFAGE_230 = 7564 , + HELP_TEXT_TYKESCOMINGOFAGE_240 = 7565 , + HELP_TEXT_TYKESCOMINGOFAGE_250 = 7566 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKENOTLEARNING_10 = 7567 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKENOTLEARNING_20 = 7568 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKENOTLEARNING_30 = 7569 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKENOTLEARNING_40 = 7570 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_10 = 7571 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_20 = 7572 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_30 = 7573 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_40 = 7574 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_50 = 7575 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_60 = 7576 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_70 = 7577 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_80 = 7578 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_90 = 7579 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_100 = 7580 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_110 = 7581 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_120 = 7582 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_130 = 7583 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_140 = 7584 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_150 = 7585 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_160 = 7586 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_170 = 7587 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_180 = 7588 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_190 = 7589 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_200 = 7590 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_210 = 7591 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_220 = 7592 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_230 = 7593 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_240 = 7594 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_250 = 7595 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_260 = 7596 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_270 = 7597 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_280 = 7598 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_290 = 7599 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_300 = 7600 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_310 = 7601 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_320 = 7602 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_330 = 7603 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_340 = 7604 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_350 = 7605 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_360 = 7606 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_370 = 7607 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_380 = 7608 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_390 = 7609 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_400 = 7610 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_410 = 7611 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_420 = 7612 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_430 = 7613 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_440 = 7614 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_450 = 7615 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_460 = 7616 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_470 = 7617 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_480 = 7618 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_490 = 7619 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_500 = 7620 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_510 = 7621 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_520 = 7622 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_530 = 7623 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_540 = 7624 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_550 = 7625 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_560 = 7626 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_570 = 7627 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_580 = 7628 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_590 = 7629 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_600 = 7630 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_610 = 7631 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_620 = 7632 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_630 = 7633 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_640 = 7634 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_650 = 7635 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_660 = 7636 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_670 = 7637 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_680 = 7638 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_690 = 7639 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_700 = 7640 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_710 = 7641 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_720 = 7642 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_730 = 7643 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_740 = 7644 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_750 = 7645 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_760 = 7646 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_770 = 7647 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_780 = 7648 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_790 = 7649 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_800 = 7650 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_810 = 7651 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_820 = 7652 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_830 = 7653 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_840 = 7654 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_850 = 7655 , + HELP_TEXT_ZEBRA_TRIAL_10 = 7656 , + HELP_TEXT_ZEBRA_TRIAL_20 = 7657 , + HELP_TEXT_ZEBRA_TRIAL_30 = 7658 , + HELP_TEXT_ZEBRA_TRIAL_40 = 7659 , + HELP_TEXT_ZEBRA_TRIAL_50 = 7660 , + HELP_TEXT_ZEBRA_TRIAL_60 = 7661 , + HELP_TEXT_ZEBRA_TRIAL_70 = 7662 , + HELP_TEXT_ZEBRA_TRIAL_80 = 7663 , + HELP_TEXT_ZEBRA_TRIAL_100 = 7664 , + HELP_TEXT_ZEBRA_TRIAL_110 = 7665 , + HELP_TEXT_ZEBRA_TRIAL_120 = 7666 , + HELP_TEXT_ZEBRA_TRIAL_MAN_SHOUTS_01 = 7667 , + HELP_TEXT_ZEBRA_TRIAL_MAN_SHOUTS_02 = 7668 , + HELP_TEXT_ZEBRA_TRIAL_MAN_SHOUTS_03 = 7669 , + HELP_TEXT_ZEBRA_TRIAL_MAN_SHOUTS_04 = 7670 , + HELP_TEXT_ZEBRA_TRIAL_MAN_SHOUTS_05 = 7671 , + HELP_TEXT_ZEBRA_TRIAL_MAN_SHOUTS_06 = 7672 , + HELP_TEXT_ZEBRA_TRIAL_130 = 7673 , + HELP_TEXT_ZEBRA_TRIAL_140 = 7674 , + HELP_TEXT_ZEBRA_TRIAL_150 = 7675 , + HELP_TEXT_ZEBRA_TRIAL_160 = 7676 , + HELP_TEXT_ZEBRA_TRIAL_170 = 7677 , + HELP_TEXT_ZEBRA_TRIAL_180 = 7678 , + HELP_TEXT_ZEBRA_TRIAL_190 = 7679 , + HELP_TEXT_ZEBRA_TRIAL_200 = 7680 , + HELP_TEXT_ZEBRA_TRIAL_210 = 7681 , + HELP_TEXT_ZEBRA_TRIAL_220 = 7682 , + HELP_TEXT_ZEBRA_TRIAL_230 = 7683 , + HELP_TEXT_ZEBRA_TRIAL_240 = 7684 , + HELP_TEXT_ZEBRA_TRIAL_250 = 7685 , + HELP_TEXT_ZEBRA_TRIAL_260 = 7686 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_01 = 7687 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_02 = 7688 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_03 = 7689 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_04 = 7690 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_05 = 7691 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_06 = 7692 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_07 = 7693 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_08 = 7694 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_09 = 7695 , + HELP_TEXT_ZEBRA_TRIAL_MAN_FLYING_PAST_10 = 7696 , + HELP_TEXT_ZEBRA_HIT_BY_MAN_01 = 7697 , + HELP_TEXT_ZEBRA_HIT_BY_MAN_02 = 7698 , + HELP_TEXT_ZEBRA_HIT_BY_MAN_03 = 7699 , + HELP_TEXT_MISSIONARIES_LEAVE_10 = 7700 , + HELP_TEXT_MISSIONARIES_LEAVE_20 = 7701 , + HELP_TEXT_MISSIONARIES_LEAVE_30 = 7702 , + HELP_TEXT_MISSIONARIES_LEAVE_40 = 7703 , + HELP_TEXT_MISSIONARIES_LEAVE_60 = 7704 , + HELP_TEXT_MISSIONARIES_LEAVE_70 = 7705 , + HELP_TEXT_MISSIONARIES_LEAVE_80 = 7706 , + HELP_TEXT_MISSIONARIES_LEAVE_100 = 7707 , + HELP_TEXT_MISSIONARIES_LEAVE_110 = 7708 , + HELP_TEXT_MISSIONARIES_LEAVE_120 = 7709 , + HELP_TEXT_MISSIONARIES_LEAVE_130 = 7710 , + HELP_TEXT_MISSIONARIES_LEAVE_140 = 7711 , + HELP_TEXT_MISSIONARIES_LEAVE_160 = 7712 , + HELP_TEXT_MISSIONARIES_LEAVE_170 = 7713 , + HELP_TEXT_MISSIONARIES_LEAVE_180 = 7714 , + HELP_TEXT_MISSIONARIES_LEAVE_190 = 7715 , + HELP_TEXT_MISSIONARIES_LEAVE_191 = 7716 , + HELP_TEXT_MISSIONARIES_LEAVE_192 = 7717 , + HELP_TEXT_MISSIONARIES_LEAVE_193 = 7718 , + HELP_TEXT_MISSIONARIES_LEAVE_200 = 7719 , + HELP_TEXT_MISSIONARIES_LEAVE_201 = 7720 , + HELP_TEXT_MISSIONARIES_LEAVE_202 = 7721 , + HELP_TEXT_MISSIONARIES_LEAVE_203 = 7722 , + HELP_TEXT_MISSIONARIES_LEAVE_204 = 7723 , + HELP_TEXT_MISSIONARIES_LEAVE_DYK = 7724 , + HELP_TEXT_GENERAL_TRIAL_STARTS_01 = 7725 , + HELP_TEXT_GENERAL_TRIAL_STARTS_02 = 7726 , + HELP_TEXT_GENERAL_TRIAL_STARTS_03 = 7727 , + HELP_TEXT_GENERAL_TRIAL_STARTS_04 = 7728 , + HELP_TEXT_GENERAL_TRIAL_STARTS_05 = 7729 , + HELP_TEXT_GENERAL_TRIAL_STARTS_06 = 7730 , + HELP_TEXT_GENERAL_TRIAL_STARTS_07 = 7731 , + HELP_TEXT_GENERAL_TRIAL_STARTS_08 = 7732 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_01 = 7733 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_02 = 7734 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_03 = 7735 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_04 = 7736 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_05 = 7737 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_06 = 7738 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_07 = 7739 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_08 = 7740 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_09 = 7741 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_10 = 7742 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_11 = 7743 , + HELP_TEXT_GENERAL_TYKE_FEEDBACK_12 = 7744 , + HELP_TEXT_TYKE_GROWN_UP_10 = 7745 , + HELP_TEXT_TYKE_GROWN_UP_20 = 7746 , + HELP_TEXT_TYKE_GROWN_UP_30 = 7747 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_01 = 7748 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_02 = 7749 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_03 = 7750 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_04 = 7751 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_05 = 7752 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_06 = 7753 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_07 = 7754 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_08 = 7755 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_09 = 7756 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_10 = 7757 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_11 = 7758 , + HELP_TEXT_GENERAL_VILLAGE_FEEDBACK_12 = 7759 , + HELP_TEXT_GENERAL_VILLAGE_WANTS_TO_TALK_01 = 7760 , + HELP_TEXT_GENERAL_VILLAGE_WANTS_TO_TALK_02 = 7761 , + HELP_TEXT_GENERAL_VILLAGE_WANTS_TO_TALK_03 = 7762 , + HELP_TEXT_GENERAL_VILLAGE_WANTS_TO_TALK_04 = 7763 , + HELP_TEXT_GENERAL_VILLAGE_WANTS_TO_TALK_05 = 7764 , + HELP_TEXT_GENERAL_LION_FEEDBACK_01 = 7765 , + HELP_TEXT_GENERAL_LION_FEEDBACK_02 = 7766 , + HELP_TEXT_GENERAL_LION_FEEDBACK_03 = 7767 , + HELP_TEXT_GENERAL_LION_FEEDBACK_04 = 7768 , + HELP_TEXT_GENERAL_LION_FEEDBACK_05 = 7769 , + HELP_TEXT_GENERAL_LION_FEEDBACK_06 = 7770 , + HELP_TEXT_GENERAL_LION_FEEDBACK_07 = 7771 , + HELP_TEXT_GENERAL_LION_FEEDBACK_08 = 7772 , + HELP_TEXT_GENERAL_LION_FEEDBACK_09 = 7773 , + HELP_TEXT_GENERAL_LION_FEEDBACK_10 = 7774 , + HELP_TEXT_GENERAL_LION_FEEDBACK_11 = 7775 , + HELP_TEXT_GENERAL_LION_FEEDBACK_12 = 7776 , + HELP_TEXT_TYKE_TREE_10 = 7777 , + HELP_TEXT_TYKE_TREE_20 = 7778 , + HELP_TEXT_TYKE_TREE_30 = 7779 , + HELP_TEXT_TYKE_TREE_40 = 7780 , + HELP_TEXT_TYKE_TREE_50 = 7781 , + HELP_TEXT_TYKE_TREE_60 = 7782 , + HELP_TEXT_TYKE_TREE_70 = 7783 , + HELP_TEXT_TYKE_TREE_80 = 7784 , + HELP_TEXT_TYKE_TREE_90 = 7785 , + HELP_TEXT_TYKE_TREE_100 = 7786 , + HELP_TEXT_TYKE_TREE_120 = 7787 , + HELP_TEXT_TYKE_TREE_130 = 7788 , + HELP_TEXT_TYKE_TREE_140 = 7789 , + HELP_TEXT_TYKE_TREE_150 = 7790 , + HELP_TEXT_TYKE_TREE_170 = 7791 , + HELP_TEXT_TYKE_TREE_180 = 7792 , + HELP_TEXT_TYKE_TREE_190 = 7793 , + HELP_TEXT_TYKE_TREE_200 = 7794 , + HELP_TEXT_TYKE_TREE_210 = 7795 , + HELP_TEXT_TYKE_TREE_220 = 7796 , + HELP_TEXT_TYKE_TREE_230 = 7797 , + HELP_TEXT_TYKE_TREE_240 = 7798 , + HELP_TEXT_TYKE_TREE_241 = 7799 , + HELP_TEXT_TYKE_TREE_242 = 7800 , + HELP_TEXT_TYKE_TREE_250 = 7801 , + HELP_TEXT_TYKE_TREE_260 = 7802 , + HELP_TEXT_TYKE_TREE_270 = 7803 , + HELP_TEXT_TYKE_TREE_280 = 7804 , + HELP_TEXT_TYKE_TREE_290 = 7805 , + HELP_TEXT_TYKE_TREE_300 = 7806 , + HELP_TEXT_TYKE_TREE_310 = 7807 , + HELP_TEXT_TYKE_TREE_320 = 7808 , + HELP_TEXT_TYKE_TREE_330 = 7809 , + HELP_TEXT_TYKE_TREE_340 = 7810 , + HELP_TEXT_TYKE_TREE_350 = 7811 , + HELP_TEXT_TYKE_TREE_360 = 7812 , + HELP_TEXT_TYKE_TREE_370 = 7813 , + HELP_TEXT_TYKE_TREE_380 = 7814 , + HELP_TEXT_TYKE_TREE_390 = 7815 , + HELP_TEXT_TYKE_TREE_400 = 7816 , + HELP_TEXT_CREATURE_ISLE_INTRO_10 = 7817 , + HELP_TEXT_CREATURE_ISLE_INTRO_20 = 7818 , + HELP_TEXT_CREATURE_ISLE_INTRO_30 = 7819 , + HELP_TEXT_CREATURE_ISLE_INTRO_60 = 7820 , + HELP_TEXT_CREATURE_ISLE_INTRO_70 = 7821 , + HELP_TEXT_CREATURE_ISLE_INTRO_90 = 7822 , + HELP_TEXT_CREATURE_ISLE_INTRO_100 = 7823 , + HELP_TEXT_CREATURE_ISLE_INTRO_110 = 7824 , + HELP_TEXT_CREATURE_ISLE_INTRO_120 = 7825 , + HELP_TEXT_CREATURE_ISLE_INTRO_130 = 7826 , + HELP_TEXT_ONE_TOWN_TAKEN_OVER_10 = 7827 , + HELP_TEXT_ONE_TOWN_TAKEN_OVER_20 = 7828 , + HELP_TEXT_ONE_TOWN_TAKEN_OVER_30 = 7829 , + HELP_TEXT_ALL_TOWNS_TAKEN_OVER_10 = 7830 , + HELP_TEXT_ALL_TOWNS_TAKEN_OVER_20 = 7831 , + HELP_TEXT_ALL_TOWNS_TAKEN_OVER_30 = 7832 , + HELP_TEXT_ALL_TOWNS_TAKEN_OVER_40 = 7833 , + HELP_TEXT_MISSILE_COMMAND_10 = 7834 , + HELP_TEXT_MISSILE_COMMAND_20 = 7835 , + HELP_TEXT_MISSILE_COMMAND_30 = 7836 , + HELP_TEXT_MISSILE_COMMAND_40 = 7837 , + HELP_TEXT_MISSILE_COMMAND_50 = 7838 , + HELP_TEXT_MISSILE_COMMAND_60 = 7839 , + HELP_TEXT_MISSILE_COMMAND_80 = 7840 , + HELP_TEXT_MISSILE_COMMAND_81 = 7841 , + HELP_TEXT_MISSILE_COMMAND_82 = 7842 , + HELP_TEXT_MISSILE_COMMAND_83 = 7843 , + HELP_TEXT_MISSILE_COMMAND_84 = 7844 , + HELP_TEXT_MISSILE_COMMAND_85 = 7845 , + HELP_TEXT_MISSILE_COMMAND_90 = 7846 , + HELP_TEXT_MISSILE_COMMAND_100 = 7847 , + HELP_TEXT_MISSILE_COMMAND_110 = 7848 , + HELP_TEXT_MISSILE_COMMAND_120 = 7849 , + HELP_TEXT_MISSILE_COMMAND_125 = 7850 , + HELP_TEXT_MISSILE_COMMAND_128 = 7851 , + HELP_TEXT_MISSILE_COMMAND_200 = 7852 , + HELP_TEXT_MISSILE_COMMAND_210 = 7853 , + HELP_TEXT_MISSILE_COMMAND_220 = 7854 , + HELP_TEXT_SOCCER_SKILLS_10 = 7855 , + HELP_TEXT_SOCCER_SKILLS_20 = 7856 , + HELP_TEXT_SOCCER_SKILLS_30 = 7857 , + HELP_TEXT_SOCCER_SKILLS_40 = 7858 , + HELP_TEXT_SOCCER_SKILLS_45 = 7859 , + HELP_TEXT_SOCCER_SKILLS_50 = 7860 , + HELP_TEXT_SOCCER_SKILLS_60 = 7861 , + HELP_TEXT_SOCCER_SKILLS_70 = 7862 , + HELP_TEXT_SOCCER_SKILLS_80 = 7863 , + HELP_TEXT_SOCCER_SKILLS_90 = 7864 , + HELP_TEXT_SOCCER_SKILLS_100 = 7865 , + HELP_TEXT_SOCCER_SKILLS_110 = 7866 , + HELP_TEXT_SOCCER_SKILLS_120 = 7867 , + HELP_TEXT_SOCCER_SKILLS_130 = 7868 , + HELP_TEXT_SOCCER_SKILLS_140 = 7869 , + HELP_TEXT_SOCCER_SKILLS_150 = 7870 , + HELP_TEXT_DOLPHINSHOOT_10 = 7871 , + HELP_TEXT_DOLPHINSHOOT_20 = 7872 , + HELP_TEXT_DOLPHINSHOOT_30 = 7873 , + HELP_TEXT_DOLPHINSHOOT_40 = 7874 , + HELP_TEXT_DOLPHINSHOOT_50 = 7875 , + HELP_TEXT_DOLPHINSHOOT_60 = 7876 , + HELP_TEXT_DOLPHINSHOOT_70 = 7877 , + HELP_TEXT_DOLPHINSHOOT_75 = 7878 , + HELP_TEXT_DOLPHINSHOOT_80 = 7879 , + HELP_TEXT_DOLPHINSHOOT_90 = 7880 , + HELP_TEXT_DOLPHINSHOOT_100 = 7881 , + HELP_TEXT_DOLPHINSHOOT_110 = 7882 , + HELP_TEXT_DOLPHINSHOOT_120 = 7883 , + HELP_TEXT_DOLPHINSHOOT_130 = 7884 , + HELP_TEXT_DOLPHINSHOOT_140 = 7885 , + HELP_TEXT_DOLPHINSHOOT_150 = 7886 , + HELP_TEXT_DOLPHINSHOOT_160 = 7887 , + HELP_TEXT_DOLPHINSHOOT_170 = 7888 , + HELP_TEXT_CREATURE_ISLE_TITLE_01 = 7889 , + HELP_TEXT_CREATURE_ISLE_TITLE_02 = 7890 , + HELP_TEXT_CREATURE_ISLE_TITLE_03 = 7891 , + HELP_TEXT_CREATURE_ISLE_TITLE_05 = 7892 , + HELP_TEXT_CREATURE_ISLE_TITLE_06 = 7893 , + HELP_TEXT_CREATURE_ISLE_TITLE_07 = 7894 , + HELP_TEXT_CREATURE_ISLE_TITLE_08 = 7895 , + HELP_TEXT_CREATURE_ISLE_TITLE_09 = 7896 , + HELP_TEXT_CREATURE_ISLE_TITLE_10 = 7897 , + HELP_TEXT_CREATURE_ISLE_TITLE_11 = 7898 , + HELP_TEXT_CREATURE_ISLE_TITLE_12 = 7899 , + HELP_TEXT_CREATURE_ISLE_TITLE_13 = 7900 , + HELP_TEXT_CREATURE_ISLE_TITLE_14 = 7901 , + HELP_TEXT_CREATURE_ISLE_TITLE_15 = 7902 , + HELP_TEXT_CREATURE_ISLE_TITLE_16 = 7903 , + HELP_TEXT_CREATURE_ISLE_TITLE_17 = 7904 , + HELP_TEXT_CREATURE_ISLE_TITLE_18 = 7905 , + HELP_TEXT_CREATURE_ISLE_TITLE_19 = 7906 , + HELP_TEXT_CREATURE_ISLE_TITLE_20 = 7907 , + HELP_TEXT_CREATURE_ISLE_TITLE_21 = 7908 , + HELP_TEXT_CREATURE_ISLE_TITLE_22 = 7909 , + HELP_TEXT_CREATURE_ISLE_TITLE_23 = 7910 , + HELP_TEXT_CREATURE_ISLE_TITLE_24 = 7911 , + HELP_TEXT_CREATURE_ISLE_TITLE_25 = 7912 , + HELP_TEXT_RACING_DYK = 7913 , + HELP_TEXT_TYKES_NEST_DYK = 7914 , + HELP_TEXT_TYKES_TRAINING1_DYK = 7915 , + HELP_TEXT_TYKES_TRAINING2_DYK = 7916 , + HELP_TEXT_TYKES_TRAINING3_DYK = 7917 , + HELP_TEXT_SOCCER_DYK = 7918 , + HELP_TEXT_BALLISTA_DYK = 7919 , + HELP_TEXT_SHEPHERDING_DYK = 7920 , + HELP_TEXT_SHEEP_STEALING_DYK = 7921 , + HELP_TEXT_FIGHT_DYK = 7922 , + HELP_TEXT_RESCUE_DYK = 7923 , + HELP_TEXT_BOARD_GAME_DYK = 7924 , + HELP_TEXT_CROPS_DYK = 7925 , + HELP_TEXT_BUILDING_DYK = 7926 , + HELP_TEXT_SMASHING_DYK = 7927 , + HELP_TEXT_MISSIONARY_LEAVING_DYK = 7928 , + HELP_TEXT_BODY_DYK = 7929 , + HELP_TEXT_MIND_DYK = 7930 , + HELP_TEXT_DOLPHIN_SHOOT_DYK = 7931 , + HELP_TEXT_MISSILE_COMMAND_DYK = 7932 , + HELP_TEXT_WHACKAVILLAGER_DYK = 7933 , + HELP_TEXT_TIGER_CANNON_DYK = 7934 , + HELP_TEXT_DOJO_DYK = 7935 , + HELP_TEXT_AFTER_GRADUATION_10 = 7936 , + HELP_TEXT_AFTER_GRADUATION_20 = 7937 , + HELP_TEXT_AFTER_GRADUATION_30 = 7938 , + HELP_TEXT_AFTER_GRADUATION_40 = 7939 , + HELP_TEXT_AFTER_GRADUATION_50 = 7940 , + HELP_TEXT_AFTER_GRADUATION_60 = 7941 , + HELP_TEXT_DOJO_EXPLANATION_10 = 7942 , + HELP_TEXT_DOJO_EXPLANATION_20 = 7943 , + HELP_TEXT_DOJO_EXPLANATION_30 = 7944 , + HELP_TEXT_DOJO_EXPLANATION_45 = 7945 , + HELP_TEXT_DOJO_EXPLANATION_46 = 7946 , + HELP_TEXT_DOJO_EXPLANATION_50 = 7947 , + HELP_TEXT_DOJO_EXPLANATION_60 = 7948 , + HELP_TEXT_DOJO_EXPLANATION_70 = 7949 , + HELP_TEXT_DOJO_EXPLANATION_90 = 7950 , + HELP_TEXT_DOJO_EXPLANATION_100 = 7951 , + HELP_TEXT_DOJO_EXPLANATION_110 = 7952 , + HELP_TEXT_DOJO_EXPLANATION_120 = 7953 , + HELP_TEXT_DOJO_EXPLANATION_130 = 7954 , + HELP_TEXT_DOJO_EXPLANATION_140 = 7955 , + HELP_TEXT_DOJO_EXPLANATION_150 = 7956 , + HELP_TEXT_DOJO_EXPLANATION_160 = 7957 , + HELP_TEXT_TYKE_EDUCATION_10 = 7958 , + HELP_TEXT_TYKE_EDUCATION_20 = 7959 , + HELP_TEXT_TYKE_EDUCATION_25 = 7960 , + HELP_TEXT_TYKE_EDUCATION_26 = 7961 , + HELP_TEXT_TYKE_EDUCATION_27 = 7962 , + HELP_TEXT_TYKE_EDUCATION_28 = 7963 , + HELP_TEXT_TYKE_EDUCATION_30 = 7964 , + HELP_TEXT_TYKE_EDUCATION_31 = 7965 , + HELP_TEXT_TYKE_EDUCATION_32 = 7966 , + HELP_TEXT_TYKE_EDUCATION_40 = 7967 , + HELP_TEXT_TYKE_EDUCATION_50 = 7968 , + HELP_TEXT_TYKE_EDUCATION_60 = 7969 , + HELP_TEXT_TYKE_EDUCATION_70 = 7970 , + HELP_TEXT_TYKE_EDUCATION_80 = 7971 , + HELP_TEXT_TYKE_EDUCATION_85 = 7972 , + HELP_TEXT_TYKE_EDUCATION_87 = 7973 , + HELP_TEXT_TYKE_EDUCATION_90 = 7974 , + HELP_TEXT_TYKE_EDUCATION_100 = 7975 , + HELP_TEXT_TYKE_EDUCATION_110 = 7976 , + HELP_TEXT_TYKE_EDUCATION_120 = 7977 , + HELP_TEXT_TYKE_EDUCATION_130 = 7978 , + HELP_TEXT_TYKE_EDUCATION_135 = 7979 , + HELP_TEXT_TYKE_EDUCATION_140 = 7980 , + HELP_TEXT_TYKE_EDUCATION_150 = 7981 , + HELP_TEXT_TYKE_EDUCATION_160 = 7982 , + HELP_TEXT_TYKE_EDUCATION_170 = 7983 , + HELP_TEXT_TYKE_EDUCATION_175 = 7984 , + HELP_TEXT_TYKE_EDUCATION_180 = 7985 , + HELP_TEXT_TYKE_EDUCATION_190 = 7986 , + HELP_TEXT_TYKE_EDUCATION_200 = 7987 , + HELP_TEXT_TYKE_EDUCATION_210 = 7988 , + HELP_TEXT_TYKE_EDUCATION_220 = 7989 , + HELP_TEXT_TYKE_EDUCATION_225 = 7990 , + HELP_TEXT_TYKE_EDUCATION_227 = 7991 , + HELP_TEXT_TYKE_EDUCATION_230 = 7992 , + HELP_TEXT_TYKE_EDUCATION_240 = 7993 , + HELP_TEXT_TYKE_EDUCATION_245 = 7994 , + HELP_TEXT_TYKE_EDUCATION_250 = 7995 , + HELP_TEXT_TYKE_EDUCATION_260 = 7996 , + HELP_TEXT_TYKE_EDUCATION_270 = 7997 , + HELP_TEXT_TYKE_EDUCATION_280 = 7998 , + HELP_TEXT_TYKE_EDUCATION_290 = 7999 , + HELP_TEXT_TYKE_EDUCATION_300 = 8000 , + HELP_TEXT_TYKE_EDUCATION_310 = 8001 , + HELP_TEXT_CREATURE_ISLE_TOTD_01 = 8002 , + HELP_TEXT_CREATURE_ISLE_TOTD_02 = 8003 , + HELP_TEXT_CREATURE_ISLE_TOTD_03 = 8004 , + HELP_TEXT_CREATURE_ISLE_TOTD_04 = 8005 , + HELP_TEXT_CREATURE_ISLE_TOTD_05 = 8006 , + HELP_TEXT_CREATURE_ISLE_TOTD_06 = 8007 , + HELP_TEXT_CREATURE_ISLE_TOTD_07 = 8008 , + HELP_TEXT_CREATURE_ISLE_TOTD_08 = 8009 , + HELP_TEXT_CREATURE_ISLE_TOTD_09 = 8010 , + HELP_TEXT_CREATURE_ISLE_TOTD_10 = 8011 , + HELP_TEXT_CREATURE_ISLE_TOTD_11 = 8012 , + HELP_TEXT_CREATURE_ISLE_TOTD_12 = 8013 , + HELP_TEXT_CREATURE_ISLE_TOTD_13 = 8014 , + HELP_TEXT_CREATURE_ISLE_TOTD_14 = 8015 , + HELP_TEXT_CREATURE_ISLE_TOTD_15 = 8016 , + HELP_TEXT_CREATURE_ISLE_TOTD_16 = 8017 , + HELP_TEXT_CREATURE_ISLE_TOTD_17 = 8018 , + HELP_TEXT_CREATURE_ISLE_TOTD_18 = 8019 , + HELP_TEXT_CREATURE_ISLE_TOTD_19 = 8020 , + HELP_TEXT_SPECIAL_CROPS_SCENE1_10 = 8021 , + HELP_TEXT_SPECIAL_CROPS_SCENE1_20 = 8022 , + HELP_TEXT_SPECIAL_CROPS_SCENE1_30 = 8023 , + HELP_TEXT_SPECIAL_CROPS_SCENE1_40 = 8024 , + HELP_TEXT_SPECIAL_CROPS_SCENE2_10 = 8025 , + HELP_TEXT_SPECIAL_CROPS_SCENE2_20 = 8026 , + HELP_TEXT_SPECIAL_CROPS_SCENE2_30 = 8027 , + HELP_TEXT_SPECIAL_CROPS_SCENE2_40 = 8028 , + HELP_TEXT_SPECIAL_CROPS_SCENE2_50 = 8029 , + HELP_TEXT_SPECIAL_CROPS_SCENE3_10 = 8030 , + HELP_TEXT_SPECIAL_CROPS_SCENE3_20 = 8031 , + HELP_TEXT_SPECIAL_CROPS_SCENE3_30 = 8032 , + HELP_TEXT_SPECIAL_CROPS_SCENE3_40 = 8033 , + HELP_TEXT_SPECIAL_CROPS_SCENE4_10 = 8034 , + HELP_TEXT_SPECIAL_CROPS_SCENE4_20 = 8035 , + HELP_TEXT_SPECIAL_CROPS_SCENE4_30 = 8036 , + HELP_TEXT_SPECIAL_CROPS_SCENE4_40 = 8037 , + HELP_TEXT_SPECIAL_CROPS_SCENE4_50 = 8038 , + HELP_TEXT_SPECIAL_CROPS_SCENE5_10 = 8039 , + HELP_TEXT_SPECIAL_CROPS_SCENE5_20 = 8040 , + HELP_TEXT_SPECIAL_CROPS_SCENE5_30 = 8041 , + HELP_TEXT_SPECIAL_CROPS_JOKE1_01 = 8042 , + HELP_TEXT_SPECIAL_CROPS_JOKE1_02 = 8043 , + HELP_TEXT_SPECIAL_CROPS_JOKE2_01 = 8044 , + HELP_TEXT_SPECIAL_CROPS_JOKE2_02 = 8045 , + HELP_TEXT_SPECIAL_CROPS_JOKE3_01 = 8046 , + HELP_TEXT_SPECIAL_CROPS_JOKE3_02 = 8047 , + HELP_TEXT_SPECIAL_CROPS_JOKE4_01 = 8048 , + HELP_TEXT_SPECIAL_CROPS_JOKE4_02 = 8049 , + HELP_TEXT_SPECIAL_CROPS_JOKE5_01 = 8050 , + HELP_TEXT_SPECIAL_CROPS_JOKE5_02 = 8051 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_10 = 8052 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_20 = 8053 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_30 = 8054 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_40 = 8055 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_50 = 8056 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_60 = 8057 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_70 = 8058 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_80 = 8059 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_90 = 8060 , + HELP_TEXT_SPECIAL_CROPS_ENDLINE_100 = 8061 , + HELP_TEXT_BUILDING_PROTECTOR_10 = 8062 , + HELP_TEXT_BUILDING_PROTECTOR_20 = 8063 , + HELP_TEXT_BUILDING_PROTECTOR_30 = 8064 , + HELP_TEXT_BUILDING_PROTECTOR_40 = 8065 , + HELP_TEXT_BUILDING_PROTECTOR_50 = 8066 , + HELP_TEXT_BUILDING_PROTECTOR_60 = 8067 , + HELP_TEXT_BUILDING_PROTECTOR_70 = 8068 , + HELP_TEXT_BUILDING_PROTECTOR_80 = 8069 , + HELP_TEXT_BUILDING_PROTECTOR_90 = 8070 , + HELP_TEXT_BUILDING_PROTECTOR_100 = 8071 , + HELP_TEXT_BUILDING_PROTECTOR_110 = 8072 , + HELP_TEXT_BUILDING_PROTECTOR_120 = 8073 , + HELP_TEXT_BUILDING_PROTECTOR_130 = 8074 , + HELP_TEXT_BUILDING_PROTECTOR_140 = 8075 , + HELP_TEXT_BUILDING_PROTECTOR_150 = 8076 , + HELP_TEXT_BUILDING_PROTECTOR_160 = 8077 , + HELP_TEXT_BUILDING_PROTECTOR_170 = 8078 , + HELP_TEXT_BUILDING_PROTECTOR_180 = 8079 , + HELP_TEXT_BUILDING_PROTECTOR_190 = 8080 , + HELP_TEXT_BUILDING_PROTECTOR_200 = 8081 , + HELP_TEXT_BUILDING_PROTECTOR_210 = 8082 , + HELP_TEXT_BUILDING_PROTECTOR_220 = 8083 , + HELP_TEXT_BUILDING_PROTECTOR_230 = 8084 , + HELP_TEXT_BUILDING_PROTECTOR_240 = 8085 , + HELP_TEXT_BUILDING_PROTECTOR_250 = 8086 , + HELP_TEXT_BUILDING_PROTECTOR_260 = 8087 , + HELP_TEXT_BUILDING_PROTECTOR_270 = 8088 , + HELP_TEXT_BUILDING_PROTECTOR_280 = 8089 , + HELP_TEXT_BUILDING_PROTECTOR_290 = 8090 , + HELP_TEXT_CI_REMINDER_01 = 8091 , + HELP_TEXT_CI_REMINDER_02 = 8092 , + HELP_TEXT_CI_REMINDER_03 = 8093 , + HELP_TEXT_CI_REMINDER_04 = 8094 , + HELP_TEXT_CI_REMINDER_05 = 8095 , + HELP_TEXT_CI_REMINDER_06 = 8096 , + HELP_TEXT_CI_REMINDER_07 = 8097 , + HELP_TEXT_CI_REMINDER_08 = 8098 , + HELP_TEXT_CI_REMINDER_09 = 8099 , + HELP_TEXT_CI_REMINDER_10 = 8100 , + HELP_TEXT_CI_REMINDER_11 = 8101 , + HELP_TEXT_CI_REMINDER_12 = 8102 , + HELP_TEXT_CI_REMINDER_13 = 8103 , + HELP_TEXT_CI_REMINDER_14 = 8104 , + HELP_TEXT_CI_REMINDER_15 = 8105 , + HELP_TEXT_CI_REMINDER_16 = 8106 , + HELP_TEXT_CI_REMINDER_17 = 8107 , + HELP_TEXT_CI_REMINDER_18 = 8108 , + HELP_TEXT_CI_REMINDER_19 = 8109 , + HELP_TEXT_CI_REMINDER_20 = 8110 , + HELP_TEXT_CI_REMINDER_21 = 8111 , + HELP_TEXT_CI_REMINDER_22 = 8112 , + HELP_TEXT_CI_REMINDER_23 = 8113 , + HELP_TEXT_CI_REMINDER_24 = 8114 , + HELP_TEXT_CI_REMINDER_25 = 8115 , + HELP_TEXT_CI_REMINDER_26 = 8116 , + HELP_TEXT_CI_REMINDER_27 = 8117 , + HELP_TEXT_WHACKAVILLAGER_10 = 8118 , + HELP_TEXT_WHACKAVILLAGER_20 = 8119 , + HELP_TEXT_WHACKAVILLAGER_30 = 8120 , + HELP_TEXT_WHACKAVILLAGER_40 = 8121 , + HELP_TEXT_WHACKAVILLAGER_50 = 8122 , + HELP_TEXT_WHACKAVILLAGER_60 = 8123 , + HELP_TEXT_WHACKAVILLAGER_70 = 8124 , + HELP_TEXT_WHACKAVILLAGER_80 = 8125 , + HELP_TEXT_WHACKAVILLAGER_90 = 8126 , + HELP_TEXT_WHACKAVILLAGER_100 = 8127 , + HELP_TEXT_WHACKAVILLAGER_110 = 8128 , + HELP_TEXT_WHACKAVILLAGER_120 = 8129 , + HELP_TEXT_WHACKAVILLAGER_130 = 8130 , + HELP_TEXT_WHACKAVILLAGER_140 = 8131 , + HELP_TEXT_WHACKAVILLAGER_150 = 8132 , + HELP_TEXT_WHACKAVILLAGER_160 = 8133 , + HELP_TEXT_WHACKAVILLAGER_170 = 8134 , + HELP_TEXT_TIGER_CANNON_10 = 8135 , + HELP_TEXT_TIGER_CANNON_20 = 8136 , + HELP_TEXT_TIGER_CANNON_30 = 8137 , + HELP_TEXT_TIGER_CANNON_40 = 8138 , + HELP_TEXT_TIGER_CANNON_50 = 8139 , + HELP_TEXT_TIGER_CANNON_60 = 8140 , + HELP_TEXT_TIGER_CANNON_70 = 8141 , + HELP_TEXT_TIGER_CANNON_80 = 8142 , + HELP_TEXT_TIGER_CANNON_90 = 8143 , + HELP_TEXT_TIGER_CANNON_100 = 8144 , + HELP_TEXT_TIGER_CANNON_110 = 8145 , + HELP_TEXT_TIGER_CANNON_120 = 8146 , + HELP_TEXT_TIGER_CANNON_130 = 8147 , + HELP_TEXT_TIGER_CANNON_140 = 8148 , + HELP_TEXT_TIGER_CANNON_150 = 8149 , + HELP_TEXT_TIGER_CANNON_160 = 8150 , + HELP_TEXT_TIGER_CANNON_170 = 8151 , + HELP_TEXT_TIGER_CANNON_180 = 8152 , + HELP_TEXT_TIGER_CANNON_190 = 8153 , + HELP_TEXT_TIGER_CANNON_200 = 8154 , + HELP_TEXT_TIGER_CANNON_210 = 8155 , + HELP_TEXT_TIGER_CANNON_220 = 8156 , + HELP_TEXT_TIGER_CANNON_230 = 8157 , + HELP_TEXT_LION_TRIAL_COMPLETE_10 = 8158 , + HELP_TEXT_LION_TRIAL_COMPLETE_20 = 8159 , + HELP_TEXT_LION_TRIAL_COMPLETE_30 = 8160 , + HELP_TEXT_LION_TRIAL_COMPLETE_40 = 8161 , + HELP_TEXT_LION_TRIAL_COMPLETE_50 = 8162 , + HELP_TEXT_LION_TRIAL_COMPLETE_60 = 8163 , + HELP_TEXT_LION_TRIAL_COMPLETE_70 = 8164 , + HELP_TEXT_LION_TRIAL_COMPLETE_80 = 8165 , + HELP_TEXT_LION_TRIAL_COMPLETE_90 = 8166 , + HELP_TEXT_LION_TRIAL_COMPLETE_100 = 8167 , + HELP_TEXT_LION_APPRENTICE_TRIAL_COMPLETE_10 = 8168 , + HELP_TEXT_LION_APPRENTICE_TRIAL_COMPLETE_20 = 8169 , + HELP_TEXT_LION_APPRENTICE_TRIAL_COMPLETE_30 = 8170 , + HELP_TEXT_LION_APPRENTICE_TRIAL_COMPLETE_40 = 8171 , + HELP_TEXT_CI_BANTER_SET_01_TEXT_01 = 8172 , + HELP_TEXT_CI_BANTER_SET_01_TEXT_02 = 8173 , + HELP_TEXT_CI_BANTER_SET_02_TEXT_01 = 8174 , + HELP_TEXT_CI_BANTER_SET_02_TEXT_02 = 8175 , + HELP_TEXT_CI_BANTER_SET_02_TEXT_03 = 8176 , + HELP_TEXT_CI_BANTER_SET_02_TEXT_04 = 8177 , + HELP_TEXT_CI_BANTER_SET_02_TEXT_05 = 8178 , + HELP_TEXT_CI_BANTER_SET_02_TEXT_06 = 8179 , + HELP_TEXT_CI_BANTER_SET_02_TEXT_07 = 8180 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_01 = 8181 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_02 = 8182 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_03 = 8183 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_04 = 8184 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_05 = 8185 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_06 = 8186 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_07 = 8187 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_08 = 8188 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_09 = 8189 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_10 = 8190 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_11 = 8191 , + HELP_TEXT_CI_BANTER_SET_03_TEXT_12 = 8192 , + HELP_TEXT_CI_BANTER_SET_04_TEXT_01 = 8193 , + HELP_TEXT_CI_BANTER_SET_04_TEXT_02 = 8194 , + HELP_TEXT_CI_BANTER_SET_04_TEXT_03 = 8195 , + HELP_TEXT_CI_BANTER_SET_04_TEXT_04 = 8196 , + HELP_TEXT_CI_BANTER_SET_05_TEXT_01 = 8197 , + HELP_TEXT_CI_BANTER_SET_05_TEXT_02 = 8198 , + HELP_TEXT_CI_BANTER_SET_05_TEXT_03 = 8199 , + HELP_TEXT_CI_BANTER_SET_06_TEXT_01 = 8200 , + HELP_TEXT_CI_BANTER_SET_06_TEXT_02 = 8201 , + HELP_TEXT_CI_BANTER_SET_06_TEXT_03 = 8202 , + HELP_TEXT_CI_BANTER_SET_07_TEXT_01 = 8203 , + HELP_TEXT_CI_BANTER_SET_07_TEXT_02 = 8204 , + HELP_TEXT_CI_BANTER_SET_07_TEXT_03 = 8205 , + HELP_TEXT_CI_BANTER_SET_07_TEXT_04 = 8206 , + HELP_TEXT_CI_BANTER_SET_07_TEXT_05 = 8207 , + HELP_TEXT_CI_BANTER_SET_08_TEXT_01 = 8208 , + HELP_TEXT_CI_BANTER_SET_08_TEXT_02 = 8209 , + HELP_TEXT_CI_BANTER_SET_08_TEXT_03 = 8210 , + HELP_TEXT_CI_BANTER_SET_08_TEXT_04 = 8211 , + HELP_TEXT_CI_BANTER_SET_08_TEXT_05 = 8212 , + HELP_TEXT_CI_BANTER_SET_08_TEXT_06 = 8213 , + HELP_TEXT_CI_BANTER_SET_08_TEXT_07 = 8214 , + HELP_TEXT_CI_BANTER_SET_08_TEXT_08 = 8215 , + HELP_TEXT_CI_BANTER_SET_09_TEXT_01 = 8216 , + HELP_TEXT_CI_BANTER_SET_09_TEXT_02 = 8217 , + HELP_TEXT_CI_BANTER_SET_09_TEXT_03 = 8218 , + HELP_TEXT_CI_BANTER_SET_09_TEXT_04 = 8219 , + HELP_TEXT_CI_BANTER_SET_09_TEXT_05 = 8220 , + HELP_TEXT_CI_BANTER_SET_09_TEXT_06 = 8221 , + HELP_TEXT_CI_BANTER_SET_10_TEXT_01 = 8222 , + HELP_TEXT_CI_BANTER_SET_10_TEXT_02 = 8223 , + HELP_TEXT_CI_BANTER_SET_10_TEXT_03 = 8224 , + HELP_TEXT_CI_BANTER_SET_10_TEXT_04 = 8225 , + HELP_TEXT_CI_BANTER_SET_10_TEXT_05 = 8226 , + HELP_TEXT_CI_BANTER_SET_11_TEXT_01 = 8227 , + HELP_TEXT_CI_BANTER_SET_11_TEXT_02 = 8228 , + HELP_TEXT_CI_BANTER_SET_11_TEXT_03 = 8229 , + HELP_TEXT_CI_BANTER_SET_12_TEXT_01 = 8230 , + HELP_TEXT_CI_BANTER_SET_12_TEXT_02 = 8231 , + HELP_TEXT_CI_BANTER_SET_13_TEXT_01 = 8232 , + HELP_TEXT_CI_BANTER_SET_13_TEXT_02 = 8233 , + HELP_TEXT_CI_BANTER_SET_13_TEXT_03 = 8234 , + HELP_TEXT_CI_BANTER_SET_14_TEXT_01 = 8235 , + HELP_TEXT_CI_BANTER_SET_14_TEXT_02 = 8236 , + HELP_TEXT_CI_BANTER_SET_14_TEXT_03 = 8237 , + HELP_TEXT_CI_BANTER_SET_14_TEXT_04 = 8238 , + HELP_TEXT_CI_BANTER_SET_15_TEXT_01 = 8239 , + HELP_TEXT_CI_BANTER_SET_15_TEXT_02 = 8240 , + HELP_TEXT_CI_BANTER_SET_15_TEXT_03 = 8241 , + HELP_TEXT_CI_BANTER_SET_15_TEXT_04 = 8242 , + HELP_TEXT_CROC_FIGHT_10 = 8243 , + HELP_TEXT_CROC_FIGHT_20 = 8244 , + HELP_TEXT_CROC_FIGHT_30 = 8245 , + HELP_TEXT_CROC_FIGHT_40 = 8246 , + HELP_TEXT_CROC_FIGHT_50 = 8247 , + HELP_TEXT_CROC_FIGHT_60 = 8248 , + HELP_TEXT_CROC_FIGHT_70 = 8249 , + HELP_TEXT_CROC_FIGHT_80 = 8250 , + HELP_TEXT_CROC_FIGHT_90 = 8251 , + HELP_TEXT_CROC_FIGHT_100 = 8252 , + HELP_TEXT_CROC_FIGHT_110 = 8253 , + HELP_TEXT_CROC_FIGHT_CROC_WINNING_01 = 8254 , + HELP_TEXT_CROC_FIGHT_CROC_WINNING_02 = 8255 , + HELP_TEXT_CROC_FIGHT_CROC_WINNING_03 = 8256 , + HELP_TEXT_CROC_FIGHT_CROC_LOSING_01 = 8257 , + HELP_TEXT_CROC_FIGHT_CROC_LOSING_02 = 8258 , + HELP_TEXT_CROC_FIGHT_CROC_LOSING_03 = 8259 , + HELP_TEXT_CROC_FIGHT_CROC_WON_10 = 8260 , + HELP_TEXT_CROC_FIGHT_CROC_WON_01 = 8261 , + HELP_TEXT_CROC_FIGHT_CROC_WON_02 = 8262 , + HELP_TEXT_CROC_FIGHT_CROC_WON_03 = 8263 , + HELP_TEXT_CROC_FIGHT_CROC_LOST_10 = 8264 , + HELP_TEXT_CROC_FIGHT_CROC_LOST_20 = 8265 , + HELP_TEXT_CROC_FIGHT_CROC_LOST_30 = 8266 , + HELP_TEXT_CROC_FIGHT_CROC_LOST_40 = 8267 , + HELP_TEXT_DOJO_REMINDER_10 = 8268 , + HELP_TEXT_DOJO_REMINDER_20 = 8269 , + HELP_TEXT_DOJO_REMINDER_30 = 8270 , + HELP_TEXT_DOJO_REMINDER_40 = 8271 , + HELP_TEXT_DOJO_REMINDER_50 = 8272 , + HELP_TEXT_DOJO_REMINDER_60 = 8273 , + HELP_TEXT_DOJO_REMINDER_70 = 8274 , + HELP_TEXT_DOJO_REMINDER_80 = 8275 , + HELP_TEXT_DOJO_REMINDER_90 = 8276 , + HELP_TEXT_DOJO_REMINDER_100 = 8277 , + HELP_TEXT_DOJO_REMINDER_110 = 8278 , + HELP_TEXT_DOJO_REMINDER_120 = 8279 , + HELP_TEXT_DOJO_REMINDER_130 = 8280 , + HELP_TEXT_DOJO_REMINDER_140 = 8281 , + HELP_TEXT_DOJO_REMINDER_150 = 8282 , + HELP_TEXT_DOJO_REMINDER_160 = 8283 , + HELP_TEXT_DOJO_REMINDER_170 = 8284 , + HELP_TEXT_DOJO_REMINDER_180 = 8285 , + HELP_TEXT_DOJO_REMINDER_190 = 8286 , + HELP_TEXT_DOJO_REMINDER_200 = 8287 , + HELP_TEXT_DOJO_REMINDER_210 = 8288 , + HELP_TEXT_DOJO_REMINDER_220 = 8289 , + HELP_TEXT_DOJO_REMINDER_230 = 8290 , + HELP_TEXT_CI_INTRO_01 = 8291 , + HELP_TEXT_CI_INTRO_02 = 8292 , + HELP_TEXT_CI_INTRO_03 = 8293 , + HELP_TEXT_CI_INTRO_04 = 8294 , + HELP_TEXT_CI_INTRO_05 = 8295 , + HELP_TEXT_CI_INTRO_06 = 8296 , + HELP_TEXT_CI_INTRO_07 = 8297 , + HELP_TEXT_CI_INTRO_10 = 8298 , + HELP_TEXT_CI_INTRO_20 = 8299 , + HELP_TEXT_CI_INTRO_30 = 8300 , + HELP_TEXT_CI_INTRO_40 = 8301 , + HELP_TEXT_CI_INTRO_50 = 8302 , + HELP_TEXT_CI_INTRO_60 = 8303 , + HELP_TEXT_CI_INTRO_70 = 8304 , + HELP_TEXT_CI_INTRO_80 = 8305 , + HELP_TEXT_CI_INTRO_90 = 8306 , + HELP_TEXT_CI_INTRO_100 = 8307 , + HELP_TEXT_CI_INTRO_110 = 8308 , + HELP_TEXT_CI_INTRO_120 = 8309 , + HELP_TEXT_CI_INTRO_130 = 8310 , + HELP_TEXT_CI_INTRO_140 = 8311 , + HELP_TEXT_CI_INTRO_150 = 8312 , + HELP_TEXT_CI_INTRO_160 = 8313 , + HELP_TEXT_CI_INTRO_170 = 8314 , + HELP_TEXT_CI_INTRO_180 = 8315 , + HELP_TEXT_CI_INTRO_190 = 8316 , + HELP_TEXT_CI_INTRO_200 = 8317 , + HELP_TEXT_CI_INTRO_210 = 8318 , + HELP_TEXT_CI_INTRO_220 = 8319 , + HELP_TEXT_GENERAL_TRIAL_REMINDER_01 = 8320 , + HELP_TEXT_GENERAL_TRIAL_REMINDER_02 = 8321 , + HELP_TEXT_GENERAL_TRIAL_REMINDER_03 = 8322 , + HELP_TEXT_GENERAL_TRIAL_REMINDER_04 = 8323 , + HELP_TEXT_GENERAL_TRIAL_REMINDER_05 = 8324 , + HELP_TEXT_GENERAL_TRIAL_REMINDER_06 = 8325 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_01 = 8326 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_02 = 8327 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_03 = 8328 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_04 = 8329 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_05 = 8330 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_06 = 8331 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_07 = 8332 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_08 = 8333 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_09 = 8334 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_10 = 8335 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_11 = 8336 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_12 = 8337 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_13 = 8338 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_14 = 8339 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_15 = 8340 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_16 = 8341 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_17 = 8342 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_18 = 8343 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_19 = 8344 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_20 = 8345 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_21 = 8346 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_22 = 8347 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_23 = 8348 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_24 = 8349 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_25 = 8350 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_26 = 8351 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_27 = 8352 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_28 = 8353 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_29 = 8354 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_30 = 8355 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_31 = 8356 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_32 = 8357 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_33 = 8358 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_34 = 8359 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_35 = 8360 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_36 = 8361 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_37 = 8362 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_38 = 8363 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_39 = 8364 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_40 = 8365 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_41 = 8366 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_42 = 8367 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_43 = 8368 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_44 = 8369 , + HELP_TEXT_TYKE_LESSON_LEARN_MAGIC_ACTION_45 = 8370 , + HELP_TEXT_TYKE_LESSON_LEARN_NORMAL_ACTION_01 = 8371 , + HELP_TEXT_TYKE_LESSON_LEARN_NORMAL_ACTION_02 = 8372 , + HELP_TEXT_TYKE_LESSON_LEARN_NORMAL_ACTION_03 = 8373 , + HELP_TEXT_TYKE_LESSON_LEARN_NORMAL_ACTION_04 = 8374 , + HELP_TEXT_TYKE_LESSON_LEARN_NORMAL_ACTION_05 = 8375 , + HELP_TEXT_TYKE_LESSON_LEARN_NORMAL_ACTION_06 = 8376 , + HELP_TEXT_TYKE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_01 = 8377 , + HELP_TEXT_TYKE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_02 = 8378 , + HELP_TEXT_TYKE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_03 = 8379 , + HELP_TEXT_TYKE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_04 = 8380 , + HELP_TEXT_TYKE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_05 = 8381 , + HELP_TEXT_TYKE_LESSON_NEARLY_LEARNT_NORMAL_ACTION_06 = 8382 , + HELP_TEXT_TYKE_LESSON_HASNT_LEARN_NORMAL_ACTION_01 = 8383 , + HELP_TEXT_TYKE_LESSON_HASNT_LEARN_NORMAL_ACTION_02 = 8384 , + HELP_TEXT_TYKE_LESSON_HASNT_LEARN_NORMAL_ACTION_03 = 8385 , + HELP_TEXT_TYKE_LESSON_HASNT_LEARN_NORMAL_ACTION_04 = 8386 , + HELP_TEXT_TYKE_LESSON_HASNT_LEARN_NORMAL_ACTION_05 = 8387 , + HELP_TEXT_TYKE_LESSON_HASNT_LEARN_NORMAL_ACTION_06 = 8388 , + HELP_TEXT_TYKE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_01 = 8389 , + HELP_TEXT_TYKE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_02 = 8390 , + HELP_TEXT_TYKE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_03 = 8391 , + HELP_TEXT_TYKE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_04 = 8392 , + HELP_TEXT_TYKE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_05 = 8393 , + HELP_TEXT_TYKE_LESSON_CANT_LEARN_NORMAL_ACTION_YET_06 = 8394 , + HELP_TEXT_TYKE_LESSON_CANT_LEARN_MAGIC_ACTION_YET_01 = 8395 , + HELP_TEXT_TYKE_LESSON_CANT_LEARN_MAGIC_ACTION_YET_02 = 8396 , + HELP_TEXT_ROOM_TYKE_SCROLL_TITLE = 8397 , + HELP_TEXT_ENDOFGAME_QUOTES_01 = 8398 , + HELP_TEXT_ENDOFGAME_QUOTES_02 = 8399 , + HELP_TEXT_ENDOFGAME_QUOTES_03 = 8400 , + HELP_TEXT_ENDOFGAME_QUOTES_04 = 8401 , + HELP_TEXT_ENDOFGAME_QUOTES_05 = 8402 , + HELP_TEXT_ENDOFGAME_QUOTES_06 = 8403 , + HELP_TEXT_ENDOFGAME_QUOTES_07 = 8404 , + HELP_TEXT_ENDOFGAME_QUOTES_08 = 8405 , + HELP_TEXT_ENDOFGAME_QUOTES_09 = 8406 , + HELP_TEXT_ENDOFGAME_QUOTES_10 = 8407 , + HELP_TEXT_ENDOFGAME_QUOTES_11 = 8408 , + HELP_TEXT_ENDOFGAME_QUOTES_12 = 8409 , + HELP_TEXT_ENDOFGAME_QUOTES_13 = 8410 , + HELP_TEXT_ENDOFGAME_QUOTES_14 = 8411 , + HELP_TEXT_ENDOFGAME_QUOTES_15 = 8412 , + HELP_TEXT_ENDOFGAME_QUOTES_16 = 8413 , + HELP_TEXT_ENDOFGAME_QUOTES_17 = 8414 , + HELP_TEXT_ENDOFGAME_QUOTES_18 = 8415 , + HELP_TEXT_ENDOFGAME_QUOTES_19 = 8416 , + HELP_TEXT_ENDOFGAME_QUOTES_20 = 8417 , + HELP_TEXT_ENDOFGAME_QUOTES_21 = 8418 , + HELP_TEXT_ENDOFGAME_QUOTES_22 = 8419 , + HELP_TEXT_ENDOFGAME_QUOTES_23 = 8420 , + HELP_TEXT_ENDOFGAME_QUOTES_24 = 8421 , + HELP_TEXT_ENDOFGAME_QUOTES_25 = 8422 , + HELP_TEXT_ENDOFGAME_QUOTES_26 = 8423 , + HELP_TEXT_ENDOFGAME_QUOTES_27 = 8424 , + HELP_TEXT_ENDOFGAME_QUOTES_28 = 8425 , + HELP_TEXT_ENDOFGAME_QUOTES_29 = 8426 , + HELP_TEXT_ENDOFGAME_QUOTES_30 = 8427 , + HELP_TEXT_ENDOFGAME_QUOTES_31 = 8428 , + HELP_TEXT_ENDOFGAME_QUOTES_32 = 8429 , + HELP_TEXT_ENDOFGAME_QUOTES_33 = 8430 , + HELP_TEXT_ENDOFGAME_QUOTES_34 = 8431 , + HELP_TEXT_ENDOFGAME_QUOTES_35 = 8432 , + HELP_TEXT_ENDOFGAME_QUOTES_36 = 8433 , + HELP_TEXT_ACTIONS_CREATURE_SCREENSHOT = 8434 , + HELP_TEXT_ACTIONS_ZOOMTO_TYKE = 8435 , + HELP_TEXT_TYKESCOMINGOFAGE_TYKELEARNING_860 = 8436 , + HELP_TEXT_TYKE_MAGIC_TYPE_FIREBALL_PU_ONE = 8437 , + HELP_TEXT_TYKE_MAGIC_TYPE_FIREBALL_PU_TWO = 8438 , + HELP_TEXT_TYKE_MAGIC_TYPE_LIGHTNING_BOLT_PU_ONE = 8439 , + HELP_TEXT_TYKE_MAGIC_TYPE_LIGHTNING_BOLT_PU_TWO = 8440 , + HELP_TEXT_TYKE_MAGIC_TYPE_EXPLOSION_ONE_PU_ONE = 8441 , + HELP_TEXT_TYKE_MAGIC_TYPE_EXPLOSION_ONE_PU_TWO = 8442 , + HELP_TEXT_TYKE_MAGIC_TYPE_HEAL_PU_ONE = 8443 , + HELP_TEXT_TYKE_MAGIC_TYPE_FOOD_PU_ONE = 8444 , + HELP_TEXT_TYKE_MAGIC_TYPE_STORM_WIND_RAIN_LIGHTNING = 8445 , + HELP_TEXT_TYKE_MAGIC_TYPE_WATER_PU_ONE = 8446 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_10 = 8447 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_20 = 8448 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_30 = 8449 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_40 = 8450 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_50 = 8451 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_60 = 8452 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_70 = 8453 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_80 = 8454 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_90 = 8455 , + HELP_TEXT_CI_INSTALLER_REGISTER_TEXT_100 = 8456 , + HELP_TEXT_TRIAL_CANCEL_01 = 8457 , + HELP_TEXT_TRIAL_CANCEL_02 = 8458 , + HELP_TEXT_TRIAL_CANCEL_03 = 8459 , + HELP_TEXT_CHALLENGE_CANCEL_01 = 8460 , + HELP_TEXT_CHALLENGE_CANCEL_02 = 8461 , + HELP_TEXT_CHALLENGE_CANCEL_03 = 8462 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_10 = 8463 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_20 = 8464 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_30 = 8465 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_40 = 8466 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_50 = 8467 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_60 = 8468 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_70 = 8469 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_80 = 8470 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_90 = 8471 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_100 = 8472 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_110 = 8473 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_120 = 8474 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_130 = 8475 , + HELP_TEXT_COMBAT_BEATEN_EVERYONE_140 = 8476 , + HELP_TEXT_TYKES_HOME_10 = 8477 , + HELP_TEXT_TYKES_HOME_20 = 8478 , + HELP_TEXT_TYKES_HOME_30 = 8479 , + HELP_TEXT_TYKES_HOME_40 = 8480 , + HELP_TEXT_TYKES_HOME_50 = 8481 , + HELP_TEXT_CREATURE_ISLES_FUTURE_ROOM_DIALOG_BOX = 8482 , + HELP_TEXT_LION_INTRODUCTION_141 = 8483 , + HELP_TEXT_LION_INTRODUCTION_142 = 8484 , + HELP_TEXT_LION_INTRODUCTION_143 = 8485 , + HELP_TEXT_LION_INTRODUCTION_144 = 8486 , + HELP_TEXT_LION_INTRODUCTION_290 = 8487 , + HELP_TEXT_LION_INTRODUCTION_300 = 8488 , + HELP_TEXT_LION_INTRODUCTION_310 = 8489 , + HELP_TEXT_LION_INTRODUCTION_320 = 8490 , + HELP_TEXT_LION_INTRODUCTION_330 = 8491 , + HELP_TEXT_LION_INTRODUCTION_340 = 8492 , + HELP_TEXT_LION_INTRODUCTION_350 = 8493 , + HELP_TEXT_LION_INTRODUCTION_360 = 8494 , + HELP_TEXT_EVE_TYKE_INTRO_10 = 8495 , + HELP_TEXT_EVE_TYKE_INTRO_20 = 8496 , + HELP_TEXT_EVE_TYKE_INTRO_30 = 8497 , + HELP_TEXT_EVE_TYKE_INTRO_40 = 8498 , + HELP_TEXT_EVE_TYKE_INTRO_50 = 8499 , + HELP_TEXT_EVE_TYKE_INTRO_60 = 8500 , + HELP_TEXT_EVE_TYKE_INTRO_70 = 8501 , + HELP_TEXT_EVE_TYKE_INTRO_80 = 8502 , + HELP_TEXT_EVE_TYKE_INTRO_90 = 8503 , + HELP_TEXT_CROC_FINAL_FIGHT_10 = 8504 , + HELP_TEXT_CROC_FINAL_FIGHT_20 = 8505 , + HELP_TEXT_CROC_FINAL_FIGHT_30 = 8506 , + HELP_TEXT_CROC_FINAL_FIGHT_40 = 8507 , + HELP_TEXT_CROC_FINAL_FIGHT_50 = 8508 , + HELP_TEXT_CROC_FINAL_FIGHT_60 = 8509 , + HELP_TEXT_CROC_FINAL_FIGHT_70 = 8510 , + HELP_TEXT_EVE_MEETING_10 = 8511 , + HELP_TEXT_EVE_MEETING_11 = 8512 , + HELP_TEXT_EVE_MEETING_12 = 8513 , + HELP_TEXT_EVE_MEETING_13 = 8514 , + HELP_TEXT_EVE_MEETING_14 = 8515 , + HELP_TEXT_EVE_MEETING_20 = 8516 , + HELP_TEXT_EVE_MEETING_30 = 8517 , + HELP_TEXT_EVE_MEETING_40 = 8518 , + HELP_TEXT_EVE_MEETING_50 = 8519 , + HELP_TEXT_EVE_MEETING_60 = 8520 , + HELP_TEXT_EVE_MEETING_70 = 8521 , + HELP_TEXT_EVE_MEETING_80 = 8522 , + HELP_TEXT_EVE_MEETING_90 = 8523 , + HELP_TEXT_EVE_MEETING_100 = 8524 , + HELP_TEXT_EVE_MEETING_110 = 8525 , + HELP_TEXT_EVE_MEETING_120 = 8526 , + HELP_TEXT_EVE_MEETING_130 = 8527 , + HELP_TEXT_EVE_MEETING_140 = 8528 , + HELP_TEXT_EVE_MEETING_150 = 8529 , + HELP_TEXT_BUILDING_PROTECTOR_225 = 8530 , + HELP_TEXT_BUILDING_PROTECTOR_227 = 8531 , + HELP_TEXT_BABYSITTER_10 = 8532 , + HELP_TEXT_BABYSITTER_20 = 8533 , + HELP_TEXT_BABYSITTER_30 = 8534 , + HELP_TEXT_BABYSITTER_40 = 8535 , + HELP_TEXT_BABYSITTER_50 = 8536 , + HELP_TEXT_BABYSITTER_60 = 8537 , + HELP_TEXT_BABYSITTER_70 = 8538 , + HELP_TEXT_BABYSITTER_80 = 8539 , + HELP_TEXT_BABYSITTER_90 = 8540 , + HELP_TEXT_BABYSITTER_100 = 8541 , + HELP_TEXT_BABYSITTER_110 = 8542 , + HELP_TEXT_BABYSITTER_120 = 8543 , + HELP_TEXT_KINGOFTHECASTLE_25 = 8544 , + HELP_TEXT_KINGOFTHECASTLE_27 = 8545 , + HELP_TEXT_SMASH_BUILDINGS_35 = 8546 , + HELP_TEXT_SMASH_BUILDINGS_37 = 8547 , + HELP_TEXT_ADVISORS_DISCUSS_EVE1_10 = 8548 , + HELP_TEXT_ADVISORS_DISCUSS_EVE1_20 = 8549 , + HELP_TEXT_ADVISORS_DISCUSS_EVE1_30 = 8550 , + HELP_TEXT_ADVISORS_DISCUSS_EVE1_40 = 8551 , + HELP_TEXT_ADVISORS_DISCUSS_EVE2_10 = 8552 , + HELP_TEXT_ADVISORS_DISCUSS_EVE2_20 = 8553 , + HELP_TEXT_ADVISORS_DISCUSS_EVE2_30 = 8554 , + HELP_TEXT_ADVISORS_DISCUSS_EVE3_10 = 8555 , + HELP_TEXT_ADVISORS_DISCUSS_EVE3_20 = 8556 , + HELP_TEXT_ADVISORS_DISCUSS_EVE4_10 = 8557 , + HELP_TEXT_ADVISORS_DISCUSS_EVE5_10 = 8558 , + HELP_TEXT_EVE_FEEDBACK_GOOD_01 = 8559 , + HELP_TEXT_EVE_FEEDBACK_GOOD_02 = 8560 , + HELP_TEXT_EVE_FEEDBACK_GOOD_03 = 8561 , + HELP_TEXT_EVE_FEEDBACK_GOOD_04 = 8562 , + HELP_TEXT_EVE_FEEDBACK_GOOD_05 = 8563 , + HELP_TEXT_EVE_FEEDBACK_GOOD_06 = 8564 , + HELP_TEXT_EVE_FEEDBACK_GOOD_07 = 8565 , + HELP_TEXT_EVE_FEEDBACK_GOOD_08 = 8566 , + HELP_TEXT_EVE_FEEDBACK_GOOD_09 = 8567 , + HELP_TEXT_EVE_FEEDBACK_GOOD_10 = 8568 , + HELP_TEXT_EVE_FEEDBACK_BAD_01 = 8569 , + HELP_TEXT_EVE_FEEDBACK_BAD_02 = 8570 , + HELP_TEXT_EVE_FEEDBACK_BAD_03 = 8571 , + HELP_TEXT_EVE_FEEDBACK_BAD_04 = 8572 , + HELP_TEXT_EVE_FEEDBACK_BAD_05 = 8573 , + HELP_TEXT_EVE_FEEDBACK_BAD_06 = 8574 , + HELP_TEXT_EVE_FEEDBACK_BAD_07 = 8575 , + HELP_TEXT_EVE_FEEDBACK_BAD_08 = 8576 , + HELP_TEXT_EVE_FEEDBACK_BAD_09 = 8577 , + HELP_TEXT_EVE_FEEDBACK_BAD_10 = 8578 , + HELP_TEXT_TYKE_BAD_FEEDBACK_10 = 8579 , + HELP_TEXT_TYKE_BAD_FEEDBACK_20 = 8580 , + HELP_TEXT_TYKE_BAD_FEEDBACK_30 = 8581 , + HELP_TEXT_TYKE_BAD_FEEDBACK_40 = 8582 , + HELP_TEXT_TYKE_BAD_FEEDBACK_50 = 8583 , + HELP_TEXT_TYKE_BAD_FEEDBACK_60 = 8584 , + HELP_TEXT_TYKE_BAD_FEEDBACK_70 = 8585 , + HELP_TEXT_TYKE_BABYSITTER_FEEDBACK_01 = 8586 , + HELP_TEXT_TYKE_BABYSITTER_FEEDBACK_02 = 8587 , + HELP_TEXT_TYKE_BABYSITTER_FEEDBACK_03 = 8588 , + HELP_TEXT_TYKE_BABYSITTER_FEEDBACK_04 = 8589 , + HELP_TEXT_TYKE_BABYSITTER_FEEDBACK_05 = 8590 , + HELP_TEXT_TYKE_NOT_YET_ABLE_10 = 8591 , + HELP_TEXT_TYKESTATS_DYK_10 = 8592 , + HELP_TEXT_THROW_DYK_11 = 8593 , + HELP_TEXT_COW_BOWLING_GOD_ARRIVES_10 = 8594 , + HELP_TEXT_COW_BOWLING_COW_EXPLAINS_10 = 8595 , + HELP_TEXT_COW_BOWLING_COW_EXPLAINS_30 = 8596 , + HELP_TEXT_COW_BOWLING_COW_EXPLAINS_40 = 8597 , + HELP_TEXT_COW_BOWLING_COW_EXPLAINS_50 = 8598 , + HELP_TEXT_COW_BOWLING_COW_EXPLAINS_85 = 8599 , + HELP_TEXT_CREATURE_ISLE_SCAFFOLD_DYK = 8600 , + HELP_TEXT_QUIT_SCROLL_10 = 8601 , + HELP_TEXT_TYKES_NEST_ASSISTANCE = 8602 , + HELP_TEXT_DIALOG_CI_RESTART = 8603 , + HELP_TEXT_DIALOG_CI_RESTART_WARNING = 8604 , + HELP_TEXT_DIALOG_CI_WELCOME = 8605 , + HELP_TEXT_DIALOG_CI_QUIT_QUESTION = 8606 , + HELP_TEXT_CI_REMINDER_28 = 8607 , + HELP_TEXT_CREATURE_ISLE_TYKE_THINKING = 8608 , + HELP_TEXT_SOCCER_SKILLS_160 = 8609 , + HELP_TEXT_CREATURE_SCOLDING_TYKE = 8610 , + HELP_TEXT_CREATURE_PRAISING_TYKE = 8611 , + HELP_TEXT_MARBLES_EXTRA_10 = 8612 , + HELP_TEXT_MARBLES_EXTRA_11 = 8613 , + HELP_TEXT_MARBLES_EXTRA_12 = 8614 , + HELP_TEXT_MARBLES_EXTRA_13 = 8615 , + HELP_TEXT_MARBLES_EXTRA_14 = 8616 , + HELP_TEXT_MARBLES_EXTRA_15 = 8617 , + HELP_TEXT_MARBLES_EXTRA_16 = 8618 , + HELP_TEXT_MARBLES_EXTRA_17 = 8619 , + HELP_TEXT_MARBLES_EXTRA_18 = 8620 , + HELP_TEXT_MARBLES_EXTRA_19 = 8621 , + HELP_TEXT_MARBLES_EXTRA_20 = 8622 , + HELP_TEXT_MARBLES_EXTRA_30 = 8623 , + HELP_TEXT_SPIRIT_TRIAL_141 = 8624 , + HELP_TEXT_SPIRIT_TRIAL_142 = 8625 , + HELP_TEXT_SPIRIT_TRIAL_143 = 8626 , + HELP_TEXT_SPIRIT_TRIAL_144 = 8627 , + HELP_TEXT_SPIRIT_TRIAL_145 = 8628 , + HELP_TEXT_CREATURE_ISLE_TITLE_26 = 8629 , + HELP_TEXT_CREATURE_TAPPER_DYK = 8630 , + HELP_TEXT_BABYSITTER_DYK = 8631 , + HELP_TEXT_AGGRESSIVE_LEASH_DYK = 8632 , + HELP_TEXT_GENERAL_USE_SIGNPOSTS_DYK = 8633 , + HELP_TEXT_LION_APPRENTICE_TRIAL_COMPLETE_35 = 8634 , + HELP_TEXT_RUFUS_STARTS_GRADUATION_10 = 8635 , + HELP_TEXT_RUFUS_STARTS_GRADUATION_20 = 8636 , + HELP_TEXT_RUFUS_STARTS_GRADUATION_30 = 8637 , + HELP_TEXT_RUFUS_STARTS_GRADUATION_40 = 8638 , + HELP_TEXT_RUFUS_STARTS_GRADUATION_50 = 8639 , + HELP_TEXT_RUFUS_STARTS_GRADUATION_60 = 8640 , + HELP_TEXT_RUFUS_STARTS_GRADUATION_70 = 8641 , + HELP_TEXT_CROC_GRADUATION_10 = 8642 , + HELP_TEXT_CROC_GRADUATION_20 = 8643 , + HELP_TEXT_CROC_GRADUATION_30 = 8644 , + HELP_TEXT_CROC_GRADUATION_40 = 8645 , + HELP_TEXT_CROC_GRADUATION_50 = 8646 , + HELP_TEXT_CROC_GRADUATION_60 = 8647 , + HELP_TEXT_CROC_GRANTS_YOU_EVE_10 = 8648 , + HELP_TEXT_CROC_GRANTS_YOU_EVE_20 = 8649 , + HELP_TEXT_CROC_GRANTS_YOU_EVE_30 = 8650 , + HELP_TEXT_CROC_GRANTS_YOU_EVE_40 = 8651 , + HELP_TEXT_CROC_GRANTS_YOU_EVE_50 = 8652 , + HELP_TEXT_CROC_GRANTS_YOU_EVE_60 = 8653 , + HELP_TEXT_CROC_GRANTS_YOU_EVE_70 = 8654 , + HELP_TEXT_CROC_GRANTS_YOU_EVE_80 = 8655 , + HELP_TEXT_SOCCER_SKILLS_170 = 8656 , + HELP_TEXT_WOLF_TRIAL_300 = 8657 , + HELP_TEXT_WOLF_TRIAL_301 = 8658 , + HELP_TEXT_WOLF_TRIAL_302 = 8659 , + HELP_TEXT_LION_INTRODUCTION_370 = 8660 , + HELP_TEXT_DOJO_EXPLANATION_35 = 8661 , + HELP_TEXT_TYKE_EDUCATION_35 = 8662 , + HELP_TEXT_TEACH_TYKE_TO_USE_FIELD_DYK = 8663 , + HELP_TEXT_THROWING_INSTRUCTION_10 = 8664 , + HELP_TEXT_THROWING_INSTRUCTION_20 = 8665 , + HELP_TEXT_SPECIAL_CROPS_45 = 8666 , + HELP_TEXT_SPECIAL_CROPS_291 = 8667 , + HELP_TEXT_SPECIAL_CROPS_292 = 8668 , + HELP_TEXT_SPECIAL_CROPS_293 = 8669 , + HELP_TEXT_SPECIAL_CROPS_294 = 8670 , + HELP_TEXT_COW_BOWLING_155 = 8671 , + HELP_TEXT_COW_BOWLING_157 = 8672 , + HELP_TEXT_COW_BOWLING_158 = 8673 , + HELP_TEXT_COW_BOWLING_159 = 8674 , + HELP_TEXT_CREATURE_CARRYING_REMINDER = 8675 , + HELP_TEXT_RUFUS_REMINDER_SCROLL = 8676 , + HELP_TEXT_THROW_MARKER_10 = 8677 , + HELP_TEXT_THROW_MARKER_11 = 8678 , + HELP_TEXT_THROW_MARKER_12 = 8679 , + HELP_TEXT_THROW_MARKER_13 = 8680 , + HELP_TEXT_THROW_MARKER_20 = 8681 , + HELP_TEXT_THROW_MARKER_FURTHER_10 = 8682 , + HELP_TEXT_THROW_MARKER_FURTHER_11 = 8683 , + HELP_TEXT_EGG_READY_10 = 8684 , + HELP_TEXT_EGG_READY_11 = 8685 , + HELP_TEXT_EGG_READY_12 = 8686 , + HELP_TEXT_F2_SCREEN_10 = 8687 , + HELP_TEXT_F2_SCREEN_20 = 8688 , + HELP_TEXT_F2_SCREEN_30 = 8689 , + HELP_TEXT_F2_SCREEN_40 = 8690 , + HELP_TEXT_F2_SCREEN_50 = 8691 , + HELP_TEXT_F2_SCREEN_60 = 8692 , + HELP_TEXT_F2_SCREEN_70 = 8693 , + HELP_TEXT_F2_SCREEN_80 = 8694 , + HELP_TEXT_F2_SCREEN_90 = 8695 , + HELP_TEXT_F2_SCREEN_100 = 8696 , + HELP_TEXT_MOVE_RECAP_DYK = 8697 , + HELP_TEXT_CHIMPS_NEW_REMINDER = 8698 , + HELP_TEXT_DOLPHINSHOOT_165 = 8699 , + HELP_TEXT_WOLF_TRIAL_211 = 8700 , + HELP_TEXT_WOLF_TRIAL_212 = 8701 , + HELP_TEXT_WOLF_TRIAL_213 = 8702 , + HELP_TEXT_WOLF_TRIAL_214 = 8703 , + HELP_TEXT_VILLAGERS_GIVE_HELP_10 = 8704 , + HELP_TEXT_VILLAGERS_GIVE_HELP_20 = 8705 , + HELP_TEXT_VILLAGERS_GIVE_HELP_30 = 8706 , + HELP_TEXT_VILLAGERS_GIVE_HELP_40 = 8707 , + HELP_TEXT_VILLAGERS_GIVE_HELP_50 = 8708 , + HELP_TEXT_VILLAGERS_GIVE_HELP_60 = 8709 , + HELP_TEXT_VILLAGERS_GIVE_HELP_70 = 8710 , + HELP_TEXT_VILLAGERS_GIVE_HELP_80 = 8711 , + HELP_TEXT_VILLAGERS_GIVE_HELP_90 = 8712 , + HELP_TEXT_VILLAGERS_GIVE_HELP_100 = 8713 , + HELP_TEXT_VILLAGERS_GIVE_HELP_110 = 8714 , + HELP_TEXT_VILLAGERS_GIVE_HELP_120 = 8715 , + HELP_TEXT_SHORT_LEASH_DYK = 8716 , + HELP_TEXT_USE_TYKE_ONLINE = 8717 , + HELP_TEXT_CI_CREDITS_10 = 8718 , + HELP_TEXT_CI_CREDITS_11 = 8719 , + HELP_TEXT_CI_CREDITS_12 = 8720 , + HELP_TEXT_CI_CREDITS_13 = 8721 , + HELP_TEXT_CI_CREDITS_14 = 8722 , + HELP_TEXT_CI_CREDITS_15 = 8723 , + HELP_TEXT_CI_CREDITS_16 = 8724 , + HELP_TEXT_CI_CREDITS_17 = 8725 , + HELP_TEXT_ANTI_SPELL_01 = 8726 , + HELP_TEXT_SPEED_SPEED_01 = 8727 , + HELP_TEXT_QUESTION_EXTRA_110 = 8728 , + HELP_TEXT_QUESTION_EXTRA_111 = 8729 , + HELP_TEXT_QUESTION_EXTRA_112 = 8730 , + HELP_TEXT_QUESTION_EXTRA_113 = 8731 , + HELP_TEXT_QUESTION_EXTRA_114 = 8732 , + HELP_TEXT_QUESTION_FIELD_INFO_SQUARE_SPECIAL_CROP = 8733 , + HELP_TEXT_QUESTION_FIELD_INFO_MARBLE_BASE = 8734 , + HELP_TEXT_QUESTION_FIELD_INFO_EGG_TREE = 8735 , + HELP_TEXT_QUESTION_FIELD_INFO_CREATURE_RACE_PILLAR = 8736 , + HELP_TEXT_QUESTION_FIELD_INFO_POINTER_HAND = 8737 , + HELP_TEXT_QUESTION_BUILDING_DOJO = 8738 , + HELP_TEXT_QUESTION_BUILDING_STADIUM = 8739 , + HELP_TEXT_QUESTION_BALLISTA = 8740 , + HELP_TEXT_QUESTION_DOLPHIN = 8741 , + HELP_TEXT_QUESTION_BROTHERHOOD_RING_01 = 8742 , + HELP_TEXT_QUESTION_BROTHERHOOD_RING_02 = 8743 , + HELP_TEXT_QUESTION_BROTHERHOOD_RING_03 = 8744 , + HELP_TEXT_QUESTION_MOSES_BASKET = 8745 , + HELP_TEXT_QUESTION_BROTHERHOOD_PUCK = 8746 , + HELP_TEXT_QUESTION_MARBLE_01 = 8747 , + HELP_TEXT_QUESTION_MARBLE_02 = 8748 , + HELP_TEXT_QUESTION_MARBLE_03 = 8749 , + HELP_TEXT_QUESTION_MARBLE_04 = 8750 , + HELP_TEXT_QUESTION_EGG = 8751 , + HELP_TEXT_QUESTION_SOCCER_BALL = 8752 , + HELP_TEXT_QUESTION_BOARDGAME = 8753 , + HELP_TEXT_QUESTION_WATER_CANNON = 8754 , + HELP_TEXT_QUESTION_WATER_CANNON_WATER = 8755 , + HELP_TEXT_QUESTION_SCOREBOARD = 8756 , + HELP_TEXT_QUESTION_SCOREBOARD_BIG = 8757 , + HELP_TEXT_QUESTION_LAVA = 8758 , + HELP_TEXT_QUESTION_VOLCANIC_ROCK = 8759 , + HELP_TEXT_QUESTION_VOLCANIC_POOL = 8760 , + HELP_TEXT_QUESTION_BOWLING_ALLEY = 8761 , + HELP_TEXT_QUESTION_TYKE = 8762 , + HELP_TEXT_QUESTION_EVE = 8763 , + HELP_TEXT_QUESTION_GIANT = 8764 , + HELP_TEXT_NAME_CHIMP_05 = 8765 , + HELP_TEXT_NAME_CHIMP_06 = 8766 , + HELP_TEXT_NAME_CHIMP_07 = 8767 , + HELP_TEXT_NAME_CHIMP_08 = 8768 , + HELP_TEXT_NAME_CHIMP_09 = 8769 , + HELP_TEXT_NAME_CHIMP_10 = 8770 , + HELP_TEXT_NAME_CHIMP_11 = 8771 , + HELP_TEXT_NAME_CHIMP_12 = 8772 , + HELP_TEXT_NAME_CHIMP_13 = 8773 , + HELP_TEXT_NAME_CHIMP_14 = 8774 , + HELP_TEXT_F2_SCREEN_SHORTCUTS = 8775 , + HELP_TEXT_F2_SCREEN_111 = 8776 , + HELP_TEXT_F2_SCREEN_112 = 8777 , + HELP_TEXT_F2_SCREEN_113 = 8778 , + HELP_TEXT_F2_SCREEN_114 = 8779 , + HELP_TEXT_F2_SCREEN_115 = 8780 , + HELP_TEXT_F2_SCREEN_116 = 8781 , + HELP_TEXT_F2_SCREEN_117 = 8782 , + HELP_TEXT_F2_SCREEN_118 = 8783 , + HELP_TEXT_F2_SCREEN_119 = 8784 , + HELP_TEXT_F2_SCREEN_120 = 8785 , + HELP_TEXT_F2_SCREEN_121 = 8786 , + HELP_TEXT_F2_SCREEN_122 = 8787 , + HELP_TEXT_F2_SCREEN_123 = 8788 , + HELP_TEXT_F2_SCREEN_124 = 8789 , + HELP_TEXT_F2_SCREEN_125 = 8790 , + HELP_TEXT_F2_SCREEN_126 = 8791 , + HELP_TEXT_F2_SCREEN_127 = 8792 , + HELP_TEXT_F2_SCREEN_128 = 8793 , + HELP_TEXT_F2_SCREEN_129 = 8794 , + HELP_TEXT_F2_SCREEN_130 = 8795 , + HELP_TEXT_F2_SCREEN_131 = 8796 , + HELP_TEXT_F2_SCREEN_132 = 8797 , + HELP_TEXT_F2_SCREEN_133 = 8798 , + HELP_TEXT_F2_SCREEN_134 = 8799 , + HELP_TEXT_F2_SCREEN_135 = 8800 , + HELP_TEXT_F2_SCREEN_136 = 8801 , + HELP_TEXT_F2_SCREEN_137 = 8802 , + HELP_TEXT_F2_SCREEN_138 = 8803 , + HELP_TEXT_TRY_A_TRIAL_10 = 8804 , + HELP_TEXT_TRY_A_TRIAL_11 = 8805 , + HELP_TEXT_TRY_A_TRIAL_12 = 8806 , + HELP_TEXT_ZEBRA_TRIAL_101 = 8807 , + HELP_TEXT_ZEBRA_TRIAL_102 = 8808 , + HELP_TEXT_ZEBRA_TRIAL_103 = 8809 , + HELP_TEXT_CI_REMINDER_29 = 8810 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_17 = 8811 , + HELP_TEXT_CREATURE_RECEIVED_SPELL_18 = 8812 , + HELP_TEXT_CREATURE_FINISHED_SPELL_17 = 8813 , + HELP_TEXT_CREATURE_FINISHED_SPELL_18 = 8814 , + HELP_TEXT_HAND_CREATURE_SPELL_ANTI_01 = 8815 , + HELP_TEXT_HAND_CREATURE_SPELL_SPEEDY_01 = 8816 , + HELP_TEXT_CREATURE_ISLE_TITLE_27 = 8817 , + HELP_TEXT_REPLAY_TRIAL_REMINDER_01 = 8818 , + HELP_TEXT_REPLAY_TRIAL_REMINDER_02 = 8819 , + HELP_TEXT_REPLAY_TRIAL_REMINDER_03 = 8820 , + HELP_TEXT_REPLAY_TRIAL_REMINDER_04 = 8821 , + HELP_TEXT_REPLAY_TRIAL_REMINDER_05 = 8822 , + HELP_TEXT_ESCAPE_TO_QUIT_10 = 8823 , + HELP_TEXT_ESCAPE_TO_QUIT_20 = 8824 , + HELP_TEXT_ESCAPE_TO_QUIT_30 = 8825 , + HELP_TEXT_ESCAPE_TO_QUIT_40 = 8826 , + HELP_TEXT_DOJO_REMINDER_240 = 8827 , + HELP_TEXT_TYKE_BUILDING_01 = 8828 , + HELP_TEXT_TYKE_BUILDING_02 = 8829 , + HELP_TEXT_TYKE_BUILDING_03 = 8830 , + HELP_TEXT_RUFUS_END_OF_GAME_10 = 8831 , + HELP_TEXT_RUFUS_END_OF_GAME_20 = 8832 , + HELP_TEXT_RUFUS_END_OF_GAME_30 = 8833 , + HELP_TEXT_RUFUS_END_OF_GAME_40 = 8834 , + HELP_TEXT_RUFUS_END_OF_GAME_50 = 8835 , + HELP_TEXT_NAME_CREATURE_ISLE_10 = 8836 , + HELP_TEXT_NAME_CREATURE_ISLE_20 = 8837 , + HELP_TEXT_RUFUS_INTRO_HIS_TRIAL_10 = 8838 , + HELP_TEXT_RUFUS_INTRO_HIS_TRIAL_20 = 8839 , + HELP_TEXT_RUFUS_INTRO_HIS_TRIAL_30 = 8840 , + HELP_TEXT_RUFUS_INTRO_HIS_TRIAL_40 = 8841 , + HELP_TEXT_ENDOFGAME_QUOTES_37 = 8842 , + HELP_TEXT_ENDOFGAME_QUOTES_38 = 8843 , + HELP_TEXT_QUIT_TRIAL_BEFORE_NEW_ONE_01 = 8844 , + HELP_TEXT_QUIT_TRIAL_BEFORE_NEW_ONE_02 = 8845 , + HELP_TEXT_QUIT_TRIAL_BEFORE_NEW_ONE_03 = 8846 , + HELP_TEXT_CI_QUIT = 8847 , + HELP_TEXT_CI_DELETE = 8848 , + HELP_TEXT_MPFE_FG_CI_TITLE = 8849 , + HELP_TEXT_QUESTION_CHICKEN_CREATURE_01 = 8850 , + HELP_TEXT_QUESTION_CHICKEN_CREATURE_02 = 8851 , + HELP_TEXT_QUESTION_CROC_CREATURE_01 = 8852 , + HELP_TEXT_QUESTION_CROC_CREATURE_02 = 8853 , + HELP_TEXT_QUIT_CI_FULL = 8854 , + HELP_TEXT_DIALOG_VIDEOCHANGE_CI = 8855 , + HELP_TEXT_LAST = 8856 , + + // InfoScriptPatch2.txt + HELP_TEXT_PATCH_LAST = 12, + HELP_TEXT_PATCH_NONE = 0x0, + HELP_TEXT_PATCH_01 = 0x1, + HELP_TEXT_PATCH_02 = 0x2, + HELP_TEXT_PATCH_03 = 0x3, + HELP_TEXT_PATCH_04 = 0x4, + HELP_TEXT_PATCH_05 = 0x5, + HELP_TEXT_PATCH_06 = 0x6, + HELP_TEXT_PATCH_07 = 0x7, + HELP_TEXT_PATCH_08 = 0x8, + HELP_TEXT_PATCH_09 = 0x9, + HELP_TEXT_PATCH_10 = 0xa, + HELP_TEXT_PATCH_11 = 0xb, +}; + +#endif diff --git a/libs/chlasm/HitRegions.h b/libs/chlasm/HitRegions.h new file mode 100644 index 0000000..5e36a49 --- /dev/null +++ b/libs/chlasm/HitRegions.h @@ -0,0 +1,35 @@ +#ifndef __HITREGIONS_H__ +#define __HITREGIONS_H__ + +enum FIGHT_MOVE //Custom name +{ + CTR_HIT_HIGH, + CTR_HIT_MIDDLE, + CTR_HIT_LOW, + CTR_HIT_BLOCK, + CTR_HIT_SPECIAL +}; + +enum FIGHT_ACTION //Custom name +{ + CTR_FIGHT_NOTHING, + CTR_FIGHT_BLOCKING, + CTR_FIGHT_STEPPING, + CTR_FIGHT_HITTING, + CTR_FIGHT_CASTING, + CTR_FIGHT_SPECIAL_MOVE, + CTR_FIGHT_RECOIL_HIGH, + CTR_FIGHT_RECOIL_MIDDLE, + CTR_FIGHT_RECOIL_LOW, + CTR_FIGHT_FAINTING, + CTR_FIGHT_UNKNOWN_ACTION +}; + +enum FIGHT_CONTROL_AI //Custom name +{ + FIGHT_CONTROL_AI_NEVER, + FIGHT_CONTROL_AI_NOT_FOR_A_FEW_SECONDS, + FIGHT_CONTROL_AI_FULL_ON +}; + +#endif //__HITREGIONS_H__ diff --git a/libs/chlasm/LHKeyBoard.h b/libs/chlasm/LHKeyBoard.h new file mode 100644 index 0000000..2e22dec --- /dev/null +++ b/libs/chlasm/LHKeyBoard.h @@ -0,0 +1,137 @@ +#ifndef __LHKEYBOARD_H__ +#define __LHKEYBOARD_H__ + +//***************************************************************************** +// LH_KEY contains all the keycodes generated by extended keyboard. +// InKey() holds these LH_KEY values and these are also the indexes into +// the KeyDownArray[]. +//***************************************************************************** + +enum LH_KEY +{ + KB_NONE = 0x000, + KB_ESC = 0x001, + KB_ESCAPE = 0x001, // Duplicate + KB_1 = 0x002, + KB_2 = 0x003, + KB_3 = 0x004, + KB_4 = 0x005, + KB_5 = 0x006, + KB_6 = 0x007, + KB_7 = 0x008, + KB_8 = 0x009, + KB_9 = 0x00a, + KB_0 = 0x00b, + KB_MINUS = 0x00c, + KB_EQUAL = 0x00d, + KB_BACKSPACE = 0x00e, + KB_TAB = 0x00f, + KB_Q = 0x010, + KB_W = 0x011, + KB_E = 0x012, + KB_R = 0x013, + KB_T = 0x014, + KB_Y = 0x015, + KB_U = 0x016, + KB_I = 0x017, + KB_O = 0x018, + KB_P = 0x019, + KB_LSBRACKET = 0x01a, + KB_RSBRACKET = 0x01b, + KB_RETURN = 0x01c, + KB_LCTRL = 0x01d, + + KB_A = 0x01e, + KB_S = 0x01f, + KB_D = 0x020, + KB_F = 0x021, + KB_G = 0x022, + KB_H = 0x023, + KB_J = 0x024, + KB_K = 0x025, + KB_L = 0x026, + KB_COLON = 0x027, + KB_QUOTE = 0x028, + KB_QUOTE2 = 0x029, + KB_LSHIFT = 0x02a, + KB_HASH = 0x02b, + KB_BACKSLASH = 0x056, + KB_Z = 0x02c, + KB_X = 0x02d, + KB_C = 0x02e, + KB_V = 0x02f, + KB_B = 0x030, + KB_N = 0x031, + KB_M = 0x032, + KB_COMMA = 0x033, + KB_DOT = 0x034, + KB_SLASH = 0x035, + KB_RSHIFT = 0x036, + + KB_LALT = 0x038, + KB_SPACE = 0x039, + KB_CAPS = 0x03a, + KB_F1 = 0x03b, + KB_F2 = 0x03c, + KB_F3 = 0x03d, + KB_F4 = 0x03e, + KB_F5 = 0x03f, + KB_F6 = 0x040, + KB_F7 = 0x041, + KB_F8 = 0x042, + KB_F9 = 0x043, + KB_F10 = 0x044, + KB_F11 = 0x057, + KB_F12 = 0x058, + KB_SCROLL_LOCK = 0x046, + KB_NUM_LOCK = 0x045, + KB_PMINUS = 0x04a, + KB_PLUS = 0x04e, + KB_ASTERISK = 0x037, + KB_PDOT = 0x053, + + // Extended Keys + + KB_RALT = 0x038 + 0x80, + KB_RCTRL = 0x01d + 0x80, + KB_PRINT_SCR = 0x037 + 0x80, + + KB_HOME = 0x047 + 0x80, + KB_UP = 0x048 + 0x80, + KB_PGUP = 0x049 + 0x80, + KB_LEFT = 0x04b + 0x80, + KB_RIGHT = 0x04d + 0x80, + KB_END = 0x04f + 0x80, + KB_DOWN = 0x050 + 0x80, + KB_PGDN = 0x051 + 0x80, + KB_INSERT = 0x052 + 0x80, + KB_DELETE = 0x053 + 0x80, + KB_ENTER = 0x01c + 0x80, + + // Windows Keys + + KB_LWIN = 0xDB, + KB_RWIN = 0xDC, + KB_WAPP = 0xDD + +}; + +enum LH_SHIFT +{ + LH_NO_SHIFT = 0, + LH_SHIFT = 128, +}; + +//***************************************************************************** +// Some handy ascii values +//***************************************************************************** + +enum LH_ASCII_KEY_VALUES +{ + ASC_TAB = 0x009, + ASC_NEWLINE = 0x00a, + ASC_SPACE = 0x020, +}; + + +#endif //__LHKEYBOARD_H__ diff --git a/libs/chlasm/LHSample.h b/libs/chlasm/LHSample.h new file mode 100644 index 0000000..35fac6b --- /dev/null +++ b/libs/chlasm/LHSample.h @@ -0,0 +1,266 @@ +//Lionhead Sample Header File + +#ifndef INCL_LHSAMPLE_H +#define INCL_LHSAMPLE_H + +enum LH_SAMPLE +{ + LH_SAMPLE_G_ACKNOWLEDGECOMMAND = 1, + LH_SAMPLE_G_FIRE_01 = 2, + LH_SAMPLE_G_HANDGESTURE_02 = 3, + LH_SAMPLE_G_HANDGRABLAND_01 = 4, //Swipe + LH_SAMPLE_G_HANDGRABLAND_02 = 5, //Swipe + LH_SAMPLE_G_HANDGRABLAND_03 = 6, //Swipe + LH_SAMPLE_G_HANDGRABLAND_04 = 7, //Swipe + LH_SAMPLE_G_HANDGRABLAND_05 = 8, //Swipe + LH_SAMPLE_G_HANDGRABLAND_06 = 9, //Swipe + LH_SAMPLE_G_PICKUPOBJECT = 10, + LH_SAMPLE_G_TOTUMMOVE = 11, //Totum grinding + LH_SAMPLE_G_WATERFLOW = 12, //Citadel waterfall + LH_SAMPLE_G_WINDMILL = 13, //Windmill noise + LH_SAMPLE_H_IMPRESSEDGROUP_01 = 14, //Swipe + LH_SAMPLE_H_IMPRESSEDGROUP_02 = 15, //Swipe + LH_SAMPLE_H_IMPRESSEDGROUP_03 = 16, //Swipe + LH_SAMPLE_H_LOSEBELIEFGROUP_01 = 17, //Swipe + LH_SAMPLE_H_LOSEBELIEFGROUP_02 = 18, //Swipe + LH_SAMPLE_H_LOSEBELIEFGROUP_03 = 19, //Swipe + LH_SAMPLE_G_BABYCRY_01 = 20, + LH_SAMPLE_G_BABYCRY_02 = 21, + LH_SAMPLE_G_BABYCRY_03 = 22, + LH_SAMPLE_G_BABYCRY_04 = 23, + LH_SAMPLE_G_BABYCRY_05 = 24, + LH_SAMPLE_G_BABYCRY_06 = 25, + LH_SAMPLE_G_BABYCRY_07 = 26, + LH_SAMPLE_G_BABYCRY_08 = 27, + LH_SAMPLE_G_BABYCRY_09 = 28, + LH_SAMPLE_G_BABYCRY_10 = 29, + LH_SAMPLE_G_VILLAGEBELL = 30, + LH_SAMPLE_G_TREEFALL_01 = 31, + LH_SAMPLE_G_TREEBREAK_01 = 32, + LH_SAMPLE_G_TREEBREAK_02 = 33, + LH_SAMPLE_G_TREEBREAK_03 = 34, + LH_SAMPLE_G_SPELLPOWERUPBAND = 35, + LH_SAMPLE_G_SPELLGESTURERECOGNISE = 36, + LH_SAMPLE_G_SPELLCASTFAILURE = 37, //Spell cast failure + LH_SAMPLE_G_SPELLTELEPORTENERGISEARRIVE = 38, + LH_SAMPLE_G_SPELLTELEPORTENERGISEGO = 39, + LH_SAMPLE_G_REWARDSTING = 40, + LH_SAMPLE_G_OPENCHEST = 41, + LH_SAMPLE_G_CLICKONSPELL_01 = 42, + LH_SAMPLE_G_OUTOFBOUNDS = 43, + LH_SAMPLE_G_PICKUPFOOD = 44, + LH_SAMPLE_G_HEARTBEAT_01 = 45, + LH_SAMPLE_G_WOOSH_01 = 46, + LH_SAMPLE_G_WOOSH_02 = 47, + LH_SAMPLE_G_WOOSH_03 = 48, + LH_SAMPLE_G_WOOSH_04 = 49, + LH_SAMPLE_G_SCAFFOLDDISAPPEAR_01 = 50, + LH_SAMPLE_G_SCAFFOLDAPPEAR_01 = 51, + LH_SAMPLE_G_HANDTHROUGHINFLUENCE_01 = 52, + LH_SAMPLE_G_STEAM_01 = 53, + LH_SAMPLE_G_SCROLLSQUEAK_01 = 54, + LH_SAMPLE_G_SCROLLSQUEAK_02 = 55, + LH_SAMPLE_G_SCROLLSQUEAK_03 = 56, + LH_SAMPLE_G_SCROLLSQUEAK_04 = 57, + LH_SAMPLE_G_SCROLLSQUEAK_05 = 58, + LH_SAMPLE_G_SCROLLSQUEAK_06 = 59, + LH_SAMPLE_G_CITADELDOOROPEN_01 = 60, + LH_SAMPLE_G_CITADELDOORCLOSE_02 = 61, + LH_SAMPLE_G_CITADELBUTTONUP_01 = 62, + LH_SAMPLE_G_CITADELBUTTONDOWN_01 = 63, + LH_SAMPLE_G_FIREBALLPAST_01 = 64, + LH_SAMPLE_G_FIREBALLPAST_02 = 65, + LH_SAMPLE_G_FIREBALLPAST_03 = 66, + LH_SAMPLE_G_FIREBALLPAST_04 = 67, + LH_SAMPLE_G_FIREBALLPAST_05 = 68, + LH_SAMPLE_G_ROCKPAST_01 = 69, + LH_SAMPLE_G_ROCKPAST_02 = 70, + LH_SAMPLE_G_ROCKPAST_03 = 71, + LH_SAMPLE_G_ROCKPAST_04 = 72, + LH_SAMPLE_G_ROCKPAST_05 = 73, + LH_SAMPLE_G_WORKSHOP = 74, + LH_SAMPLE_G_PILEFOOD_01 = 75, + LH_SAMPLE_G_PILEFOOD_02 = 76, + LH_SAMPLE_G_PILEFOODSMALL_01 = 77, + LH_SAMPLE_G_PILEFOODSMALL_02 = 78, + LH_SAMPLE_G_PILEFOODSMALL_03 = 79, + LH_SAMPLE_G_PILEFOODSMALL_04 = 80, + LH_SAMPLE_G_PILEFOODSMALL_05 = 81, + LH_SAMPLE_G_PILEFOODSMALL_06 = 82, + LH_SAMPLE_G_PLANTTREE_01 = 83, + LH_SAMPLE_G_PLANTTREE_02 = 84, + LH_SAMPLE_G_PLANTTREE_03 = 85, + LH_SAMPLE_G_PILEWOOD_01 = 86, + LH_SAMPLE_G_PILEWOOD_02 = 87, + LH_SAMPLE_G_PILEWOOD_03 = 88, + LH_SAMPLE_G_PILEWOOD_04 = 89, + LH_SAMPLE_G_PILEWOOD_05 = 90, + LH_SAMPLE_G_PILEWOOD_06 = 91, + LH_SAMPLE_G_PILEWOODSMALL_01 = 92, + LH_SAMPLE_G_PILEWOODSMALL_02 = 93, + LH_SAMPLE_G_PILEWOODSMALL_03 = 94, + LH_SAMPLE_G_PILEWOODSMALL_04 = 95, + LH_SAMPLE_G_PILEWOODSMALL_05 = 96, + LH_SAMPLE_G_PILEWOODSMALL_06 = 97, + LH_SAMPLE_G_PICKUPWOOD = 98, + LH_SAMPLE_G_HANDINWATER_01 = 99, + LH_SAMPLE_G_HANDINWATER_02 = 100, + LH_SAMPLE_G_HANDINWATER_03 = 101, + LH_SAMPLE_G_HANDINWATER_04 = 102, + LH_SAMPLE_G_HANDINWATER_05 = 103, + LH_SAMPLE_G_HANDINWATER_06 = 104, + LH_SAMPLE_G_HANDINWATER_07 = 105, + LH_SAMPLE_G_HANDINWATER_08 = 106, + LH_SAMPLE_G_HANDINWATER_09 = 107, + LH_SAMPLE_G_HANDINWATER_10 = 108, + LH_SAMPLE_G_SPELLBUBBLEPOP_04 = 109, + LH_SAMPLE_G_KNOCKROOFMULTI_01 = 110, + LH_SAMPLE_G_KNOCKROOFMULTI_02 = 111, + LH_SAMPLE_G_KNOCKROOFMULTI_03 = 112, + LH_SAMPLE_G_KNOCKROOFMULTI_01_C2 = 113, + LH_SAMPLE_G_KNOCKROOFMULTI_02_C2 = 114, + LH_SAMPLE_G_KNOCKROOFMULTI_03_C2 = 115, + LH_SAMPLE_G_KNOCKROOFMULTI_01_C3 = 116, + LH_SAMPLE_G_KNOCKROOFMULTI_02_C3 = 117, + LH_SAMPLE_G_KNOCKROOFMULTI_03_C3 = 118, + LH_SAMPLE_G_SHAKEHAND_01 = 119, + LH_SAMPLE_G_TREEGROW_01 = 120, + LH_SAMPLE_G_TREEGROW_02 = 121, + LH_SAMPLE_G_TREEGROW_03 = 122, + LH_SAMPLE_G_TREEGROW_04 = 123, + LH_SAMPLE_G_TREEGROW_01_C2 = 124, + LH_SAMPLE_G_TREEGROW_02_C2 = 125, + LH_SAMPLE_G_TREEGROW_03_C2 = 126, + LH_SAMPLE_G_TREEGROW_04_C2 = 127, + LH_SAMPLE_G_TREEGROW_01_C3 = 128, + LH_SAMPLE_G_VIRTUALINFLUENCE_04 = 129, + LH_SAMPLE_G_ROCKTAP_01 = 130, + LH_SAMPLE_G_ROCKTAP_02 = 131, + LH_SAMPLE_G_ROCKTAP_03 = 132, + LH_SAMPLE_G_ROCKTAP_04 = 133, + LH_SAMPLE_G_CLICKONSCROLL_01 = 134, + LH_SAMPLE_G_WORSHIPDRAIN_01 = 135, + LH_SAMPLE_G_TREEBREAK_01_C2 = 136, //creature copying you + LH_SAMPLE_G_TREEBREAK_02_C2 = 137, //creature copying you + LH_SAMPLE_G_TREEBREAK_03_C2 = 138, //creature copying you + LH_SAMPLE_G_ROCKTAP_01_C2 = 139, //creature copying you + LH_SAMPLE_G_ROCKTAP_02_C2 = 140, //creature copying you + LH_SAMPLE_G_ROCKTAP_03_C2 = 141, //creature copying you + LH_SAMPLE_G_ROCKTAP_04_C2 = 142, //creature copying you + LH_SAMPLE_G_SQUASHANIMAL_01 = 143, + LH_SAMPLE_G_SQUASHANIMAL_02 = 144, + LH_SAMPLE_G_SQUASHANIMAL_03 = 145, + LH_SAMPLE_G_SQUASHANIMAL_04 = 146, + LH_SAMPLE_G_LANTERN_01 = 147, + LH_SAMPLE_G_LEASHATTACH_01 = 148, + LH_SAMPLE_G_LEASHATTACH_01_C2 = 149, + LH_SAMPLE_G_SCAFFOLDREADY_01 = 150, + LH_SAMPLE_G_SCAFFOLDTAP_01 = 151, + LH_SAMPLE_G_SCAFFOLDTAP_02 = 152, + LH_SAMPLE_G_SCAFFOLDTAP_03 = 153, + LH_SAMPLE_G_SCAFFOLDTAP_04 = 154, + LH_SAMPLE_G_TREEMULCH_01 = 155, + LH_SAMPLE_G_TREEMULCH_02 = 156, + LH_SAMPLE_G_TREEMULCH_03 = 157, + LH_SAMPLE_G_TREEMULCH_04 = 158, + LH_SAMPLE_G_MENUBUTTON = 159, //Click Acknowledgement + LH_SAMPLE_LOGO = 160, + LH_SAMPLE_G_SPRITESHOOTGUN = 161, + LH_SAMPLE_G_SPRITEKNOCKGLASS = 162, + LH_SAMPLE_G_SPRITESLAPHEAD = 163, + LH_SAMPLE_G_SPRITEFART = 164, + LH_SAMPLE_G_CREED_01 = 166, + LH_SAMPLE_G_CITADELEXPLODELOW_01 = 167, + LH_SAMPLE_G_CITADELEXPLODE_01 = 168, + LH_SAMPLE_G_CREATURESWAP_01 = 169, + LH_SAMPLE_G_PLASMASMALL = 170, + LH_SAMPLE_G_CITADELPLASMA = 171, + LH_SAMPLE_G_VOLCANO_02 = 172, + LH_SAMPLE_G_CLICKSIGNPOST = 173, + LH_SAMPLE_G_PLANTSCAFFOLD_01 = 174, + LH_SAMPLE_G_FIRECREATURECAVE_01 = 175, + LH_SAMPLE_G_FIGHTARENADRAWN = 176, + LH_SAMPLE_G_WATERCREATURECAVE_01 = 177, + LH_SAMPLE_G_CITADELEXPLODE_01_C2 = 178, //used for meteor L5 + LH_SAMPLE_G_SACRIFICE_01 = 179, + LH_SAMPLE_G_PICKUPCHILD_01 = 180, + LH_SAMPLE_G_PICKUPCHILD_02 = 181, + LH_SAMPLE_G_PICKUPCHILD_03 = 182, + LH_SAMPLE_G_PICKUPCHILD_04 = 183, + LH_SAMPLE_G_PICKUPCHILD_05 = 184, + LH_SAMPLE_G_PICKUPCHILD_06 = 185, + LH_SAMPLE_G_PICKUPCHILD_07 = 186, + LH_SAMPLE_G_PICKUPMAN_01 = 187, + LH_SAMPLE_G_PICKUPMAN_02 = 188, + LH_SAMPLE_G_PICKUPMAN_03 = 189, + LH_SAMPLE_G_PICKUPMAN_04 = 190, + LH_SAMPLE_G_PICKUPMAN_05 = 191, + LH_SAMPLE_G_PICKUPMAN_06 = 192, + LH_SAMPLE_G_PICKUPMAN_07 = 193, + LH_SAMPLE_G_PICKUPWOMAN_01 = 194, + LH_SAMPLE_G_PICKUPWOMAN_02 = 195, + LH_SAMPLE_G_PICKUPWOMAN_03 = 196, + LH_SAMPLE_G_PICKUPWOMAN_04 = 197, + LH_SAMPLE_G_PICKUPWOMAN_05 = 198, + LH_SAMPLE_G_PICKUPWOMAN_06 = 199, + LH_SAMPLE_G_PICKUPWOMAN_07 = 200, + LH_SAMPLE_G_SCAFFOLDCOMBINE_01 = 201, + LH_SAMPLE_G_SCAFFOLDCOMBINE_02 = 202, + LH_SAMPLE_G_SCAFFOLDCOMBINE_03 = 203, + LH_SAMPLE_G_SCAFFOLDCOMBINE_04 = 204, + LH_SAMPLE_G_TAKEOVERTOWN_01 = 205, + LH_SAMPLE_G_CITADELSPARK_01 = 206, + LH_SAMPLE_G_CITADELSPARK_02 = 207, + LH_SAMPLE_G_CITADELSPARK_03 = 208, + LH_SAMPLE_G_CITADELSPARK_04 = 209, + LH_SAMPLE_G_CITADELSPARK_05 = 210, + LH_SAMPLE_BALLISTAFIRED = 211, + LH_SAMPLE_BALLISTAPULLEDBACK = 212, + LH_SAMPLE_BALLISTATURNED = 213, + LH_SAMPLE_BARRELFIRED = 214, + LH_SAMPLE_DOLPHINHIT_01 = 215, + LH_SAMPLE_DOLPHINHIT_02 = 216, + LH_SAMPLE_DOLPHINHIT_03 = 217, + LH_SAMPLE_DOLPHINLOOP_01 = 218, + LH_SAMPLE_DONKEYFIRED = 219, + LH_SAMPLE_EGGIMPACT_01 = 220, + LH_SAMPLE_EGGIMPACT_02 = 221, + LH_SAMPLE_FIGHTOVER_01 = 222, + LH_SAMPLE_FIGHTOVER_02 = 223, + LH_SAMPLE_FIREATDOLPHIN_01 = 224, + LH_SAMPLE_FIREATDOLPHIN_02 = 225, + LH_SAMPLE_HUGECROWD_01 = 226, + LH_SAMPLE_HUGECROWD_02 = 227, + LH_SAMPLE_RACECOUNT_01 = 228, + LH_SAMPLE_RACEGO_01 = 229, + LH_SAMPLE_BOWLSTRIKE_01 = 230, + LH_SAMPLE_BOWLSTRIKE_02 = 231, + LH_SAMPLE_BIGSCREAM = 232, + LH_SAMPLE_BIRDCHEEP_01 = 233, + LH_SAMPLE_BIRDCHEEP_02 = 234, + LH_SAMPLE_BIRDCHEEP_03 = 235, + LH_SAMPLE_CREATUREHANDS = 236, + LH_SAMPLE_FANFARE = 237, + LH_SAMPLE_GOALDISAPPEAR = 238, + LH_SAMPLE_HERMITCAST = 239, //Swipe + LH_SAMPLE_REFEREEWHISTLELONG = 240, + LH_SAMPLE_REFEREEWHISTLESHORT = 241, + LH_SAMPLE_RINGSHOT = 242, + LH_SAMPLE_SKITTLECOLLIDE_01 = 243, + LH_SAMPLE_SKITTLECOLLIDE_02 = 244, + LH_SAMPLE_SKITTLECOLLIDE_03 = 245, + LH_SAMPLE_SKITTLECOLLIDE_04 = 246, + LH_SAMPLE_SKITTLECOLLIDE_05 = 247, + LH_SAMPLE_SKITTLECOLLIDE_06 = 248, + LH_SAMPLE_SKITTLECOLLIDE_07 = 249, + LH_SAMPLE_SKITTLECOLLIDE_08 = 250, + LH_SAMPLE_SKITTLEHITMULTIPLE_01 = 251, + LH_SAMPLE_SKITTLEHITMULTIPLE_02 = 252, + LH_SAMPLE_SKITTLEHITSINGLE_01 = 253, + LH_SAMPLE_SKITTLEHITSINGLE_02 = 254, + LH_SAMPLE_SKITTLEHITSINGLE_03 = 255, + LH_SAMPLE_SPLASHSIZZLE = 256, //Big Splash + LH_SAMPLE_LAST = 257 +}; + +#endif //LHSAMPLE included \ No newline at end of file diff --git a/libs/chlasm/ScriptChallengeEnums.h b/libs/chlasm/ScriptChallengeEnums.h new file mode 100644 index 0000000..a820ff7 --- /dev/null +++ b/libs/chlasm/ScriptChallengeEnums.h @@ -0,0 +1,142 @@ +#ifndef __SCRIPTCHALLENGEENUMS_H__ +#define __SCRIPTCHALLENGEENUMS_H__ + +//------------------------------------------------------------------------------------------------------------------------ +//------------------------------------------------------------------------------------------------------------------------ + +enum ScriptChallengeEnums +{ + CHALLENGE_NONE=0, + CHALLENGE_FollowUs, + CHALLENGE_LAWBREAKERS, + CHALLENGE_FALSE_IDOL, + CHALLENGE_BUILD_CITADEL, + CHALLENGE_THROW_THROUGH_SHIELD, + CHALLENGE_HERMIT_HUT, + CHALLENGE_PLAGUE, + CHALLENGE_MARAUDER, + CHALLENGE_BAYWATCH, + CHALLENGE_IDOL_PYRE, + CHALLENGE_LOST_TREASURE, + CHALLENGE_SINGING_STONES_SONGS, + CHALLENGE_SPIRITUAL_HEALER, + CHALLENGE_GREEDY_FARMER, + CHALLENGE_THE_SLAVERS, + CHALLENGE_FIRE_ON_HIGH, + CHALLENGE_THE_BIG_FIGHT, + CHALLENGE_THE_MISSIONARIES, + CHALLENGE_LOST_BROTHER, + CHALLENGE_CREATURE_RETRIEVE, + CHALLENGE_SINGING_STONES_A, + CHALLENGE_THROWING_STONES, + CHALLENGE_PIED_PIPER, + CHALLENGE_LOST_FLOCK, + CHALLENGE_CREATURE_GUARDIAN, + CHALLENGE_LANDSLIDE, + CHALLENGE_BIG_FISH, + CHALLENGE_SACRIFICE, + CHALLENGE_SWAP_TO_APE, + CHALLENGE_SHAOLIN, + CHALLENGE_MISSIONARIES_RETURNED, + CHALLENGE_SWAP_TO_LION, + CHALLENGE_SINGING_STONES_C, + CHALLENGE_SWAP_TO_WOLF, + CHALLENGE_CREATURE_RUNS_AMOK, + CHALLENGE_CREATURE_SAVING_PEOPLE, + CHALLENGE_SWAP_TO_LEOPARD, + CHALLENGE_SWAP_TO_COW, + CHALLENGE_THE_WORKSHOP, + CHALLENGE_SWAP_TO_HORSE, + CHALLENGE_LAND_4_METEORITES, + CHALLENGE_LAND_4_NOMAD, + CHALLENGE_LAND_4_TOTEM_PUZZLE, + CHALLENGE_LAND_4_UNDEAD_VILLAGE, + CHALLENGE_LAND_4_OGRE, + CHALLENGE_BLIND_WOMAN, + CHALLENGE_SWAP_TO_TURTLE, + CHALLENGE_CUP_FINAL, + CHALLENGE_FOOD_FOR_THOUGHT, + CHALLENGE_RELEASE_THE_CREATURE, + CHALLENGE_FREE_THE_CREATURE, + CHALLENGE_ChallengeNotify, + CHALLENGE_SWAP_CREATURES, + CHALLENGE_BIG_WHALE, + CHALLENGE_ChooseYourCreature, + CHALLENGE_LEAVE_THROUGH_VORTEX_LAND1, + CHALLENGE_CREATURE_BREEDER, + CHALLENGE_ALLY_SPEAKS, + CHALLENGE_LEAVE_THROUGH_VORTEX_LAND2, + CHALLENGE_LEAVE_THROUGH_VORTEX_LAND3, + CHALLENGE_LEAVE_THROUGH_VORTEX_LAND4, + CHALLENGE_SWAP_TO_BROWN_BEAR, + CHALLENGE_VILLAGER_CATCH, + CHALLENGE_CREATURE_DEVELOPMENT, + CHALLENGE_SEE_THE_CITADEL, + CHALLENGE_BEGIN_LAND2, + CHALLENGE_LION_PUZZLE, + CHALLENGE_FISH_PUZZLE, + CHALLENGE_LAND2_FIREBALL_CHALLENGE, + CHALLENGE_LAND2_SHIELD_CHALLENGE, + CHALLENGE_SLAVERS_WARNING, + CHALLENGE_SINGING_STONES_CIRCLE, + CHALLENGE_CITADEL_GUIDE, + CHALLENGE_WHACK_A_VILLAGER, + CHALLENGE_TEST_KEN, + CHALLENGE_CHIMP_POSSE, + CHALLENGE_MAGIC_MUSHROOM, + CHALLENGE_HANOI_FLOOD, + CHALLENGE_TREE_PUZZLE_ONE, + CHALLENGE_TREE_PUZZLE_TWO, + CHALLENGE_THESIUS_PUZZLE_LAND_FOUR, + CHALLENGE_PUZZLE_MASTER, + CHALLENGE_GUIDE, + CHALLENGE_LEARN_WORSHIPPING, + CHALLENGE_CRUSADERS, + CHALLENGE_LandControl3, + CHALLENGE_JAPANESE_TRAITOR, + CHALLENGE_LEARN_GESTURES, + CHALLENGE_LEARN_INFLUENCE, + CHALLENGE_TUTORIAL_LAND, + CHALLENGE_END_LAND_2, + CHALLENGE_KILL_KHAZAR, + CHALLENGE_LEAVE_THROUGH_VORTEX_LAND2_SNAP_SHOT, + CHALLENGE_FANATIC_ATTACK, + CHALLENGE_WOLF_ATTACK, + CHALLENGE_CREATURE_CURSE, + CHALLENGE_TOWN_SOCCER, + CHALLENGE_FOOTBALL_SKILLS, + CHALLENGE_CREATURE_HERDER, + CHALLENGE_WOLF_TRIAL, + CHALLENGE_GREEDY_HERMIT, + CHALLENGE_MARBLES, + CHALLENGE_BOWLING, + CHALLENGE_ZEDI_FIGHT, + CHALLENGE_SPECIAL_CROPS, + CHALLENGE_BALLISTA_BLOKE, + CHALLENGE_SMASH_BUILDINGS, + CHALLENGE_BUILD_BUILDINGS, + CHALLENGE_KING_OF_THE_CASTLE, + CHALLENGE_MISSILE_COMMAND, + CHALLENGE_THE_RACES, + CHALLENGE_TIGER_CANNON, + CHALLENGE_DOJO, + CHALLENGE_TYKE_TREE, + CHALLENGE_TYKES_COMING_OF_AGE, + CHALLENGE_GREETINGS_FROM_THE_HOOD, + CHALLENGE_SPIRIT_TRIAL, + CHALLENGE_MANDRILL_PUZZLE, + CHALLENGE_DOLPHIN_SHOOT, + CHALLENGE_GRADUATION_FIGHT, + CHALLENGE_MISSIONARIES_LEAVE, + CHALLENGE_CREATURE_TAPPER, + CHALLENGE_DOJO_REMINDER, + CHALLENGE_GRADUATION, + CHALLENGE_BABY_SITTER, + CHALLENGE_OUTRO, + CHALLENGE_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +//------------------------------------------------------------------------------------------------------------------------ + +#endif //__SCRIPTCHALLENGEENUMS_H__ \ No newline at end of file diff --git a/libs/chlasm/ScriptEnums.h b/libs/chlasm/ScriptEnums.h new file mode 100644 index 0000000..c227f0e --- /dev/null +++ b/libs/chlasm/ScriptEnums.h @@ -0,0 +1,251 @@ +#ifndef __SCRIPTENUMS_H__ +#define __SCRIPTENUMS_H__ + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_FIND_TYPE +{ + SCRIPT_FIND_TYPE_ANY =5000, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_SPIRIT_TYPE +{ + SCRIPT_SPIRIT_TYPE_NONE, + SCRIPT_SPIRIT_TYPE_GOOD, + SCRIPT_SPIRIT_TYPE_EVIL, + SCRIPT_SPIRIT_TYPE_ALIGNMENT, + SCRIPT_SPIRIT_TYPE_ANTI_ALIGNMENT, + SCRIPT_SPIRIT_TYPE_RANDOM, + SCRIPT_SPIRIT_TYPE_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_PUZZLE_GAME_TYPE +{ + SCRIPT_PUZZLE_GAME_TYPE_NONE, + SCRIPT_PUZZLE_GAME_TYPE_TREE_1, + SCRIPT_PUZZLE_GAME_TYPE_TREE_2, + SCRIPT_PUZZLE_GAME_TYPE_HANOI, + SCRIPT_PUZZLE_GAME_TYPE_MAZE_1, + SCRIPT_PUZZLE_GAME_TYPE_MAZE_2, + SCRIPT_PUZZLE_GAME_TYPE_TOTEM_1, + SCRIPT_PUZZLE_GAME_TYPE_TOTEM_2, + SCRIPT_PUZZLE_GAME_TYPE_TOTEM_3, + SCRIPT_PUZZLE_GAME_TYPE_TOTEM_4, + SCRIPT_PUZZLE_GAME_TYPE_THESIUS1, + SCRIPT_PUZZLE_GAME_TYPE_THESIUS2, + SCRIPT_PUZZLE_GAME_TYPE_TILT1, + SCRIPT_PUZZLE_GAME_TYPE_TILT2, + SCRIPT_PUZZLE_GAME_TYPE_FISHES1, + SCRIPT_PUZZLE_GAME_TYPE_FISHES2, + SCRIPT_PUZZLE_GAME_TYPE_IMMERSION, + SCRIPT_PUZZLE_GAME_TYPE_IMMERSION2, + SCRIPT_PUZZLE_GAME_TYPE_LIONSHEEP, + SCRIPT_PUZZLE_GAME_TYPE_CHESS, + SCRIPT_PUZZLE_GAME_TYPE_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_PUZZLE_GAME_STATUS +{ + SCRIPT_PUZZLE_GAME_STATUS_WON, + SCRIPT_PUZZLE_GAME_STATUS_LOST, + SCRIPT_PUZZLE_GAME_STATUS_WON_GOODWAY, + SCRIPT_PUZZLE_GAME_STATUS_WON_EVILWAY, + SCRIPT_PUZZLE_GAME_STATUS_GAME_IN_PROGRESS, + SCRIPT_PUZZLE_GAME_STATUS_GAME_NOT_YET_BEGUN, + SCRIPT_PUZZLE_GAME_STATUS_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_OBJECT_PROPERTY_TYPE +{ + SCRIPT_OBJECT_PROPERTY_TYPE_NONE, + SCRIPT_OBJECT_PROPERTY_TYPE_HEALTH, + SCRIPT_OBJECT_PROPERTY_TYPE_ANGLE, + SCRIPT_OBJECT_PROPERTY_TYPE_XANGLE, + SCRIPT_OBJECT_PROPERTY_TYPE_ZANGLE, + SCRIPT_OBJECT_PROPERTY_TYPE_FLYING, + SCRIPT_OBJECT_PROPERTY_TYPE_DROWNING, + SCRIPT_OBJECT_PROPERTY_TYPE_MOVING, + SCRIPT_OBJECT_PROPERTY_TYPE_SCALE, + SCRIPT_OBJECT_PROPERTY_TYPE_IN_HAND, +// SCRIPT_OBJECT_PROPERTY_TYPE_IN_HAND_ANY, <-- CI + SCRIPT_OBJECT_PROPERTY_TYPE_IN_HAND_GRAB, + SCRIPT_OBJECT_PROPERTY_TYPE_SPEED, + SCRIPT_OBJECT_PROPERTY_TYPE_RUNNING_SPEED, + SCRIPT_OBJECT_PROPERTY_TYPE_DEFAULT_SPEED, + SCRIPT_OBJECT_PROPERTY_TYPE_DEATH, + SCRIPT_OBJECT_PROPERTY_TYPE_THING_TYPE, + SCRIPT_OBJECT_PROPERTY_TYPE_AGE, + SCRIPT_OBJECT_PROPERTY_TYPE_STRENGTH, + SCRIPT_OBJECT_PROPERTY_TYPE_ALIGNMENT, +// SCRIPT_OBJECT_PROPERTY_TYPE_ACTUAL_HEIGHT, <-- CI + SCRIPT_OBJECT_PROPERTY_TYPE_HEIGHT, + SCRIPT_OBJECT_PROPERTY_TYPE_MAX_HEIGHT, + SCRIPT_OBJECT_PROPERTY_TYPE_PLAYER, + SCRIPT_OBJECT_PROPERTY_TYPE_BUILT_PERCENTAGE, + SCRIPT_OBJECT_PROPERTY_TYPE_XPOS, + SCRIPT_OBJECT_PROPERTY_TYPE_YPOS, + SCRIPT_OBJECT_PROPERTY_TYPE_ZPOS, +// SCRIPT_OBJECT_PROPERTY_TYPE_RADIUS, <-- CI +// SCRIPT_OBJECT_PROPERTY_TYPE_DENSITY, <-- CI + + //Enums for creature properties + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_WARMTH, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_FATNESS, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_ENERGY, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_ITCHINESS, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_AMOUNT_OF_POO, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_EXHAUSTION, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_DEHYDRATION, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_FIGHT_HEALTH, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_MIN_SIZE, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_MAX_SIZE, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_CAN_GO_THROUGH_VORTEX, + SCRIPT_OBJECT_PROPERTY_TYPE_CREATURE_FIGHT_POWER, + + SCRIPT_OBJECT_PROPERTY_TYPE_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_OBJECT_TYPE +{ + SCRIPT_OBJECT_TYPE_NONE, + SCRIPT_OBJECT_TYPE_MARKER, + SCRIPT_OBJECT_TYPE_ABODE, + SCRIPT_OBJECT_TYPE_FEATURE, + SCRIPT_OBJECT_TYPE_VILLAGER, + SCRIPT_OBJECT_TYPE_VILLAGER_CHILD, + SCRIPT_OBJECT_TYPE_ANIMAL, + SCRIPT_OBJECT_TYPE_REWARD, + SCRIPT_OBJECT_TYPE_MOBILE_STATIC, + SCRIPT_OBJECT_TYPE_TOWN, + SCRIPT_OBJECT_TYPE_DANCE, + SCRIPT_OBJECT_TYPE_FLOCK, + SCRIPT_OBJECT_TYPE_CREATURE, + SCRIPT_OBJECT_TYPE_DEAD_TREE, + SCRIPT_OBJECT_TYPE_INFLUENCE_RING, + SCRIPT_OBJECT_TYPE_WEATHER_THING, + SCRIPT_OBJECT_TYPE_STORE, + SCRIPT_OBJECT_TYPE_TIMER, + SCRIPT_OBJECT_TYPE_CITADEL, + SCRIPT_OBJECT_TYPE_WORSHIP_SITE, + SCRIPT_OBJECT_TYPE_MOBILE_OBJECT, + SCRIPT_OBJECT_TYPE_BIRD, + SCRIPT_OBJECT_TYPE_TREE, + SCRIPT_OBJECT_TYPE_VORTEX, + SCRIPT_OBJECT_TYPE_SPELL_SEED, + SCRIPT_OBJECT_TYPE_POO, + SCRIPT_OBJECT_TYPE_WHALE, + SCRIPT_OBJECT_TYPE_ARK, + SCRIPT_OBJECT_TYPE_BALL, + SCRIPT_OBJECT_TYPE_MIST, + SCRIPT_OBJECT_TYPE_ONE_SHOT_SPELL, + SCRIPT_OBJECT_TYPE_ONE_SHOT_SPELL_IN_HAND, + SCRIPT_OBJECT_TYPE_PUZZLE_GAME, + SCRIPT_OBJECT_TYPE_ROCK, + SCRIPT_OBJECT_TYPE_TOTEM, + SCRIPT_OBJECT_TYPE_FIELD, + SCRIPT_OBJECT_TYPE_SPELL_DISPENSER, + SCRIPT_OBJECT_TYPE_HIGHLIGHT, + SCRIPT_OBJECT_TYPE_COMPUTER_PLAYER, + SCRIPT_OBJECT_TYPE_SCAFFOLD, + SCRIPT_OBJECT_TYPE_TOTEM_STATUE, + SCRIPT_OBJECT_TYPE_ANIMATED_STATIC, + SCRIPT_OBJECT_TYPE_SPECIAL_FIELD, + SCRIPT_OBJECT_TYPE_DIE, + SCRIPT_OBJECT_TYPE_CREATURE_ISLE_BUILDING, + SCRIPT_OBJECT_TYPE_DOLPHIN, + SCRIPT_OBJECT_TYPE_CANNON, + SCRIPT_OBJECT_TYPE_DUMB_CREATURE, + SCRIPT_OBJECT_TYPE_FLOWERS, + SCRIPT_OBJECT_TYPE_FEMALE_CREATURE, + SCRIPT_OBJECT_TYPE_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_BOOL +{ + SCRIPT_TRUE = 1, + SCRIPT_FALSE = 0, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_INTERFACE_SET +{ + SCRIPT_INTERFACE_SET_NONE, + SCRIPT_INTERFACE_SET_NO_INTERFACE, + SCRIPT_INTERFACE_SET_INTERACTION, + SCRIPT_INTERFACE_SET_PICK_UP, + SCRIPT_INTERFACE_SET_NORMAL, + SCRIPT_INTERFACE_ACTIVATE_GESTURES, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_AVI_SEQUENCE +{ + SCRIPT_AVI_SEQUENCE_NONE, + SCRIPT_AVI_SEQUENCE_INTRO, + SCRIPT_AVI_SEQUENCE_FALLING, + SCRIPT_AVI_SEQUENCE_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_INTERFACE_LEVEL +{ + SCRIPT_INTERFACE_LEVEL_NORMAL, + SCRIPT_INTERFACE_LEVEL_JUST_GRAB, + SCRIPT_INTERFACE_LEVEL_JUST_GRAB_FAR_TO_CITADEL, + SCRIPT_INTERFACE_LEVEL_JUST_ROTATE, + SCRIPT_INTERFACE_LEVEL_JUST_DOUBLE_CLICK_AND_DRAG, + SCRIPT_INTERFACE_LEVEL_JUST_ZOOM, + SCRIPT_INTERFACE_LEVEL_JUST_ROTATE_INTERACT, + SCRIPT_INTERFACE_LEVEL_JUST_ROTATE_INTERACT_AND_ZOOM, + SCRIPT_INTERFACE_LEVEL_JUST_HAND_MOVE, + SCRIPT_INTERFACE_LEVEL_JUST_9, //<- missing in CI + SCRIPT_INTERFACE_LEVEL_JUST_ROTATE_AND_DRAG, + SCRIPT_INTERFACE_LEVEL_JUST_PITCH, + SCRIPT_INTERFACE_LEVEL_JUST_HAND_INTERACTION, + SCRIPT_INTERFACE_LEVEL_JUST_GRAB_DOUBLE_CLICK_AND_ROTATE, + SCRIPT_INTERFACE_LEVEL_JUST_GRAB_DOUBLE_CLICK_AND_ROTATE_AND_PITCH, + SCRIPT_INTERFACE_LEVEL_JUST_GRAB_DOUBLE_CLICK_AND_ROTATE_PITCH_AND_ZOOM, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_COUNTDOWN_DRAW +{ + SCRIPT_COUNTDOWN_DRAW_NONE, + SCRIPT_COUNTDOWN_DRAW_TOP_LEFT, + SCRIPT_COUNTDOWN_DRAW_BOTTOM_LEFT, + SCRIPT_COUNTDOWN_DRAW_TOP_RIGHT, + SCRIPT_COUNTDOWN_DRAW_BOTTOM_RIGHT, + SCRIPT_COUNTDOWN_DRAW_CENTRE, + SCRIPT_COUNTDOWN_DRAW_TOP_CENTRE, + SCRIPT_COUNTDOWN_DRAW_BOTTOM_CENTRE, + SCRIPT_COUNTDOWN_DRAW_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_DEV_FUNCTION +{ + SCRIPT_DEV_FUNCTION_NONE, + SCRIPT_DEV_FUNCTION_START_DEVELOPMENT_SCRIPTS, + SCRIPT_DEV_FUNCTION_ROPE_LEASH_ENABLED, + SCRIPT_DEV_FUNCTION_OTHER_LEASHES_ENABLED, + SCRIPT_DEV_FUNCTION_LOAD_MY_CREATURE, + SCRIPT_DEV_FUNCTION_RESET_ESCAPE_STATE, + SCRIPT_DEV_FUNCTION_MY_CREATURE_POINT_OUT_HIGHLIGHT, + SCRIPT_DEV_FUNCTION_CLEAR_INTERACTION_MAGNITUDE, + SCRIPT_DEV_FUNCTION_MY_CREATURE_CAN_DIE, + SCRIPT_DEV_FUNCTION_MY_CREATURE_CANNOT_DIE, + SCRIPT_DEV_FUNCTION_CREATURE_HELP_ON, + SCRIPT_DEV_FUNCTION_CREATURE_HELP_OFF, + SCRIPT_DEV_FUNCTION_ENTER_SAVEGAMEROOM, + + SCRIPT_DEV_FUNCTION_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ + +#endif //__SCRIPTENUMS_H__ \ No newline at end of file diff --git a/libs/chlasm/ScriptEnumstwo.h b/libs/chlasm/ScriptEnumstwo.h new file mode 100644 index 0000000..017a44f --- /dev/null +++ b/libs/chlasm/ScriptEnumstwo.h @@ -0,0 +1,62 @@ +#pragma once + +//------------------------------------------------------------------------------------------------------------------------ +enum SCRIPT_JC_SPECIAL +{ + SJC_CREATE_FIRE_BALL, + SJC_CAMERA_FOLLOW_FIRE_BALL, + SJC_CANCEL_CAMERA_FOLLOW_FIRE_BALL, + SJC_DANS_LES_NUAGES, + SJC_CREATE_HAND_WITH_KID, + SJC_ACTIVATED_HAND, + SJC_IL_ETAIT_UN_PETIT_NAVIRE, + SJC_I_AM_THE_LITTLE_BOY, + SJC_BLEND_ANGLE, + SJC_PREPARE_ROTATE180, + SJC_PREPARE_ROTATE_LEFT_90, + SJC_PREPARE_ROTATE_RIGHT_90, + SJC_FADE_IN_HAND, + SJC_START_HAND_WITH_BOY, + SJC_SWITCH_ON_BOOKMARK, + SJC_SWITCH_OFF_BOOKMARK, + SJC_PREPARE_TURN_LEFT, + SJC_PREPARE_TURN_RIGHT, + SJC_CLEAN_INTRO, + SJC_ALWAYS_VISIBLE, + SJC_CI_BOAT_ARRIVAL, + SJC_CI_BOAT_ARRIVAL_END, + SJC_RAISE_TOTEM, + + SJC_START_EYE, + SJC_END_EYE, + SJC_ZOOM_EYE, + + SJC_CI_BOAT_LAUNCH, + SJC_CI_BOAT_LAUNCH_END, + + SJC_CI_BOAT_CRASH, + SJC_CI_BOAT_CRASH2, + SJC_CI_BOAT_CRASH_END, + + SJC_SWITCH_ON_INFLUENCE, + SJC_SWITCH_OFF_INFLUENCE, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum CREATURE_TATTOO_TYPE +{ + CREATURE_TATTOO_TYPE_NONE, + CREATURE_TATTOO_TYPE_THE_BROTHERHOOD, + CREATURE_TATTOO_TYPE_SUPER_GODS, + CREATURE_TATTOO_TYPE_FIGHTER, + CREATURE_TATTOO_TYPE_FIGHTER_ALWAYS, + CREATURE_TATTOO_TYPE_LAST, +}; + +//------------------------------------------------------------------------------------------------------------------------ +enum ENUM_SPOT_VISUAL_ALEX +{ + SPOT_VISUAL_ALEX_HULAHOOP, + SPOT_VISUAL_ALEX_FENCE, + SPOT_VISUAL_ALEX_LAST, +}; diff --git a/libs/lhall/released/headers/Heap.h b/libs/lhall/released/headers/Heap.h new file mode 100644 index 0000000..91a7d2b --- /dev/null +++ b/libs/lhall/released/headers/Heap.h @@ -0,0 +1,26 @@ +#ifndef BW1_DECOMP_HEAP_INCLUDED_H +#define BW1_DECOMP_HEAP_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +// Forward Declares + +struct Heap; + +struct HeapVftable +{ + void (__fastcall* SetToZero)(struct Heap* this); /* 0x0 */ + void (__fastcall* GetActualMemoryRequired)(const struct Heap* this, const void* edx, uint32_t param_1); +}; +static_assert(sizeof(struct HeapVftable) == 0x8, "Data type is of wrong size"); + +struct Heap +{ + struct HeapVftable vftable; /* 0x0 */ +}; +static_assert(sizeof(struct Heap) == 0x8, "Data type is of wrong size"); + +static struct HeapVftable* __vt__4Heap = (struct HeapVftable*)0x00931cc8; + +#endif /* BW1_DECOMP_HEAP_INCLUDED_H */ diff --git a/libs/lhall/released/headers/LHTimer.h b/libs/lhall/released/headers/LHTimer.h new file mode 100644 index 0000000..0b7b4ad --- /dev/null +++ b/libs/lhall/released/headers/LHTimer.h @@ -0,0 +1,35 @@ +#ifndef BW1_DECOMP_LH_TIMER_INCLUDED_H +#define BW1_DECOMP_LH_TIMER_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +struct LHTimer +{ + uint8_t field_0x0[0x100]; + uint32_t tick_count; /* 0x100 */ + int elapsed_time; + float speed_up_factor; + float speed_up_factor_2; +}; +static_assert(sizeof(struct LHTimer) == 0x110, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 inlined mac 10001570 LHTimer::Running(void) +bool __fastcall Running__7LHTimerFv(struct LHTimer* this); +// win1.41 inlined mac 10005790 LHTimer::Start(void) +void __fastcall Start__7LHTimerFv(struct LHTimer* this); +// win1.41 0043e9c0 mac 10001820 LHTimer::Stop(void) +void __fastcall Stop__7LHTimerFv(struct LHTimer* this); +// win1.41 0043eb70 mac 100056e0 LHTimer::MSeconds(void) +int __fastcall MSeconds__7LHTimerFv(struct LHTimer* this); +// win1.41 inlined mac 100017b0 LHTimer::GetSpeedUpFactor(void) +float __fastcall GetSpeedUpFactor__7LHTimerFv(struct LHTimer* this); +// win1.41 0043ebc0 mac 100016c0 LHTimer::SetSpeedUpFactor(float) +void __fastcall SetSpeedUpFactor__7LHTimerFf(struct LHTimer* this, const void* edx, float factor); +// win1.41 0054b850 mac 10005830 LHTimer::Reset(ulong) +void __fastcall Reset__7LHTimerFUl(struct LHTimer* this, const void* edx, uint32_t value); + +#endif /* BW1_DECOMP_LH_TIMER_INCLUDED_H */ diff --git a/libs/lhall/released/headers/RPAvoid.h b/libs/lhall/released/headers/RPAvoid.h new file mode 100644 index 0000000..b8862ed --- /dev/null +++ b/libs/lhall/released/headers/RPAvoid.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_RP_AVOID_INCLUDED_H +#define BW1_DECOMP_RP_AVOID_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For struct Point2D */ + +struct RPAvoid +{ + float field_0x0; + float field_0x4; + struct Point2D field_0x8; + float field_0x10; +}; +static_assert(sizeof(struct RPAvoid) == 0x14, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 008690a0 mac 100a8da0 RPAvoid::PointIsTotallyInside(Point2D const &, float) +uint32_t __fastcall PointIsTotallyInside__7RPAvoidFRC7Point2Df(struct RPAvoid* this, const void* edx, struct Point2D* param_1, float param_2); + +#endif /* BW1_DECOMP_RP_AVOID_INCLUDED_H */ diff --git a/libs/lhall/released/headers/RPFollow.h b/libs/lhall/released/headers/RPFollow.h new file mode 100644 index 0000000..4e2fde9 --- /dev/null +++ b/libs/lhall/released/headers/RPFollow.h @@ -0,0 +1,64 @@ +#ifndef BW1_DECOMP_RP_FOLLOW_INCLUDED_H +#define BW1_DECOMP_RP_FOLLOW_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint32_t */ + +#include /* For struct Point2D */ + +#include "RPHolder.h" /* For struct RPHolder */ + +// Forward Declares + +struct RPlan; +struct RouteNode; + +struct RPFollow +{ + struct RPHolder super; /* 0x0 */ + struct Point2D field_0x6402c; + float field_0x64034; + float field_0x64038; + float field_0x6403c; + float field_0x64040; + struct Point2D field_0x64044; + float field_0x6404c; + float field_0x64050; + uint32_t field_0x64054; + uint32_t field_0x64058; + int32_t field_0x6405c; + uint32_t field_0x64060; + void (__cdecl* field_0x64064)(int param_0, int param_1); + void (__cdecl* field_0x64068)(int param_0, float param_1, float param_2); + float (__cdecl* field_0x6406c)(int param_0); + struct RouteNode* field_0x64070; + struct Point2D field_0x64074; + float field_0x6407c; + float field_0x64080; + float field_0x64084; + uint32_t field_0x64088; + struct RPlan* field_0x6408c; + struct RPlan* field_0x64090[0x5]; + struct RouteNode* field_0x640a4[0x5]; + int field_0x640b8; + int field_0x640bc; +}; +static_assert(sizeof(struct RPFollow) == 0x640c0, "Data type is of wrong size"); + +// Constructors + +// win1.41 008639e0 mac 100aad00 RPFollow::RPFollow(void) +struct RPFollow* __fastcall __ct__8RPFollowFv(struct RPFollow* this); + +// Non-virtual methods + +// win1.41 00863ac0 mac 100aab50 RPFollow::Init(int, void (*)(int, int), void (*)(int, float, float), float (*)(int), int) +void __fastcall Init__8RPFollowFiPFii_vPFiff_vPFi_fi(struct RPFollow* this, const void* edx, int param_1, void (__cdecl* param_2)(int param_1, int param_2), void (__cdecl* param_3)(int param_1, float param_2, float param_3), float (__cdecl* param_4)(int param_1), int param_5); +// win1.41 00863b70 mac 100aa690 RPFollow::SetDest(Point2D const &, float, float, float, float) +void __fastcall SetDest__8RPFollowFRC7Point2Dffff(struct RPFollow* this, const void* edx, struct Point2D* param_1, float param_2, float param_3, float param_4, float param_5); +// win1.41 00864990 mac 100a95a0 RPFollow::MoveAlongRoute(void) +void __fastcall MoveAlongRoute__8RPFollowFv(struct RPFollow* this); +// win1.41 00864ba0 mac 100a92c0 RPFollow::FillPosAndHeading(Point2D &, float &, float) +void __fastcall FillPosAndHeading__8RPFollowFR7Point2DRff(struct RPFollow* this, const void* edx, struct Point2D* param_1, float* param_2, float param_3); + +#endif /* BW1_DECOMP_RP_FOLLOW_INCLUDED_H */ diff --git a/libs/lhall/released/headers/RPHolder.h b/libs/lhall/released/headers/RPHolder.h new file mode 100644 index 0000000..c42c2b0 --- /dev/null +++ b/libs/lhall/released/headers/RPHolder.h @@ -0,0 +1,46 @@ +#ifndef BW1_DECOMP_RP_HOLDER_INCLUDED_H +#define BW1_DECOMP_RP_HOLDER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For struct vec2u16 */ + +#include "RPAvoid.h" /* For struct RPAvoid */ + +// Forward Declares + +struct Point2D; +struct RPFollow; + +struct RPHolder +{ + struct RPAvoid avoid_array[0x4000]; /* 0x0 */ + int avoid_count; /* 0x50000 */ + struct Point2D* field_0x50004; + struct Point2D* field_0x50008; + uint32_t field_0x5000c[0x4]; + uint8_t field_0x5001c; + float field_0x50020; + struct RPFollow* field_0x50024; + struct vec2u16 field_0x50028[0x1000]; + struct vec2u16 field_0x54028[0x4000]; + uint32_t field_0x64028; +}; +static_assert(sizeof(struct RPHolder) == 0x6402c, "Data type is of wrong size"); + +// Constructors + +// win1.41 0083b2e0 mac 1061b374 RPHolder::RPHolder(void) +struct RPHolder* __fastcall __ct__8RPHolderFv(struct RPHolder* this); + +// Non-virtual methods + +// win1.41 0083b330 mac 1061c58c RPHolder::Empty(void) +void __fastcall Empty__8RPHolderFv(struct RPHolder* this); +// win1.41 0083b860 mac 100ac020 RPHolder::GetSidePointOfStartObject(int, Point2D const &, Point2D &, int) +uint32_t __fastcall GetSidePointOfStartObject__8RPHolderFiRC7Point2DR7Point2Di(struct RPHolder* this, const void* edx, int param_1, struct Point2D* param_2, struct Point2D* param_3, int param_4); +// win1.41 0083bb60 mac 100ab580 RPHolder::GetFirstObject(Point2D const &, Point2D &, int, Point2D &, int &, float) +int __fastcall GetFirstObject__8RPHolderFRC7Point2DR7Point2DiR7Point2DRif(struct RPHolder* this, const void* edx, struct Point2D* param_1, struct Point2D* param_2, int param_3, struct Point2D* param_4, int* param_5, float param_6); + +#endif /* BW1_DECOMP_RP_HOLDER_INCLUDED_H */ diff --git a/libs/lhall/released/headers/RPlan.h b/libs/lhall/released/headers/RPlan.h new file mode 100644 index 0000000..383229e --- /dev/null +++ b/libs/lhall/released/headers/RPlan.h @@ -0,0 +1,64 @@ +#ifndef BW1_DECOMP_R_PLAN_INCLUDED_H +#define BW1_DECOMP_R_PLAN_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For struct Point2D */ + +// Forward Declares + +struct RPHolder; +struct Route; +struct VisitBlock; + +struct RPlan +{ + struct RPHolder* holder; /* 0x0 */ + float field_0x4; + int field_0x8; + int field_0xc; + int field_0x10; + int field_0x14; + int field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + struct Point2D field_0x24; + struct Point2D field_0x2c; + struct Point2D field_0x34; + float field_0x3c; + float field_0x40; + float field_0x44; + float field_0x48; + float field_0x4c; + uint32_t field_0x50; + uint32_t field_0x54; + struct VisitBlock* visit_blocks; + float field_0x5c; + struct Route* route_0x60; + uint32_t field_0x64; + struct Route* route_0x68; + struct Route* route_0x6c; + struct Route* route_0x70; +}; +static_assert(sizeof(struct RPlan) == 0x74, "Data type is of wrong size"); + +// Constructors + +// win1.41 0086e0d0 mac 100aefe0 RPlan::RPlan(void) +struct RPlan* __fastcall __ct__5RPlanFv(struct RPlan* this); + +// Non-virtual methods + +// win1.41 0086e100 mac 100aee30 RPlan::FreeRoutes(void) +void __fastcall FreeRoutes__5RPlanFv(struct RPlan* this); +// win1.41 0086e200 mac 100aed70 RPlan::SetStart(Point2D const &, float, RPHolder *, int, int, int) +void __fastcall SetStart__5RPlanFRC7Point2DfP8RPHolderiii(struct RPlan* this, const void* edx, struct Point2D* param_1, float param_2, struct RPHolder* holder, int param_4, int param_5, int param_6); +// win1.41 0086e250 mac 100ae750 RPlan::SetDest(Point2D const &, float, float, float, int, int, float, int) +void __fastcall SetDest__5RPlanFRC7Point2Dfffiifi(struct RPlan* this, const void* edx, const struct Point2D* param_1, float param_2, float param_3, float param_4, int param_5, int param_6, float param_7, int param_8); +// win1.41 0086e9a0 mac 1061b3ec RPlan::GameTurnUpdate(int) +void __fastcall GameTurnUpdate__5RPlanFi(struct RPlan* this, const void* edx, int param_2); +// win1.41 0086e0f0 mac 100aef60 RPlan::~RPlan(void) +void __fastcall __dt__5RPlanFv(struct RPlan* this); + +#endif /* BW1_DECOMP_R_PLAN_INCLUDED_H */ diff --git a/libs/lhall/released/headers/Route.h b/libs/lhall/released/headers/Route.h new file mode 100644 index 0000000..37a1468 --- /dev/null +++ b/libs/lhall/released/headers/Route.h @@ -0,0 +1,32 @@ +#ifndef BW1_DECOMP_ROUTE_INCLUDED_H +#define BW1_DECOMP_ROUTE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +// Forward Declares + +struct RouteNode; + +struct Route +{ + struct RouteNode* start; /* 0x0 */ + struct RouteNode* end; + struct Route* next; + uint32_t field_0xc; +}; +static_assert(sizeof(struct Route) == 0x10, "Data type is of wrong size"); + +// Constructors + +// win1.41 00869380 mac 100a8790 Route::Route(void) +struct Route* __fastcall __ct__5RouteFv(struct Route* this); +// win1.41 008693a0 mac 100a8690 Route::Route(Route *) +struct Route* __fastcall __ct__5RouteFP5Route(struct Route* this, const void* edx, struct Route* other); + +// Non-virtual methods + +// win1.41 00869430 mac 100a85f0 Route::~Route(void) +void __fastcall __dt__5RouteFv(struct Route* this); + +#endif /* BW1_DECOMP_ROUTE_INCLUDED_H */ diff --git a/libs/lhall/released/headers/RouteNode.h b/libs/lhall/released/headers/RouteNode.h new file mode 100644 index 0000000..d0a3c43 --- /dev/null +++ b/libs/lhall/released/headers/RouteNode.h @@ -0,0 +1,41 @@ +#ifndef BW1_DECOMP_ROUTE_NODE_INCLUDED_H +#define BW1_DECOMP_ROUTE_NODE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include /* For struct Point2D */ + +// Forward Declares + +struct RPAvoid; + +struct RouteNode +{ + struct Point2D start; /* 0x0 */ + struct Point2D end; + int field_0x10; + int field_0x14; + uint32_t field_0x18; + int field_0x1c; + float field_0x20; + struct RouteNode* next; + struct RouteNode* prev; +}; +static_assert(sizeof(struct RouteNode) == 0x2c, "Data type is of wrong size"); + +// Constructors + +// win1.41 00869100 mac 100a8ca0 RouteNode::RouteNode() +struct RouteNode* __fastcall __ct__9RouteNodeFP9RouteNode(struct RouteNode* this, const void* edx, struct RouteNode* param_1); +// win1.41 00869150 mac 100a8c10 RouteNode::RouteNode(RouteNode *, int, Point2D const &, Point2D const &, int, int) +struct RouteNode* __fastcall __ct__9RouteNodeFP9RouteNodeiRC7Point2DRC7Point2Dii(struct RouteNode* this, const void* edx, struct RouteNode* param_1, int param_2, struct Point2D* param_3, struct Point2D* param_4, int param_5, int param_6); + +// Non-virtual methods + +// win1.41 008691a0 mac 100a8ba0 RouteNode::GetLength(RPAvoid* ) +float __fastcall GetLength__9RouteNodeFP7RPAvoid(struct RouteNode* this, const void* edx, struct RPAvoid* target); +// win1.41 008691c0 mac 100a89f0 RouteNode::GetArcLength(RPAvoid* ) +float __fastcall GetArcLength__9RouteNodeFP7RPAvoid(struct RouteNode* this, const void* edx, struct RPAvoid* target); + +#endif /* BW1_DECOMP_ROUTE_NODE_INCLUDED_H */ diff --git a/libs/lhall/released/headers/VisitBlock.h b/libs/lhall/released/headers/VisitBlock.h new file mode 100644 index 0000000..558e02d --- /dev/null +++ b/libs/lhall/released/headers/VisitBlock.h @@ -0,0 +1,20 @@ +#ifndef BW1_DECOMP_VISIT_BLOCK_INCLUDED_H +#define BW1_DECOMP_VISIT_BLOCK_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uintptr_t */ + +struct VisitBlock +{ + uintptr_t field_0x0; + struct VisitBlock* next; +}; +static_assert(sizeof(struct VisitBlock) == 0x8, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 0086e1b0 mac 100ad730 VisitBlock::~VisitBlock +void __fastcall __dt__10VisitBlockFv(struct VisitBlock* this, const void* edx, bool param_2); + +#endif /* BW1_DECOMP_VISIT_BLOCK_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DAnim.h b/libs/lionhead/lh3dlib/development/LH3DAnim.h new file mode 100644 index 0000000..8b85657 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DAnim.h @@ -0,0 +1,223 @@ +#ifndef BW1_DECOMP_LH3D_ANIM_INCLUDED_H +#define BW1_DECOMP_LH3D_ANIM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint32_t, uint8_t */ + +#include "LHPoint.h" /* For struct LHPoint */ + +// Forward Declares + +struct AnimInfo; +struct LH3DMesh; +struct LHFile; +struct LHFilePath; +struct LHMatrix; + +enum AnimInfoType +{ + AnimInfoType_Minus = 0x0, + AnimInfoType_C = 0x1, + AnimInfoType_N = 0x2, + AnimInfoType_L = 0x6, + AnimInfoType_W = 0x9, + AnimInfoType_D = 0x10, + _AnimInfoType_COUNT = 0x11 +}; +static_assert(sizeof(enum AnimInfoType) == 0x4, "Data type is of wrong size"); + +static const char* AnimInfoType_strs[_AnimInfoType_COUNT] = { + "AnimInfoType_Minus", + "AnimInfoType_C", + "AnimInfoType_N", + "AnimInfoType_0x3", + "AnimInfoType_0x4", + "AnimInfoType_0x5", + "AnimInfoType_L", + "AnimInfoType_0x7", + "AnimInfoType_0x8", + "AnimInfoType_W", + "AnimInfoType_0xa", + "AnimInfoType_0xb", + "AnimInfoType_0xc", + "AnimInfoType_0xd", + "AnimInfoType_0xe", + "AnimInfoType_0xf", + "AnimInfoType_D", +}; + +struct ANM_Name +{ + char string[0x20]; /* 0x0 */ +}; +static_assert(sizeof(struct ANM_Name) == 0x20, "Data type is of wrong size"); + +struct CFrameData +{ + struct LHPoint points[0x16]; /* 0x0 */ +}; +static_assert(sizeof(struct CFrameData) == 0x108, "Data type is of wrong size"); + +struct CFrame +{ + struct CFrameData* field_0x0; + struct CFrameData* field_0x4; +}; +static_assert(sizeof(struct CFrame) == 0x8, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00860c30 mac 100dc860 CFrame::ReadBinary(LHFile *, long, long) +void __fastcall ReadBinary__6CFrameFP6LHFilell(struct CFrame* this, const void* edx, struct LHFile* file, long param_3, long param_4); + +struct CAnim +{ + uint32_t frame_offset; /* 0x0 */ + uint32_t field_0x4; + float field_0x8[0x5]; + uint32_t frame_count; /* 0x1c */ + uint32_t field_0x20; + int frame_field_0x0_count; + int frame_field_0x4_count; + int* frame_field_0x0_indices; + int* frame_field_0x4_indices; /* 0x30 */ + struct CFrame** frames; +}; +static_assert(sizeof(struct CAnim) == 0x38, "Data type is of wrong size"); + +// Constructors + +// win1.41 0085e480 mac 1061ff4c CAnim::CAnim(void) +struct CAnim* __fastcall __ct__5CAnimFv(struct CAnim* this); +// win1.41 0085e4c0 mac 1061bb54 CAnim::CAnim(CAnim *) +struct CAnim* __fastcall __ct__5CAnimFP5CAnim(struct CAnim* this, const void* edx, struct CAnim* param_2); +// win1.41 0085ef40 mac 1061e2fc CAnim::CAnim(CAnim *, CFrame *, CAnim *, CFrame *, float, CAnim *, CFrame *, float) +struct CAnim* __fastcall __ct__5CAnimFP5CAnimP6CFrameP5CAnimP6CFramefP5CAnimP6CFramef(struct CAnim* this, const void* edx, struct CAnim* param_2, struct CFrame* param_3, struct CAnim* param_4, struct CFrame* param_5, float param_6, struct CAnim* param_7, struct CFrame* param_8, float param_9); + +// Non-virtual methods + +// win1.41 0085e4a0 mac 1061b7c4 CAnim::~CAnim(void) +void __fastcall __dt__5CAnimFv(struct CAnim* this); +// win1.41 00861a00 mac 1061fa9c CAnim::AdjustForNewBasedOnStand(CAnim *, CAnim *) +void __fastcall AdjustForNewBasedOnStand__5CAnimFP5CAnimP5CAnim(struct CAnim* this, const void* edx, struct CAnim* param_2, struct CAnim* param_3); +// win1.41 00860860 mac 106200cc CAnim::ReadBinary(LHFile *) +void __fastcall ReadBinary__5CAnimFP6LHFile(struct CAnim* this, const void* edx, struct LHFile* file); + +struct LH3DAnimSet +{ + struct CAnim* anims[0xe8]; /* 0x0 */ + int loaded[0xe8]; /* 0x3a0 */ + int offset[0xe8]; /* 0x740 */ +}; +static_assert(sizeof(struct LH3DAnimSet) == 0xae0, "Data type is of wrong size"); + +// Constructors + +// win1.41 006170e0 mac 10109260 LH3DAnimSet::LH3DAnimSet(void) +struct LH3DAnimSet* __fastcall __ct__11LH3DAnimSetFv(struct LH3DAnimSet* this); + +// Non-virtual methods + +// win1.41 00619b80 mac 1001f930 LH3DAnimSet::ReadBinaryNew +uint32_t __fastcall ReadBinaryNew__11LH3DAnimSetFP6LHFileP8AnimInfoP8AnimInfo(struct LH3DAnimSet* this, const void* edx, struct LHFile* param_2, struct AnimInfo* param_3, struct AnimInfo* param_4); + +struct CatInfo +{ + int animation_count; /* 0x0 */ + struct ANM_Name animation_names[0x18]; + enum AnimInfoType animation_type[0x18]; /* 0x304 */ +}; +static_assert(sizeof(struct CatInfo) == 0x364, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 004c4970 mac 10230ed0 CatInfo::Read(std::_FILE *) +char __fastcall Read__7CatInfoFPQ23std5_FILE(struct CatInfo* this, const void* edx, struct LHFilePath* path); + +struct AnimInfo +{ + uint32_t spec_version; /* 0x0 */ + int category_count; + struct ANM_Name category_names[0x18]; + struct CatInfo categories[0x18]; /* 0x308 */ +}; +static_assert(sizeof(struct AnimInfo) == 0x5468, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 004c4ab0 mac 1001f930 AnimInfo::Read(char *) +uint32_t __fastcall Read__8AnimInfoFPc(struct AnimInfo* this, const void* edx, char* spec_filename); + +struct LH3DAnim +{ + struct ANM_Name name; /* 0x0 */ + int field_0x20; + uint8_t field_0x24; + uint8_t field_0x25; + uint8_t field_0x26; + uint8_t field_0x27; + float field_0x28; + uint8_t field_0x2c; + uint8_t field_0x2d; + uint8_t field_0x2e; + uint8_t field_0x2f; + uint8_t field_0x30; + uint8_t field_0x31; + uint8_t field_0x32; + uint8_t field_0x33; + uint8_t field_0x34; + uint8_t field_0x35; + uint8_t field_0x36; + uint8_t field_0x37; + int num_frames; + int field_0x3c; + uint8_t field_0x40; + uint8_t field_0x41; + uint8_t field_0x42; + uint8_t field_0x43; + uint8_t field_0x44; + uint8_t field_0x45; + uint8_t field_0x46; + uint8_t field_0x47; + uint32_t parents; + int** list_ptr_frames; + uint16_t field_0x50; + uint16_t pack_index_1; + uint32_t current_time_maybe; + uint32_t field_0x58; + uint32_t pack_index_2; +}; +static_assert(sizeof(struct LH3DAnim) == 0x60, "Data type is of wrong size"); + +// Static methods + +// win1.41 0083a1d0 mac 10129570 LH3DAnim::SetTransform(LH3DMatrix*, LH3DMesh*, LH3DMatrix*) +float __cdecl SetTransform__8LH3DAnimFP8LHMatrixP8LH3DMeshR8LHMatrix(struct LHMatrix* param_1, struct LH3DMesh* param_2, struct LHMatrix* param_3); +// win1.41 0083aa30 mac 1061eac4 LH3DAnim::CreatePack(void) +void __cdecl CreatePack__8LH3DAnimFv(void); + +// Non-virtual methods + +// win1.41 0083a6a0 mac 1001f930 LH3DAnim::GetListPtrFrames +int __fastcall GetListPtrFrames__8LH3DAnimFv(struct LH3DAnim* this); + +struct ANM_BaseHeader +{ + struct ANM_Name mAnimName; /* 0x0 */ + uint32_t mUnk_1; /* 0x20 */ + uint32_t mUnk_2; + uint32_t mUnk_3; + uint32_t mUnk_4; + uint32_t mUnk_5; /* 0x30 */ + uint32_t mUnk_6; + uint32_t mnFrames; + uint32_t mUnk_8; + uint32_t mpNextAni; /* 0x40 */ + uint32_t mUnk_10; + uint32_t mpParents; + uint32_t mpFrames; + uint32_t mUnk_13; /* 0x50 */ +}; +static_assert(sizeof(struct ANM_BaseHeader) == 0x54, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH3D_ANIM_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DAnimatedObject.h b/libs/lionhead/lh3dlib/development/LH3DAnimatedObject.h new file mode 100644 index 0000000..99b7834 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DAnimatedObject.h @@ -0,0 +1,31 @@ +#ifndef BW1_DECOMP_LH3D_ANIMATED_OBJECT_INCLUDED_H +#define BW1_DECOMP_LH3D_ANIMATED_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LH3DMeshedObject.h" /* For struct LH3DMeshedObject */ + +struct LH3DAnimatedObject +{ + struct LH3DMeshedObject super; /* 0x0 */ + uint32_t current_anim; /* 0x80 */ + uint32_t field_0x84; + uint32_t field_0x88; + uint32_t field_0x8c; + uint32_t field_0x90; + uint32_t field_0x94; + uint32_t field_0x98; + uint32_t field_0x9c; + uint32_t field_0xa0; +}; +static_assert(sizeof(struct LH3DAnimatedObject) == 0xa4, "Data type is of wrong size"); + +static struct LH3DObjectVftable* __vt__18LH3DAnimatedObject = (struct LH3DObjectVftable*)0x009a32a0; + +// Constructors + +// win1.41 inlined mac inlined LH3DAnimatedObject::LH3DAnimatedObject(void) +struct LH3DAnimatedObject* __fastcall __ct__18LH3DAnimatedObjectFv(struct LH3DAnimatedObject* this); + +#endif /* BW1_DECOMP_LH3D_ANIMATED_OBJECT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DBoundingBox.h b/libs/lionhead/lh3dlib/development/LH3DBoundingBox.h new file mode 100644 index 0000000..bfa248e --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DBoundingBox.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_LH3D_BOUNDING_BOX_INCLUDED_H +#define BW1_DECOMP_LH3D_BOUNDING_BOX_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LHPoint.h" /* For struct LHPoint */ + +struct LH3DBoundingBox +{ + uint32_t unknown; /* 0x0 */ + struct LHPoint centre; + struct LHPoint size; /* 0x10 */ + float diagonal_length; +}; +static_assert(sizeof(struct LH3DBoundingBox) == 0x20, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH3D_BOUNDING_BOX_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DCamera.h b/libs/lionhead/lh3dlib/development/LH3DCamera.h new file mode 100644 index 0000000..3dbe2ee --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DCamera.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_LH3D_CAMERA_INCLUDED_H +#define BW1_DECOMP_LH3D_CAMERA_INCLUDED_H + +#include /* For static_assert */ + +#include "LHPoint.h" /* For struct LHPoint */ + +struct LH3DCamera +{ + struct LHPoint pos; /* 0x0 */ + struct LHPoint foc; + float fov; /* 0x18 */ + struct LHPoint lookAtVector; +}; +static_assert(sizeof(struct LH3DCamera) == 0x28, "Data type is of wrong size"); + +// Static methods + +// win1.41 0045a7f0 mac inlined LH3DCamera::GetPos(void) +struct LHPoint* __stdcall GetPos__10LH3DCameraFv(void); + +#endif /* BW1_DECOMP_LH3D_CAMERA_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DCameraChecker.h b/libs/lionhead/lh3dlib/development/LH3DCameraChecker.h new file mode 100644 index 0000000..f75d4b2 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DCameraChecker.h @@ -0,0 +1,27 @@ +#ifndef BW1_DECOMP_LH3D_CAMERA_CHECKER_INCLUDED_H +#define BW1_DECOMP_LH3D_CAMERA_CHECKER_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include "LHPoint.h" /* For struct LHPoint */ + +struct LH3DCameraChecker +{ + struct LH3DCameraChecker* next; /* 0x0 */ + float max_dist; + struct LHPoint point; + float field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + bool y_only; /* 0x20 */ +}; +static_assert(sizeof(struct LH3DCameraChecker) == 0x24, "Data type is of wrong size"); + +// Static methods + +// win1.41 00821050 mac 100c4df0 LH3DCameraChecker::Create(float, LHPoint, float, long, bool) +void __cdecl Create__17LH3DCameraCheckerFf7LHPointflb(float max_distance, struct LHPoint point, float param_3, long param_4, bool y_only); + +#endif /* BW1_DECOMP_LH3D_CAMERA_CHECKER_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DCitadel.h b/libs/lionhead/lh3dlib/development/LH3DCitadel.h new file mode 100644 index 0000000..08adab1 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DCitadel.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_LH3D_CITADEL_INCLUDED_H +#define BW1_DECOMP_LH3D_CITADEL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "LH3DStaticMorphableObject.h" /* For struct LH3DStaticMorphableObject */ + +struct LH3DCitadel +{ + struct LH3DStaticMorphableObject super; /* 0x0 */ + uint8_t field_0x84[0x3c]; +}; +static_assert(sizeof(struct LH3DCitadel) == 0xc0, "Data type is of wrong size"); + +static struct LH3DObjectVftable* __vt__11LH3DCitadel = (struct LH3DObjectVftable*)0x009a2bfc; + +// Constructors + +// win1.41 007f9560 mac 100b45b0 LH3DCitadel::LH3DCitadel(void) +struct LH3DCitadel* __fastcall __ct__11LH3DCitadelFv(struct LH3DCitadel* this); + +#endif /* BW1_DECOMP_LH3D_CITADEL_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DColor.h b/libs/lionhead/lh3dlib/development/LH3DColor.h new file mode 100644 index 0000000..10ace4d --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DColor.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_LH3D_COLOR_INCLUDED_H +#define BW1_DECOMP_LH3D_COLOR_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +struct LH3DColor +{ + uint8_t b; /* 0x0 */ + uint8_t g; + uint8_t r; + uint8_t a; +}; +static_assert(sizeof(struct LH3DColor) == 0x4, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac 10083c40 LH3DColor::LH3DColor(uint) +void __fastcall __ct__9LH3DColorFUl(struct LH3DColor* this, const void* edx, uint32_t color); +// win1.41 inlined mac 100530b0 LH3DColor::LH3DColor(LH3DColor const &) +void __fastcall __ct__9LH3DColorFRC9LH3DColor(struct LH3DColor* this, const void* edx, const struct LH3DColor* other); + +// Non-virtual methods + +// win1.41 inlined mac 1047dc00 LH3DColor::operator=(LH3DColor const &) +void __fastcall __as__9LH3DColorFRC9LH3DColor(struct LH3DColor* this, const void* edx, const struct LH3DColor* other); + +#endif /* BW1_DECOMP_LH3D_COLOR_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DComplexObject.h b/libs/lionhead/lh3dlib/development/LH3DComplexObject.h new file mode 100644 index 0000000..4a2af89 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DComplexObject.h @@ -0,0 +1,48 @@ +#ifndef BW1_DECOMP_LH3D_COMPLEX_OBJECT_INCLUDED_H +#define BW1_DECOMP_LH3D_COMPLEX_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LH3DStaticObject.h" /* For struct LH3DStaticObject */ + +// Forward Declares + +struct LH3DObjectHair; +struct LHMatrix; + +struct LH3DComplexObject +{ + struct LH3DStaticObject super; /* 0x0 */ + struct LHMatrix* matrix_0x80; + uint32_t* field_0x84; + struct LH3DObjectHair* hair; + uint32_t field_0x8c; + uint32_t field_0x90; + uint32_t field_0x94; + uint32_t field_0x98; + uint32_t field_0x9c; + uint32_t field_0xa0; + uint32_t field_0xa4; + uint32_t field_0xa8; + uint32_t field_0xac; + struct LH3DComplexObject* next; /* 0xb0 */ + uint32_t field_0xb4; + uint32_t field_0xb8; + uint32_t field_0xbc; +}; +static_assert(sizeof(struct LH3DComplexObject) == 0xc0, "Data type is of wrong size"); + +static struct LH3DObjectVftable* __vt__17LH3DComplexObject = (struct LH3DObjectVftable*)0x009a3068; + +// Constructors + +// win1.41 inlined mac inlined LH3DComplexObject::LH3DComplexObject(void) +struct LH3DComplexObject* __fastcall __ct__17LH3DComplexObjectFv(struct LH3DComplexObject* this); + +// Non-virtual methods + +// win1.41 0080c020 mac 10081d10 LH3DComplexObject::CreateDynamicShadow +void __fastcall CreateDynamicShadow__17LH3DComplexObjectFv(struct LH3DComplexObject* this); + +#endif /* BW1_DECOMP_LH3D_COMPLEX_OBJECT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DHair.h b/libs/lionhead/lh3dlib/development/LH3DHair.h new file mode 100644 index 0000000..98bcab5 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DHair.h @@ -0,0 +1,52 @@ +#ifndef BW1_DECOMP_LH3D_HAIR_INCLUDED_H +#define BW1_DECOMP_LH3D_HAIR_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LH3DMeshIntersect.h" /* For struct MeshIntersect */ +#include "LHPoint.h" /* For struct LHPoint */ + +// Forward Declares + +struct HairGroup; +struct LHFile; + +struct LH3DHair__field_0x34 +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; +}; +static_assert(sizeof(struct LH3DHair__field_0x34) == 0x24, "Data type is of wrong size"); + +struct LH3DHair +{ + struct LHPoint field_0x0[0x3]; + uint32_t field_0x24; + uint32_t field_0x28; + uint32_t field_0x2c; + uint32_t field_0x30; + struct LH3DHair__field_0x34* field_0x34; + struct MeshIntersect intersect; + struct HairGroup* hair_group; /* 0x60 */ +}; +static_assert(sizeof(struct LH3DHair) == 0x64, "Data type is of wrong size"); + +// Constructors + +// win1.41 00846680 mac inlined LH3DHair::LH3DHair(void) +struct LH3DHair* __fastcall __ct__LH3DHairFv(struct LH3DHair* this); + +// Non-virtual methods + +// win1.41 00847890 mac 100415b0 LH3DHair::ReadBinary(LHFile *, long, long, HairGroup *) +void __fastcall ReadBinary__8LH3DHairFP6LHFilellP9HairGroup(struct LH3DHair* this, const void* edx, struct LHFile* param_2, uint32_t param_3, uint32_t param_4, struct HairGroup* param_5); + +#endif /* BW1_DECOMP_LH3D_HAIR_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DIsland.h b/libs/lionhead/lh3dlib/development/LH3DIsland.h new file mode 100644 index 0000000..972d8d2 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DIsland.h @@ -0,0 +1,72 @@ +#ifndef BW1_DECOMP_LH3D_ISLAND_INCLUDED_H +#define BW1_DECOMP_LH3D_ISLAND_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct LH3DColor; +struct LH3DMapCoords; +struct LH3DMaterial; +struct LH3DTexture; + +struct LandCell +{ + uint8_t r; /* 0x0 */ + uint8_t g; + uint8_t b; + uint8_t luminosity; + uint8_t altitude; + uint8_t saveColor; + uint8_t properties; + uint8_t flags; +}; +static_assert(sizeof(struct LandCell) == 0x8, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 inlined mac 1000cd10 LandCell::IsWater(void) +bool __fastcall IsWater__8LandCellFv(struct LandCell* this); + +struct LandBlock +{ + struct LandCell cells[0x11][0x11]; /* 0x0 */ + int field_0x908; + float field_0x90c; + float field_0x910; + uint32_t field_0x914; + uint32_t field_0x918; + uint8_t field_0x91c[0x28]; + struct LH3DTexture* field_0x944; + struct LH3DMaterial* field_0x948; + uint32_t field_0x94c; + uint32_t field_0x950; + uint32_t field_0x954; + uint8_t field_0x958[0x68]; + uint32_t field_0x9c0; + float field_0x9c4; + float field_0x9c8; + int field_0x9cc; + int field_0x9d0; + uint32_t field_0x9d4; +}; +static_assert(sizeof(struct LandBlock) == 0x9d8, "Data type is of wrong size"); + +// win1.41 00803c00 mac 10046910 LH3DIsland::Create(void) +uint32_t __cdecl Create__10LH3DIslandFv(void); +// win1.41 00516aa0 mac 100484b0 LH3DIsland::GetCell(long, long) +struct LandCell* __cdecl GetCell__10LH3DIslandFll(int x, int z); +// win1.41 0060d3a0 mac inlined LH3DIsland::IsWater(long, long) +bool __cdecl IsWater__10LH3DIslandFll(int x, int y); +// win1.41 00803090 mac 10048554 LH3DIsland::GetAltitude(LH3DMapCoords const &) +float __fastcall GetAltitude__10LH3DIslandFRC13LH3DMapCoords(const struct LH3DMapCoords* this); +// win1.41 00803340 mac 10048110 LH3DIsland::GetAltitudeAndSetColorSpecular(LH3DMapCoords const &, ulong *, ulong *) +float __fastcall GetAltitudeAndSetColorSpecular__10LH3DIslandFRC13LH3DMapCoordsPUlPUl(const struct LH3DMapCoords* this, struct LH3DColor* param_2, struct LH3DColor* param_3); +// win1.41 00804790 mac 1061cc34 LH3DIsland::Release(void) +bool __stdcall Release__10LH3DIslandFv(void); +// win1.41 007ff2d0 mac 10022e10 LH3DIsland::PreDraw(void) +void __cdecl PreDraw__10LH3DIslandFv(void); + +#endif /* BW1_DECOMP_LH3D_ISLAND_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DLandscape.h b/libs/lionhead/lh3dlib/development/LH3DLandscape.h new file mode 100644 index 0000000..c7c38fc --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DLandscape.h @@ -0,0 +1,7 @@ +#ifndef BW1_DECOMP_LH3D_LANDSCAPE_INCLUDED_H +#define BW1_DECOMP_LH3D_LANDSCAPE_INCLUDED_H + +// win1.41 00871220 mac 1061cc1c LH3DLandscape::Release(void) +void __stdcall Release__13LH3DLandscapeFv(void); + +#endif /* BW1_DECOMP_LH3D_LANDSCAPE_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DMapCoords.h b/libs/lionhead/lh3dlib/development/LH3DMapCoords.h new file mode 100644 index 0000000..211da6b --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DMapCoords.h @@ -0,0 +1,60 @@ +#ifndef BW1_DECOMP_LH3D_MAP_COORDS_INCLUDED_H +#define BW1_DECOMP_LH3D_MAP_COORDS_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint16_t, uint32_t */ + +struct LH3DMapCoordsSplit +{ + uint16_t cell; /* 0x0 */ + uint16_t map; +}; +static_assert(sizeof(struct LH3DMapCoordsSplit) == 0x4, "Data type is of wrong size"); + +union LH3DMapCoordsFull +{ + int32_t full; + struct LH3DMapCoordsSplit split; +}; +static_assert(sizeof(union LH3DMapCoordsFull) == 0x4, "Data type is of wrong size"); + +struct LH3DMapCoords +{ + union LH3DMapCoordsFull x; /* 0x0 */ + union LH3DMapCoordsFull z; + float altitude; +}; +static_assert(sizeof(struct LH3DMapCoords) == 0xc, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 inlined mac 1006a8c0 LH3DMapCoords::AddToMapX(void) const +void __fastcall AddToMapX__13LH3DMapCoordsFs(struct LH3DMapCoords* this, const void* edx, uint16_t x); +// win1.41 inlined mac 1006a880 LH3DMapCoords::AddToMapZ(void) const +void __fastcall AddToMapZ__13LH3DMapCoordsFs(struct LH3DMapCoords* this, const void* edx, uint16_t z); +// win1.41 inlined mac inlined LH3DMapCoords::CentreOnMap(void) +void __fastcall CentreOnMap__13LH3DMapCoordsFv(struct LH3DMapCoords* this); +// win1.41 inlined mac inlined LH3DMapCoords::SetFractionX(short) +void __fastcall SetCellX__13LH3DMapCoordsFs(struct LH3DMapCoords* this, const void* edx, uint16_t x); +// win1.41 inlined mac inlined LH3DMapCoords::SetFractionZ(short) +void __fastcall SetCellZ__13LH3DMapCoordsFs(struct LH3DMapCoords* this, const void* edx, uint16_t z); +// win1.41 inlined mac 10049a90 LH3DMapCoords::MapX(void) const +uint16_t __fastcall MapX__13LH3DMapCoordsCFv(const struct LH3DMapCoords* this); +// win1.41 inlined mac 100456f0 LH3DMapCoords::MapZ(void) const +uint16_t __fastcall MapZ__13LH3DMapCoordsCFv(const struct LH3DMapCoords* this); +// win1.41 inlined mac 100456f0 LH3DMapCoords::WholeX(void) const +uint32_t __fastcall WholeX__13LH3DMapCoordsCFv(const struct LH3DMapCoords* this); +// win1.41 inlined mac 10045a60 LH3DMapCoords::WholeZ(void) const +uint32_t __fastcall WholeZ__13LH3DMapCoordsCFv(const struct LH3DMapCoords* this); +// win1.41 inlined mac inlined LH3DMapCoords::SetMapX(short) const +void __fastcall SetMapX__13LH3DMapCoordsCFs(struct LH3DMapCoords* this, const void* edx, uint16_t x); +// win1.41 inlined mac inlined LH3DMapCoords::SetMapZ(short) const +void __fastcall SetMapZ__13LH3DMapCoordsCFs(struct LH3DMapCoords* this, const void* edx, uint16_t z); +// win1.41 inlined mac 1004ae60 LH3DMapCoords::SetWholeX(int) +void __fastcall SetWholeX__13LH3DMapCoordsFl(struct LH3DMapCoords* this, const void* edx, int x); +// win1.41 inlined mac 1004aea0 LH3DMapCoords::SetWholeZ(int) +void __fastcall SetWholeZ__13LH3DMapCoordsFl(struct LH3DMapCoords* this, const void* edx, int z); +// win1.41 inlined mac 1004aee0 LH3DMapCoords::SetAltitude(float) +void __fastcall SetAltitude__13LH3DMapCoordsFf(struct LH3DMapCoords* this, const void* edx, float altitude); + +#endif /* BW1_DECOMP_LH3D_MAP_COORDS_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DMaterial.h b/libs/lionhead/lh3dlib/development/LH3DMaterial.h new file mode 100644 index 0000000..ee70779 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DMaterial.h @@ -0,0 +1,70 @@ +#ifndef BW1_DECOMP_LH3D_MATERIAL_INCLUDED_H +#define BW1_DECOMP_LH3D_MATERIAL_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint8_t */ + +#include "LH3DColor.h" /* For struct LH3DColor */ + +// Forward Declares + +struct LH3DTexture; + +enum LH3DMaterial__RenderMode +{ + RENDER_MODE_0x2 = 0x2, + RENDER_MODE_0x3 = 0x3, + RENDER_MODE_0x4 = 0x4, + RENDER_MODE_0x5 = 0x5, + RENDER_MODE_0x6 = 0x6, + RENDER_MODE_0x8 = 0x8, + RENDER_MODE_0x9 = 0x9, + RENDER_MODE_0xc = 0xc, + RENDER_MODE_0xd = 0xd, + RENDER_MODE_0x10 = 0x10, + _LH3DMaterial__RenderMode_COUNT = 0x11 +}; +static_assert(sizeof(enum LH3DMaterial__RenderMode) == 0x4, "Data type is of wrong size"); + +static const char* LH3DMaterial__RenderMode_strs[_LH3DMaterial__RenderMode_COUNT] = { + "LH3DMaterial__RenderMode_0x0", + "LH3DMaterial__RenderMode_0x1", + "RENDER_MODE_0x2", + "RENDER_MODE_0x3", + "RENDER_MODE_0x4", + "RENDER_MODE_0x5", + "RENDER_MODE_0x6", + "LH3DMaterial__RenderMode_0x7", + "RENDER_MODE_0x8", + "RENDER_MODE_0x9", + "LH3DMaterial__RenderMode_0xa", + "LH3DMaterial__RenderMode_0xb", + "RENDER_MODE_0xc", + "RENDER_MODE_0xd", + "LH3DMaterial__RenderMode_0xe", + "LH3DMaterial__RenderMode_0xf", + "RENDER_MODE_0x10", +}; + +struct MaterialProperties +{ + bool field_0x0; + bool field_0x1; + bool cull; + bool field_0x3; + bool field_0x4; +}; +static_assert(sizeof(struct MaterialProperties) == 0x5, "Data type is of wrong size"); + +struct LH3DMaterial +{ + enum LH3DMaterial__RenderMode render_mode; /* 0x0 */ + uint8_t field_0x4; + uint8_t cull_mode; + struct LH3DTexture* texture; + struct LH3DColor color; +}; +static_assert(sizeof(struct LH3DMaterial) == 0x10, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH3D_MATERIAL_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DMem.h b/libs/lionhead/lh3dlib/development/LH3DMem.h new file mode 100644 index 0000000..bc8de5b --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DMem.h @@ -0,0 +1,11 @@ +#ifndef BW1_DECOMP_LH3D_MEM_INCLUDED_H +#define BW1_DECOMP_LH3D_MEM_INCLUDED_H + +#include /* For size_t */ + +// win1.41 00842ce0 mac 10139fb0 LH3DMem::Alloc(long) +void* __cdecl Alloc__7LH3DMemFl(size_t size); +// win1.41 00842d60 mac 100c8720 LH3DMem::Free(void) +void __cdecl Free__7LH3DMemFPv(void* mem); + +#endif /* BW1_DECOMP_LH3D_MEM_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DMesh.h b/libs/lionhead/lh3dlib/development/LH3DMesh.h new file mode 100644 index 0000000..9511edf --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DMesh.h @@ -0,0 +1,69 @@ +#ifndef BW1_DECOMP_LH3D_MESH_INCLUDED_H +#define BW1_DECOMP_LH3D_MESH_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include "LH3DBoundingBox.h" /* For struct LH3DBoundingBox */ + +// Forward Declares + +struct LH3DSubMesh; +struct LH3DTexture; +struct LHPoint; + +enum LH3D_MESH_FLAGS +{ + LH3D_MESH_FLAGS_HAS_BONES = 0x100, + LH3D_MESH_FLAGS_HAS_DOOR_POSITION = 0x800, + LH3D_MESH_FLAGS_UNKNOWN_15 = 0x4000 +}; +static_assert(sizeof(enum LH3D_MESH_FLAGS) == 0x4, "Data type is of wrong size"); + +struct FootprintData +{ + uint8_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; +}; +static_assert(sizeof(struct FootprintData) == 0xc, "Data type is of wrong size"); + +struct LH3DMesh +{ + char magic[0x4]; /* 0x0 */ + uint32_t flags; + uint32_t size; + uint32_t submesh_count; + struct LH3DSubMesh** submeshes; /* 0x10 */ + struct LH3DBoundingBox bounding_box; + uint32_t another_offset; /* 0x34 */ + uint32_t skin_count; + struct LH3DTexture* skins; + int extra_data_count; /* 0x40 */ + struct LHPoint* extra_pos; + struct FootprintData* footprint_data; +}; +static_assert(sizeof(struct LH3DMesh) == 0x4c, "Data type is of wrong size"); + +// Static methods + +// win1.41 inlined mac 103d9410 LH3DMesh::GetPackedMesh(long) +struct LH3DMesh* __cdecl GetPackedMesh__8LH3DMeshFl(int index); +// win1.41 00806460 mac 1006c720 LH3DMesh::Create(void* , int) +struct LH3DMesh* __cdecl Create__8LH3DMeshFPvi(const void* buf, bool dont_care_about_texture); +// win1.41 008067f0 mac 1006c640 LH3DMesh::CreateFromHD(char *, int) +struct LH3DMesh* __cdecl CreateFromHD__8LH3DMeshFPci(const char* filename, bool dont_care_about_textures); +// win1.41 00807be0 mac 1006b210 LH3DMesh::CreatePackInternal(void*) +void __stdcall CreatePackInternal__8LH3DMeshFPv(const void* data); +// win1.41 00807c60 mac 1006b160 LH3DMesh::CreatePack(void) +void __stdcall CreatePack__8LH3DMeshFv(void); + +// Non-virtual methods + +// win1.41 00806d00 mac 1001165c LH3DMesh::Release(void) +void __fastcall Release__8LH3DMeshFv(struct LH3DMesh* this); +// win1.41 008081b0 mac 1006aad0 LH3DMesh::ComputeBoundingBox(void) +void __fastcall ComputeBoundingBox__8LH3DMeshFv(struct LH3DMesh* this); + +#endif /* BW1_DECOMP_LH3D_MESH_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DMeshIntersect.h b/libs/lionhead/lh3dlib/development/LH3DMeshIntersect.h new file mode 100644 index 0000000..b7d024f --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DMeshIntersect.h @@ -0,0 +1,31 @@ +#ifndef BW1_DECOMP_LH3D_MESH_INTERSECT_INCLUDED_H +#define BW1_DECOMP_LH3D_MESH_INTERSECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +// Forward Declares + +struct LHFile; + +struct MeshIntersect +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; +}; +static_assert(sizeof(struct MeshIntersect) == 0x28, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00867c20 mac 1061c70c MeshIntersect::ReadBinary(LHFile *) +void __fastcall ReadBinary__13MeshIntersectFP6LHFile(struct MeshIntersect* this, const void* edx, struct LHFile* file); + +#endif /* BW1_DECOMP_LH3D_MESH_INTERSECT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DMeshedObject.h b/libs/lionhead/lh3dlib/development/LH3DMeshedObject.h new file mode 100644 index 0000000..251030d --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DMeshedObject.h @@ -0,0 +1,35 @@ +#ifndef BW1_DECOMP_LH3D_MESHED_OBJECT_INCLUDED_H +#define BW1_DECOMP_LH3D_MESHED_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +#include "LH3DObject.h" /* For struct LH3DObject */ + +// Forward Declares + +struct LH3DMesh; +struct LHPoint; + +struct LH3DMeshedObject +{ + struct LH3DObject super; /* 0x0 */ + struct LH3DMesh* mesh; /* 0x7c */ +}; +static_assert(sizeof(struct LH3DMeshedObject) == 0x80, "Data type is of wrong size"); + +static struct LH3DObjectVftable* __vt__16LH3DMeshedObject = (struct LH3DObjectVftable*)0x009a2748; + +// Static methods + +// win1.41 007f9d60 mac 10029180 LH3DMeshedObject::SetDrawWithGlobalAlpha(int) (this is fastcall, not thiscall) +void __fastcall SetDrawWithGlobalAlpha__16LH3DMeshedObjectFi(struct LH3DMeshedObject* this, int value); +// win1.41 007f9fb0 mac 1000bf70 LH3DMeshedObject::GetDoorPos(LHPoint *) const (this is fastcall, not thiscall) +bool __fastcall GetDoorPos__16LH3DMeshedObjectCFP7LHPoint(struct LH3DMeshedObject* this, struct LHPoint* out_point); + +// Constructors + +// win1.41 008164b0 mac 10076460 LH3DMeshedObject::LH3DMeshedObject(void) +struct LH3DMeshedObject* __fastcall __ct__16LH3DMeshedObjectFv(struct LH3DMeshedObject* this); + +#endif /* BW1_DECOMP_LH3D_MESHED_OBJECT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DMist.h b/libs/lionhead/lh3dlib/development/LH3DMist.h new file mode 100644 index 0000000..4a3dd81 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DMist.h @@ -0,0 +1,29 @@ +#ifndef BW1_DECOMP_LH3D_MIST_INCLUDED_H +#define BW1_DECOMP_LH3D_MIST_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LH3DStaticObject.h" /* For struct LH3DStaticObject */ + +struct LH3DMist +{ + struct LH3DStaticObject super; /* 0x0 */ + uint32_t field_0x80; + uint32_t field_0x84; + float field_0x88; + float field_0x8c; + uint32_t field_0x90; + struct LH3DMist* next; + uint32_t field_0x98; +}; +static_assert(sizeof(struct LH3DMist) == 0x9c, "Data type is of wrong size"); + +static struct LH3DObjectVftable* __vt__8LH3DMist = (struct LH3DObjectVftable*)0x009a22e8; + +// Constructors + +// win1.41 007f9560 mac 100b45b0 LH3DMist::LH3DMist(void) +struct LH3DMist* __fastcall __ct__8LH3DMistFv(struct LH3DMist* this); + +#endif /* BW1_DECOMP_LH3D_MIST_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DObject.h b/libs/lionhead/lh3dlib/development/LH3DObject.h new file mode 100644 index 0000000..f940458 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DObject.h @@ -0,0 +1,227 @@ +#ifndef BW1_DECOMP_LH3D_OBJECT_INCLUDED_H +#define BW1_DECOMP_LH3D_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t, uintptr_t */ + +#include "LH3DColor.h" /* For struct LH3DColor */ +#include "LHMatrix.h" /* For struct LHMatrix */ + +// Forward Declares + +struct LH3DMesh; +struct LH3DObject; +struct LHPoint; + +enum LH3DObject__ObjectType +{ + LH3DObject__ObjectType_STATIC = 0x0, + LH3DObject__ObjectType_MORPHABLE = 0x1, + LH3DObject__ObjectType_ANIMATED = 0x2, + LH3DObject__ObjectType_COMPLEX = 0x3, + LH3DObject__ObjectType_SMOKE = 0x4, + LH3DObject__ObjectType_FIRE_00 = 0x5, + LH3DObject__ObjectType_FIRE_35 = 0x6, + LH3DObject__ObjectType_MIST = 0x7, + LH3DObject__ObjectType_CITADEL = 0x8, + _LH3DObject__ObjectType_COUNT = 0x9 +}; +static_assert(sizeof(enum LH3DObject__ObjectType) == 0x4, "Data type is of wrong size"); + +static const char* LH3DObject__ObjectType_strs[_LH3DObject__ObjectType_COUNT] = { + "LH3DObject__ObjectType_STATIC", + "LH3DObject__ObjectType_MORPHABLE", + "LH3DObject__ObjectType_ANIMATED", + "LH3DObject__ObjectType_COMPLEX", + "LH3DObject__ObjectType_SMOKE", + "LH3DObject__ObjectType_FIRE_00", + "LH3DObject__ObjectType_FIRE_35", + "LH3DObject__ObjectType_MIST", + "LH3DObject__ObjectType_CITADEL", +}; + +struct LH3DObjectVftable +{ + uintptr_t IsPreSetup; /* 0x0 */ + uintptr_t __dt; + uintptr_t GetU; + uintptr_t GetV; + uintptr_t SetPaper; /* 0x10 */ + uintptr_t IsPaper; + uintptr_t SetNoSnow; + uintptr_t IsNoSnow; + uintptr_t SetPosition__10LH3DObjectFRC7LHPointff; /* 0x20 */ + uintptr_t SetPosition__10LH3DObjectFfff; + uintptr_t SetLinkedPosition; + uintptr_t SetColorSpecular; + uintptr_t SetWindowColor; /* 0x30 */ + uintptr_t SetSnowlevel__10LH3DObjectFR7LHPoint; + uintptr_t SetSnowlevel__10LH3DObjectFi; + bool (__fastcall* IsUseAlpha)(struct LH3DObject* this); + void (__fastcall* SetNeedSorting)(struct LH3DObject* this, bool value); /* 0x40 */ + uintptr_t IsNeedSorting; + uintptr_t SetDrawWithGlobalAlpha; + uintptr_t IsDrawWithGlobalAlpha; + uintptr_t field_0x50; + uintptr_t field_0x54; + void (__fastcall* SetDynamicLighting)(struct LH3DObject* param_0, bool param_1); + uintptr_t IsDynamicLighting; + uintptr_t field_0x60; + uintptr_t field_0x64; + uintptr_t field_0x68; + uintptr_t field_0x6c; + uintptr_t SetEnumFlag; /* 0x70 */ + uintptr_t GetEnumFlag; + void (__fastcall* SetCastDynamicShadow)(struct LH3DObject* param_0, bool param_1); + uintptr_t IsCastDynamicShadow; + void (__fastcall* SetShadowOnTexture)(struct LH3DObject* param_0, bool param_1); /* 0x80 */ + uintptr_t IsShadowOnTexture; + void (__fastcall* SetFootPrintOnTexture)(struct LH3DObject* param_0, bool param_1); + uintptr_t IsFootPrintOnTexture; + uintptr_t SetShadowOnTextureChroma; /* 0x90 */ + uintptr_t IsShadowOnTextureChroma; + void (__fastcall* SetDisappear)(struct LH3DObject* param_0, bool param_1); + uintptr_t IsDisappear; + uintptr_t field_0xa0; + uintptr_t field_0xa4; + uintptr_t field_0xa8; + uintptr_t field_0xac; + uintptr_t field_0xb0; + uintptr_t field_0xb4; + uintptr_t field_0xb8; + uintptr_t field_0xbc; + uintptr_t field_0xc0; + uintptr_t field_0xc4; + uintptr_t field_0xc8; + uintptr_t field_0xcc; + uintptr_t field_0xd0; + uintptr_t field_0xd4; + uintptr_t field_0xd8; + uintptr_t SetFastBlending; + uintptr_t field_0xe0; + uintptr_t field_0xe4; + uintptr_t field_0xe8; + uintptr_t field_0xec; + uintptr_t field_0xf0; + uint32_t (__fastcall* SetMesh)(struct LH3DObject* param_0, struct LH3DMesh* param_1, struct LH3DMesh* param_2, struct LH3DMesh* param_3); + struct LH3DMesh* (__fastcall* GetMesh)(struct LH3DObject* this); + uintptr_t DrawDebugInfo; + uintptr_t AddDrawing; /* 0x100 */ + uintptr_t DrawWithClipping; + uintptr_t DrawTnL; + uintptr_t field_0x10c; + uintptr_t field_0x110; + uintptr_t field_0x114; + uintptr_t field_0x118; + uintptr_t field_0x11c; + uintptr_t field_0x120; + uintptr_t field_0x124; + uintptr_t field_0x128; + uintptr_t field_0x12c; + uintptr_t field_0x130; + uintptr_t field_0x134; + uintptr_t field_0x138; + uintptr_t field_0x13c; + uintptr_t field_0x140; + uintptr_t field_0x144; + uintptr_t field_0x148; + uintptr_t field_0x14c; + uintptr_t field_0x150; + uintptr_t field_0x154; + uintptr_t field_0x158; + uintptr_t field_0x15c; + uintptr_t field_0x160; + uintptr_t field_0x164; + uintptr_t field_0x168; + uintptr_t field_0x16c; + uintptr_t field_0x170; + uintptr_t field_0x174; + uintptr_t field_0x178; + uintptr_t field_0x17c; + uintptr_t field_0x180; + int (__fastcall* GetCurrentAnim)(struct LH3DObject* this); + uintptr_t field_0x188; + uintptr_t field_0x18c; + uintptr_t field_0x190; + uintptr_t field_0x194; + uintptr_t field_0x198; + uintptr_t field_0x19c; + uintptr_t field_0x1a0; + uintptr_t field_0x1a4; + uintptr_t field_0x1a8; + bool (__fastcall* IsAnimated)(const struct LH3DObject* this); + uintptr_t field_0x1b0; + uintptr_t field_0x1b4; + uintptr_t field_0x1b8; + uintptr_t ContainsThisBoundingBox; + bool (__fastcall* GetChimneyPos)(const struct LH3DObject* this, struct LHPoint* point); /* 0x1c0 */ + bool (__fastcall* GetDoorPos)(const struct LH3DObject* this, struct LHPoint* point); + uintptr_t GetExtraPos__10LH3DObjectFlP8LHMatrix; + bool (__fastcall* GetExtraPos__10LH3DObjectCFlP7LHPoint)(const struct LH3DObject* this, int param_2, struct LHPoint* point); + uintptr_t SetLod; /* 0x1d0 */ + uintptr_t GetLod; + uintptr_t SetStatus; + uintptr_t GetStatus; + uintptr_t CheckTriangleCollide; /* 0x1e0 */ + uintptr_t CheckPixelCollide; + void (__fastcall* UpdateMelting)(struct LH3DObject* this); + uintptr_t MeltBorder; + uintptr_t IsMorphWithLand; /* 0x1f0 */ + bool (__fastcall* IsStaticMorphable)(const struct LH3DObject* this); + uintptr_t IsTemple; + uintptr_t IsChangedSize; + uintptr_t SetTempleLife; /* 0x200 */ + uintptr_t GetTempleEntrance; + uintptr_t ProcessAlignement; + uintptr_t SetStage; + uintptr_t GetStage__10LH3DObjectFv; /* 0x210 */ + uintptr_t GetStage__10LH3DObjectFf; + uintptr_t SetNasty; + uintptr_t GetNasty; + uintptr_t InitTemple; /* 0x220 */ + uintptr_t GetNewEP; + uintptr_t HowManyNewEp; +}; +static_assert(sizeof(struct LH3DObjectVftable) == 0x22c, "Data type is of wrong size"); + +struct LH3DObject +{ + struct LH3DObjectVftable* vftable; /* 0x0 */ + uint32_t flags_1; + uint32_t flags_2; + uint32_t field_0xc; + float importance; /* 0x10 */ + struct LHMatrix matrix; + float scale; /* 0x44 */ + float y_angle; + struct LH3DColor color; + struct LH3DColor specular; /* 0x50 */ + struct LH3DColor window_color; + int snow_level; + int field_0x5c; + uint32_t field_0x60; + uint32_t field_0x64; + float u; + float v; + struct LH3DObject* next; /* 0x70 */ + uint32_t field_0x74; + uint8_t field_0x78; +}; +static_assert(sizeof(struct LH3DObject) == 0x7c, "Data type is of wrong size"); + +static struct LH3DObjectVftable* __vt__10LH3DObject = (struct LH3DObjectVftable*)0x009a251c; + +// Static methods + +// win1.41 00423140 mac 10041480 LH3DObject::SetPosition(const LHPoint&, float, float) +void __fastcall SetPosition__10LH3DObjectFRC7LHPointff(struct LH3DObject* this, struct LHPoint* point, float y_angle, float scale); +// win1.41 0080b4d0 mac 10620204 LH3DObject::Create(LH3DObject::ObjectType) +struct LH3DObject* __fastcall Create__10LH3DObjectFQ210LH3DObject10ObjectType(enum LH3DObject__ObjectType object_type); + +// Constructors + +// win1.41 inlined mac inlined LH3DObject::LH3DObject(void) +struct LH3DObject* __fastcall __ct__10LH3DObjectFv(struct LH3DObject* this); + +#endif /* BW1_DECOMP_LH3D_OBJECT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DObjectHair.h b/libs/lionhead/lh3dlib/development/LH3DObjectHair.h new file mode 100644 index 0000000..23c401d --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DObjectHair.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_LH3D_OBJECT_HAIR_INCLUDED_H +#define BW1_DECOMP_LH3D_OBJECT_HAIR_INCLUDED_H + +#include /* For static_assert */ + +// Forward Declares + +struct HairGroup; + +struct LH3DObjectHair +{ + long hair_count; /* 0x0 */ + struct HairGroup** hairs; +}; +static_assert(sizeof(struct LH3DObjectHair) == 0x8, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00848340 mac 10137b70 LH3DObjectHair::Init(long, HairGroup **) +void __fastcall Init__14LH3DObjectHairFlPP9HairGroup(struct LH3DObjectHair* this, const void* edx, long param_2, struct HairGroup** param_3); + +#endif /* BW1_DECOMP_LH3D_OBJECT_HAIR_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DPrimitive.h b/libs/lionhead/lh3dlib/development/LH3DPrimitive.h new file mode 100644 index 0000000..1b50acf --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DPrimitive.h @@ -0,0 +1,36 @@ +#ifndef BW1_DECOMP_LH3D_PRIMITIVE_INCLUDED_H +#define BW1_DECOMP_LH3D_PRIMITIVE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include "LH3DMaterial.h" /* For struct LH3DMaterial */ + +// Forward Declares + +struct LH3DVertex; +struct LH3DVertexGroup; +struct LHPoint; + +struct LH3DPrimitive +{ + struct LH3DMaterial material_; /* 0x0 */ + int num_vertices_; /* 0x10 */ + struct LH3DVertex* vertices_; + int num_triangles_; + uint8_t* triangles_; + int num_vertex_groups_; /* 0x20 */ + struct LH3DVertexGroup* vertex_groups_; + int num_blends_; + uint8_t* blends_; +}; +static_assert(sizeof(struct LH3DPrimitive) == 0x30, "Data type is of wrong size"); + +// Static methods + +// win1.41 00807f30 mac 1006ad00 LH3DPrimitive::ComputeBoundingBox(LHPoint&, LHPoint&, int&) +void __fastcall ComputeBoundingBox__13LH3DPrimitiveFR7LHPointR7LHPointRi(struct LH3DPrimitive* this, struct LHPoint* maxima, struct LHPoint* minima, int* initialized); +// win1.41 0084ab50 mac 100a01f0 LH3DPrimitive::Create(unsigned char *, LH3DPrimitive *) +void __fastcall Create__13LH3DPrimitiveFPUcP13LH3DPrimitive(const uint8_t* buffer, struct LH3DPrimitive* primitive); + +#endif /* BW1_DECOMP_LH3D_PRIMITIVE_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DRender.h b/libs/lionhead/lh3dlib/development/LH3DRender.h new file mode 100644 index 0000000..13a55ad --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DRender.h @@ -0,0 +1,48 @@ +#ifndef BW1_DECOMP_LH3D_RENDER_INCLUDED_H +#define BW1_DECOMP_LH3D_RENDER_INCLUDED_H + +#include /* For D3DMATRIX, D3DTLVERTEX */ +#include /* For bool */ +#include /* For uint16_t, uint32_t */ + +#include "LH3DMaterial.h" /* For enum LH3DMaterial__RenderMode */ + +// Forward Declares + +struct LH3DMaterial; +struct LH3DTexture; +struct LHMatrix; +struct Vertex3D; + +// win1.41 0082f810 mac 1002af30 LH3DRender::DrawTriangle(Vertex3D *, unsigned long, unsigned short *, unsigned long) +void __fastcall DrawTriangle__10LH3DRenderFP8Vertex3DUlPUsUl(struct Vertex3D* vertices, uint32_t param_2, uint16_t* param_3, uint32_t param_4); +// win1.41 00412940 mac 10046ae0 LH3DRender::SetRenderState(D3DRENDERSTATETYPE, unsigned long) +int __cdecl SetRenderState__10LH3DRenderF18D3DRENDERSTATETYPEUl(D3DRENDERSTATETYPE type, uint32_t value); +// win1.41 inlined mac inlined LH3DRender::GetRenderState(D3DRENDERSTATETYPE, unsigned long&) +int __cdecl GetRenderState__10LH3DRenderF18D3DRENDERSTATETYPERUl(D3DRENDERSTATETYPE type, uint32_t* value); +// win1.41 0082b220 mac 1003c460 LH3DRender::SetD3DMatrix(D3DMATRIX &, LHMatrix &) +void __cdecl SetD3DMatrix__10LH3DRenderFRQ29IndirectX10_D3DMATRIXR8LHMatrix(D3DMATRIX* param_1, struct LHMatrix* param_2); +// win1.41 0082b2d0 mac inlined LH3DRender::SetProjMatrix(D3DMATRIX *, D3DMATRIX *, float, float, float) +void __cdecl SetProjMatrix__10LH3DRenderFP9D3DMATRIXP9D3DMATRIXfff(D3DMATRIX* param_1, D3DMATRIX* projection, float near_plane, float far_plane, float fov); +// win1.41 0082b570 mac 100a7970 LH3DRender::Close(void) +int __cdecl Close__10LH3DRenderFv(void); +// win1.41 0082b9c0 mac 1002dbb0 LH3DRender::SetTextureStageState(unsigned long, D3DTEXTURESTAGESTATETYPE, unsigned long) +int __cdecl SetTextureStageState__10LH3DRenderFUl24D3DTEXTURESTAGESTATETYPEUl(uint32_t index, D3DTEXTURESTAGESTATETYPE type, uint32_t value); +// win1.41 0082f0e0 mac 10013290 LH3DRender::StartFrame(void) +void __cdecl StartFrame__10LH3DRenderFv(void); +// win1.41 0082ff10 mac 10046bbc LH3DRender::SetD3DTillingOn(int) +void __cdecl SetD3DTillingOn__10LH3DRenderFi(uint32_t index); +// win1.41 0082ff50 mac 10046c4c LH3DRender::SetD3DTillingOff(int) +void __cdecl SetD3DTillingOff__10LH3DRenderFi(uint32_t index); +// win1.41 0082fd30 mac 100a1d90 LH3DRender::CreateMaterial(LH3DMaterial::RenderMode, LH3DTexture *) +struct LH3DMaterial* __cdecl CreateMaterial__10LH3DRenderFQ212LH3DMaterial10RenderModeP11LH3DTexture(enum LH3DMaterial__RenderMode render_mode, struct LH3DTexture* texture); +// win1.41 005f4e40 mac 10100190 RenderLoadingFrame(bool) +void __cdecl RenderLoadingFrame__Fb(bool param_1); +// win1.41 0082a500 mac 10017228 DrawAndClip(D3DPRIMITIVETYPE, unsigned long, Vertex3D *, unsigned long, unsigned short *, unsigned long) +void __cdecl DrawAndClip__F16D3DPRIMITIVETYPEUlP8Vertex3DUlPUsUl(D3DPRIMITIVETYPE primitive_type, uint32_t fvf, D3DTLVERTEX* vertices, uint32_t vertex_count, uint16_t* indices, uint32_t index_count); +// win1.41 0082a5b0 mac 1004fe98 DrawAndClip2D(D3DPRIMITIVETYPE, unsigned long, Vertex3D *, unsigned long, unsigned short *, unsigned long) +void __cdecl DrawAndClip2D__F16D3DPRIMITIVETYPEUlP8Vertex3DUlPUsUl(D3DPRIMITIVETYPE primitive_type, uint32_t fvf, D3DTLVERTEX* vertices, uint32_t vertex_count, uint16_t* indices, uint32_t index_count); +// win1.41 006419f0 mac 100d50d0 stop_draw_sprite_to_screen(void) +void __cdecl stop_draw_sprite_to_screen__Fv(void); + +#endif /* BW1_DECOMP_LH3D_RENDER_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DSky.h b/libs/lionhead/lh3dlib/development/LH3DSky.h new file mode 100644 index 0000000..8d27596 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DSky.h @@ -0,0 +1,7 @@ +#ifndef BW1_DECOMP_LH3D_SKY_INCLUDED_H +#define BW1_DECOMP_LH3D_SKY_INCLUDED_H + +// win1.41 00869fa0 mac 100b37d0 LH3DSky::SetDayNightTimes(float, float, float, float) +void __cdecl SetDayNightTimes__7LH3DSkyFffff(float night, float dusk_start, float dusk_end, float day); + +#endif /* BW1_DECOMP_LH3D_SKY_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DSmoke.h b/libs/lionhead/lh3dlib/development/LH3DSmoke.h new file mode 100644 index 0000000..3cab555 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DSmoke.h @@ -0,0 +1,40 @@ +#ifndef BW1_DECOMP_LH3D_SMOKE_INCLUDED_H +#define BW1_DECOMP_LH3D_SMOKE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "LH3DColor.h" /* For struct LH3DColor */ +#include "LHPoint.h" /* For struct LHPoint */ + +// Forward Declares + +struct LH3DMaterial; +struct LH3DSprite; + +struct LH3DSmoke +{ + struct LHPoint pos; /* 0x0 */ + uint32_t field_0xc; + struct LH3DSprite* sprite; /* 0x10 */ + uint8_t field_0x14[0xc]; + int field_0x20[0xa]; + float field_0x48[0xa]; + uint8_t field_0x70[0xa]; + struct LHPoint field_0x7c[0xa]; + struct LH3DMaterial* material; /* 0xf4 */ + float field_0xf8; + float field_0xfc; + float field_0x100; + float field_0x104; + uint32_t field_0x108; + struct LH3DColor color; +}; +static_assert(sizeof(struct LH3DSmoke) == 0x110, "Data type is of wrong size"); + +// Static methods + +// win1.41 007f8b60 mac 100b4ab0 LH3DSmoke::Create(const LHPoint*) +struct LH3DSmoke* __cdecl Create__9LH3DSmokeFPC7LHPoint(struct LHPoint* position); + +#endif /* BW1_DECOMP_LH3D_SMOKE_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DSprite.h b/libs/lionhead/lh3dlib/development/LH3DSprite.h new file mode 100644 index 0000000..09279cc --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DSprite.h @@ -0,0 +1,64 @@ +#ifndef BW1_DECOMP_LH3D_SPRITE_INCLUDED_H +#define BW1_DECOMP_LH3D_SPRITE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint16_t, uint32_t, uint8_t */ + +#include "LHPoint.h" /* For struct LHPoint */ + +struct LH3DSprite +{ + struct LHPoint pos; /* 0x0 */ + float field_0xc; + float field_0x10; + float angle; + float field_0x18; + float field_0x1c; + float field_0x20; + float field_0x24; + uint32_t field_0x28; + float field_0x2c; + uint8_t field_0x30; + uint8_t field_0x31; + uint8_t field_0x32; + uint8_t field_0x33; +}; +static_assert(sizeof(struct LH3DSprite) == 0x34, "Data type is of wrong size"); + +// Static methods + +// win1.41 008404a0 mac 100b64f0 LH3DSprite::Create(long, int) +struct LH3DSprite* __fastcall Create__10LH3DSpriteFli(int32_t param_1, int32_t param_2); + +// Non-virtual methods + +// win1.41 008404f0 mac 1000c7c0 LH3DSprite::SetToZero(void) +void __fastcall SetToZero__10LH3DSpriteFv(struct LH3DSprite* this); +// win1.41 00840530 mac 1002a870 LH3DSprite::Draw(void) +void __fastcall Draw__10LH3DSpriteFv(struct LH3DSprite* this); + +union LHSprite__Texels +{ + uint16_t _16; + uint8_t _24[0x3]; +}; +static_assert(sizeof(union LHSprite__Texels) == 0x4, "Data type is of wrong size"); + +struct LHSprite +{ + uint16_t field_0x0; + uint16_t field_0x2; + union LHSprite__Texels* texels; +}; +static_assert(sizeof(struct LHSprite) == 0x8, "Data type is of wrong size"); + +struct LHSpriteList +{ + bool initialized; /* 0x0 */ + struct LHSprite* payload; + int32_t field_0x8; +}; +static_assert(sizeof(struct LHSpriteList) == 0xc, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH3D_SPRITE_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DSpriteObject.h b/libs/lionhead/lh3dlib/development/LH3DSpriteObject.h new file mode 100644 index 0000000..2416e10 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DSpriteObject.h @@ -0,0 +1,26 @@ +#ifndef BW1_DECOMP_LH3D_SPRITE_OBJECT_INCLUDED_H +#define BW1_DECOMP_LH3D_SPRITE_OBJECT_INCLUDED_H + +#include /* For static_assert */ + +#include "LH3DObject.h" /* For struct LH3DObject */ + +// Forward Declares + +struct LH3DSmoke; + +struct LH3DSpriteObject +{ + struct LH3DObject super; /* 0x0 */ + struct LH3DSmoke* smoke; /* 0x7c */ +}; +static_assert(sizeof(struct LH3DSpriteObject) == 0x80, "Data type is of wrong size"); + +static struct LH3DObjectVftable* __vt__16LH3DSpriteObject = (struct LH3DObjectVftable*)0x009a34d0; + +// Constructors + +// win1.41 00815380 mac 10078250 LH3DSpriteObject::LH3DSpriteObject(long) +struct LH3DSpriteObject* __fastcall __ct__16LH3DSpriteObjectFl(struct LH3DSpriteObject* this, const void* edx, int type); + +#endif /* BW1_DECOMP_LH3D_SPRITE_OBJECT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DStaticMorphableObject.h b/libs/lionhead/lh3dlib/development/LH3DStaticMorphableObject.h new file mode 100644 index 0000000..c5ffcd0 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DStaticMorphableObject.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_LH3D_STATIC_MORPHABLE_OBJECT_INCLUDED_H +#define BW1_DECOMP_LH3D_STATIC_MORPHABLE_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LH3DStaticObject.h" /* For struct LH3DStaticObject */ + +struct LH3DStaticMorphableObject +{ + struct LH3DStaticObject super; /* 0x0 */ + uint32_t field_0x80; +}; +static_assert(sizeof(struct LH3DStaticMorphableObject) == 0x84, "Data type is of wrong size"); + +static struct LH3DObjectVftable* __vt__25LH3DStaticMorphableObject = (struct LH3DObjectVftable*)0x009a2e34; + +// Constructors + +// win1.41 inlined mac 100826b0 LH3DStaticMorphableObject::LH3DStaticMorphableObject(void) +struct LH3DStaticMorphableObject* __fastcall __ct__25LH3DStaticMorphableObjectFv(struct LH3DStaticMorphableObject* this); + +#endif /* BW1_DECOMP_LH3D_STATIC_MORPHABLE_OBJECT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DStaticObject.h b/libs/lionhead/lh3dlib/development/LH3DStaticObject.h new file mode 100644 index 0000000..1fbbce9 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DStaticObject.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_LH3D_STATIC_OBJECT_INCLUDED_H +#define BW1_DECOMP_LH3D_STATIC_OBJECT_INCLUDED_H + +#include /* For static_assert */ + +#include "LH3DMeshedObject.h" /* For struct LH3DMeshedObject */ + +struct LH3DStaticObject +{ + struct LH3DMeshedObject super; /* 0x0 */ +}; +static_assert(sizeof(struct LH3DStaticObject) == 0x80, "Data type is of wrong size"); + +static struct LH3DObjectVftable* __vt__16LH3DStaticObject = (struct LH3DObjectVftable*)0x009a2974; + +// Constructors + +// win1.41 00816540 mac 100763e0 LH3DStaticObject::LH3DStaticObject(void) +struct LH3DStaticObject* __fastcall __ct__16LH3DStaticObjectFv(struct LH3DStaticObject* this); + +#endif /* BW1_DECOMP_LH3D_STATIC_OBJECT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DSubMesh.h b/libs/lionhead/lh3dlib/development/LH3DSubMesh.h new file mode 100644 index 0000000..a1e95ff --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DSubMesh.h @@ -0,0 +1,29 @@ +#ifndef BW1_DECOMP_LH3D_SUB_MESH_INCLUDED_H +#define BW1_DECOMP_LH3D_SUB_MESH_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct LH3DPrimitive; +struct LHPoint; + +struct LH3DSubMesh +{ + uint32_t flags_; /* 0x0 */ + uint32_t num_primitives_; + struct LH3DPrimitive** primitives_; + int num_bones_; + uint8_t* bones_; /* 0x10 */ +}; +static_assert(sizeof(struct LH3DSubMesh) == 0x14, "Data type is of wrong size"); + +// Static methods + +// win1.41 0087fa00 mac 100bbe90 LH3DSubMesh::Create(unsigned char *, LH3DSubMesh *) +void __cdecl Create__11LH3DSubMeshFPUcP11LH3DSubMesh(const uint8_t* buffer, struct LH3DSubMesh* submesh); +// win1.41 0087fb20 mac 100bbcb0 LH3DSubMesh::ComputeBoundingBox(LHPoint&, LHPoint&, int&) +void __fastcall ComputeBoundingBox__11LH3DSubMeshFR7LHPointR7LHPointRi(struct LH3DSubMesh* this, struct LHPoint* maxima, struct LHPoint* minima, int* initialized); + +#endif /* BW1_DECOMP_LH3D_SUB_MESH_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DTech.h b/libs/lionhead/lh3dlib/development/LH3DTech.h new file mode 100644 index 0000000..ac2894b --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DTech.h @@ -0,0 +1,54 @@ +#ifndef BW1_DECOMP_LH3D_TECH_INCLUDED_H +#define BW1_DECOMP_LH3D_TECH_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For int32_t, uint32_t */ + +#include "LHCoord.h" /* For struct LHCoord */ +#include "LHPoint.h" /* For struct Point2D */ + +// Forward Declares + +struct LH3DColor; +struct LH3DMaterial; +struct LHMatrix; +struct LHPoint; + +struct InfoTransform +{ + struct LHCoord resolution; /* 0x0 */ + float aspect_ratio_x_over_y; + struct Point2D half_res; + struct Point2D inv_half_res; /* 0x14 */ + float inv_half_tan_fov_y; + float inv_half_tan_fov_x; /* 0x20 */ + float cos_half_fov_sqr; + float field_0x28; + float cos_half_fov; + float field_0x30; + float inv_aspect_sqr_hypo_inv_times_inv_aspect; + float inv_aspect_sqr_hypo_inv; +}; +static_assert(sizeof(struct InfoTransform) == 0x3c, "Data type is of wrong size"); + +// win1.41 00819030 mac 100c0920 LH3DTech::UpdateViewPort(long, long) +void __fastcall UpdateViewPort__8LH3DTechFll(int32_t param_1, int32_t param_2); +// win1.41 00819390 mac 10be2a38 LH3DTech::ProjectPoint(LHPoint *, int *, int *, float *) +uint32_t __fastcall ProjectPoint__8LH3DTechFP7LHPointPiPiPf(struct LHPoint* param_1, int* param_2, int* param_3, float* param_4); +// win1.41 008195b0 mac 10011b20 LH3DTech::ChangeFov(float) +void __stdcall ChangeFov__8LH3DTechFf(float fov); +// win1.41 00819690 mac 10011d80 LH3DTech::UpdateWorldToCamera(LHMatrix &, LHPoint &, LHPoint &, bool) +void __fastcall UpdateWorldToCamera__8LH3DTechFR8LHMatrixR7LHPointR7LHPointb(struct LHMatrix* param_1_00, struct LHPoint* param_2_00, struct LHPoint* param_1, bool param_2); +// win1.41 inlined mac 10093230 LH3DTech::GetDeltaTime(void) +uint32_t __cdecl GetDeltaTime__8LH3DTechFv(void); +// win1.41 00819920 mac 10034c10 LH3DTech::UpdateCamera(LHPoint const &, LHPoint const &) +void __fastcall UpdateCamera__8LH3DTechFRC7LHPointRC7LHPoint(const struct LHPoint* param_1, const struct LHPoint* param_2); +// win1.41 00818c60 mac 100c0a80 LH3DTech::RenderInitialization(long, long) +void __cdecl RenderInitialization__8LH3DTechFll(int32_t param_0, int32_t param_1); +// win1.41 0081c5c0 mac 100337d0 LH3DTech::Draw3DScreenTriangle(long, LHPoint *, LH3DColor *, float *, long, long *, LH3DMaterial *, int) +void __fastcall Draw3DScreenTriangle__8LH3DTechFlP7LHPointP9LH3DColorPflPlP12LH3DMateriali(uint32_t num_points, struct LHPoint* positions, struct LH3DColor* colors, float* uvs, uint32_t num_indices, uint32_t* indices, struct LH3DMaterial* material, uint32_t param_8); +// win1.41 0081bbd0 mac 100be300 Report3D(char const *,...) +void __cdecl Report3D__FPCce(const char* fmt, ... ); + +#endif /* BW1_DECOMP_LH3D_TECH_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DTexture.h b/libs/lionhead/lh3dlib/development/LH3DTexture.h new file mode 100644 index 0000000..7cacc6b --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DTexture.h @@ -0,0 +1,58 @@ +#ifndef BW1_DECOMP_LH3D_TEXTURE_INCLUDED_H +#define BW1_DECOMP_LH3D_TEXTURE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +enum TextureFormat_ +{ + TextureFormat_0x0 = 0x0, + _TextureFormat__COUNT = 0x1 +}; +static_assert(sizeof(enum TextureFormat_) == 0x4, "Data type is of wrong size"); + +static const char* TextureFormat__strs[_TextureFormat__COUNT] = { + "TextureFormat_0x0", +}; + +struct TextureFormat +{ + enum TextureFormat_ format; /* 0x0 */ +}; +static_assert(sizeof(struct TextureFormat) == 0x4, "Data type is of wrong size"); + +struct LH3DTexture +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint32_t field_0x8; + struct LH3DTexture* next; + uint32_t field_0x10; + struct TextureFormat format; + uint32_t id; + uint8_t field_0x1c[0x104]; + int* field_0x120; + void* surface; + uint32_t field_0x128; + uint32_t mask_collide; + uint32_t field_0x130; + void* field_0x134; + uint32_t field_0x138; +}; +static_assert(sizeof(struct LH3DTexture) == 0x13c, "Data type is of wrong size"); + +// Static methods + +// win1.41 006186b0 mac 1061afb4 LH3DTexture::Create +struct LH3DTexture* __cdecl Create__11LH3DTextureFPvUlUlP13TextureFormat(void* param_0, unsigned long param_1, unsigned long param_2, struct TextureFormat* param_3); +// win1.41 008377e0 mac inlined LH3DTexture::SetPackedTexture(void) +void __stdcall SetPackedTexture__LH3DTextureFv(void); +// win1.41 00838480 mac 100c9060 LH3DTexture::GetThisTexture +struct LH3DTexture* __cdecl GetThisTexture__11LH3DTextureFUl(unsigned long id); + +// Non-virtual methods + +// win1.41 00837d40 mac 1061b614 LH3DTexture::Release(void) +void __fastcall Release__11LH3DTextureFv(struct LH3DTexture* this); + +#endif /* BW1_DECOMP_LH3D_TEXTURE_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DVertex.h b/libs/lionhead/lh3dlib/development/LH3DVertex.h new file mode 100644 index 0000000..c51dd38 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DVertex.h @@ -0,0 +1,24 @@ +#ifndef BW1_DECOMP_LH3D_VERTEX_INCLUDED_H +#define BW1_DECOMP_LH3D_VERTEX_INCLUDED_H + +#include /* For static_assert */ + +#include "LHPoint.h" /* For struct LHPoint, struct Point2D */ + +struct LH3DVertex +{ + struct LHPoint position; /* 0x0 */ + struct Point2D uv; + struct LHPoint normal; /* 0x14 */ +}; +static_assert(sizeof(struct LH3DVertex) == 0x20, "Data type is of wrong size"); + +struct Vertex3D +{ + struct LHPoint position; /* 0x0 */ + struct Point2D uv; + struct LHPoint normal; /* 0x14 */ +}; +static_assert(sizeof(struct Vertex3D) == 0x20, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH3D_VERTEX_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DVertexGroup.h b/libs/lionhead/lh3dlib/development/LH3DVertexGroup.h new file mode 100644 index 0000000..72e9b1e --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DVertexGroup.h @@ -0,0 +1,14 @@ +#ifndef BW1_DECOMP_LH3D_VERTEX_GROUP_INCLUDED_H +#define BW1_DECOMP_LH3D_VERTEX_GROUP_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t */ + +struct LH3DVertexGroup +{ + uint16_t vertex_count; /* 0x0 */ + uint16_t bone_index; +}; +static_assert(sizeof(struct LH3DVertexGroup) == 0x4, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH3D_VERTEX_GROUP_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LH3DWay.h b/libs/lionhead/lh3dlib/development/LH3DWay.h new file mode 100644 index 0000000..662d83b --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LH3DWay.h @@ -0,0 +1,41 @@ +#ifndef BW1_DECOMP_LH3D_WAY_INCLUDED_H +#define BW1_DECOMP_LH3D_WAY_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +struct LH3DWay +{ + int field_0x0; + int field_0x4; + uint32_t field_0x8; + float field_0xc; + float field_0x10; + uint8_t field_0x14[0x8]; +}; +static_assert(sizeof(struct LH3DWay) == 0x1c, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 00842f10 mac 100d49e0 LH3DWay::Release(void) +void __fastcall Release__7LH3DWayFv(struct LH3DWay* this); +// win1.41 00843500 mac 100d3ea0 LH3DWay::Draw(void) +void __fastcall Draw__7LH3DWayFv(struct LH3DWay* this); +// win1.41 00844570 mac 100d2ad0 LH3DWay::AdjustPtr(void) +void __fastcall AdjustPtr__7LH3DWayFv(struct LH3DWay* this); + +struct Q27LH3DWay7Running +{ + uint32_t field_0x0; + uint8_t field_0x4[0x200]; + float field_0x204; + struct LH3DWay* way; +}; +static_assert(sizeof(struct Q27LH3DWay7Running) == 0x20c, "Data type is of wrong size"); + +// Constructors + +// win1.41 00843ed0 mac 1061ce2c LH3DWay::Running::Running(LH3DWay *) +struct Q27LH3DWay7Running* __fastcall __ct__Q27LH3DWay7RunningFP7LH3DWay(struct Q27LH3DWay7Running* this, const void* edx, struct LH3DWay* param_2); + +#endif /* BW1_DECOMP_LH3D_WAY_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LHCoord.h b/libs/lionhead/lh3dlib/development/LHCoord.h new file mode 100644 index 0000000..07e7c4d --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LHCoord.h @@ -0,0 +1,18 @@ +#ifndef BW1_DECOMP_LH_COORD_INCLUDED_H +#define BW1_DECOMP_LH_COORD_INCLUDED_H + +#include /* For static_assert */ + +struct LHCoord +{ + int x; /* 0x0 */ + int y; +}; +static_assert(sizeof(struct LHCoord) == 0x8, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac 1006ebc0 LHCoord::LHCoord(LHCoord const &) +void __fastcall __ct__7LHCoordFRC7LHCoord(struct LHCoord* this, const void* edx, const struct LHCoord* other); + +#endif /* BW1_DECOMP_LH_COORD_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LHDDEnum.h b/libs/lionhead/lh3dlib/development/LHDDEnum.h new file mode 100644 index 0000000..1e255cb --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LHDDEnum.h @@ -0,0 +1,19 @@ +#ifndef BW1_DECOMP_LHDD_ENUM_INCLUDED_H +#define BW1_DECOMP_LHDD_ENUM_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +struct LHDDEnum +{ + char display_name[0xf8]; /* 0x0 */ + uint8_t field_0xf8[0x3e0]; +}; +static_assert(sizeof(struct LHDDEnum) == 0x4d8, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 007dd010 mac 1014d920 LHDDEnum::~LHDDEnum(void) +void __fastcall __dt__8LHDDEnumFv(struct LHDDEnum* this); + +#endif /* BW1_DECOMP_LHDD_ENUM_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LHMath.h b/libs/lionhead/lh3dlib/development/LHMath.h new file mode 100644 index 0000000..38b3572 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LHMath.h @@ -0,0 +1,9 @@ +#ifndef BW1_DECOMP_LH_MATH_INCLUDED_H +#define BW1_DECOMP_LH_MATH_INCLUDED_H + +// win1.41 0074f680 mac 10049670 hypotenuse(long, long) +int __cdecl hypotenuse__Fll(int param_1, int param_2); +// win1.41 0074d0c0 mac 1004ed4c LHArcTan(long, long) +long __cdecl LHArcTan__Fll(long param_1, long param_2); + +#endif /* BW1_DECOMP_LH_MATH_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LHMatrix.h b/libs/lionhead/lh3dlib/development/LHMatrix.h new file mode 100644 index 0000000..e745847 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LHMatrix.h @@ -0,0 +1,38 @@ +#ifndef BW1_DECOMP_LH_MATRIX_INCLUDED_H +#define BW1_DECOMP_LH_MATRIX_INCLUDED_H + +#include /* For static_assert */ + +// Forward Declares + +struct LHPoint; + +struct LHMatrix +{ + float m[0xc]; /* 0x0 */ +}; +static_assert(sizeof(struct LHMatrix) == 0x30, "Data type is of wrong size"); + +// Static methods + +// win1.41 00403570 mac inlined LHMatrix::PostTranslation(const LHPoint&) +void __fastcall PostTranslation__8LHMatrixFRC7LHPoint(struct LHMatrix* this, struct LHPoint* translation); + +// Non-virtual methods + +// win1.41 inlined mac inlined LHMatrix::operator=(LHMatrix const &) +struct LHMatrix* __fastcall __as__8LHMatrixFRC8LHMatrix(struct LHMatrix* this, const void* edx, const struct LHMatrix* other); +// win1.41 inlined mac inlined LHMatrix::IdentityMatrix(void) +struct LHMatrix* __fastcall IdentityMatrix__8LHMatrixFv(struct LHMatrix* this); +// win1.41 inlined mac inlined LHMatrix::TranslationMatrix(LHPoint*) +struct LHMatrix* __fastcall TranslationMatrix__LHMatrixFP7LHPoint(struct LHMatrix* this, const void* edx, struct LHPoint* translation); +// win1.41 inlined mac inlined LHMatrix::ScaleTranslationMatrix(LHPoint*,float) +struct LHMatrix* __fastcall ScaleTranslationMatrix__8LHMatrixFP7LHPointf(struct LHMatrix* this, const void* edx, struct LHPoint* translation, float scale); +// win1.41 inlined mac inlined LHMatrix::RotationScaleTranslationMatrix(LHPoint*,float,float) +struct LHMatrix* __fastcall RotationScaleTranslationMatrix__8LHMatrixFP7LHPointff(struct LHMatrix* this, const void* edx, struct LHPoint* translation, float y_angle, float scale); +// win1.41 inlined mac inlined LHMatrix::operator*(LHPoint const &) const +struct LHPoint* __fastcall __ml__8LHMatrixCFRC7LHPoint(const struct LHMatrix* this, const void* edx, struct LHPoint* out_point, const struct LHPoint* point); +// win1.41 007fb290 mac 1004f05c LHMatrix::SetInverse(LHMatrix const &) +void __fastcall SetInverse__8LHMatrixFRC8LHMatrix(struct LHMatrix* this, const void* edx, const struct LHMatrix* r); + +#endif /* BW1_DECOMP_LH_MATRIX_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LHPixel.h b/libs/lionhead/lh3dlib/development/LHPixel.h new file mode 100644 index 0000000..506aec3 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LHPixel.h @@ -0,0 +1,13 @@ +#ifndef BW1_DECOMP_LH_PIXEL_INCLUDED_H +#define BW1_DECOMP_LH_PIXEL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +struct LHPixel +{ + uint32_t field_0x0; +}; +static_assert(sizeof(struct LHPixel) == 0x4, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_PIXEL_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LHPoint.h b/libs/lionhead/lh3dlib/development/LHPoint.h new file mode 100644 index 0000000..9af2021 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LHPoint.h @@ -0,0 +1,94 @@ +#ifndef BW1_DECOMP_LH_POINT_INCLUDED_H +#define BW1_DECOMP_LH_POINT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ + +struct Point2D +{ + float x; /* 0x0 */ + float y; +}; +static_assert(sizeof(struct Point2D) == 0x8, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac inlined Point2D::Point2D(float, float) +struct Point2D* __fastcall __ct__7Point2DFff(struct Point2D* this, const void* edx, float x, float y); +// win1.41 inlined mac inlined Point2D::Point2D(long, long) +struct Point2D* __fastcall __ct__7Point2DFll(struct Point2D* this, const void* edx, int x, int y); + +// Non-virtual methods + +// win1.41 00468480 mac 100a8d60 Point2D::operator=(const Point2D&) +struct Point2D* __fastcall __as__7Point2DFRC7Point2D(struct Point2D* this, const void* edx, const struct Point2D* other); +// win1.41 00611170 mac inlined Point2D::DotProduct(Point2D&) +float __fastcall DotProduct__7Point2DRP7Point2D(const struct Point2D* this, const void* edx, const struct Point2D* other); +// win1.41 00611220 mac 100a8d60 Point2D::operator=(const Point2D&) copy +struct Point2D* __fastcall __as__7Point2DFRC7Point2D2(struct Point2D* this, const void* edx, const struct Point2D* other); +// win1.41 00611310 mac inlined Point2D::DotProduct(Point2D*) +float __fastcall DotProduct__7Point2DFP7Point2D(const struct Point2D* this, const void* edx, const struct Point2D* other); +// win1.41 00611190 mac 10033740 Point2D::operator*(float) const +struct Point2D* __fastcall __ml__7Point2DCFf(const struct Point2D* this, const void* edx, struct Point2D* result, float rhs); +// win1.41 inlined mac 100a9540 Point2D::operator+( const(Point2D const &)) +struct Point2D* __fastcall __pl__7Point2DCFRC7Point2D(struct Point2D* this, const void* edx, const struct Point2D* lhs, const struct Point2D* rhs); +// win1.41 inlined mac inlined Point2D::operator+=(Point2D const &) +struct Point2D* __fastcall __apl__7Point2DFRC7Point2D(struct Point2D* this, const void* edx, const struct Point2D* other); +// win1.41 inlined mac 10088c10 Point2D::operator-( const(Point2D const &)) +struct Point2D* __fastcall __mi__7Point2DCFRC7Point2D(struct Point2D* this, const void* edx, const struct Point2D* lhs, const struct Point2D* rhs); +// win1.41 inlined mac inlined Point2D::operator-=(Point2D const &) +struct Point2D* __fastcall __ami__7Point2DFRC7Point2D(struct Point2D* this, const void* edx, const struct Point2D* other); +// win1.41 00611240 mac inlined Point2D::Cross(const Point2D&) const +float __fastcall Cross__7Point2DCFRC7Point2D(const struct Point2D* this, const void* edx, const struct Point2D* other); +// win1.41 00611330 mac 100e7550 Point2D::Normalize(void) +float __fastcall Normalize__7Point2DFv(struct Point2D* this); +// win1.41 006115f0 mac 1005ba40 Point2D::GetNormSq(void) const +float __fastcall GetNormSq__7Point2DFv(const struct Point2D* this); +// win1.41 0086fda0 mac 1005ba40 Point2D::GetNormSq(void) const copy +float __fastcall GetNormSq__7Point2DFv2(const struct Point2D* this); +// win1.41 006159c0 mac inlined Point2D::operator==(const Point2D&) +bool __fastcall __eq__7Point2DFRC7Point2D(struct Point2D* this, const void* edx, const struct Point2D* other); +// win1.41 0086fd00 mac 10089260 Point2D::GetHeading(void) const +float __fastcall GetHeading__7Point2DCFv(const struct Point2D* this); +// win1.41 0086fd70 mac 10089100 Point2D::SetSize(float) +void __fastcall SetSize__7Point2DFf(struct Point2D* this, const void* edx, float size); +// win1.41 0086fdc0 mac 10089000 Point2D::GetRange(Point2D const &) const +float __fastcall GetRange__7Point2DCFRC7Point2D(const struct Point2D* this, const void* edx, const struct Point2D* param_1); + +struct LHPoint +{ + float x; /* 0x0 */ + float y; + float z; +}; +static_assert(sizeof(struct LHPoint) == 0xc, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac inlined LHPoint::LHPoint(void) +struct LHPoint* __fastcall __ct__7LHPointFv(struct LHPoint* this); +// win1.41 00442700 mac 1004a260 LHPoint::LHPoint(float, float, float) +struct LHPoint* __fastcall __ct__7LHPointFfff(struct LHPoint* this, const void* edx, float x, float y, float z); +// win1.41 0044cfc0 mac 1003a450 LHPoint::LHPoint(const LHPoint&) +struct LHPoint* __fastcall __ct__7LHPointFRC7LHPoint(struct LHPoint* this, const void* edx, struct LHPoint* other); + +// Non-virtual methods + +// win1.41 inlined mac inlined LHPoint::operator=(Point const &) +struct LHPoint* __fastcall __as__5PointFRC5Point(struct LHPoint* this, const void* edx, const struct LHPoint* other); +// win1.41 inlined mac inlined LHPoint::operator*=(float) +struct LHPoint* __fastcall __aml__7LHPointFf(struct LHPoint* this, const void* edx, float rhs); +// win1.41 inlined mac inlined LHPoint::operator+(LHPoint const &) const +struct LHPoint* __fastcall __pl__7LHPointCFRC7LHPoint(struct LHPoint* this, const void* edx, const struct LHPoint* lhs, const struct LHPoint* rhs); +// win1.41 inlined mac inlined LHPoint::operator-(LHPoint const &) const +struct LHPoint* __fastcall __mi__7LHPointCFRC7LHPoint(struct LHPoint* this, const void* edx, const struct LHPoint* lhs, const struct LHPoint* rhs); +// win1.41 inlined mac inlined LHPoint::GetNormSq(void) +float __fastcall GetNormSq__7LHPointFv(const struct LHPoint* this); +// win1.41 inlined mac inlined LHPoint::GetNorm(void) +float __fastcall GetNorm__7LHPointFv(const struct LHPoint* this); +// win1.41 inlined mac inlined LHPoint::SetNull(void) +void __fastcall SetNull__7LHPointFv(struct LHPoint* this); +// win1.41 0054e910 mac 10037ce0 LHPoint::FastNormalize(void) +void __fastcall FastNormalize__7LHPointFv(struct LHPoint* this); + +#endif /* BW1_DECOMP_LH_POINT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LHRegion.h b/libs/lionhead/lh3dlib/development/LHRegion.h new file mode 100644 index 0000000..0b3d6e5 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LHRegion.h @@ -0,0 +1,15 @@ +#ifndef BW1_DECOMP_LH_REGION_INCLUDED_H +#define BW1_DECOMP_LH_REGION_INCLUDED_H + +#include /* For static_assert */ + +#include "LHCoord.h" /* For struct LHCoord */ + +struct LHRegion +{ + struct LHCoord start; /* 0x0 */ + struct LHCoord end; +}; +static_assert(sizeof(struct LHRegion) == 0x10, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_REGION_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LHSurface.h b/libs/lionhead/lh3dlib/development/LHSurface.h new file mode 100644 index 0000000..7d2e4e9 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LHSurface.h @@ -0,0 +1,30 @@ +#ifndef BW1_DECOMP_LH_SURFACE_INCLUDED_H +#define BW1_DECOMP_LH_SURFACE_INCLUDED_H + +#include /* For static_assert */ +#include /* For IDirectDrawSurface7 */ +#include /* For uint16_t, uint32_t */ + +// Forward Declares + +struct LHPixel; + +struct LHSurface +{ + IDirectDrawSurface7* d3d_surfaces; /* 0x0 */ + uint32_t field_0x4; + int field_0x8; + uint32_t field_0xc; + uint32_t field_0x10; + uint16_t width; + uint16_t height; + struct LHPixel* pixels; + uint32_t field_0x1c; + uint32_t field_0x20; + uint32_t field_0x24; + uint32_t field_0x28; + int field_0x2c; +}; +static_assert(sizeof(struct LHSurface) == 0x30, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_SURFACE_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/LHText.h b/libs/lionhead/lh3dlib/development/LHText.h new file mode 100644 index 0000000..62942fc --- /dev/null +++ b/libs/lionhead/lh3dlib/development/LHText.h @@ -0,0 +1,21 @@ +#ifndef BW1_DECOMP_LH_TEXT_INCLUDED_H +#define BW1_DECOMP_LH_TEXT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "LH3DSprite.h" /* For struct LHSpriteList */ + +struct LHText +{ + struct LHSpriteList sprite_list; /* 0x0 */ + uint32_t field_0xc; + uint32_t field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + int field_0x1c; + uint8_t field_0x20; +}; +static_assert(sizeof(struct LHText) == 0x24, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_TEXT_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/PhysOb.h b/libs/lionhead/lh3dlib/development/PhysOb.h new file mode 100644 index 0000000..e75112e --- /dev/null +++ b/libs/lionhead/lh3dlib/development/PhysOb.h @@ -0,0 +1,42 @@ +#ifndef BW1_DECOMP_PHYS_OB_INCLUDED_H +#define BW1_DECOMP_PHYS_OB_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct LH3DObject; + +struct PhysOb +{ + struct LH3DObject* obj; /* 0x0 */ + float field_0x4; + uint8_t field_0x8[0x60]; + uint32_t field_0x68; + uint32_t field_0x6c; + uint32_t field_0x70; + uint8_t field_0x74[0x68]; + uint32_t field_0xdc; + uint32_t field_0xe0; + uint32_t field_0xe4; + uint8_t field_0xe8[0xc]; + uint32_t field_0xf4; + uint32_t field_0xf8; + uint32_t field_0xfc; + uint32_t field_0x100; + uint8_t field_0x104[0x4c]; + uint32_t field_0x150; + uint8_t field_0x154[0x1c]; + int field_0x170; + uint32_t field_0x174; + uint32_t field_0x178; +}; +static_assert(sizeof(struct PhysOb) == 0x17c, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 007fb780 mac 10088820 PhysOb::Initialise(LH3DObject *, float) +void __fastcall Initialise__6PhysObFP10LH3DObjectf(struct PhysOb* this, const void* edx, struct LH3DObject* obj, float param_3); + +#endif /* BW1_DECOMP_PHYS_OB_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/Prss.h b/libs/lionhead/lh3dlib/development/Prss.h new file mode 100644 index 0000000..3e6bb08 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/Prss.h @@ -0,0 +1,49 @@ +#ifndef BW1_DECOMP_PRSS_INCLUDED_H +#define BW1_DECOMP_PRSS_INCLUDED_H + +#include /* For static_assert */ +#include /* For int32_t, uint16_t, uint32_t */ + +#include /* For enum LH_KEY */ + +// Forward Declares + +struct MouseInput; +struct Prss; + +struct PrssVftable +{ + int (__fastcall* ProcessTurn)(struct Prss* this); /* 0x0 */ + void (__fastcall* Display)(struct Prss* this); + void (__fastcall* Terminate)(struct Prss* this); + void (__fastcall* PrssKey)(struct Prss* this, const void* edx, enum LH_KEY key, uint16_t param_2); + void (__fastcall* PrssMouse)(struct Prss* this, const void* edx, struct MouseInput* param_1); /* 0x10 */ + void (__fastcall* ClickFunction)(struct Prss* this, const void* edx, int32_t param_1, int param_2, int param_3); + void (__fastcall* StringFunction)(struct Prss* this, const void* edx, int32_t param_1, char* param_2, int param_3); +}; +static_assert(sizeof(struct PrssVftable) == 0x1c, "Data type is of wrong size"); + +struct Prss +{ + struct PrssVftable* vftable; /* 0x0 */ + uint32_t field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; +}; +static_assert(sizeof(struct Prss) == 0x10, "Data type is of wrong size"); + +static struct PrssVftable* __vt__4Prss = (struct PrssVftable*)0x008d87b8; + +// Override methods + +// win1.41 00842160 mac 100631e0 Prss::PrssKey(LH_KEY, unsigned short) +void __fastcall PrssKey__4PrssF6LH_KEYUs(struct Prss* this, const void* edx, enum LH_KEY key, uint16_t param_2); +// win1.41 00842170 mac 10063170 Prss::PrssMouse(MouseInput *) +void __fastcall PrssMouse__4PrssFP10MouseInput(struct Prss* this, const void* edx, struct MouseInput* param_1); +// win1.41 004f7200 mac 10062140 Prss::StringFunction(long, char *, int) +void __fastcall StringFunction__4PrssFlPci(struct Prss* this, const void* edx, int32_t param_1, char* param_2, int param_3); + +// win1.41 008416e0 mac 100646e0 BMan_Check(Prss *, int, int, int) +int __cdecl BMan_Check__FP4Prssiii(struct Prss* param_1, int param_2, int param_3, int param_4); + +#endif /* BW1_DECOMP_PRSS_INCLUDED_H */ diff --git a/libs/lionhead/lh3dlib/development/Zoomer.h b/libs/lionhead/lh3dlib/development/Zoomer.h new file mode 100644 index 0000000..e310606 --- /dev/null +++ b/libs/lionhead/lh3dlib/development/Zoomer.h @@ -0,0 +1,66 @@ +#ifndef BW1_DECOMP_ZOOMER_INCLUDED_H +#define BW1_DECOMP_ZOOMER_INCLUDED_H + +#include /* For static_assert */ + +#include "LHPoint.h" /* For struct LHPoint */ + +struct Zoomer +{ + float current_value; /* 0x0 */ + float destination; + float destination_speed; + float current_speed; + float time_m2; /* 0x10 */ + float current_time; + float duration; + float start_value; + float start_speed; /* 0x20 */ + struct LHPoint non_linear_acceleration; +}; +static_assert(sizeof(struct Zoomer) == 0x30, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac 1056a120 Zoomer::Zoomer() +struct Zoomer* __fastcall __ct__6ZoomerFv(struct Zoomer* this); + +// Non-virtual methods + +// win1.41 inlined mac inlined Zoomer::SetDestination(float) +void __fastcall SetDestination__6ZoomerFf(struct Zoomer* this, const void* edx, float destination); +// win1.41 inlined mac 10038020 Zoomer::GetCurrentValue(void) +float __fastcall GetCurrentValue__6ZoomerFv(struct Zoomer* this); +// win1.41 inlined mac 10020df0 Zoomer::GetDestination(void) +float __fastcall GetDestination__6ZoomerFv(struct Zoomer* this); +// win1.41 00407d60 mac 1004ee60 Zoomer::SetDestinationWithSpeedAndTime(float, float, float) +void __fastcall SetDestinationWithSpeedAndTime__6ZoomerFfff(struct Zoomer* this, const void* edx, float destination, float speed, float time); +// win1.41 00441ac0 mac 1035b310 Zoomer::SetPosition(float) +void __fastcall SetPosition__6ZoomerFf(struct Zoomer* this, const void* edx, float position); +// win1.41 00442720 mac 1002c480 Zoomer::Update(float) +void __fastcall Update__6ZoomerFf(struct Zoomer* this, const void* edx, float dt); + +struct Zoomer3d +{ + struct Zoomer x; /* 0x0 */ + struct Zoomer y; /* 0x30 */ + struct Zoomer z; /* 0x60 */ +}; +static_assert(sizeof(struct Zoomer3d) == 0x90, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 004605d0 mac 10031e60 Zoomer3d::GetCurrentValue(void) +struct LHPoint* __fastcall GetCurrentValue__8Zoomer3dFv(struct Zoomer3d* this, const void* edx, struct LHPoint* out_point); +// win1.41 inlined mac 10020d50 Zoomer3d::GetDestination(void) +struct LHPoint* __fastcall GetDestination__8Zoomer3dFv(struct Zoomer3d* this, const void* edx, struct LHPoint* out_point); +// win1.41 inlined mac inlined Zoomer3d::Update(float) +void __fastcall Update__8Zoomer3dFf(struct Zoomer3d* this, const void* edx, float dt); +// win1.41 inlined mac inlined Zoomer3d::SetDestinationWithSpeedAndTime(LHPoint const &, float, float) +void __fastcall SetDestinationWithSpeedAndTime__8Zoomer3dFRC7LHPointff(struct Zoomer3d* this, const void* edx, const struct LHPoint* destination, float speed, float time); +// win1.41 0044e760 mac inlined Zoomer3d::SetDestinationWithTime(LHPoint const &, float) +void __fastcall SetDestinationWithTime__8Zoomer3dFRC7LHPointf(struct Zoomer3d* this, const void* edx, const struct LHPoint* destination, float time); +// win1.41 inlined mac inlined Zoomer3d::SetPosition(LHPoint const &) +void __fastcall SetPosition__8Zoomer3dFRC7LHPoint(struct Zoomer3d* this, const void* edx, const struct LHPoint* destination); + +#endif /* BW1_DECOMP_ZOOMER_INCLUDED_H */ diff --git a/libs/lionhead/lhaudio/ver7.0/LH_AudioBank.h b/libs/lionhead/lhaudio/ver7.0/LH_AudioBank.h new file mode 100644 index 0000000..3b501e6 --- /dev/null +++ b/libs/lionhead/lhaudio/ver7.0/LH_AudioBank.h @@ -0,0 +1,13 @@ +#ifndef BW1_DECOMP_LH_AUDIO_BANK_INCLUDED_H +#define BW1_DECOMP_LH_AUDIO_BANK_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +struct LH_AudioBank +{ + uint8_t field_0x0[0x13c]; +}; +static_assert(sizeof(struct LH_AudioBank) == 0x13c, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_AUDIO_BANK_INCLUDED_H */ diff --git a/libs/lionhead/lhaudio/ver7.0/LH_SamplePlayOptions.h b/libs/lionhead/lhaudio/ver7.0/LH_SamplePlayOptions.h new file mode 100644 index 0000000..a09fccf --- /dev/null +++ b/libs/lionhead/lhaudio/ver7.0/LH_SamplePlayOptions.h @@ -0,0 +1,23 @@ +#ifndef BW1_DECOMP_LH_SAMPLE_PLAY_OPTIONS_INCLUDED_H +#define BW1_DECOMP_LH_SAMPLE_PLAY_OPTIONS_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +struct LH_SamplePlayOptions +{ + uint8_t field_0x0[0x168]; +}; +static_assert(sizeof(struct LH_SamplePlayOptions) == 0x168, "Data type is of wrong size"); + +// Constructors + +// win1.41 10010e90 mac 100397c0 LH_SamplePlayOptions::LH_SamplePlayOptions(void) +struct LH_SamplePlayOptions* __fastcall __ct__20LH_SamplePlayOptionsFv(struct LH_SamplePlayOptions* this); + +// Non-virtual methods + +// win1.41 10011010 mac 1003a2c0 LH_SamplePlayOptions::~LH_SamplePlayOptions(void) +void __fastcall __dt__20LH_SamplePlayOptionsFv(struct LH_SamplePlayOptions* this); + +#endif /* BW1_DECOMP_LH_SAMPLE_PLAY_OPTIONS_INCLUDED_H */ diff --git a/libs/lionhead/lhdll/ver1.0/LHDLL.h b/libs/lionhead/lhdll/ver1.0/LHDLL.h new file mode 100644 index 0000000..3012176 --- /dev/null +++ b/libs/lionhead/lhdll/ver1.0/LHDLL.h @@ -0,0 +1,52 @@ +#ifndef BW1_DECOMP_LHDLL_INCLUDED_H +#define BW1_DECOMP_LHDLL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t, uintptr_t */ + +// Forward Declares + +struct LHTransport; + +struct LHDLLVftable +{ + uintptr_t field_0x0; + uintptr_t field_0x4; +}; +static_assert(sizeof(struct LHDLLVftable) == 0x8, "Data type is of wrong size"); + +struct LHDLL +{ + struct LHDLLVftable* vftable; /* 0x0 */ + uint8_t field_0x4; + void* hmodule; + struct LHTransport* transport; + int field_0x10; + uint32_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + char* library_path; /* 0x20 */ +}; +static_assert(sizeof(struct LHDLL) == 0x24, "Data type is of wrong size"); + +static struct LHDLLVftable* __vt__5LHDLL = (struct LHDLLVftable*)0x0099f014; + +// Static methods + +// win1.41 007ad230 mac 100db740 LHDLL::AddToInternalList(LHDLL*) +struct LHDLL* __cdecl AddToInternalList__5LHDLLFP5LHDLL(struct LHDLL* param_1); + +// Constructors + +// win1.41 007ad370 mac 1061e11c LHDLL::LHDLL(const char*) +struct LHDLL* __fastcall __ct__5LHDLLFPCc(struct LHDLL* this, const void* edx, char* library_path); + +// Non-virtual methods + +// win1.41 007ad4c0 mac 1061e14c LHDLL::~LHDLL(void) +void __fastcall __dt__5LHDLLFv(struct LHDLL* this); + +// win1.41 0087fc60 mac 100d98b0 LHIlib::LH3DRenderClose(void) +int __cdecl LH3DRenderClose__6LHIlibFv(void); + +#endif /* BW1_DECOMP_LHDLL_INCLUDED_H */ diff --git a/libs/lionhead/lhfile/ver3.0/Archive.h b/libs/lionhead/lhfile/ver3.0/Archive.h new file mode 100644 index 0000000..5ced8b4 --- /dev/null +++ b/libs/lionhead/lhfile/ver3.0/Archive.h @@ -0,0 +1,17 @@ +#ifndef BW1_DECOMP_ARCHIVE_INCLUDED_H +#define BW1_DECOMP_ARCHIVE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LHOSFile.h" /* For struct LHOSFile */ + +struct Archive +{ + uint32_t field_0x0; + uint32_t field_0x4; + struct LHOSFile file; +}; +static_assert(sizeof(struct Archive) == 0x10, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_ARCHIVE_INCLUDED_H */ diff --git a/libs/lionhead/lhfile/ver3.0/LHFile.h b/libs/lionhead/lhfile/ver3.0/LHFile.h new file mode 100644 index 0000000..a02f8dc --- /dev/null +++ b/libs/lionhead/lhfile/ver3.0/LHFile.h @@ -0,0 +1,123 @@ +#ifndef BW1_DECOMP_LH_FILE_INCLUDED_H +#define BW1_DECOMP_LH_FILE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For size_t */ +#include /* For uint32_t */ + +// Forward Declares + +struct LHFile; +struct LHSegment; +struct LHSegmentDesc; + +enum LH_FILE_MODE +{ + LH_FILE_MODE_0 = 0x0, + LH_FILE_MODE_1 = 0x1, + LH_FILE_MODE_READ = 0x2, + LH_FILE_MODE_3 = 0x3, + _LH_FILE_MODE_COUNT = 0x4 +}; +static_assert(sizeof(enum LH_FILE_MODE) == 0x4, "Data type is of wrong size"); + +static const char* LH_FILE_MODE_strs[_LH_FILE_MODE_COUNT] = { + "LH_FILE_MODE_0", + "LH_FILE_MODE_1", + "LH_FILE_MODE_READ", + "LH_FILE_MODE_3", +}; + +enum LH_SEEK_MODE +{ + LH_SEEK_MODE_BEGIN = 0x0, + LH_SEEK_MODE_CURRENT = 0x1, + LH_SEEK_MODE_END = 0x2, + _LH_SEEK_MODE_COUNT = 0x3 +}; +static_assert(sizeof(enum LH_SEEK_MODE) == 0x4, "Data type is of wrong size"); + +static const char* LH_SEEK_MODE_strs[_LH_SEEK_MODE_COUNT] = { + "LH_SEEK_MODE_BEGIN", + "LH_SEEK_MODE_CURRENT", + "LH_SEEK_MODE_END", +}; + +struct LHFileVftable +{ + uint32_t (__fastcall* Open)(struct LHFile* this, const void* edx, enum LH_FILE_MODE param_1); /* 0x0 */ +}; +static_assert(sizeof(struct LHFileVftable) == 0x4, "Data type is of wrong size"); + +struct LHFile +{ + struct LHFileVftable* vftable; /* 0x0 */ + uint32_t* field_0x4; + uint32_t field_0x8; + bool opened; + void* handle; /* 0x10 */ + void* field_0x14[0x9]; + uint32_t field_0x38; + uint32_t field_0x3c; + uint32_t field_0x40; + uint32_t (__cdecl* custom_read_function)(void* param_0, size_t param_1, void* param_2); + uint32_t (__cdecl* custom_set_file_pointer_function)(uint32_t param_0, uint32_t param_1, void* param_2); + void* custom_read_function_user_data; + enum LH_FILE_MODE file_mode; /* 0x50 */ + bool segment_opened; + uint32_t segment_size; + uint32_t current_file_offset; + uint32_t segment_offset; /* 0x60 */ + char* segment_name; + char* file_name; +}; +static_assert(sizeof(struct LHFile) == 0x6c, "Data type is of wrong size"); + +static struct LHFileVftable* __vt__6LHFile = (struct LHFileVftable*)0x008c4d14; + +// Constructors + +// win1.41 0042e110 mac 10183650 LHFile::LHFile(void) +struct LHFile* __fastcall __ct__6LHFileFv(struct LHFile* this); + +// Non-virtual methods + +// win1.41 0042e160 mac 100cd100 LHFile::ResetData(void) +uint32_t __fastcall ResetData__6LHFile(struct LHFile* this); +// win1.41 007bd390 mac 1061c61c LHFile::SetName(char const *) +uint32_t __fastcall SetName__6LHFileFPCc(struct LHFile* this, const void* edx, const char* name); +// win1.41 007bd7d0 mac 10168870 LHFile::VerifyFile(void) +uint32_t __fastcall VerifyFile__6LHFileFv(struct LHFile* this); +// win1.41 007bd9d0 mac 10168610 LHFile::AllocSegDataMem(LHSegment *) +uint32_t __fastcall AllocSegDataMem__6LHFileFP9LHSegment(struct LHFile* this, const void* edx, struct LHSegment* segment); +// win1.41 007bdb20 mac 101681d0 LHFile::WriteSegmentHeader(char *) +uint32_t __fastcall WriteSegmentHeader__6LHFileFPc(struct LHFile* this, const void* edx, char* segment_name); +// win1.41 007bdbc0 mac 1061c64c LHFile::Close(void) +uint32_t __fastcall Close__6LHFileFv(struct LHFile* this); +// win1.41 007bdc60 mac 10005210 LHFile::Lookup(char *) +struct LHSegmentDesc* __fastcall Lookup__6LHFileFPc(struct LHFile* this, const void* edx, char* segment_name); +// win1.41 007bdcd0 mac 100050e0 LHFile::SetLHFilePointer(char *, long) +uint32_t __fastcall SetLHFilePointer__6LHFileFPcl(struct LHFile* this, const void* edx, char* segment_name, int offset); +// win1.41 007bddd0 mac 10167790 LHFile::GetSegment(char *, LHSegment *, int) +uint32_t __fastcall GetSegment__6LHFileFPcP9LHSegmenti(struct LHFile* this, const void* edx, char* param_2, struct LHSegment* segment, int param_4); +// win1.41 007bdec0 mac 10004fe0 LHFile::OpenSegment(char *) +uint32_t __fastcall OpenSegment__6LHFileFPc(struct LHFile* this, const void* edx, char* name); +// win1.41 007bdf50 mac 10004d90 LHFile::CloseSegment(void) +uint32_t __fastcall CloseSegment__6LHFileFv(struct LHFile* this); +// win1.41 007be040 mac 10166bb0 LHFile::GetSegmentData(void* , unsigned long, long) +uint32_t __fastcall GetSegmentData__6LHFileFPvUll(struct LHFile* this, const void* edx, void* data, size_t data_size, int offset); +// win1.41 007be120 mac 10004c90 LHFile::ReadData(void* , unsigned long) +uint32_t __fastcall ReadData__6LHFileFPvUl(struct LHFile* this, const void* edx, void* data, size_t length); + +// Override methods + +// win1.41 007bd500 mac 10168d60 LHFile::Open(LH_FILE_MODE) +uint32_t __fastcall Open__6LHFileF12LH_FILE_MODE(struct LHFile* this, const void* edx, enum LH_FILE_MODE mode); + +// win1.41 007bc960 mac 101643e0 LHFileLength(char *, unsigned long *) +uint32_t __cdecl LHFileLength__FPcPUl(const char* filename, size_t* size); +// win1.41 007bcdf0 mac 10163ab0 LHLoadData(char *, void *, unsigned long, unsigned long *) +void __cdecl LHLoadData__FPcPvUlPUl(const char* filename, void* dst, unsigned long size, unsigned long* param_4); + +#endif /* BW1_DECOMP_LH_FILE_INCLUDED_H */ diff --git a/libs/lionhead/lhfile/ver3.0/LHFilePath.h b/libs/lionhead/lhfile/ver3.0/LHFilePath.h new file mode 100644 index 0000000..d790dc4 --- /dev/null +++ b/libs/lionhead/lhfile/ver3.0/LHFilePath.h @@ -0,0 +1,33 @@ +#ifndef BW1_DECOMP_LH_FILE_PATH_INCLUDED_H +#define BW1_DECOMP_LH_FILE_PATH_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +struct LHFilePath +{ + char* current_view; /* 0x0 */ + int current_view_len; + char* buffer; + uint32_t buffer_len; + uint32_t field_0x10; + uint32_t field_0x14; + char* field_0x18; + uint32_t field_0x1c; +}; +static_assert(sizeof(struct LHFilePath) == 0x20, "Data type is of wrong size"); + +// Static methods + +// win1.41 007c6e1d mac inlined LHFilePath::fopen(void) +struct LHFilePath* __cdecl fopen__10LHFilePath(const char* path, const char* mode); +// win1.41 007c6e30 mac 1016a4a0 LHFilePath::~LHFilePath(void) +void __cdecl __dt__10LHFilePathFv(struct LHFilePath* this); +// win1.41 007c6db0 mac inlined LHFilePath::fprintf +int __cdecl fprintf__10LHFilePath(struct LHFilePath* path, char* fmt, void* param_2); +// win1.41 007c7daa mac inlined LHFilePath::fscanf +int __cdecl fscanf_10LHFilePath(struct LHFilePath* path, const char* fmt, void* param_2); +// win1.41 007c7dd7 mac inlined LHFilePath::getc +char __cdecl getc_10LHFilePath(struct LHFilePath* path); + +#endif /* BW1_DECOMP_LH_FILE_PATH_INCLUDED_H */ diff --git a/libs/lionhead/lhfile/ver3.0/LHOSFile.h b/libs/lionhead/lhfile/ver3.0/LHOSFile.h new file mode 100644 index 0000000..34cfda1 --- /dev/null +++ b/libs/lionhead/lhfile/ver3.0/LHOSFile.h @@ -0,0 +1,63 @@ +#ifndef BW1_DECOMP_LHOS_FILE_INCLUDED_H +#define BW1_DECOMP_LHOS_FILE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For size_t */ +#include /* For uint32_t */ + +#include "LHFile.h" /* For enum LH_FILE_MODE, enum LH_SEEK_MODE */ + +// Forward Declares + +struct LHOSFile; + +struct LHOSFileVftable +{ + void* (__fastcall* __dt)(struct LHOSFile* this, const void* edx, bool param_1); /* 0x0 */ + uint32_t (__fastcall* Open)(struct LHOSFile* this, const void* edx, const char* path, enum LH_FILE_MODE mode); +}; +static_assert(sizeof(struct LHOSFileVftable) == 0x8, "Data type is of wrong size"); + +struct LHOSFile +{ + struct LHOSFileVftable* vftable; /* 0x0 */ + void* handle; +}; +static_assert(sizeof(struct LHOSFile) == 0x8, "Data type is of wrong size"); + +static struct LHOSFileVftable* __vt__8LHOSFile = (struct LHOSFileVftable*)0x0099f86c; + +// Static methods + +// win1.41 007bc6a0 mac 10164e30 LHOSFile::Exists(const char*) +uint32_t __cdecl Exists__8LHOSFileFPc(const char* path); + +// Constructors + +// win1.41 007bc650 mac 10164fc0 LHOSFile::LHOSFile(void) +struct LHOSFile* __fastcall __ct__8LHOSFileFv(struct LHOSFile* this); + +// Non-virtual methods + +// win1.41 0046b720 mac inlined LHOSFile::Write(char *const) +uint32_t __fastcall Write__8LHOSFileFCPc(struct LHOSFile* this, const void* edx, const char* str); +// win1.41 007bc680 mac inlined LHOSFile::~LHOSFile(void) +void __fastcall __dt__8LHOSFileFv(struct LHOSFile* this); +// win1.41 007bc860 mac 1061b68c LHOSFile::Close(void) +uint32_t __fastcall Close__8LHOSFileFv(struct LHOSFile* this); +// win1.41 007bc880 mac 1061beb4 LHOSFile::Seek(long, LH_SEEK_MODE, unsigned long *) +uint32_t __fastcall Seek__8LHOSFileFl12LH_SEEK_MODEPUl(struct LHOSFile* this, const void* edx, size_t pos, enum LH_SEEK_MODE mode, uint32_t* starting_point); +// win1.41 007bc8e0 mac 1061cc94 LHOSFile::Read(void* , unsigned long, unsigned long *) +uint32_t __fastcall Read__8LHOSFileFPvUlPUl(struct LHOSFile* this, const void* edx, void* buffer, size_t size, size_t* read); +// win1.41 007bc920 mac 1061bbb4 LHOSFile::Write(void* , unsigned long, unsigned long *) +uint32_t __fastcall Write__8LHOSFileFPvUlPUl(struct LHOSFile* this, const void* edx, const void* data, uint32_t len, uint32_t* written); + +// Override methods + +// win1.41 007bc660 mac 10164ef0 LHOSFile::~LHOSFile(bool) +struct LHOSFile* __fastcall __dt__8LHOSFileFb(struct LHOSFile* this, const void* edx, bool param_2); +// win1.41 007bc730 mac 10164b40 LHOSFile::Open(const char*, LH_FILE_MODE) +uint32_t __fastcall Open__8LHOSFileFPc12LH_FILE_MODE(struct LHOSFile* this, const void* edx, const char* path, enum LH_FILE_MODE mode); + +#endif /* BW1_DECOMP_LHOS_FILE_INCLUDED_H */ diff --git a/libs/lionhead/lhfile/ver3.0/LHReleasedFile.h b/libs/lionhead/lhfile/ver3.0/LHReleasedFile.h new file mode 100644 index 0000000..ca59c44 --- /dev/null +++ b/libs/lionhead/lhfile/ver3.0/LHReleasedFile.h @@ -0,0 +1,29 @@ +#ifndef BW1_DECOMP_LH_RELEASED_FILE_INCLUDED_H +#define BW1_DECOMP_LH_RELEASED_FILE_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LHFile.h" /* For enum LH_FILE_MODE, struct LHFile */ + +struct LHReleasedFile +{ + struct LHFile super; /* 0x0 */ +}; +static_assert(sizeof(struct LHReleasedFile) == 0x6c, "Data type is of wrong size"); + +static struct LHFileVftable* __vt__14LHReleasedFile = (struct LHFileVftable*)0x008c4d0c; + +// Constructors + +// win1.41 0047f6d0 mac 101c9350 LHReleasedFile::LHReleasedFile +struct LHReleasedFile* __fastcall __ct__14LHReleasedFileFv(struct LHReleasedFile* this); +// win1.41 00837350 mac inlined LHReleasedFile::LHReleasedFile(char const *) +struct LHReleasedFile* __fastcall __ct__14LHReleasedFileFPCc(struct LHReleasedFile* this, const void* edx, const char* name); + +// Override methods + +// win1.41 007bd730 mac 1061c784 LHReleasedFile::Open(LH_FILE_MODE) +uint32_t __fastcall Open__14LHReleasedFileF12LH_FILE_MODE(struct LHReleasedFile* this, const void* edx, enum LH_FILE_MODE mode); + +#endif /* BW1_DECOMP_LH_RELEASED_FILE_INCLUDED_H */ diff --git a/libs/lionhead/lhfile/ver3.0/LHReleasedOSFile.h b/libs/lionhead/lhfile/ver3.0/LHReleasedOSFile.h new file mode 100644 index 0000000..816ba1b --- /dev/null +++ b/libs/lionhead/lhfile/ver3.0/LHReleasedOSFile.h @@ -0,0 +1,31 @@ +#ifndef BW1_DECOMP_LH_RELEASED_OS_FILE_INCLUDED_H +#define BW1_DECOMP_LH_RELEASED_OS_FILE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t */ + +#include "LHFile.h" /* For enum LH_FILE_MODE */ +#include "LHOSFile.h" /* For struct LHOSFile */ + +struct LHReleasedOSFile +{ + struct LHOSFile super; /* 0x0 */ +}; +static_assert(sizeof(struct LHReleasedOSFile) == 0x8, "Data type is of wrong size"); + +static struct LHOSFileVftable* __vt__16LHReleasedOSFile = (struct LHOSFileVftable*)0x008c4d00; + +// Constructors + +// win1.41 007e6d10 mac inlined LHReleasedOSFile::LHReleasedOSFile(void) +struct LHReleasedOSFile* __fastcall __ct__16LHReleasedOSFileFv(struct LHReleasedOSFile* this); + +// Override methods + +// win1.41 0042fd40 mac 1012d3f0 LHReleasedOSFile::~LHReleasedOSFile(void) +struct LHReleasedOSFile* __fastcall __dt__16LHReleasedOSFileFv(struct LHReleasedOSFile* this, const void* edx, bool param_1); +// win1.41 007bc7e0 mac 10164a30 LHReleasedOSFile::Open(const char*, LH_FILE_MODE) +uint32_t __fastcall Open__16LHReleasedOSFileFPc12LH_FILE_MODE(struct LHReleasedOSFile* this, const void* edx, const char* path, enum LH_FILE_MODE mode); + +#endif /* BW1_DECOMP_LH_RELEASED_OS_FILE_INCLUDED_H */ diff --git a/libs/lionhead/lhfile/ver3.0/LHSegment.h b/libs/lionhead/lhfile/ver3.0/LHSegment.h new file mode 100644 index 0000000..ad3da86 --- /dev/null +++ b/libs/lionhead/lhfile/ver3.0/LHSegment.h @@ -0,0 +1,30 @@ +#ifndef BW1_DECOMP_LH_SEGMENT_INCLUDED_H +#define BW1_DECOMP_LH_SEGMENT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +struct LHSegmentDesc +{ + uint32_t field_0x0; + uint32_t field_0x4; + uint8_t field_0x8[0x1c]; + uint32_t offset; /* 0x24 */ + uint32_t size; +}; +static_assert(sizeof(struct LHSegmentDesc) == 0x2c, "Data type is of wrong size"); + +struct LHSegment +{ + uint8_t name[0x21]; /* 0x0 */ + uint32_t size; /* 0x24 */ + uint8_t* buffer; +}; +static_assert(sizeof(struct LHSegment) == 0x2c, "Data type is of wrong size"); + +// Constructors + +// win1.41 inlined mac 1005c5c0 LHSegment::LHSegment(void) +struct LHSegment* __fastcall __ct__9LHSegmentFv(struct LHSegment* this); + +#endif /* BW1_DECOMP_LH_SEGMENT_INCLUDED_H */ diff --git a/libs/lionhead/lhlib/ver5.0/GJVector.h b/libs/lionhead/lhlib/ver5.0/GJVector.h new file mode 100644 index 0000000..ae6b739 --- /dev/null +++ b/libs/lionhead/lhlib/ver5.0/GJVector.h @@ -0,0 +1,25 @@ +#ifndef BW1_DECOMP_GJ_VECTOR_INCLUDED_H +#define BW1_DECOMP_GJ_VECTOR_INCLUDED_H + +#include // For uint32_t + +/// Every template of the form +/// template +/// class GJVector { +/// uint32_t field_0x0; +/// uint32_t field_0x4; +/// uint32_t field_0x8; +/// uint32_t field_0xc = 10; +/// }; +/// has the same structure + +#define DECLARE_GJ_VECTOR(T) \ +struct GJVector__##T \ +{ \ + uint32_t field_0x0; \ + uint32_t field_0x4; \ + uint32_t field_0x8; \ + uint32_t field_0xc; \ +} + +#endif /* BW1_DECOMP_GJ_VECTOR_INCLUDED_H */ diff --git a/libs/lionhead/lhlib/ver5.0/LHJoypad.h b/libs/lionhead/lhlib/ver5.0/LHJoypad.h new file mode 100644 index 0000000..085a88a --- /dev/null +++ b/libs/lionhead/lhlib/ver5.0/LHJoypad.h @@ -0,0 +1,24 @@ +#ifndef BW1_DECOMP_LH_JOYPAD_INCLUDED_H +#define BW1_DECOMP_LH_JOYPAD_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +struct LHJoypad +{ + uint32_t field_0x0; + uint8_t field_0x4; + uint8_t field_0x5; + uint8_t field_0x6[0x2]; + uint8_t field_0x8[0x138]; +}; +static_assert(sizeof(struct LHJoypad) == 0x140, "Data type is of wrong size"); + +struct LHJoypads +{ + struct LHJoypad joypads[0x2]; /* 0x0 */ + uint32_t count; /* 0x280 */ +}; +static_assert(sizeof(struct LHJoypads) == 0x284, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_JOYPAD_INCLUDED_H */ diff --git a/libs/lionhead/lhlib/ver5.0/LHLinkedList.h b/libs/lionhead/lhlib/ver5.0/LHLinkedList.h new file mode 100644 index 0000000..0c1660b --- /dev/null +++ b/libs/lionhead/lhlib/ver5.0/LHLinkedList.h @@ -0,0 +1,63 @@ +#ifndef BW1_DECOMP_LH_LINKED_LIST_INCLUDED_H +#define BW1_DECOMP_LH_LINKED_LIST_INCLUDED_H + +/// Every template of the form +/// template +/// class LHLinkedNode { +/// LHFastPointer> next; +/// T* payload; +/// }; +/// template +/// class LHLinkedList { +/// LHFastPointer> head; +/// uint32_t count; +/// inline LHLinkedNode* GetStart() +/// { +/// return head.get(); +/// } +/// inline bool Add(T* val) +/// { +/// if (!val) return false; +/// LHLinkedNode* node = new LHLinkedNode(val); +/// node->next = head; +/// head = node; +/// ++count; +/// return true; +/// } +/// }; +/// has the same structure + +#include /* For bool */ +#include /* For uin32_t */ +#include /* For malloc */ + +#define DECLARE_LH_LINKED_LIST(T) \ +struct LHLinkedNode__##T \ +{ \ + struct LHLinkedNode__##T* next; \ + struct T* payload; \ +}; \ +struct LHLinkedList__##T \ +{ \ + struct LHLinkedNode__##T* head; \ + uint32_t count; \ +}; \ +inline struct LHLinkedNode__##T* __fastcall GetStart__LHLinkedList__##T##Fv(struct LHLinkedList__##T* this) \ +{ \ + return this->head; \ +} \ +inline bool __fastcall Add__LHLinkedList__##T##FP##T(struct LHLinkedList__##T* this, const void* edx, struct T* val) \ +{ \ + if (val == NULL) \ + { \ + return false; \ + } \ + struct LHLinkedNode__##T* node = (struct LHLinkedNode__##T*)malloc(sizeof(struct LHLinkedNode__##T)); \ + node->payload = val; \ + node->next = this->head; \ + this->head = node; \ + ++this->count; \ + return true; \ +} + +#endif /* BW1_DECOMP_LH_LINKED_LIST_INCLUDED_H */ diff --git a/libs/lionhead/lhlib/ver5.0/LHListHead.h b/libs/lionhead/lhlib/ver5.0/LHListHead.h new file mode 100644 index 0000000..67b1772 --- /dev/null +++ b/libs/lionhead/lhlib/ver5.0/LHListHead.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_LH_LIST_HEAD_INCLUDED_H +#define BW1_DECOMP_LH_LIST_HEAD_INCLUDED_H + +#include // For uint32_t + +// On ppc, there are two std::map for some reason +/// Every template of the form +/// template // Must have T.next and must be T* +/// class LHListHead { +/// LHFastPointer head; +/// uint32_t count; +/// }; +/// has the same structure + +#define DECLARE_LH_LIST_HEAD(T) \ +struct LHListHead__##T \ +{ \ + struct T* head; \ + uint32_t count; \ +} + +#endif /* BW1_DECOMP_LH_LIST_HEAD_INCLUDED_H */ diff --git a/libs/lionhead/lhlib/ver5.0/LHMouse.h b/libs/lionhead/lhlib/ver5.0/LHMouse.h new file mode 100644 index 0000000..3ed4a28 --- /dev/null +++ b/libs/lionhead/lhlib/ver5.0/LHMouse.h @@ -0,0 +1,298 @@ +#ifndef BW1_DECOMP_LH_MOUSE_INCLUDED_H +#define BW1_DECOMP_LH_MOUSE_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint16_t, uint32_t, uint8_t */ + +#include /* For struct LHCoord */ +#include /* For struct LHRegion */ +#include /* For bool32_t */ + +#include "LHScreen.h" /* For enum LH_SCREEN_BUFFER */ + +// Forward Declares + +struct LHSprite; +struct LHSurface; + +enum LH_MOUSE_IMAGE_TYPE +{ + LH_MOUSE_IMAGE_TYPE_0x00 = 0x0, + LH_MOUSE_IMAGE_TYPE_0x01 = 0x1, + LH_MOUSE_IMAGE_TYPE_0x02 = 0x2, + LH_MOUSE_IMAGE_TYPE_0x03 = 0x3, + LH_MOUSE_IMAGE_TYPE_0x04 = 0x4, + LH_MOUSE_IMAGE_TYPE_0x05 = 0x5, + LH_MOUSE_IMAGE_TYPE_0x06 = 0x6, + LH_MOUSE_IMAGE_TYPE_0x07 = 0x7, + LH_MOUSE_IMAGE_TYPE_0x08 = 0x8, + LH_MOUSE_IMAGE_TYPE_0x09 = 0x9, + LH_MOUSE_IMAGE_TYPE_0x0a = 0xa, + LH_MOUSE_IMAGE_TYPE_0x0b = 0xb, + LH_MOUSE_IMAGE_TYPE_0x0c = 0xc, + LH_MOUSE_IMAGE_TYPE_0x0d = 0xd, + LH_MOUSE_IMAGE_TYPE_0x0e = 0xe, + LH_MOUSE_IMAGE_TYPE_0x0f = 0xf, + LH_MOUSE_IMAGE_TYPE_0x10 = 0x10, + LH_MOUSE_IMAGE_TYPE_0x11 = 0x11, + LH_MOUSE_IMAGE_TYPE_0x12 = 0x12, + LH_MOUSE_IMAGE_TYPE_0x13 = 0x13, + LH_MOUSE_IMAGE_TYPE_0x14 = 0x14, + LH_MOUSE_IMAGE_TYPE_0x15 = 0x15, + LH_MOUSE_IMAGE_TYPE_0x16 = 0x16, + LH_MOUSE_IMAGE_TYPE_0x17 = 0x17, + LH_MOUSE_IMAGE_TYPE_0x18 = 0x18, + LH_MOUSE_IMAGE_TYPE_0x19 = 0x19, + LH_MOUSE_IMAGE_TYPE_0x1a = 0x1a, + LH_MOUSE_IMAGE_TYPE_0x1b = 0x1b, + LH_MOUSE_IMAGE_TYPE_0x1c = 0x1c, + LH_MOUSE_IMAGE_TYPE_0x1d = 0x1d, + LH_MOUSE_IMAGE_TYPE_0x1e = 0x1e, + LH_MOUSE_IMAGE_TYPE_0x1f = 0x1f, + LH_MOUSE_IMAGE_TYPE_0x20 = 0x20, + LH_MOUSE_IMAGE_TYPE_0x21 = 0x21, + LH_MOUSE_IMAGE_TYPE_0x22 = 0x22, + LH_MOUSE_IMAGE_TYPE_0x23 = 0x23, + LH_MOUSE_IMAGE_TYPE_0x24 = 0x24, + LH_MOUSE_IMAGE_TYPE_0x25 = 0x25, + LH_MOUSE_IMAGE_TYPE_0x26 = 0x26, + LH_MOUSE_IMAGE_TYPE_0x27 = 0x27, + LH_MOUSE_IMAGE_TYPE_0x28 = 0x28, + LH_MOUSE_IMAGE_TYPE_0x29 = 0x29, + LH_MOUSE_IMAGE_TYPE_0x2a = 0x2a, + LH_MOUSE_IMAGE_TYPE_0x2b = 0x2b, + LH_MOUSE_IMAGE_TYPE_0x2c = 0x2c, + LH_MOUSE_IMAGE_TYPE_0x2d = 0x2d, + LH_MOUSE_IMAGE_TYPE_0x2e = 0x2e, + LH_MOUSE_IMAGE_TYPE_0x2f = 0x2f, + LH_MOUSE_IMAGE_TYPE_0x30 = 0x30, + LH_MOUSE_IMAGE_TYPE_0x31 = 0x31, + LH_MOUSE_IMAGE_TYPE_0x32 = 0x32, + LH_MOUSE_IMAGE_TYPE_0x33 = 0x33, + LH_MOUSE_IMAGE_TYPE_0x34 = 0x34, + LH_MOUSE_IMAGE_TYPE_0x35 = 0x35, + LH_MOUSE_IMAGE_TYPE_0x36 = 0x36, + LH_MOUSE_IMAGE_TYPE_0x37 = 0x37, + LH_MOUSE_IMAGE_TYPE_0x38 = 0x38, + LH_MOUSE_IMAGE_TYPE_0x39 = 0x39, + LH_MOUSE_IMAGE_TYPE_0x3a = 0x3a, + LH_MOUSE_IMAGE_TYPE_0x3b = 0x3b, + LH_MOUSE_IMAGE_TYPE_0x3c = 0x3c, + LH_MOUSE_IMAGE_TYPE_0x3d = 0x3d, + LH_MOUSE_IMAGE_TYPE_0x3e = 0x3e, + LH_MOUSE_IMAGE_TYPE_0x3f = 0x3f, + LH_MOUSE_IMAGE_TYPE_0x40 = 0x40, + _LH_MOUSE_IMAGE_TYPE_COUNT = 0x41 +}; +static_assert(sizeof(enum LH_MOUSE_IMAGE_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* LH_MOUSE_IMAGE_TYPE_strs[_LH_MOUSE_IMAGE_TYPE_COUNT] = { + "LH_MOUSE_IMAGE_TYPE_0x00", + "LH_MOUSE_IMAGE_TYPE_0x01", + "LH_MOUSE_IMAGE_TYPE_0x02", + "LH_MOUSE_IMAGE_TYPE_0x03", + "LH_MOUSE_IMAGE_TYPE_0x04", + "LH_MOUSE_IMAGE_TYPE_0x05", + "LH_MOUSE_IMAGE_TYPE_0x06", + "LH_MOUSE_IMAGE_TYPE_0x07", + "LH_MOUSE_IMAGE_TYPE_0x08", + "LH_MOUSE_IMAGE_TYPE_0x09", + "LH_MOUSE_IMAGE_TYPE_0x0a", + "LH_MOUSE_IMAGE_TYPE_0x0b", + "LH_MOUSE_IMAGE_TYPE_0x0c", + "LH_MOUSE_IMAGE_TYPE_0x0d", + "LH_MOUSE_IMAGE_TYPE_0x0e", + "LH_MOUSE_IMAGE_TYPE_0x0f", + "LH_MOUSE_IMAGE_TYPE_0x10", + "LH_MOUSE_IMAGE_TYPE_0x11", + "LH_MOUSE_IMAGE_TYPE_0x12", + "LH_MOUSE_IMAGE_TYPE_0x13", + "LH_MOUSE_IMAGE_TYPE_0x14", + "LH_MOUSE_IMAGE_TYPE_0x15", + "LH_MOUSE_IMAGE_TYPE_0x16", + "LH_MOUSE_IMAGE_TYPE_0x17", + "LH_MOUSE_IMAGE_TYPE_0x18", + "LH_MOUSE_IMAGE_TYPE_0x19", + "LH_MOUSE_IMAGE_TYPE_0x1a", + "LH_MOUSE_IMAGE_TYPE_0x1b", + "LH_MOUSE_IMAGE_TYPE_0x1c", + "LH_MOUSE_IMAGE_TYPE_0x1d", + "LH_MOUSE_IMAGE_TYPE_0x1e", + "LH_MOUSE_IMAGE_TYPE_0x1f", + "LH_MOUSE_IMAGE_TYPE_0x20", + "LH_MOUSE_IMAGE_TYPE_0x21", + "LH_MOUSE_IMAGE_TYPE_0x22", + "LH_MOUSE_IMAGE_TYPE_0x23", + "LH_MOUSE_IMAGE_TYPE_0x24", + "LH_MOUSE_IMAGE_TYPE_0x25", + "LH_MOUSE_IMAGE_TYPE_0x26", + "LH_MOUSE_IMAGE_TYPE_0x27", + "LH_MOUSE_IMAGE_TYPE_0x28", + "LH_MOUSE_IMAGE_TYPE_0x29", + "LH_MOUSE_IMAGE_TYPE_0x2a", + "LH_MOUSE_IMAGE_TYPE_0x2b", + "LH_MOUSE_IMAGE_TYPE_0x2c", + "LH_MOUSE_IMAGE_TYPE_0x2d", + "LH_MOUSE_IMAGE_TYPE_0x2e", + "LH_MOUSE_IMAGE_TYPE_0x2f", + "LH_MOUSE_IMAGE_TYPE_0x30", + "LH_MOUSE_IMAGE_TYPE_0x31", + "LH_MOUSE_IMAGE_TYPE_0x32", + "LH_MOUSE_IMAGE_TYPE_0x33", + "LH_MOUSE_IMAGE_TYPE_0x34", + "LH_MOUSE_IMAGE_TYPE_0x35", + "LH_MOUSE_IMAGE_TYPE_0x36", + "LH_MOUSE_IMAGE_TYPE_0x37", + "LH_MOUSE_IMAGE_TYPE_0x38", + "LH_MOUSE_IMAGE_TYPE_0x39", + "LH_MOUSE_IMAGE_TYPE_0x3a", + "LH_MOUSE_IMAGE_TYPE_0x3b", + "LH_MOUSE_IMAGE_TYPE_0x3c", + "LH_MOUSE_IMAGE_TYPE_0x3d", + "LH_MOUSE_IMAGE_TYPE_0x3e", + "LH_MOUSE_IMAGE_TYPE_0x3f", + "LH_MOUSE_IMAGE_TYPE_0x40", +}; + +enum LH_MOUSE_EVENT_TYPE +{ + LH_MOUSE_EVENT_TYPE_0x0 = 0x0, + LH_MOUSE_EVENT_TYPE_0x1 = 0x1, + LH_MOUSE_EVENT_TYPE_0x2 = 0x2, + LH_MOUSE_EVENT_TYPE_0x3 = 0x3, + LH_MOUSE_EVENT_TYPE_0x4 = 0x4, + _LH_MOUSE_EVENT_TYPE_COUNT = 0x5 +}; +static_assert(sizeof(enum LH_MOUSE_EVENT_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* LH_MOUSE_EVENT_TYPE_strs[_LH_MOUSE_EVENT_TYPE_COUNT] = { + "LH_MOUSE_EVENT_TYPE_0x0", + "LH_MOUSE_EVENT_TYPE_0x1", + "LH_MOUSE_EVENT_TYPE_0x2", + "LH_MOUSE_EVENT_TYPE_0x3", + "LH_MOUSE_EVENT_TYPE_0x4", +}; + +struct LHMouse +{ + enum LH_SCREEN_BUFFER screen_buffer; /* 0x0 */ + bool (__cdecl* handler)(void* param_0, enum LH_MOUSE_EVENT_TYPE param_1, uint32_t param_2, uint32_t param_3); + uint32_t field_0x8; + bool32_t in_window; + uint8_t field_0x10; + uint8_t field_0x11; + uint8_t field_0x12; + uint8_t field_0x13; + enum LH_MOUSE_IMAGE_TYPE image_0x14; + enum LH_MOUSE_IMAGE_TYPE image_0x18; + uint32_t field_0x1c; + uint16_t field_0x20; + uint8_t field_0x22; + uint8_t field_0x23; + enum LH_MOUSE_EVENT_TYPE field_0x24; + uint32_t field_0x28; + struct LHSurface* field_0x2c; + uint8_t field_0x30; + uint8_t field_0x31; + uint8_t field_0x32; + uint8_t field_0x33; + struct LHSurface* field_0x34; + void* field_0x38; + struct LHSurface* field_0x3c; + struct LHSurface* field_0x40; + bool32_t is_wheel_present; + uint32_t num_buttons; + int field_0x4c; + struct LHSprite* field_0x50; + struct LHCoord* field_0x54; + struct LHSurface** field_0x58; + uint16_t field_0x5c; + uint8_t field_0x5e; + uint8_t field_0x5f; + uint32_t field_0x60; + uint16_t field_0x64; + uint8_t field_0x66; + uint8_t field_0x67; + uint8_t field_0x68; + uint8_t field_0x69; + uint8_t field_0x6a; + uint8_t field_0x6b; + int field_0x6c; + int field_0x70; + struct LHRegion field_0x74; + struct LHRegion field_0x84; + struct LHRegion field_0x94; + struct LHRegion field_0xa4; + struct LHCoord field_0xb4; + struct LHCoord pos; + struct LHCoord field_0xc4; + uint8_t field_0xcc; + uint8_t field_0xcd; + uint8_t field_0xce; + uint8_t field_0xcf; + struct LHCoord current_pos; /* 0xd0 */ + uint8_t field_0xd8; + uint8_t field_0xd9; + uint8_t field_0xda; + uint8_t field_0xdb; + uint8_t field_0xdc; + uint8_t field_0xdd; + uint8_t field_0xde; + uint8_t field_0xdf; + struct LHCoord coord_0xe0; + struct LHCoord effective_pos; + struct LHCoord padding; /* 0xf0 */ + bool32_t use_padding; + uint32_t field_0xfc; + uint32_t field_0x100; + uint32_t field_0x104; + uint32_t field_0x108; + uint32_t field_0x10c; + uint32_t field_0x110; + uint32_t field_0x114; + uint32_t field_0x118; + uint32_t field_0x11c; + uint32_t field_0x120; + uint32_t field_0x124; + uint32_t field_0x128; + uint32_t field_0x12c; + uint32_t field_0x130; + uint32_t field_0x134; + uint32_t field_0x138; + uint32_t field_0x13c; + uint32_t field_0x140; + uint32_t field_0x144; + uint32_t field_0x148; + uint32_t field_0x14c; + void* field_0x150; + uint32_t field_0x154; + uint32_t field_0x158; + uint32_t field_0x15c; + uint32_t field_0x160; + uint32_t field_0x164; +}; +static_assert(sizeof(struct LHMouse) == 0x168, "Data type is of wrong size"); + +// Constructors + +// win1.41 007e4f20 mac 10145820 LHMouse::LHMouse(void) +struct LHMouse* __fastcall __ct__7LHMouseFv(struct LHMouse* this); + +// Non-virtual methods + +// win1.41 007e4810 mac 10091970 LHMouse::DeltaPos(void) +void __fastcall DeltaPos__7LHMouseFv(struct LHMouse* this); +// win1.41 007e49a0 mac 10006f30 LHMouse::UpdateCurrentPos(LHCoord) +void __fastcall UpdateCurrentPos__7LHMouseF7LHCoord(struct LHMouse* this, const void* edx, struct LHCoord coord); +// win1.41 007e4e40 mac 101459e0 LHMouse::SetPosition(LHCoord *) +bool __fastcall SetPosition__7LHMouseFP7LHCoord(struct LHMouse* this, const void* edx, struct LHCoord* position); +// win1.41 007e53b0 mac 10145190 LHMouse::SetCursor(void *, LH_MOUSE_IMAGE_TYPE, int) +uint32_t __fastcall SetCursor__7LHMouseFPv19LH_MOUSE_IMAGE_TYPEi(struct LHMouse* this, const void* edx, void* param_2, enum LH_MOUSE_IMAGE_TYPE mouse_image_type, int param_4); +// win1.41 007e57c0 mac 1003fb90 LHMouse::Draw(LH_SCREEN_BUFFER, LH_MOUSE_EVENT_TYPE) +void __fastcall Draw__7LHMouseF16LH_SCREEN_BUFFER19LH_MOUSE_EVENT_TYPE(struct LHMouse* this, const void* edx, enum LH_SCREEN_BUFFER buffer, enum LH_MOUSE_EVENT_TYPE event_type); + +// win1.41 0054a770 mac 1007b120 SetTurnOffMouseMove(bool) +void __cdecl SetTurnOffMouseMove__Fb(bool value); + +#endif /* BW1_DECOMP_LH_MOUSE_INCLUDED_H */ diff --git a/libs/lionhead/lhlib/ver5.0/LHRand.h b/libs/lionhead/lhlib/ver5.0/LHRand.h new file mode 100644 index 0000000..49dc4ce --- /dev/null +++ b/libs/lionhead/lhlib/ver5.0/LHRand.h @@ -0,0 +1,11 @@ +#ifndef BW1_DECOMP_LH_RAND_INCLUDED_H +#define BW1_DECOMP_LH_RAND_INCLUDED_H + +#include /* For uint32_t */ + +// win1.41 007db600 mac 103d9480 LHRand(long, unsigned &) +uint32_t __cdecl LHRand__FlRU(uint32_t scale, uint32_t* seed); +// win1.41 0081d180 mac 1001f510 Random(float, float) +float __stdcall Random__Fff(float min_val, float max_val); + +#endif /* BW1_DECOMP_LH_RAND_INCLUDED_H */ diff --git a/libs/lionhead/lhlib/ver5.0/LHScreen.h b/libs/lionhead/lhlib/ver5.0/LHScreen.h new file mode 100644 index 0000000..3359c89 --- /dev/null +++ b/libs/lionhead/lhlib/ver5.0/LHScreen.h @@ -0,0 +1,86 @@ +#ifndef BW1_DECOMP_LH_SCREEN_INCLUDED_H +#define BW1_DECOMP_LH_SCREEN_INCLUDED_H + +#include /* For static_assert */ +#include /* For IDirectDraw7, IDirectDrawClipper, IDirectDrawSurface7 */ +#include /* For bool */ +#include /* For int32_t, uint16_t, uint32_t, uint8_t */ + +#include /* For struct LHCoord */ +#include /* For struct LHRegion */ +#include /* For HWND */ + +// Forward Declares + +struct LHDDEnum; + +enum LH_SCREEN_BUFFER +{ + LH_SCREEN_BUFFER_0x0 = 0x0, + LH_SCREEN_BUFFER_0x1 = 0x1, + _LH_SCREEN_BUFFER_COUNT = 0x2 +}; +static_assert(sizeof(enum LH_SCREEN_BUFFER) == 0x4, "Data type is of wrong size"); + +static const char* LH_SCREEN_BUFFER_strs[_LH_SCREEN_BUFFER_COUNT] = { + "LH_SCREEN_BUFFER_0x0", + "LH_SCREEN_BUFFER_0x1", +}; + +struct LHScreen +{ + struct LHDDEnum* display_devices; /* 0x0 */ + uint32_t device_count; + uint16_t width; + uint16_t height; + uint32_t field_0xc; + uint32_t field_0x10; + uint8_t field_0x14; + uint32_t field_0x18; + uint32_t field_0x1c; + uint32_t field_0x20; + uint16_t* buffer; + HWND window; + IDirectDraw7* ddraw; + IDirectDrawSurface7* surfaces[0x2]; /* 0x30 */ + struct LHRegion field_0x38; + struct LHRegion region; /* 0x48 */ + struct LHCoord ms_window_client_offset; /* 0x58 */ + IDirectDrawClipper* clipper; /* 0x60 */ + bool fullscreen_mode; + uint8_t field_0x65[0x16]; + uint8_t field_0x7b; + uint8_t field_0x7c; + uint8_t field_0x7d; + uint8_t field_0x7e; + uint8_t field_0x7f; + uint8_t field_0x80; + uint8_t field_0x81[0x3]; + uint32_t field_0x84; + uint32_t field_0x88; + uint32_t stride; + int32_t field_0x90; + uint8_t field_0x94[0x104]; + int field_0x198; + int field_0x19c; + float field_0x1a0; + float field_0x1a4; + uint8_t field_0x1a8[0x4]; + uint32_t field_0x1ac; + float field_0x1b0; +}; +static_assert(sizeof(struct LHScreen) == 0x1b4, "Data type is of wrong size"); + +// Constructors + +// win1.41 007dce20 mac 1014e500 LHScreen::LHScreen(void) +struct LHScreen* __fastcall __ct__8LHScreenFv(struct LHScreen* this); + +// Non-virtual methods + +// win1.41 007dd8f0 mac 1014d890 LHScreen::~LHScreen(void) +void __fastcall __dt__8LHScreenFv(struct LHScreen* this); +// win1.41 007dd0d0 mac 1014e420 LHScreen::SetFullscreenMode(int) +void __fastcall SetFullscreenMode__8LHScreenFi(struct LHScreen* this, const void* edx, int mode); + +#endif /* BW1_DECOMP_LH_SCREEN_INCLUDED_H */ diff --git a/libs/lionhead/lhlib/ver5.0/LHScript.h b/libs/lionhead/lhlib/ver5.0/LHScript.h new file mode 100644 index 0000000..262b3a9 --- /dev/null +++ b/libs/lionhead/lhlib/ver5.0/LHScript.h @@ -0,0 +1,53 @@ +#ifndef BW1_DECOMP_LH_SCRIPT_INCLUDED_H +#define BW1_DECOMP_LH_SCRIPT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct LHReleasedOSFile; + +struct LHScriptPramX_c_ +{ + char param_strs[0xc][0x800]; /* 0x0 */ + int param_ints[0xc]; /* 0x6000 */ + float param_floats[0xc]; /* 0x6030 */ +}; +static_assert(sizeof(struct LHScriptPramX_c_) == 0x6060, "Data type is of wrong size"); + +struct LHScriptCommandX_c_ +{ + const char* function_name; /* 0x0 */ + uint8_t param_types[0xc]; +}; +static_assert(sizeof(struct LHScriptCommandX_c_) == 0x10, "Data type is of wrong size"); + +struct LHScriptX_c_ +{ + int field_0x0; + int field_0x4; + char field_0x8[0x14]; + int* field_0x1c; + struct LHScriptCommandX_c_* command; /* 0x20 */ + enum LH_RETURN (__cdecl* callback)(int param_0, struct LHScriptPramX_c_* param_1); + int field_0x28; + int field_0x2c; +}; +static_assert(sizeof(struct LHScriptX_c_) == 0x30, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 007e72c0 mac 1061e38c LHScriptX::Load(char *, LHScriptCommandX *, LH_RETURN (*)(long, LHScriptPramX *), long *) +void __fastcall Load__12LHScriptX_c_FPcP19LHScriptCommandX_c_PFlP16LHScriptPramX_c__9LH_RETURNPl(struct LHScriptX_c_* this, const void* edx, const char* path, struct LHScriptCommandX_c_* command, enum LH_RETURN (__cdecl* callback)(int param_2, struct LHScriptPramX_c_ * param_3), long* param_4); +// win1.41 007e7400 mac 1061cd3c LHScriptX::LoadOneLine(LHReleasedOSFile &, char *) +bool __fastcall LoadOneLine__12LHScriptX_c_FR16LHReleasedOSFilePc(struct LHScriptX_c_* this, const void* edx, struct LHReleasedOSFile* file, char* line); +// win1.41 007e7540 mac 10150830 LHScriptX::ScanLine(char *) +uint32_t __fastcall ScanLine__12LHScriptX_c_FPc(struct LHScriptX_c_* this, const void* edx, char* line); +// win1.41 007e8170 mac 10153040 LHScriptX::LoadFile(char *, long *) +uint32_t __fastcall LoadFile__12LHScriptX_c_FPcPl(struct LHScriptX_c_* this, const void* edx, const char* path, long* param_2); +// win1.41 007e8cb0 mac 101533a0 LHScriptX::DestroyVariables(void) +void __fastcall DestroyVariables__12LHScriptX_c_Fv(struct LHScriptX_c_* this); + +#endif /* BW1_DECOMP_LH_SCRIPT_INCLUDED_H */ diff --git a/libs/lionhead/lhlib/ver5.0/LHSystem.h b/libs/lionhead/lhlib/ver5.0/LHSystem.h new file mode 100644 index 0000000..98bb429 --- /dev/null +++ b/libs/lionhead/lhlib/ver5.0/LHSystem.h @@ -0,0 +1,124 @@ +#ifndef BW1_DECOMP_LH_SYSTEM_INCLUDED_H +#define BW1_DECOMP_LH_SYSTEM_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ +#include /* For char16_t */ + +#include /* For struct LHText */ +#include /* For HWND, bool32_t */ + +#include "LHJoypad.h" /* For struct LHJoypads */ +#include "LHMouse.h" /* For struct LHMouse */ +#include "LHScreen.h" /* For struct LHScreen */ +#include "LHScript.h" /* For struct LHScriptX_c_ */ + +struct Q24slim5TbIME_field_0x0_t +{ + uint32_t field_0x0; + uint32_t field_0x4; + char16_t field_0x8[0x100]; + uint8_t field_0x208[0x618]; + HWND field_0x820; + uint8_t field_0x824; + HIMC field_0x828; + uint32_t field_0x82c; + uint32_t field_0x830; + uint8_t field_0x834[0x100]; + uint32_t field_0x934; + uint32_t field_0x938; + uint32_t field_0x93c; + uint32_t select_idx; /* 0x940 */ + uint8_t field_0x944; + uint32_t field_0x948; + uint32_t field_0x94c; + uint32_t field_0x950; + uint32_t field_0x954; + bool field_0x958; + uint32_t field_0x95c; +}; +static_assert(sizeof(struct Q24slim5TbIME_field_0x0_t) == 0x960, "Data type is of wrong size"); + +struct Q24slim5TbIME +{ + struct Q24slim5TbIME_field_0x0_t* field_0x0; +}; +static_assert(sizeof(struct Q24slim5TbIME) == 0x4, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 007f3d00 mac 101704a0 slim::TbIME::Activate(void* ) +void __fastcall Activate__Q24slim5TbIMEFPv(struct Q24slim5TbIME* this, const void* edx, HWND param_1); +// win1.41 007f3d10 mac 10170460 slim::TbIME::UnActivate(void) +void __fastcall UnActivate__Q24slim5TbIMEFv(struct Q24slim5TbIME* this); +// win1.41 007f3d50 mac 1061ec14 slim::TbIME::Composition_Get( (void)) +wchar_t* __fastcall Composition_Get__Q24slim5TbIMEFv(struct Q24slim5TbIME* this); +// win1.41 007f3dc0 mac 1061e884 slim::TbIME::CandidateList_GetSelectIdx( (void) +uint32_t __fastcall CandidateList_GetSelectIdx__Q24slim5TbIMEFv(struct Q24slim5TbIME* this); +// win1.41 007f3de0 mac 1061e89c slim::TbIME::CandidateList_SetViewWindow( (unsigned int, unsigned int, unsigned int)) +void __fastcall CandidateList_SetViewWindow__Q24slim5TbIMEFUiUiUi(struct Q24slim5TbIME* this, const void* edx, uint32_t param_1, uint32_t param_2, uint32_t idx); + +struct LHSystem +{ + HINSTANCE instance; /* 0x0 */ + uint32_t field_0x4; + uint32_t field_0x8; + bool32_t terminating; +}; +static_assert(sizeof(struct LHSystem) == 0x10, "Data type is of wrong size"); + +struct FrameInfoLinkedList +{ + uint32_t field_0x0; + uint32_t field_0x4; +}; +static_assert(sizeof(struct FrameInfoLinkedList) == 0x8, "Data type is of wrong size"); + +struct LHConvert +{ + uint8_t field_0x0[0x84]; + struct FrameInfoLinkedList frame_info; /* 0x84 */ + uint32_t color; +}; +static_assert(sizeof(struct LHConvert) == 0x90, "Data type is of wrong size"); + +struct LHSys +{ + struct LHSystem system; /* 0x0 */ + struct LHScreen screen; /* 0x10 */ + struct LHMouse mouse; /* 0x1c4 */ + uint8_t field_0x32c[0x108]; + uint32_t field_0x434; + uint8_t field_0x438[0x128]; + uint32_t field_0x560[0x10]; + uint32_t field_0x5a0; + uint32_t field_0x5a4; + struct LHJoypads joypads; + uint8_t field_0x82c[0x8]; + struct LHConvert convert; /* 0x834 */ + struct LHScriptX_c_ script; /* 0x8c4 */ + uint8_t field_0x8f4[0x6750]; + struct LHText text; /* 0x7044 */ + uint8_t field_0x7068[0x4c]; + HWND window; /* 0x70b4 */ + uint8_t field_0x70b8; + uint8_t field_0x70b9; + bool field_0x70ba; + uint8_t field_0x70bb; + uint32_t field_0x70bc; + uint32_t field_0x70c0; + struct Q24slim5TbIME* field_0x70c4; + uint8_t field_0x70c8[0x10]; +}; +static_assert(sizeof(struct LHSys) == 0x70d8, "Data type is of wrong size"); + +// Constructors + +// win1.41 007db800 mac inlined LHSys::LHSys(void) +struct LHSys* __fastcall __ct__5LHSysFv(struct LHSys* this); + +// win1.41 inlined mac 1015cd20 __sinit_LHSystem_cpp +void __cdecl __sinit_LHSystem_cpp(void); + +#endif /* BW1_DECOMP_LH_SYSTEM_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHConnection.h b/libs/lionhead/lhmultiplayer/ver4.0/LHConnection.h new file mode 100644 index 0000000..92a65e7 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHConnection.h @@ -0,0 +1,70 @@ +#ifndef BW1_DECOMP_LH_CONNECTION_INCLUDED_H +#define BW1_DECOMP_LH_CONNECTION_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t */ + +#include /* For bool32_t */ + +#include "LHNetEvent.h" /* For enum LH_NETEVENT_TYPE */ +#include "LHTransportInfo.h" /* For enum LH_TRANSPORT_TYPE */ + +// Forward Declares + +struct LHNetEvent; +struct LHNetUser; +struct LHTransport; +struct LHTransportInfo; + +struct LHConnection +{ + uint32_t field_0x0; + int field_0x4; + uint8_t field_0x8[0xc]; + uint32_t field_0x14; + uint8_t field_0x18[0x6c]; + struct LHTransport* transport; /* 0x84 */ + int field_0x88; + int field_0x8c; +}; +static_assert(sizeof(struct LHConnection) == 0x90, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 100047f0 mac 100df100 LHConnection::RawRead(unsigned long, LH_NETEVENT_TYPE) +struct LHNetEvent* __fastcall RawRead__12LHConnectionFUl16LH_NETEVENT_TYPE(struct LHConnection* this, const void* edx, uint32_t param_1, enum LH_NETEVENT_TYPE type); +// win1.41 100048b0 mac 100ded90 LHConnection::BaseProcessEvent(LHNetEvent *) +enum LH_RETURN __fastcall BaseProcessEvent__12LHConnectionFP10LHNetEvent(struct LHConnection* this, const void* edx, struct LHNetEvent* net_event); +// win1.41 100df100 mac 100047b0 LHConnection::Read(unsigned long, LH_NETEVENT_TYPE) +struct LHNetEvent* __fastcall Read__12LHConnectionFUl16LH_NETEVENT_TYPE(struct LHConnection* this, const void* edx, uint32_t param_1, enum LH_NETEVENT_TYPE type); +// win1.41 10005330 mac 100dd1e0 LHConnection::GetProtocolVersion(void) +uint32_t __fastcall GetProtocolVersion__12LHConnectionFv(struct LHConnection* this); +// win1.41 100051b0 mac 100dd710 LHConnection::ClearTransport(void) +void __fastcall ClearTransport__12LHConnectionFv(struct LHConnection* this); +// win1.41 10004f80 mac 100ddc10 LHConnection::ConnectionOriented(void) +bool32_t __fastcall ConnectionOriented__12LHConnectionFv(struct LHConnection* this); +// win1.41 100046c0 mac 100df730 LHConnection::SetNetUser(LHNetUser *) +void __fastcall SetNetUser__12LHConnectionFP9LHNetUser(struct LHConnection* this, const void* edx, struct LHNetUser* net_user); +// win1.41 10004ee0 mac 100ddc70 LHConnection::RawOpen(LHNetUser *, LHTransportInfo *) +enum LH_RETURN __fastcall RawOpen__12LHConnectionFP9LHNetUserP15LHTransportInfo(struct LHConnection* this, const void* edx, struct LHNetUser* user, struct LHTransportInfo* transport_info); +// win1.41 10004e50 mac 100ddf50 LHConnection::OpenClientConnection(LHNetUser *, LHTransportInfo *) +enum LH_RETURN __fastcall OpenClientConnection__12LHConnectionFP9LHNetUserP15LHTransportInfo(struct LHConnection* this, const void* edx, struct LHNetUser* user, struct LHTransportInfo* transport_info); +// win1.41 10005270 mac 10010210 LHConnection::IsDisconnected(void) +bool __fastcall IsDisconnected__12LHConnectionFv(struct LHConnection* this); +// win1.41 100052d0 mac 100dd3b0 LHConnection::CheckForEvents(void) +bool __fastcall CheckForEvents__12LHConnectionFv(struct LHConnection* this); +// win1.41 10004760 mac 1000f630 LHConnection::GetIncomingEventQSize(void) +uint32_t __fastcall GetIncomingEventQSize__12LHConnectionFv(struct LHConnection* this); +// win1.41 10004870 mac 100095c0 LHConnection::Peek(ulong) +struct LHNetEvent* __fastcall Peek__12LHConnectionFUl(struct LHConnection* this, const void* edx, uint32_t param_1); +// win1.41 10004840 mac 100df070 LHConnection::RawPeek(unsigned long, LH_NETEVENT_TYPE) +struct LHNetEvent* __fastcall RawPeek__12LHConnectionFUl16LH_NETEVENT_TYPE(struct LHConnection* this, const void* edx, uint32_t param_1, enum LH_NETEVENT_TYPE param_2); +// win1.41 10004e80 mac 100dddd0 LHConnection::SendClientProtocol(void) +enum LH_RETURN __fastcall SendClientProtocol__12LHConnectionFv(struct LHConnection* this); +// win1.41 10004d70 mac 100de0c0 LHConnection::Write(LHNetEvent *) +enum LH_RETURN __fastcall Write__12LHConnectionFP10LHNetEvent(struct LHConnection* this, const void* edx, struct LHNetEvent* net_event); +// win1.41 100046e0 mac 100df6d0 LHConnection::GetTransportType(void) +enum LH_TRANSPORT_TYPE __fastcall GetTransportType__12LHConnectionFv(struct LHConnection* this); + +#endif /* BW1_DECOMP_LH_CONNECTION_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHConnectionServer.h b/libs/lionhead/lhmultiplayer/ver4.0/LHConnectionServer.h new file mode 100644 index 0000000..45c8adc --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHConnectionServer.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_LH_CONNECTION_SERVER_INCLUDED_H +#define BW1_DECOMP_LH_CONNECTION_SERVER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +// Forward Declares + +struct LHConnection; + +struct LHConnectionServer +{ + uint32_t field_0x0; +}; +static_assert(sizeof(struct LHConnectionServer) == 0x4, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 inlined mac 100e09b0 LHConnectionServer::ConnectToConnection(LHConnection *) +uint32_t __fastcall ConnectToConnection__18LHConnectionServerFP12LHConnection(struct LHConnectionServer* this, const void* edx, struct LHConnection* connection); + +#endif /* BW1_DECOMP_LH_CONNECTION_SERVER_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHLobby.h b/libs/lionhead/lhmultiplayer/ver4.0/LHLobby.h new file mode 100644 index 0000000..07769db --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHLobby.h @@ -0,0 +1,55 @@ +#ifndef BW1_DECOMP_LH_LOBBY_INCLUDED_H +#define BW1_DECOMP_LH_LOBBY_INCLUDED_H + +#include /* For static_assert */ + +#include "LHConnection.h" /* For struct LHConnection */ + +// Forward Declares + +struct LHMPServerStartInfo; +struct LHNetEvent; + +enum LOBBY_TYPE +{ + LOBBY_TYPE_INTERNET = 0x0, + LOBBY_TYPE_LAN = 0x1, + _LOBBY_TYPE_COUNT = 0x2 +}; +static_assert(sizeof(enum LOBBY_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* LOBBY_TYPE_strs[_LOBBY_TYPE_COUNT] = { + "LOBBY_TYPE_INTERNET", + "LOBBY_TYPE_LAN", +}; + +enum LH_OPERATING_MODE +{ + LH_OPERATING_MODE_0 = 0x0, + _LH_OPERATING_MODE_COUNT = 0x1 +}; +static_assert(sizeof(enum LH_OPERATING_MODE) == 0x4, "Data type is of wrong size"); + +static const char* LH_OPERATING_MODE_strs[_LH_OPERATING_MODE_COUNT] = { + "LH_OPERATING_MODE_0", +}; + +struct LHLobby +{ + struct LHConnection connection; /* 0x0 */ +}; +static_assert(sizeof(struct LHLobby) == 0x90, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 10001fb0 mac 100f05c0 LHLobby::ProcessEvent(LHNetEvent *) +enum LH_RETURN __fastcall ProcessEvent__7LHLobbyFP10LHNetEvent(struct LHLobby* this, const void* edx, struct LHNetEvent* net_event); +// win1.41 1000cb00 mac 100f0d70 LHLobby::OpenLocalLobby(LHMPServerStartInfo *) +enum LH_RETURN __fastcall OpenLocalLobby__7LHLobbyFP19LHMPServerStartInfo(struct LHLobby* this, const void* edx, struct LHMPServerStartInfo* info); +// win1.41 1000d440 mac 100efe80 LHLobby::ProcessLobbyPlayerList(LHNetEvent *) +enum LH_RETURN __fastcall ProcessLobbyPlayerList__7LHLobbyFP10LHNetEvent(struct LHLobby* this, const void* edx, struct LHNetEvent* net_event); + +// win1.41 00885740 mac 1019b710 peerStartListingGames +void __cdecl peerStartListingGames(int** param_1, int param_2, int param_3); + +#endif /* BW1_DECOMP_LH_LOBBY_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHLobbyServer.h b/libs/lionhead/lhmultiplayer/ver4.0/LHLobbyServer.h new file mode 100644 index 0000000..d06f3d3 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHLobbyServer.h @@ -0,0 +1,14 @@ +#ifndef BW1_DECOMP_LH_LOBBY_SERVER_INCLUDED_H +#define BW1_DECOMP_LH_LOBBY_SERVER_INCLUDED_H + +#include /* For static_assert */ + +#include "LHConnection.h" /* For struct LHConnection */ + +struct LHLobbyServer +{ + struct LHConnection connection; /* 0x0 */ +}; +static_assert(sizeof(struct LHLobbyServer) == 0x90, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_LOBBY_SERVER_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHMPServerStartInfo.h b/libs/lionhead/lhmultiplayer/ver4.0/LHMPServerStartInfo.h new file mode 100644 index 0000000..29bc09a --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHMPServerStartInfo.h @@ -0,0 +1,30 @@ +#ifndef BW1_DECOMP_LHMP_SERVER_START_INFO_INCLUDED_H +#define BW1_DECOMP_LHMP_SERVER_START_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint8_t */ + +#include /* For bool32_t */ + +#include "LHLobby.h" /* For enum LH_OPERATING_MODE */ + +// Forward Declares + +struct LHNetUser; +struct LHTransportInfo; + +struct LHMPServerStartInfo +{ + struct LHNetUser* user; /* 0x0 */ + struct LHTransportInfo* listener_address; + char* registered_name; + uint8_t field_0xc[0x18]; + char* user_file; /* 0x24 */ + char* game_file; + enum LH_OPERATING_MODE operating_mode; + bool32_t run_message_server; /* 0x30 */ + uint8_t field_0x34[0xc88]; +}; +static_assert(sizeof(struct LHMPServerStartInfo) == 0xcbc, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LHMP_SERVER_START_INFO_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHNetEvent.h b/libs/lionhead/lhmultiplayer/ver4.0/LHNetEvent.h new file mode 100644 index 0000000..195b1f2 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHNetEvent.h @@ -0,0 +1,7069 @@ +#ifndef BW1_DECOMP_LH_NET_EVENT_INCLUDED_H +#define BW1_DECOMP_LH_NET_EVENT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +#include "LHTransportInfo.h" /* For struct LHTransportInfo */ + +// Forward Declares + +struct LHNetEvent; +struct LHPacket; + +enum LH_NETEVENT_TYPE +{ + LH_NETEVENT_TYPE_SEND_BROADCAST_MESSAGE_TO_INTERNAL_LOBBY_0x1080 = 0x1080, + LH_NETEVENT_TYPE_SEND_BROADCAST_MESSAGE_TO_INTERNAL_LOBBY_0x1082 = 0x1082, + LH_NETEVENT_TYPE_BROADCAST_LOBBY_ADDRESS_REQUEST = 0x109b, + LH_NETEVENT_TYPE_BROADCAST_LOBBY_ADDRESS = 0x109c, + LH_NETEVENT_TYPE_BROADCAST_LOBBY_SHUTDOWN = 0x109d, + LH_NETEVENT_TYPE_0x1b63 = 0x1b63, + _LH_NETEVENT_TYPE_COUNT = 0x1b64 +}; +static_assert(sizeof(enum LH_NETEVENT_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* LH_NETEVENT_TYPE_strs[_LH_NETEVENT_TYPE_COUNT] = { + "LH_NETEVENT_TYPE_0x0", + "LH_NETEVENT_TYPE_0x1", + "LH_NETEVENT_TYPE_0x2", + "LH_NETEVENT_TYPE_0x3", + "LH_NETEVENT_TYPE_0x4", + "LH_NETEVENT_TYPE_0x5", + "LH_NETEVENT_TYPE_0x6", + "LH_NETEVENT_TYPE_0x7", + "LH_NETEVENT_TYPE_0x8", + "LH_NETEVENT_TYPE_0x9", + "LH_NETEVENT_TYPE_0xa", + "LH_NETEVENT_TYPE_0xb", + "LH_NETEVENT_TYPE_0xc", + "LH_NETEVENT_TYPE_0xd", + "LH_NETEVENT_TYPE_0xe", + "LH_NETEVENT_TYPE_0xf", + "LH_NETEVENT_TYPE_0x10", + "LH_NETEVENT_TYPE_0x11", + "LH_NETEVENT_TYPE_0x12", + "LH_NETEVENT_TYPE_0x13", + "LH_NETEVENT_TYPE_0x14", + "LH_NETEVENT_TYPE_0x15", + "LH_NETEVENT_TYPE_0x16", + "LH_NETEVENT_TYPE_0x17", + "LH_NETEVENT_TYPE_0x18", + "LH_NETEVENT_TYPE_0x19", + "LH_NETEVENT_TYPE_0x1a", + "LH_NETEVENT_TYPE_0x1b", + "LH_NETEVENT_TYPE_0x1c", + "LH_NETEVENT_TYPE_0x1d", + "LH_NETEVENT_TYPE_0x1e", + "LH_NETEVENT_TYPE_0x1f", + "LH_NETEVENT_TYPE_0x20", + "LH_NETEVENT_TYPE_0x21", + "LH_NETEVENT_TYPE_0x22", + "LH_NETEVENT_TYPE_0x23", + "LH_NETEVENT_TYPE_0x24", + "LH_NETEVENT_TYPE_0x25", + "LH_NETEVENT_TYPE_0x26", + "LH_NETEVENT_TYPE_0x27", + "LH_NETEVENT_TYPE_0x28", + "LH_NETEVENT_TYPE_0x29", + "LH_NETEVENT_TYPE_0x2a", + "LH_NETEVENT_TYPE_0x2b", + "LH_NETEVENT_TYPE_0x2c", + "LH_NETEVENT_TYPE_0x2d", + "LH_NETEVENT_TYPE_0x2e", + "LH_NETEVENT_TYPE_0x2f", + "LH_NETEVENT_TYPE_0x30", + "LH_NETEVENT_TYPE_0x31", + "LH_NETEVENT_TYPE_0x32", + "LH_NETEVENT_TYPE_0x33", + "LH_NETEVENT_TYPE_0x34", + "LH_NETEVENT_TYPE_0x35", + "LH_NETEVENT_TYPE_0x36", + "LH_NETEVENT_TYPE_0x37", + "LH_NETEVENT_TYPE_0x38", + "LH_NETEVENT_TYPE_0x39", + "LH_NETEVENT_TYPE_0x3a", + "LH_NETEVENT_TYPE_0x3b", + "LH_NETEVENT_TYPE_0x3c", + "LH_NETEVENT_TYPE_0x3d", + "LH_NETEVENT_TYPE_0x3e", + "LH_NETEVENT_TYPE_0x3f", + "LH_NETEVENT_TYPE_0x40", + "LH_NETEVENT_TYPE_0x41", + "LH_NETEVENT_TYPE_0x42", + "LH_NETEVENT_TYPE_0x43", + "LH_NETEVENT_TYPE_0x44", + "LH_NETEVENT_TYPE_0x45", + "LH_NETEVENT_TYPE_0x46", + "LH_NETEVENT_TYPE_0x47", + "LH_NETEVENT_TYPE_0x48", + "LH_NETEVENT_TYPE_0x49", + "LH_NETEVENT_TYPE_0x4a", + "LH_NETEVENT_TYPE_0x4b", + "LH_NETEVENT_TYPE_0x4c", + "LH_NETEVENT_TYPE_0x4d", + "LH_NETEVENT_TYPE_0x4e", + "LH_NETEVENT_TYPE_0x4f", + "LH_NETEVENT_TYPE_0x50", + "LH_NETEVENT_TYPE_0x51", + "LH_NETEVENT_TYPE_0x52", + "LH_NETEVENT_TYPE_0x53", + "LH_NETEVENT_TYPE_0x54", + "LH_NETEVENT_TYPE_0x55", + "LH_NETEVENT_TYPE_0x56", + "LH_NETEVENT_TYPE_0x57", + "LH_NETEVENT_TYPE_0x58", + "LH_NETEVENT_TYPE_0x59", + "LH_NETEVENT_TYPE_0x5a", + "LH_NETEVENT_TYPE_0x5b", + "LH_NETEVENT_TYPE_0x5c", + "LH_NETEVENT_TYPE_0x5d", + "LH_NETEVENT_TYPE_0x5e", + "LH_NETEVENT_TYPE_0x5f", + "LH_NETEVENT_TYPE_0x60", + "LH_NETEVENT_TYPE_0x61", + "LH_NETEVENT_TYPE_0x62", + "LH_NETEVENT_TYPE_0x63", + "LH_NETEVENT_TYPE_0x64", + "LH_NETEVENT_TYPE_0x65", + "LH_NETEVENT_TYPE_0x66", + "LH_NETEVENT_TYPE_0x67", + "LH_NETEVENT_TYPE_0x68", + "LH_NETEVENT_TYPE_0x69", + "LH_NETEVENT_TYPE_0x6a", + "LH_NETEVENT_TYPE_0x6b", + "LH_NETEVENT_TYPE_0x6c", + "LH_NETEVENT_TYPE_0x6d", + "LH_NETEVENT_TYPE_0x6e", + "LH_NETEVENT_TYPE_0x6f", + "LH_NETEVENT_TYPE_0x70", + "LH_NETEVENT_TYPE_0x71", + "LH_NETEVENT_TYPE_0x72", + "LH_NETEVENT_TYPE_0x73", + "LH_NETEVENT_TYPE_0x74", + "LH_NETEVENT_TYPE_0x75", + "LH_NETEVENT_TYPE_0x76", + "LH_NETEVENT_TYPE_0x77", + "LH_NETEVENT_TYPE_0x78", + "LH_NETEVENT_TYPE_0x79", + "LH_NETEVENT_TYPE_0x7a", + "LH_NETEVENT_TYPE_0x7b", + "LH_NETEVENT_TYPE_0x7c", + "LH_NETEVENT_TYPE_0x7d", + "LH_NETEVENT_TYPE_0x7e", + "LH_NETEVENT_TYPE_0x7f", + "LH_NETEVENT_TYPE_0x80", + "LH_NETEVENT_TYPE_0x81", + "LH_NETEVENT_TYPE_0x82", + "LH_NETEVENT_TYPE_0x83", + "LH_NETEVENT_TYPE_0x84", + "LH_NETEVENT_TYPE_0x85", + "LH_NETEVENT_TYPE_0x86", + "LH_NETEVENT_TYPE_0x87", + "LH_NETEVENT_TYPE_0x88", + "LH_NETEVENT_TYPE_0x89", + "LH_NETEVENT_TYPE_0x8a", + "LH_NETEVENT_TYPE_0x8b", + "LH_NETEVENT_TYPE_0x8c", + "LH_NETEVENT_TYPE_0x8d", + "LH_NETEVENT_TYPE_0x8e", + "LH_NETEVENT_TYPE_0x8f", + "LH_NETEVENT_TYPE_0x90", + "LH_NETEVENT_TYPE_0x91", + "LH_NETEVENT_TYPE_0x92", + "LH_NETEVENT_TYPE_0x93", + "LH_NETEVENT_TYPE_0x94", + "LH_NETEVENT_TYPE_0x95", + "LH_NETEVENT_TYPE_0x96", + "LH_NETEVENT_TYPE_0x97", + "LH_NETEVENT_TYPE_0x98", + "LH_NETEVENT_TYPE_0x99", + "LH_NETEVENT_TYPE_0x9a", + "LH_NETEVENT_TYPE_0x9b", + "LH_NETEVENT_TYPE_0x9c", + "LH_NETEVENT_TYPE_0x9d", + "LH_NETEVENT_TYPE_0x9e", + "LH_NETEVENT_TYPE_0x9f", + "LH_NETEVENT_TYPE_0xa0", + "LH_NETEVENT_TYPE_0xa1", + "LH_NETEVENT_TYPE_0xa2", + "LH_NETEVENT_TYPE_0xa3", + "LH_NETEVENT_TYPE_0xa4", + "LH_NETEVENT_TYPE_0xa5", + "LH_NETEVENT_TYPE_0xa6", + "LH_NETEVENT_TYPE_0xa7", + "LH_NETEVENT_TYPE_0xa8", + "LH_NETEVENT_TYPE_0xa9", + "LH_NETEVENT_TYPE_0xaa", + "LH_NETEVENT_TYPE_0xab", + "LH_NETEVENT_TYPE_0xac", + "LH_NETEVENT_TYPE_0xad", + "LH_NETEVENT_TYPE_0xae", + "LH_NETEVENT_TYPE_0xaf", + "LH_NETEVENT_TYPE_0xb0", + "LH_NETEVENT_TYPE_0xb1", + "LH_NETEVENT_TYPE_0xb2", + "LH_NETEVENT_TYPE_0xb3", + "LH_NETEVENT_TYPE_0xb4", + "LH_NETEVENT_TYPE_0xb5", + "LH_NETEVENT_TYPE_0xb6", + "LH_NETEVENT_TYPE_0xb7", + "LH_NETEVENT_TYPE_0xb8", + "LH_NETEVENT_TYPE_0xb9", + "LH_NETEVENT_TYPE_0xba", + "LH_NETEVENT_TYPE_0xbb", + "LH_NETEVENT_TYPE_0xbc", + "LH_NETEVENT_TYPE_0xbd", + "LH_NETEVENT_TYPE_0xbe", + "LH_NETEVENT_TYPE_0xbf", + "LH_NETEVENT_TYPE_0xc0", + "LH_NETEVENT_TYPE_0xc1", + "LH_NETEVENT_TYPE_0xc2", + "LH_NETEVENT_TYPE_0xc3", + "LH_NETEVENT_TYPE_0xc4", + "LH_NETEVENT_TYPE_0xc5", + "LH_NETEVENT_TYPE_0xc6", + "LH_NETEVENT_TYPE_0xc7", + "LH_NETEVENT_TYPE_0xc8", + "LH_NETEVENT_TYPE_0xc9", + "LH_NETEVENT_TYPE_0xca", + "LH_NETEVENT_TYPE_0xcb", + "LH_NETEVENT_TYPE_0xcc", + "LH_NETEVENT_TYPE_0xcd", + "LH_NETEVENT_TYPE_0xce", + "LH_NETEVENT_TYPE_0xcf", + "LH_NETEVENT_TYPE_0xd0", + "LH_NETEVENT_TYPE_0xd1", + "LH_NETEVENT_TYPE_0xd2", + "LH_NETEVENT_TYPE_0xd3", + "LH_NETEVENT_TYPE_0xd4", + "LH_NETEVENT_TYPE_0xd5", + "LH_NETEVENT_TYPE_0xd6", + "LH_NETEVENT_TYPE_0xd7", + "LH_NETEVENT_TYPE_0xd8", + "LH_NETEVENT_TYPE_0xd9", + "LH_NETEVENT_TYPE_0xda", + "LH_NETEVENT_TYPE_0xdb", + "LH_NETEVENT_TYPE_0xdc", + "LH_NETEVENT_TYPE_0xdd", + "LH_NETEVENT_TYPE_0xde", + "LH_NETEVENT_TYPE_0xdf", + "LH_NETEVENT_TYPE_0xe0", + "LH_NETEVENT_TYPE_0xe1", + "LH_NETEVENT_TYPE_0xe2", + "LH_NETEVENT_TYPE_0xe3", + "LH_NETEVENT_TYPE_0xe4", + "LH_NETEVENT_TYPE_0xe5", + "LH_NETEVENT_TYPE_0xe6", + "LH_NETEVENT_TYPE_0xe7", + "LH_NETEVENT_TYPE_0xe8", + "LH_NETEVENT_TYPE_0xe9", + "LH_NETEVENT_TYPE_0xea", + "LH_NETEVENT_TYPE_0xeb", + "LH_NETEVENT_TYPE_0xec", + "LH_NETEVENT_TYPE_0xed", + "LH_NETEVENT_TYPE_0xee", + "LH_NETEVENT_TYPE_0xef", + "LH_NETEVENT_TYPE_0xf0", + "LH_NETEVENT_TYPE_0xf1", + "LH_NETEVENT_TYPE_0xf2", + "LH_NETEVENT_TYPE_0xf3", + "LH_NETEVENT_TYPE_0xf4", + "LH_NETEVENT_TYPE_0xf5", + "LH_NETEVENT_TYPE_0xf6", + "LH_NETEVENT_TYPE_0xf7", + "LH_NETEVENT_TYPE_0xf8", + "LH_NETEVENT_TYPE_0xf9", + "LH_NETEVENT_TYPE_0xfa", + "LH_NETEVENT_TYPE_0xfb", + "LH_NETEVENT_TYPE_0xfc", + "LH_NETEVENT_TYPE_0xfd", + "LH_NETEVENT_TYPE_0xfe", + "LH_NETEVENT_TYPE_0xff", + "LH_NETEVENT_TYPE_0x100", + "LH_NETEVENT_TYPE_0x101", + "LH_NETEVENT_TYPE_0x102", + "LH_NETEVENT_TYPE_0x103", + "LH_NETEVENT_TYPE_0x104", + "LH_NETEVENT_TYPE_0x105", + "LH_NETEVENT_TYPE_0x106", + "LH_NETEVENT_TYPE_0x107", + "LH_NETEVENT_TYPE_0x108", + "LH_NETEVENT_TYPE_0x109", + "LH_NETEVENT_TYPE_0x10a", + "LH_NETEVENT_TYPE_0x10b", + "LH_NETEVENT_TYPE_0x10c", + "LH_NETEVENT_TYPE_0x10d", + "LH_NETEVENT_TYPE_0x10e", + "LH_NETEVENT_TYPE_0x10f", + "LH_NETEVENT_TYPE_0x110", + "LH_NETEVENT_TYPE_0x111", + "LH_NETEVENT_TYPE_0x112", + "LH_NETEVENT_TYPE_0x113", + "LH_NETEVENT_TYPE_0x114", + "LH_NETEVENT_TYPE_0x115", + "LH_NETEVENT_TYPE_0x116", + "LH_NETEVENT_TYPE_0x117", + "LH_NETEVENT_TYPE_0x118", + "LH_NETEVENT_TYPE_0x119", + "LH_NETEVENT_TYPE_0x11a", + "LH_NETEVENT_TYPE_0x11b", + "LH_NETEVENT_TYPE_0x11c", + "LH_NETEVENT_TYPE_0x11d", + "LH_NETEVENT_TYPE_0x11e", + "LH_NETEVENT_TYPE_0x11f", + "LH_NETEVENT_TYPE_0x120", + "LH_NETEVENT_TYPE_0x121", + "LH_NETEVENT_TYPE_0x122", + "LH_NETEVENT_TYPE_0x123", + "LH_NETEVENT_TYPE_0x124", + "LH_NETEVENT_TYPE_0x125", + "LH_NETEVENT_TYPE_0x126", + "LH_NETEVENT_TYPE_0x127", + "LH_NETEVENT_TYPE_0x128", + "LH_NETEVENT_TYPE_0x129", + "LH_NETEVENT_TYPE_0x12a", + "LH_NETEVENT_TYPE_0x12b", + "LH_NETEVENT_TYPE_0x12c", + "LH_NETEVENT_TYPE_0x12d", + "LH_NETEVENT_TYPE_0x12e", + "LH_NETEVENT_TYPE_0x12f", + "LH_NETEVENT_TYPE_0x130", + "LH_NETEVENT_TYPE_0x131", + "LH_NETEVENT_TYPE_0x132", + "LH_NETEVENT_TYPE_0x133", + "LH_NETEVENT_TYPE_0x134", + "LH_NETEVENT_TYPE_0x135", + "LH_NETEVENT_TYPE_0x136", + "LH_NETEVENT_TYPE_0x137", + "LH_NETEVENT_TYPE_0x138", + "LH_NETEVENT_TYPE_0x139", + "LH_NETEVENT_TYPE_0x13a", + "LH_NETEVENT_TYPE_0x13b", + "LH_NETEVENT_TYPE_0x13c", + "LH_NETEVENT_TYPE_0x13d", + "LH_NETEVENT_TYPE_0x13e", + "LH_NETEVENT_TYPE_0x13f", + "LH_NETEVENT_TYPE_0x140", + "LH_NETEVENT_TYPE_0x141", + "LH_NETEVENT_TYPE_0x142", + "LH_NETEVENT_TYPE_0x143", + "LH_NETEVENT_TYPE_0x144", + "LH_NETEVENT_TYPE_0x145", + "LH_NETEVENT_TYPE_0x146", + "LH_NETEVENT_TYPE_0x147", + "LH_NETEVENT_TYPE_0x148", + "LH_NETEVENT_TYPE_0x149", + "LH_NETEVENT_TYPE_0x14a", + "LH_NETEVENT_TYPE_0x14b", + "LH_NETEVENT_TYPE_0x14c", + "LH_NETEVENT_TYPE_0x14d", + "LH_NETEVENT_TYPE_0x14e", + "LH_NETEVENT_TYPE_0x14f", + "LH_NETEVENT_TYPE_0x150", + "LH_NETEVENT_TYPE_0x151", + "LH_NETEVENT_TYPE_0x152", + "LH_NETEVENT_TYPE_0x153", + "LH_NETEVENT_TYPE_0x154", + "LH_NETEVENT_TYPE_0x155", + "LH_NETEVENT_TYPE_0x156", + "LH_NETEVENT_TYPE_0x157", + "LH_NETEVENT_TYPE_0x158", + "LH_NETEVENT_TYPE_0x159", + "LH_NETEVENT_TYPE_0x15a", + "LH_NETEVENT_TYPE_0x15b", + "LH_NETEVENT_TYPE_0x15c", + "LH_NETEVENT_TYPE_0x15d", + "LH_NETEVENT_TYPE_0x15e", + "LH_NETEVENT_TYPE_0x15f", + "LH_NETEVENT_TYPE_0x160", + "LH_NETEVENT_TYPE_0x161", + "LH_NETEVENT_TYPE_0x162", + "LH_NETEVENT_TYPE_0x163", + "LH_NETEVENT_TYPE_0x164", + "LH_NETEVENT_TYPE_0x165", + "LH_NETEVENT_TYPE_0x166", + "LH_NETEVENT_TYPE_0x167", + "LH_NETEVENT_TYPE_0x168", + "LH_NETEVENT_TYPE_0x169", + "LH_NETEVENT_TYPE_0x16a", + "LH_NETEVENT_TYPE_0x16b", + "LH_NETEVENT_TYPE_0x16c", + "LH_NETEVENT_TYPE_0x16d", + "LH_NETEVENT_TYPE_0x16e", + "LH_NETEVENT_TYPE_0x16f", + "LH_NETEVENT_TYPE_0x170", + "LH_NETEVENT_TYPE_0x171", + "LH_NETEVENT_TYPE_0x172", + "LH_NETEVENT_TYPE_0x173", + "LH_NETEVENT_TYPE_0x174", + "LH_NETEVENT_TYPE_0x175", + "LH_NETEVENT_TYPE_0x176", + "LH_NETEVENT_TYPE_0x177", + "LH_NETEVENT_TYPE_0x178", + "LH_NETEVENT_TYPE_0x179", + "LH_NETEVENT_TYPE_0x17a", + "LH_NETEVENT_TYPE_0x17b", + "LH_NETEVENT_TYPE_0x17c", + "LH_NETEVENT_TYPE_0x17d", + "LH_NETEVENT_TYPE_0x17e", + "LH_NETEVENT_TYPE_0x17f", + "LH_NETEVENT_TYPE_0x180", + "LH_NETEVENT_TYPE_0x181", + "LH_NETEVENT_TYPE_0x182", + "LH_NETEVENT_TYPE_0x183", + "LH_NETEVENT_TYPE_0x184", + "LH_NETEVENT_TYPE_0x185", + "LH_NETEVENT_TYPE_0x186", + "LH_NETEVENT_TYPE_0x187", + "LH_NETEVENT_TYPE_0x188", + "LH_NETEVENT_TYPE_0x189", + "LH_NETEVENT_TYPE_0x18a", + "LH_NETEVENT_TYPE_0x18b", + "LH_NETEVENT_TYPE_0x18c", + "LH_NETEVENT_TYPE_0x18d", + "LH_NETEVENT_TYPE_0x18e", + "LH_NETEVENT_TYPE_0x18f", + "LH_NETEVENT_TYPE_0x190", + "LH_NETEVENT_TYPE_0x191", + "LH_NETEVENT_TYPE_0x192", + "LH_NETEVENT_TYPE_0x193", + "LH_NETEVENT_TYPE_0x194", + "LH_NETEVENT_TYPE_0x195", + "LH_NETEVENT_TYPE_0x196", + "LH_NETEVENT_TYPE_0x197", + "LH_NETEVENT_TYPE_0x198", + "LH_NETEVENT_TYPE_0x199", + "LH_NETEVENT_TYPE_0x19a", + "LH_NETEVENT_TYPE_0x19b", + "LH_NETEVENT_TYPE_0x19c", + "LH_NETEVENT_TYPE_0x19d", + "LH_NETEVENT_TYPE_0x19e", + "LH_NETEVENT_TYPE_0x19f", + "LH_NETEVENT_TYPE_0x1a0", + "LH_NETEVENT_TYPE_0x1a1", + "LH_NETEVENT_TYPE_0x1a2", + "LH_NETEVENT_TYPE_0x1a3", + "LH_NETEVENT_TYPE_0x1a4", + "LH_NETEVENT_TYPE_0x1a5", + "LH_NETEVENT_TYPE_0x1a6", + "LH_NETEVENT_TYPE_0x1a7", + "LH_NETEVENT_TYPE_0x1a8", + "LH_NETEVENT_TYPE_0x1a9", + "LH_NETEVENT_TYPE_0x1aa", + "LH_NETEVENT_TYPE_0x1ab", + "LH_NETEVENT_TYPE_0x1ac", + "LH_NETEVENT_TYPE_0x1ad", + "LH_NETEVENT_TYPE_0x1ae", + "LH_NETEVENT_TYPE_0x1af", + "LH_NETEVENT_TYPE_0x1b0", + "LH_NETEVENT_TYPE_0x1b1", + "LH_NETEVENT_TYPE_0x1b2", + "LH_NETEVENT_TYPE_0x1b3", + "LH_NETEVENT_TYPE_0x1b4", + "LH_NETEVENT_TYPE_0x1b5", + "LH_NETEVENT_TYPE_0x1b6", + "LH_NETEVENT_TYPE_0x1b7", + "LH_NETEVENT_TYPE_0x1b8", + "LH_NETEVENT_TYPE_0x1b9", + "LH_NETEVENT_TYPE_0x1ba", + "LH_NETEVENT_TYPE_0x1bb", + "LH_NETEVENT_TYPE_0x1bc", + "LH_NETEVENT_TYPE_0x1bd", + "LH_NETEVENT_TYPE_0x1be", + "LH_NETEVENT_TYPE_0x1bf", + "LH_NETEVENT_TYPE_0x1c0", + "LH_NETEVENT_TYPE_0x1c1", + "LH_NETEVENT_TYPE_0x1c2", + "LH_NETEVENT_TYPE_0x1c3", + "LH_NETEVENT_TYPE_0x1c4", + "LH_NETEVENT_TYPE_0x1c5", + "LH_NETEVENT_TYPE_0x1c6", + "LH_NETEVENT_TYPE_0x1c7", + "LH_NETEVENT_TYPE_0x1c8", + "LH_NETEVENT_TYPE_0x1c9", + "LH_NETEVENT_TYPE_0x1ca", + "LH_NETEVENT_TYPE_0x1cb", + "LH_NETEVENT_TYPE_0x1cc", + "LH_NETEVENT_TYPE_0x1cd", + "LH_NETEVENT_TYPE_0x1ce", + "LH_NETEVENT_TYPE_0x1cf", + "LH_NETEVENT_TYPE_0x1d0", + "LH_NETEVENT_TYPE_0x1d1", + "LH_NETEVENT_TYPE_0x1d2", + "LH_NETEVENT_TYPE_0x1d3", + "LH_NETEVENT_TYPE_0x1d4", + "LH_NETEVENT_TYPE_0x1d5", + "LH_NETEVENT_TYPE_0x1d6", + "LH_NETEVENT_TYPE_0x1d7", + "LH_NETEVENT_TYPE_0x1d8", + "LH_NETEVENT_TYPE_0x1d9", + "LH_NETEVENT_TYPE_0x1da", + "LH_NETEVENT_TYPE_0x1db", + "LH_NETEVENT_TYPE_0x1dc", + "LH_NETEVENT_TYPE_0x1dd", + "LH_NETEVENT_TYPE_0x1de", + "LH_NETEVENT_TYPE_0x1df", + "LH_NETEVENT_TYPE_0x1e0", + "LH_NETEVENT_TYPE_0x1e1", + "LH_NETEVENT_TYPE_0x1e2", + "LH_NETEVENT_TYPE_0x1e3", + "LH_NETEVENT_TYPE_0x1e4", + "LH_NETEVENT_TYPE_0x1e5", + "LH_NETEVENT_TYPE_0x1e6", + "LH_NETEVENT_TYPE_0x1e7", + "LH_NETEVENT_TYPE_0x1e8", + "LH_NETEVENT_TYPE_0x1e9", + "LH_NETEVENT_TYPE_0x1ea", + "LH_NETEVENT_TYPE_0x1eb", + "LH_NETEVENT_TYPE_0x1ec", + "LH_NETEVENT_TYPE_0x1ed", + "LH_NETEVENT_TYPE_0x1ee", + "LH_NETEVENT_TYPE_0x1ef", + "LH_NETEVENT_TYPE_0x1f0", + "LH_NETEVENT_TYPE_0x1f1", + "LH_NETEVENT_TYPE_0x1f2", + "LH_NETEVENT_TYPE_0x1f3", + "LH_NETEVENT_TYPE_0x1f4", + "LH_NETEVENT_TYPE_0x1f5", + "LH_NETEVENT_TYPE_0x1f6", + "LH_NETEVENT_TYPE_0x1f7", + "LH_NETEVENT_TYPE_0x1f8", + "LH_NETEVENT_TYPE_0x1f9", + "LH_NETEVENT_TYPE_0x1fa", + "LH_NETEVENT_TYPE_0x1fb", + "LH_NETEVENT_TYPE_0x1fc", + "LH_NETEVENT_TYPE_0x1fd", + "LH_NETEVENT_TYPE_0x1fe", + "LH_NETEVENT_TYPE_0x1ff", + "LH_NETEVENT_TYPE_0x200", + "LH_NETEVENT_TYPE_0x201", + "LH_NETEVENT_TYPE_0x202", + "LH_NETEVENT_TYPE_0x203", + "LH_NETEVENT_TYPE_0x204", + "LH_NETEVENT_TYPE_0x205", + "LH_NETEVENT_TYPE_0x206", + "LH_NETEVENT_TYPE_0x207", + "LH_NETEVENT_TYPE_0x208", + "LH_NETEVENT_TYPE_0x209", + "LH_NETEVENT_TYPE_0x20a", + "LH_NETEVENT_TYPE_0x20b", + "LH_NETEVENT_TYPE_0x20c", + "LH_NETEVENT_TYPE_0x20d", + "LH_NETEVENT_TYPE_0x20e", + "LH_NETEVENT_TYPE_0x20f", + "LH_NETEVENT_TYPE_0x210", + "LH_NETEVENT_TYPE_0x211", + "LH_NETEVENT_TYPE_0x212", + "LH_NETEVENT_TYPE_0x213", + "LH_NETEVENT_TYPE_0x214", + "LH_NETEVENT_TYPE_0x215", + "LH_NETEVENT_TYPE_0x216", + "LH_NETEVENT_TYPE_0x217", + "LH_NETEVENT_TYPE_0x218", + "LH_NETEVENT_TYPE_0x219", + "LH_NETEVENT_TYPE_0x21a", + "LH_NETEVENT_TYPE_0x21b", + "LH_NETEVENT_TYPE_0x21c", + "LH_NETEVENT_TYPE_0x21d", + "LH_NETEVENT_TYPE_0x21e", + "LH_NETEVENT_TYPE_0x21f", + "LH_NETEVENT_TYPE_0x220", + "LH_NETEVENT_TYPE_0x221", + "LH_NETEVENT_TYPE_0x222", + "LH_NETEVENT_TYPE_0x223", + "LH_NETEVENT_TYPE_0x224", + "LH_NETEVENT_TYPE_0x225", + "LH_NETEVENT_TYPE_0x226", + "LH_NETEVENT_TYPE_0x227", + "LH_NETEVENT_TYPE_0x228", + "LH_NETEVENT_TYPE_0x229", + "LH_NETEVENT_TYPE_0x22a", + "LH_NETEVENT_TYPE_0x22b", + "LH_NETEVENT_TYPE_0x22c", + "LH_NETEVENT_TYPE_0x22d", + "LH_NETEVENT_TYPE_0x22e", + "LH_NETEVENT_TYPE_0x22f", + "LH_NETEVENT_TYPE_0x230", + "LH_NETEVENT_TYPE_0x231", + "LH_NETEVENT_TYPE_0x232", + "LH_NETEVENT_TYPE_0x233", + "LH_NETEVENT_TYPE_0x234", + "LH_NETEVENT_TYPE_0x235", + "LH_NETEVENT_TYPE_0x236", + "LH_NETEVENT_TYPE_0x237", + "LH_NETEVENT_TYPE_0x238", + "LH_NETEVENT_TYPE_0x239", + "LH_NETEVENT_TYPE_0x23a", + "LH_NETEVENT_TYPE_0x23b", + "LH_NETEVENT_TYPE_0x23c", + "LH_NETEVENT_TYPE_0x23d", + "LH_NETEVENT_TYPE_0x23e", + "LH_NETEVENT_TYPE_0x23f", + "LH_NETEVENT_TYPE_0x240", + "LH_NETEVENT_TYPE_0x241", + "LH_NETEVENT_TYPE_0x242", + "LH_NETEVENT_TYPE_0x243", + "LH_NETEVENT_TYPE_0x244", + "LH_NETEVENT_TYPE_0x245", + "LH_NETEVENT_TYPE_0x246", + "LH_NETEVENT_TYPE_0x247", + "LH_NETEVENT_TYPE_0x248", + "LH_NETEVENT_TYPE_0x249", + "LH_NETEVENT_TYPE_0x24a", + "LH_NETEVENT_TYPE_0x24b", + "LH_NETEVENT_TYPE_0x24c", + "LH_NETEVENT_TYPE_0x24d", + "LH_NETEVENT_TYPE_0x24e", + "LH_NETEVENT_TYPE_0x24f", + "LH_NETEVENT_TYPE_0x250", + "LH_NETEVENT_TYPE_0x251", + "LH_NETEVENT_TYPE_0x252", + "LH_NETEVENT_TYPE_0x253", + "LH_NETEVENT_TYPE_0x254", + "LH_NETEVENT_TYPE_0x255", + "LH_NETEVENT_TYPE_0x256", + "LH_NETEVENT_TYPE_0x257", + "LH_NETEVENT_TYPE_0x258", + "LH_NETEVENT_TYPE_0x259", + "LH_NETEVENT_TYPE_0x25a", + "LH_NETEVENT_TYPE_0x25b", + "LH_NETEVENT_TYPE_0x25c", + "LH_NETEVENT_TYPE_0x25d", + "LH_NETEVENT_TYPE_0x25e", + "LH_NETEVENT_TYPE_0x25f", + "LH_NETEVENT_TYPE_0x260", + "LH_NETEVENT_TYPE_0x261", + "LH_NETEVENT_TYPE_0x262", + "LH_NETEVENT_TYPE_0x263", + "LH_NETEVENT_TYPE_0x264", + "LH_NETEVENT_TYPE_0x265", + "LH_NETEVENT_TYPE_0x266", + "LH_NETEVENT_TYPE_0x267", + "LH_NETEVENT_TYPE_0x268", + "LH_NETEVENT_TYPE_0x269", + "LH_NETEVENT_TYPE_0x26a", + "LH_NETEVENT_TYPE_0x26b", + "LH_NETEVENT_TYPE_0x26c", + "LH_NETEVENT_TYPE_0x26d", + "LH_NETEVENT_TYPE_0x26e", + "LH_NETEVENT_TYPE_0x26f", + "LH_NETEVENT_TYPE_0x270", + "LH_NETEVENT_TYPE_0x271", + "LH_NETEVENT_TYPE_0x272", + "LH_NETEVENT_TYPE_0x273", + "LH_NETEVENT_TYPE_0x274", + "LH_NETEVENT_TYPE_0x275", + "LH_NETEVENT_TYPE_0x276", + "LH_NETEVENT_TYPE_0x277", + "LH_NETEVENT_TYPE_0x278", + "LH_NETEVENT_TYPE_0x279", + "LH_NETEVENT_TYPE_0x27a", + "LH_NETEVENT_TYPE_0x27b", + "LH_NETEVENT_TYPE_0x27c", + "LH_NETEVENT_TYPE_0x27d", + "LH_NETEVENT_TYPE_0x27e", + "LH_NETEVENT_TYPE_0x27f", + "LH_NETEVENT_TYPE_0x280", + "LH_NETEVENT_TYPE_0x281", + "LH_NETEVENT_TYPE_0x282", + "LH_NETEVENT_TYPE_0x283", + "LH_NETEVENT_TYPE_0x284", + "LH_NETEVENT_TYPE_0x285", + "LH_NETEVENT_TYPE_0x286", + "LH_NETEVENT_TYPE_0x287", + "LH_NETEVENT_TYPE_0x288", + "LH_NETEVENT_TYPE_0x289", + "LH_NETEVENT_TYPE_0x28a", + "LH_NETEVENT_TYPE_0x28b", + "LH_NETEVENT_TYPE_0x28c", + "LH_NETEVENT_TYPE_0x28d", + "LH_NETEVENT_TYPE_0x28e", + "LH_NETEVENT_TYPE_0x28f", + "LH_NETEVENT_TYPE_0x290", + "LH_NETEVENT_TYPE_0x291", + "LH_NETEVENT_TYPE_0x292", + "LH_NETEVENT_TYPE_0x293", + "LH_NETEVENT_TYPE_0x294", + "LH_NETEVENT_TYPE_0x295", + "LH_NETEVENT_TYPE_0x296", + "LH_NETEVENT_TYPE_0x297", + "LH_NETEVENT_TYPE_0x298", + "LH_NETEVENT_TYPE_0x299", + "LH_NETEVENT_TYPE_0x29a", + "LH_NETEVENT_TYPE_0x29b", + "LH_NETEVENT_TYPE_0x29c", + "LH_NETEVENT_TYPE_0x29d", + "LH_NETEVENT_TYPE_0x29e", + "LH_NETEVENT_TYPE_0x29f", + "LH_NETEVENT_TYPE_0x2a0", + "LH_NETEVENT_TYPE_0x2a1", + "LH_NETEVENT_TYPE_0x2a2", + "LH_NETEVENT_TYPE_0x2a3", + "LH_NETEVENT_TYPE_0x2a4", + "LH_NETEVENT_TYPE_0x2a5", + "LH_NETEVENT_TYPE_0x2a6", + "LH_NETEVENT_TYPE_0x2a7", + "LH_NETEVENT_TYPE_0x2a8", + "LH_NETEVENT_TYPE_0x2a9", + "LH_NETEVENT_TYPE_0x2aa", + "LH_NETEVENT_TYPE_0x2ab", + "LH_NETEVENT_TYPE_0x2ac", + "LH_NETEVENT_TYPE_0x2ad", + "LH_NETEVENT_TYPE_0x2ae", + "LH_NETEVENT_TYPE_0x2af", + "LH_NETEVENT_TYPE_0x2b0", + "LH_NETEVENT_TYPE_0x2b1", + "LH_NETEVENT_TYPE_0x2b2", + "LH_NETEVENT_TYPE_0x2b3", + "LH_NETEVENT_TYPE_0x2b4", + "LH_NETEVENT_TYPE_0x2b5", + "LH_NETEVENT_TYPE_0x2b6", + "LH_NETEVENT_TYPE_0x2b7", + "LH_NETEVENT_TYPE_0x2b8", + "LH_NETEVENT_TYPE_0x2b9", + "LH_NETEVENT_TYPE_0x2ba", + "LH_NETEVENT_TYPE_0x2bb", + "LH_NETEVENT_TYPE_0x2bc", + "LH_NETEVENT_TYPE_0x2bd", + "LH_NETEVENT_TYPE_0x2be", + "LH_NETEVENT_TYPE_0x2bf", + "LH_NETEVENT_TYPE_0x2c0", + "LH_NETEVENT_TYPE_0x2c1", + "LH_NETEVENT_TYPE_0x2c2", + "LH_NETEVENT_TYPE_0x2c3", + "LH_NETEVENT_TYPE_0x2c4", + "LH_NETEVENT_TYPE_0x2c5", + "LH_NETEVENT_TYPE_0x2c6", + "LH_NETEVENT_TYPE_0x2c7", + "LH_NETEVENT_TYPE_0x2c8", + "LH_NETEVENT_TYPE_0x2c9", + "LH_NETEVENT_TYPE_0x2ca", + "LH_NETEVENT_TYPE_0x2cb", + "LH_NETEVENT_TYPE_0x2cc", + "LH_NETEVENT_TYPE_0x2cd", + "LH_NETEVENT_TYPE_0x2ce", + "LH_NETEVENT_TYPE_0x2cf", + "LH_NETEVENT_TYPE_0x2d0", + "LH_NETEVENT_TYPE_0x2d1", + "LH_NETEVENT_TYPE_0x2d2", + "LH_NETEVENT_TYPE_0x2d3", + "LH_NETEVENT_TYPE_0x2d4", + "LH_NETEVENT_TYPE_0x2d5", + "LH_NETEVENT_TYPE_0x2d6", + "LH_NETEVENT_TYPE_0x2d7", + "LH_NETEVENT_TYPE_0x2d8", + "LH_NETEVENT_TYPE_0x2d9", + "LH_NETEVENT_TYPE_0x2da", + "LH_NETEVENT_TYPE_0x2db", + "LH_NETEVENT_TYPE_0x2dc", + "LH_NETEVENT_TYPE_0x2dd", + "LH_NETEVENT_TYPE_0x2de", + "LH_NETEVENT_TYPE_0x2df", + "LH_NETEVENT_TYPE_0x2e0", + "LH_NETEVENT_TYPE_0x2e1", + "LH_NETEVENT_TYPE_0x2e2", + "LH_NETEVENT_TYPE_0x2e3", + "LH_NETEVENT_TYPE_0x2e4", + "LH_NETEVENT_TYPE_0x2e5", + "LH_NETEVENT_TYPE_0x2e6", + "LH_NETEVENT_TYPE_0x2e7", + "LH_NETEVENT_TYPE_0x2e8", + "LH_NETEVENT_TYPE_0x2e9", + "LH_NETEVENT_TYPE_0x2ea", + "LH_NETEVENT_TYPE_0x2eb", + "LH_NETEVENT_TYPE_0x2ec", + "LH_NETEVENT_TYPE_0x2ed", + "LH_NETEVENT_TYPE_0x2ee", + "LH_NETEVENT_TYPE_0x2ef", + "LH_NETEVENT_TYPE_0x2f0", + "LH_NETEVENT_TYPE_0x2f1", + "LH_NETEVENT_TYPE_0x2f2", + "LH_NETEVENT_TYPE_0x2f3", + "LH_NETEVENT_TYPE_0x2f4", + "LH_NETEVENT_TYPE_0x2f5", + "LH_NETEVENT_TYPE_0x2f6", + "LH_NETEVENT_TYPE_0x2f7", + "LH_NETEVENT_TYPE_0x2f8", + "LH_NETEVENT_TYPE_0x2f9", + "LH_NETEVENT_TYPE_0x2fa", + "LH_NETEVENT_TYPE_0x2fb", + "LH_NETEVENT_TYPE_0x2fc", + "LH_NETEVENT_TYPE_0x2fd", + "LH_NETEVENT_TYPE_0x2fe", + "LH_NETEVENT_TYPE_0x2ff", + "LH_NETEVENT_TYPE_0x300", + "LH_NETEVENT_TYPE_0x301", + "LH_NETEVENT_TYPE_0x302", + "LH_NETEVENT_TYPE_0x303", + "LH_NETEVENT_TYPE_0x304", + "LH_NETEVENT_TYPE_0x305", + "LH_NETEVENT_TYPE_0x306", + "LH_NETEVENT_TYPE_0x307", + "LH_NETEVENT_TYPE_0x308", + "LH_NETEVENT_TYPE_0x309", + "LH_NETEVENT_TYPE_0x30a", + "LH_NETEVENT_TYPE_0x30b", + "LH_NETEVENT_TYPE_0x30c", + "LH_NETEVENT_TYPE_0x30d", + "LH_NETEVENT_TYPE_0x30e", + "LH_NETEVENT_TYPE_0x30f", + "LH_NETEVENT_TYPE_0x310", + "LH_NETEVENT_TYPE_0x311", + "LH_NETEVENT_TYPE_0x312", + "LH_NETEVENT_TYPE_0x313", + "LH_NETEVENT_TYPE_0x314", + "LH_NETEVENT_TYPE_0x315", + "LH_NETEVENT_TYPE_0x316", + "LH_NETEVENT_TYPE_0x317", + "LH_NETEVENT_TYPE_0x318", + "LH_NETEVENT_TYPE_0x319", + "LH_NETEVENT_TYPE_0x31a", + "LH_NETEVENT_TYPE_0x31b", + "LH_NETEVENT_TYPE_0x31c", + "LH_NETEVENT_TYPE_0x31d", + "LH_NETEVENT_TYPE_0x31e", + "LH_NETEVENT_TYPE_0x31f", + "LH_NETEVENT_TYPE_0x320", + "LH_NETEVENT_TYPE_0x321", + "LH_NETEVENT_TYPE_0x322", + "LH_NETEVENT_TYPE_0x323", + "LH_NETEVENT_TYPE_0x324", + "LH_NETEVENT_TYPE_0x325", + "LH_NETEVENT_TYPE_0x326", + "LH_NETEVENT_TYPE_0x327", + "LH_NETEVENT_TYPE_0x328", + "LH_NETEVENT_TYPE_0x329", + "LH_NETEVENT_TYPE_0x32a", + "LH_NETEVENT_TYPE_0x32b", + "LH_NETEVENT_TYPE_0x32c", + "LH_NETEVENT_TYPE_0x32d", + "LH_NETEVENT_TYPE_0x32e", + "LH_NETEVENT_TYPE_0x32f", + "LH_NETEVENT_TYPE_0x330", + "LH_NETEVENT_TYPE_0x331", + "LH_NETEVENT_TYPE_0x332", + "LH_NETEVENT_TYPE_0x333", + "LH_NETEVENT_TYPE_0x334", + "LH_NETEVENT_TYPE_0x335", + "LH_NETEVENT_TYPE_0x336", + "LH_NETEVENT_TYPE_0x337", + "LH_NETEVENT_TYPE_0x338", + "LH_NETEVENT_TYPE_0x339", + "LH_NETEVENT_TYPE_0x33a", + "LH_NETEVENT_TYPE_0x33b", + "LH_NETEVENT_TYPE_0x33c", + "LH_NETEVENT_TYPE_0x33d", + "LH_NETEVENT_TYPE_0x33e", + "LH_NETEVENT_TYPE_0x33f", + "LH_NETEVENT_TYPE_0x340", + "LH_NETEVENT_TYPE_0x341", + "LH_NETEVENT_TYPE_0x342", + "LH_NETEVENT_TYPE_0x343", + "LH_NETEVENT_TYPE_0x344", + "LH_NETEVENT_TYPE_0x345", + "LH_NETEVENT_TYPE_0x346", + "LH_NETEVENT_TYPE_0x347", + "LH_NETEVENT_TYPE_0x348", + "LH_NETEVENT_TYPE_0x349", + "LH_NETEVENT_TYPE_0x34a", + "LH_NETEVENT_TYPE_0x34b", + "LH_NETEVENT_TYPE_0x34c", + "LH_NETEVENT_TYPE_0x34d", + "LH_NETEVENT_TYPE_0x34e", + "LH_NETEVENT_TYPE_0x34f", + "LH_NETEVENT_TYPE_0x350", + "LH_NETEVENT_TYPE_0x351", + "LH_NETEVENT_TYPE_0x352", + "LH_NETEVENT_TYPE_0x353", + "LH_NETEVENT_TYPE_0x354", + "LH_NETEVENT_TYPE_0x355", + "LH_NETEVENT_TYPE_0x356", + "LH_NETEVENT_TYPE_0x357", + "LH_NETEVENT_TYPE_0x358", + "LH_NETEVENT_TYPE_0x359", + "LH_NETEVENT_TYPE_0x35a", + "LH_NETEVENT_TYPE_0x35b", + "LH_NETEVENT_TYPE_0x35c", + "LH_NETEVENT_TYPE_0x35d", + "LH_NETEVENT_TYPE_0x35e", + "LH_NETEVENT_TYPE_0x35f", + "LH_NETEVENT_TYPE_0x360", + "LH_NETEVENT_TYPE_0x361", + "LH_NETEVENT_TYPE_0x362", + "LH_NETEVENT_TYPE_0x363", + "LH_NETEVENT_TYPE_0x364", + "LH_NETEVENT_TYPE_0x365", + "LH_NETEVENT_TYPE_0x366", + "LH_NETEVENT_TYPE_0x367", + "LH_NETEVENT_TYPE_0x368", + "LH_NETEVENT_TYPE_0x369", + "LH_NETEVENT_TYPE_0x36a", + "LH_NETEVENT_TYPE_0x36b", + "LH_NETEVENT_TYPE_0x36c", + "LH_NETEVENT_TYPE_0x36d", + "LH_NETEVENT_TYPE_0x36e", + "LH_NETEVENT_TYPE_0x36f", + "LH_NETEVENT_TYPE_0x370", + "LH_NETEVENT_TYPE_0x371", + "LH_NETEVENT_TYPE_0x372", + "LH_NETEVENT_TYPE_0x373", + "LH_NETEVENT_TYPE_0x374", + "LH_NETEVENT_TYPE_0x375", + "LH_NETEVENT_TYPE_0x376", + "LH_NETEVENT_TYPE_0x377", + "LH_NETEVENT_TYPE_0x378", + "LH_NETEVENT_TYPE_0x379", + "LH_NETEVENT_TYPE_0x37a", + "LH_NETEVENT_TYPE_0x37b", + "LH_NETEVENT_TYPE_0x37c", + "LH_NETEVENT_TYPE_0x37d", + "LH_NETEVENT_TYPE_0x37e", + "LH_NETEVENT_TYPE_0x37f", + "LH_NETEVENT_TYPE_0x380", + "LH_NETEVENT_TYPE_0x381", + "LH_NETEVENT_TYPE_0x382", + "LH_NETEVENT_TYPE_0x383", + "LH_NETEVENT_TYPE_0x384", + "LH_NETEVENT_TYPE_0x385", + "LH_NETEVENT_TYPE_0x386", + "LH_NETEVENT_TYPE_0x387", + "LH_NETEVENT_TYPE_0x388", + "LH_NETEVENT_TYPE_0x389", + "LH_NETEVENT_TYPE_0x38a", + "LH_NETEVENT_TYPE_0x38b", + "LH_NETEVENT_TYPE_0x38c", + "LH_NETEVENT_TYPE_0x38d", + "LH_NETEVENT_TYPE_0x38e", + "LH_NETEVENT_TYPE_0x38f", + "LH_NETEVENT_TYPE_0x390", + "LH_NETEVENT_TYPE_0x391", + "LH_NETEVENT_TYPE_0x392", + "LH_NETEVENT_TYPE_0x393", + "LH_NETEVENT_TYPE_0x394", + "LH_NETEVENT_TYPE_0x395", + "LH_NETEVENT_TYPE_0x396", + "LH_NETEVENT_TYPE_0x397", + "LH_NETEVENT_TYPE_0x398", + "LH_NETEVENT_TYPE_0x399", + "LH_NETEVENT_TYPE_0x39a", + "LH_NETEVENT_TYPE_0x39b", + "LH_NETEVENT_TYPE_0x39c", + "LH_NETEVENT_TYPE_0x39d", + "LH_NETEVENT_TYPE_0x39e", + "LH_NETEVENT_TYPE_0x39f", + "LH_NETEVENT_TYPE_0x3a0", + "LH_NETEVENT_TYPE_0x3a1", + "LH_NETEVENT_TYPE_0x3a2", + "LH_NETEVENT_TYPE_0x3a3", + "LH_NETEVENT_TYPE_0x3a4", + "LH_NETEVENT_TYPE_0x3a5", + "LH_NETEVENT_TYPE_0x3a6", + "LH_NETEVENT_TYPE_0x3a7", + "LH_NETEVENT_TYPE_0x3a8", + "LH_NETEVENT_TYPE_0x3a9", + "LH_NETEVENT_TYPE_0x3aa", + "LH_NETEVENT_TYPE_0x3ab", + "LH_NETEVENT_TYPE_0x3ac", + "LH_NETEVENT_TYPE_0x3ad", + "LH_NETEVENT_TYPE_0x3ae", + "LH_NETEVENT_TYPE_0x3af", + "LH_NETEVENT_TYPE_0x3b0", + "LH_NETEVENT_TYPE_0x3b1", + "LH_NETEVENT_TYPE_0x3b2", + "LH_NETEVENT_TYPE_0x3b3", + "LH_NETEVENT_TYPE_0x3b4", + "LH_NETEVENT_TYPE_0x3b5", + "LH_NETEVENT_TYPE_0x3b6", + "LH_NETEVENT_TYPE_0x3b7", + "LH_NETEVENT_TYPE_0x3b8", + "LH_NETEVENT_TYPE_0x3b9", + "LH_NETEVENT_TYPE_0x3ba", + "LH_NETEVENT_TYPE_0x3bb", + "LH_NETEVENT_TYPE_0x3bc", + "LH_NETEVENT_TYPE_0x3bd", + "LH_NETEVENT_TYPE_0x3be", + "LH_NETEVENT_TYPE_0x3bf", + "LH_NETEVENT_TYPE_0x3c0", + "LH_NETEVENT_TYPE_0x3c1", + "LH_NETEVENT_TYPE_0x3c2", + "LH_NETEVENT_TYPE_0x3c3", + "LH_NETEVENT_TYPE_0x3c4", + "LH_NETEVENT_TYPE_0x3c5", + "LH_NETEVENT_TYPE_0x3c6", + "LH_NETEVENT_TYPE_0x3c7", + "LH_NETEVENT_TYPE_0x3c8", + "LH_NETEVENT_TYPE_0x3c9", + "LH_NETEVENT_TYPE_0x3ca", + "LH_NETEVENT_TYPE_0x3cb", + "LH_NETEVENT_TYPE_0x3cc", + "LH_NETEVENT_TYPE_0x3cd", + "LH_NETEVENT_TYPE_0x3ce", + "LH_NETEVENT_TYPE_0x3cf", + "LH_NETEVENT_TYPE_0x3d0", + "LH_NETEVENT_TYPE_0x3d1", + "LH_NETEVENT_TYPE_0x3d2", + "LH_NETEVENT_TYPE_0x3d3", + "LH_NETEVENT_TYPE_0x3d4", + "LH_NETEVENT_TYPE_0x3d5", + "LH_NETEVENT_TYPE_0x3d6", + "LH_NETEVENT_TYPE_0x3d7", + "LH_NETEVENT_TYPE_0x3d8", + "LH_NETEVENT_TYPE_0x3d9", + "LH_NETEVENT_TYPE_0x3da", + "LH_NETEVENT_TYPE_0x3db", + "LH_NETEVENT_TYPE_0x3dc", + "LH_NETEVENT_TYPE_0x3dd", + "LH_NETEVENT_TYPE_0x3de", + "LH_NETEVENT_TYPE_0x3df", + "LH_NETEVENT_TYPE_0x3e0", + "LH_NETEVENT_TYPE_0x3e1", + "LH_NETEVENT_TYPE_0x3e2", + "LH_NETEVENT_TYPE_0x3e3", + "LH_NETEVENT_TYPE_0x3e4", + "LH_NETEVENT_TYPE_0x3e5", + "LH_NETEVENT_TYPE_0x3e6", + "LH_NETEVENT_TYPE_0x3e7", + "LH_NETEVENT_TYPE_0x3e8", + "LH_NETEVENT_TYPE_0x3e9", + "LH_NETEVENT_TYPE_0x3ea", + "LH_NETEVENT_TYPE_0x3eb", + "LH_NETEVENT_TYPE_0x3ec", + "LH_NETEVENT_TYPE_0x3ed", + "LH_NETEVENT_TYPE_0x3ee", + "LH_NETEVENT_TYPE_0x3ef", + "LH_NETEVENT_TYPE_0x3f0", + "LH_NETEVENT_TYPE_0x3f1", + "LH_NETEVENT_TYPE_0x3f2", + "LH_NETEVENT_TYPE_0x3f3", + "LH_NETEVENT_TYPE_0x3f4", + "LH_NETEVENT_TYPE_0x3f5", + "LH_NETEVENT_TYPE_0x3f6", + "LH_NETEVENT_TYPE_0x3f7", + "LH_NETEVENT_TYPE_0x3f8", + "LH_NETEVENT_TYPE_0x3f9", + "LH_NETEVENT_TYPE_0x3fa", + "LH_NETEVENT_TYPE_0x3fb", + "LH_NETEVENT_TYPE_0x3fc", + "LH_NETEVENT_TYPE_0x3fd", + "LH_NETEVENT_TYPE_0x3fe", + "LH_NETEVENT_TYPE_0x3ff", + "LH_NETEVENT_TYPE_0x400", + "LH_NETEVENT_TYPE_0x401", + "LH_NETEVENT_TYPE_0x402", + "LH_NETEVENT_TYPE_0x403", + "LH_NETEVENT_TYPE_0x404", + "LH_NETEVENT_TYPE_0x405", + "LH_NETEVENT_TYPE_0x406", + "LH_NETEVENT_TYPE_0x407", + "LH_NETEVENT_TYPE_0x408", + "LH_NETEVENT_TYPE_0x409", + "LH_NETEVENT_TYPE_0x40a", + "LH_NETEVENT_TYPE_0x40b", + "LH_NETEVENT_TYPE_0x40c", + "LH_NETEVENT_TYPE_0x40d", + "LH_NETEVENT_TYPE_0x40e", + "LH_NETEVENT_TYPE_0x40f", + "LH_NETEVENT_TYPE_0x410", + "LH_NETEVENT_TYPE_0x411", + "LH_NETEVENT_TYPE_0x412", + "LH_NETEVENT_TYPE_0x413", + "LH_NETEVENT_TYPE_0x414", + "LH_NETEVENT_TYPE_0x415", + "LH_NETEVENT_TYPE_0x416", + "LH_NETEVENT_TYPE_0x417", + "LH_NETEVENT_TYPE_0x418", + "LH_NETEVENT_TYPE_0x419", + "LH_NETEVENT_TYPE_0x41a", + "LH_NETEVENT_TYPE_0x41b", + "LH_NETEVENT_TYPE_0x41c", + "LH_NETEVENT_TYPE_0x41d", + "LH_NETEVENT_TYPE_0x41e", + "LH_NETEVENT_TYPE_0x41f", + "LH_NETEVENT_TYPE_0x420", + "LH_NETEVENT_TYPE_0x421", + "LH_NETEVENT_TYPE_0x422", + "LH_NETEVENT_TYPE_0x423", + "LH_NETEVENT_TYPE_0x424", + "LH_NETEVENT_TYPE_0x425", + "LH_NETEVENT_TYPE_0x426", + "LH_NETEVENT_TYPE_0x427", + "LH_NETEVENT_TYPE_0x428", + "LH_NETEVENT_TYPE_0x429", + "LH_NETEVENT_TYPE_0x42a", + "LH_NETEVENT_TYPE_0x42b", + "LH_NETEVENT_TYPE_0x42c", + "LH_NETEVENT_TYPE_0x42d", + "LH_NETEVENT_TYPE_0x42e", + "LH_NETEVENT_TYPE_0x42f", + "LH_NETEVENT_TYPE_0x430", + "LH_NETEVENT_TYPE_0x431", + "LH_NETEVENT_TYPE_0x432", + "LH_NETEVENT_TYPE_0x433", + "LH_NETEVENT_TYPE_0x434", + "LH_NETEVENT_TYPE_0x435", + "LH_NETEVENT_TYPE_0x436", + "LH_NETEVENT_TYPE_0x437", + "LH_NETEVENT_TYPE_0x438", + "LH_NETEVENT_TYPE_0x439", + "LH_NETEVENT_TYPE_0x43a", + "LH_NETEVENT_TYPE_0x43b", + "LH_NETEVENT_TYPE_0x43c", + "LH_NETEVENT_TYPE_0x43d", + "LH_NETEVENT_TYPE_0x43e", + "LH_NETEVENT_TYPE_0x43f", + "LH_NETEVENT_TYPE_0x440", + "LH_NETEVENT_TYPE_0x441", + "LH_NETEVENT_TYPE_0x442", + "LH_NETEVENT_TYPE_0x443", + "LH_NETEVENT_TYPE_0x444", + "LH_NETEVENT_TYPE_0x445", + "LH_NETEVENT_TYPE_0x446", + "LH_NETEVENT_TYPE_0x447", + "LH_NETEVENT_TYPE_0x448", + "LH_NETEVENT_TYPE_0x449", + "LH_NETEVENT_TYPE_0x44a", + "LH_NETEVENT_TYPE_0x44b", + "LH_NETEVENT_TYPE_0x44c", + "LH_NETEVENT_TYPE_0x44d", + "LH_NETEVENT_TYPE_0x44e", + "LH_NETEVENT_TYPE_0x44f", + "LH_NETEVENT_TYPE_0x450", + "LH_NETEVENT_TYPE_0x451", + "LH_NETEVENT_TYPE_0x452", + "LH_NETEVENT_TYPE_0x453", + "LH_NETEVENT_TYPE_0x454", + "LH_NETEVENT_TYPE_0x455", + "LH_NETEVENT_TYPE_0x456", + "LH_NETEVENT_TYPE_0x457", + "LH_NETEVENT_TYPE_0x458", + "LH_NETEVENT_TYPE_0x459", + "LH_NETEVENT_TYPE_0x45a", + "LH_NETEVENT_TYPE_0x45b", + "LH_NETEVENT_TYPE_0x45c", + "LH_NETEVENT_TYPE_0x45d", + "LH_NETEVENT_TYPE_0x45e", + "LH_NETEVENT_TYPE_0x45f", + "LH_NETEVENT_TYPE_0x460", + "LH_NETEVENT_TYPE_0x461", + "LH_NETEVENT_TYPE_0x462", + "LH_NETEVENT_TYPE_0x463", + "LH_NETEVENT_TYPE_0x464", + "LH_NETEVENT_TYPE_0x465", + "LH_NETEVENT_TYPE_0x466", + "LH_NETEVENT_TYPE_0x467", + "LH_NETEVENT_TYPE_0x468", + "LH_NETEVENT_TYPE_0x469", + "LH_NETEVENT_TYPE_0x46a", + "LH_NETEVENT_TYPE_0x46b", + "LH_NETEVENT_TYPE_0x46c", + "LH_NETEVENT_TYPE_0x46d", + "LH_NETEVENT_TYPE_0x46e", + "LH_NETEVENT_TYPE_0x46f", + "LH_NETEVENT_TYPE_0x470", + "LH_NETEVENT_TYPE_0x471", + "LH_NETEVENT_TYPE_0x472", + "LH_NETEVENT_TYPE_0x473", + "LH_NETEVENT_TYPE_0x474", + "LH_NETEVENT_TYPE_0x475", + "LH_NETEVENT_TYPE_0x476", + "LH_NETEVENT_TYPE_0x477", + "LH_NETEVENT_TYPE_0x478", + "LH_NETEVENT_TYPE_0x479", + "LH_NETEVENT_TYPE_0x47a", + "LH_NETEVENT_TYPE_0x47b", + "LH_NETEVENT_TYPE_0x47c", + "LH_NETEVENT_TYPE_0x47d", + "LH_NETEVENT_TYPE_0x47e", + "LH_NETEVENT_TYPE_0x47f", + "LH_NETEVENT_TYPE_0x480", + "LH_NETEVENT_TYPE_0x481", + "LH_NETEVENT_TYPE_0x482", + "LH_NETEVENT_TYPE_0x483", + "LH_NETEVENT_TYPE_0x484", + "LH_NETEVENT_TYPE_0x485", + "LH_NETEVENT_TYPE_0x486", + "LH_NETEVENT_TYPE_0x487", + "LH_NETEVENT_TYPE_0x488", + "LH_NETEVENT_TYPE_0x489", + "LH_NETEVENT_TYPE_0x48a", + "LH_NETEVENT_TYPE_0x48b", + "LH_NETEVENT_TYPE_0x48c", + "LH_NETEVENT_TYPE_0x48d", + "LH_NETEVENT_TYPE_0x48e", + "LH_NETEVENT_TYPE_0x48f", + "LH_NETEVENT_TYPE_0x490", + "LH_NETEVENT_TYPE_0x491", + "LH_NETEVENT_TYPE_0x492", + "LH_NETEVENT_TYPE_0x493", + "LH_NETEVENT_TYPE_0x494", + "LH_NETEVENT_TYPE_0x495", + "LH_NETEVENT_TYPE_0x496", + "LH_NETEVENT_TYPE_0x497", + "LH_NETEVENT_TYPE_0x498", + "LH_NETEVENT_TYPE_0x499", + "LH_NETEVENT_TYPE_0x49a", + "LH_NETEVENT_TYPE_0x49b", + "LH_NETEVENT_TYPE_0x49c", + "LH_NETEVENT_TYPE_0x49d", + "LH_NETEVENT_TYPE_0x49e", + "LH_NETEVENT_TYPE_0x49f", + "LH_NETEVENT_TYPE_0x4a0", + "LH_NETEVENT_TYPE_0x4a1", + "LH_NETEVENT_TYPE_0x4a2", + "LH_NETEVENT_TYPE_0x4a3", + "LH_NETEVENT_TYPE_0x4a4", + "LH_NETEVENT_TYPE_0x4a5", + "LH_NETEVENT_TYPE_0x4a6", + "LH_NETEVENT_TYPE_0x4a7", + "LH_NETEVENT_TYPE_0x4a8", + "LH_NETEVENT_TYPE_0x4a9", + "LH_NETEVENT_TYPE_0x4aa", + "LH_NETEVENT_TYPE_0x4ab", + "LH_NETEVENT_TYPE_0x4ac", + "LH_NETEVENT_TYPE_0x4ad", + "LH_NETEVENT_TYPE_0x4ae", + "LH_NETEVENT_TYPE_0x4af", + "LH_NETEVENT_TYPE_0x4b0", + "LH_NETEVENT_TYPE_0x4b1", + "LH_NETEVENT_TYPE_0x4b2", + "LH_NETEVENT_TYPE_0x4b3", + "LH_NETEVENT_TYPE_0x4b4", + "LH_NETEVENT_TYPE_0x4b5", + "LH_NETEVENT_TYPE_0x4b6", + "LH_NETEVENT_TYPE_0x4b7", + "LH_NETEVENT_TYPE_0x4b8", + "LH_NETEVENT_TYPE_0x4b9", + "LH_NETEVENT_TYPE_0x4ba", + "LH_NETEVENT_TYPE_0x4bb", + "LH_NETEVENT_TYPE_0x4bc", + "LH_NETEVENT_TYPE_0x4bd", + "LH_NETEVENT_TYPE_0x4be", + "LH_NETEVENT_TYPE_0x4bf", + "LH_NETEVENT_TYPE_0x4c0", + "LH_NETEVENT_TYPE_0x4c1", + "LH_NETEVENT_TYPE_0x4c2", + "LH_NETEVENT_TYPE_0x4c3", + "LH_NETEVENT_TYPE_0x4c4", + "LH_NETEVENT_TYPE_0x4c5", + "LH_NETEVENT_TYPE_0x4c6", + "LH_NETEVENT_TYPE_0x4c7", + "LH_NETEVENT_TYPE_0x4c8", + "LH_NETEVENT_TYPE_0x4c9", + "LH_NETEVENT_TYPE_0x4ca", + "LH_NETEVENT_TYPE_0x4cb", + "LH_NETEVENT_TYPE_0x4cc", + "LH_NETEVENT_TYPE_0x4cd", + "LH_NETEVENT_TYPE_0x4ce", + "LH_NETEVENT_TYPE_0x4cf", + "LH_NETEVENT_TYPE_0x4d0", + "LH_NETEVENT_TYPE_0x4d1", + "LH_NETEVENT_TYPE_0x4d2", + "LH_NETEVENT_TYPE_0x4d3", + "LH_NETEVENT_TYPE_0x4d4", + "LH_NETEVENT_TYPE_0x4d5", + "LH_NETEVENT_TYPE_0x4d6", + "LH_NETEVENT_TYPE_0x4d7", + "LH_NETEVENT_TYPE_0x4d8", + "LH_NETEVENT_TYPE_0x4d9", + "LH_NETEVENT_TYPE_0x4da", + "LH_NETEVENT_TYPE_0x4db", + "LH_NETEVENT_TYPE_0x4dc", + "LH_NETEVENT_TYPE_0x4dd", + "LH_NETEVENT_TYPE_0x4de", + "LH_NETEVENT_TYPE_0x4df", + "LH_NETEVENT_TYPE_0x4e0", + "LH_NETEVENT_TYPE_0x4e1", + "LH_NETEVENT_TYPE_0x4e2", + "LH_NETEVENT_TYPE_0x4e3", + "LH_NETEVENT_TYPE_0x4e4", + "LH_NETEVENT_TYPE_0x4e5", + "LH_NETEVENT_TYPE_0x4e6", + "LH_NETEVENT_TYPE_0x4e7", + "LH_NETEVENT_TYPE_0x4e8", + "LH_NETEVENT_TYPE_0x4e9", + "LH_NETEVENT_TYPE_0x4ea", + "LH_NETEVENT_TYPE_0x4eb", + "LH_NETEVENT_TYPE_0x4ec", + "LH_NETEVENT_TYPE_0x4ed", + "LH_NETEVENT_TYPE_0x4ee", + "LH_NETEVENT_TYPE_0x4ef", + "LH_NETEVENT_TYPE_0x4f0", + "LH_NETEVENT_TYPE_0x4f1", + "LH_NETEVENT_TYPE_0x4f2", + "LH_NETEVENT_TYPE_0x4f3", + "LH_NETEVENT_TYPE_0x4f4", + "LH_NETEVENT_TYPE_0x4f5", + "LH_NETEVENT_TYPE_0x4f6", + "LH_NETEVENT_TYPE_0x4f7", + "LH_NETEVENT_TYPE_0x4f8", + "LH_NETEVENT_TYPE_0x4f9", + "LH_NETEVENT_TYPE_0x4fa", + "LH_NETEVENT_TYPE_0x4fb", + "LH_NETEVENT_TYPE_0x4fc", + "LH_NETEVENT_TYPE_0x4fd", + "LH_NETEVENT_TYPE_0x4fe", + "LH_NETEVENT_TYPE_0x4ff", + "LH_NETEVENT_TYPE_0x500", + "LH_NETEVENT_TYPE_0x501", + "LH_NETEVENT_TYPE_0x502", + "LH_NETEVENT_TYPE_0x503", + "LH_NETEVENT_TYPE_0x504", + "LH_NETEVENT_TYPE_0x505", + "LH_NETEVENT_TYPE_0x506", + "LH_NETEVENT_TYPE_0x507", + "LH_NETEVENT_TYPE_0x508", + "LH_NETEVENT_TYPE_0x509", + "LH_NETEVENT_TYPE_0x50a", + "LH_NETEVENT_TYPE_0x50b", + "LH_NETEVENT_TYPE_0x50c", + "LH_NETEVENT_TYPE_0x50d", + "LH_NETEVENT_TYPE_0x50e", + "LH_NETEVENT_TYPE_0x50f", + "LH_NETEVENT_TYPE_0x510", + "LH_NETEVENT_TYPE_0x511", + "LH_NETEVENT_TYPE_0x512", + "LH_NETEVENT_TYPE_0x513", + "LH_NETEVENT_TYPE_0x514", + "LH_NETEVENT_TYPE_0x515", + "LH_NETEVENT_TYPE_0x516", + "LH_NETEVENT_TYPE_0x517", + "LH_NETEVENT_TYPE_0x518", + "LH_NETEVENT_TYPE_0x519", + "LH_NETEVENT_TYPE_0x51a", + "LH_NETEVENT_TYPE_0x51b", + "LH_NETEVENT_TYPE_0x51c", + "LH_NETEVENT_TYPE_0x51d", + "LH_NETEVENT_TYPE_0x51e", + "LH_NETEVENT_TYPE_0x51f", + "LH_NETEVENT_TYPE_0x520", + "LH_NETEVENT_TYPE_0x521", + "LH_NETEVENT_TYPE_0x522", + "LH_NETEVENT_TYPE_0x523", + "LH_NETEVENT_TYPE_0x524", + "LH_NETEVENT_TYPE_0x525", + "LH_NETEVENT_TYPE_0x526", + "LH_NETEVENT_TYPE_0x527", + "LH_NETEVENT_TYPE_0x528", + "LH_NETEVENT_TYPE_0x529", + "LH_NETEVENT_TYPE_0x52a", + "LH_NETEVENT_TYPE_0x52b", + "LH_NETEVENT_TYPE_0x52c", + "LH_NETEVENT_TYPE_0x52d", + "LH_NETEVENT_TYPE_0x52e", + "LH_NETEVENT_TYPE_0x52f", + "LH_NETEVENT_TYPE_0x530", + "LH_NETEVENT_TYPE_0x531", + "LH_NETEVENT_TYPE_0x532", + "LH_NETEVENT_TYPE_0x533", + "LH_NETEVENT_TYPE_0x534", + "LH_NETEVENT_TYPE_0x535", + "LH_NETEVENT_TYPE_0x536", + "LH_NETEVENT_TYPE_0x537", + "LH_NETEVENT_TYPE_0x538", + "LH_NETEVENT_TYPE_0x539", + "LH_NETEVENT_TYPE_0x53a", + "LH_NETEVENT_TYPE_0x53b", + "LH_NETEVENT_TYPE_0x53c", + "LH_NETEVENT_TYPE_0x53d", + "LH_NETEVENT_TYPE_0x53e", + "LH_NETEVENT_TYPE_0x53f", + "LH_NETEVENT_TYPE_0x540", + "LH_NETEVENT_TYPE_0x541", + "LH_NETEVENT_TYPE_0x542", + "LH_NETEVENT_TYPE_0x543", + "LH_NETEVENT_TYPE_0x544", + "LH_NETEVENT_TYPE_0x545", + "LH_NETEVENT_TYPE_0x546", + "LH_NETEVENT_TYPE_0x547", + "LH_NETEVENT_TYPE_0x548", + "LH_NETEVENT_TYPE_0x549", + "LH_NETEVENT_TYPE_0x54a", + "LH_NETEVENT_TYPE_0x54b", + "LH_NETEVENT_TYPE_0x54c", + "LH_NETEVENT_TYPE_0x54d", + "LH_NETEVENT_TYPE_0x54e", + "LH_NETEVENT_TYPE_0x54f", + "LH_NETEVENT_TYPE_0x550", + "LH_NETEVENT_TYPE_0x551", + "LH_NETEVENT_TYPE_0x552", + "LH_NETEVENT_TYPE_0x553", + "LH_NETEVENT_TYPE_0x554", + "LH_NETEVENT_TYPE_0x555", + "LH_NETEVENT_TYPE_0x556", + "LH_NETEVENT_TYPE_0x557", + "LH_NETEVENT_TYPE_0x558", + "LH_NETEVENT_TYPE_0x559", + "LH_NETEVENT_TYPE_0x55a", + "LH_NETEVENT_TYPE_0x55b", + "LH_NETEVENT_TYPE_0x55c", + "LH_NETEVENT_TYPE_0x55d", + "LH_NETEVENT_TYPE_0x55e", + "LH_NETEVENT_TYPE_0x55f", + "LH_NETEVENT_TYPE_0x560", + "LH_NETEVENT_TYPE_0x561", + "LH_NETEVENT_TYPE_0x562", + "LH_NETEVENT_TYPE_0x563", + "LH_NETEVENT_TYPE_0x564", + "LH_NETEVENT_TYPE_0x565", + "LH_NETEVENT_TYPE_0x566", + "LH_NETEVENT_TYPE_0x567", + "LH_NETEVENT_TYPE_0x568", + "LH_NETEVENT_TYPE_0x569", + "LH_NETEVENT_TYPE_0x56a", + "LH_NETEVENT_TYPE_0x56b", + "LH_NETEVENT_TYPE_0x56c", + "LH_NETEVENT_TYPE_0x56d", + "LH_NETEVENT_TYPE_0x56e", + "LH_NETEVENT_TYPE_0x56f", + "LH_NETEVENT_TYPE_0x570", + "LH_NETEVENT_TYPE_0x571", + "LH_NETEVENT_TYPE_0x572", + "LH_NETEVENT_TYPE_0x573", + "LH_NETEVENT_TYPE_0x574", + "LH_NETEVENT_TYPE_0x575", + "LH_NETEVENT_TYPE_0x576", + "LH_NETEVENT_TYPE_0x577", + "LH_NETEVENT_TYPE_0x578", + "LH_NETEVENT_TYPE_0x579", + "LH_NETEVENT_TYPE_0x57a", + "LH_NETEVENT_TYPE_0x57b", + "LH_NETEVENT_TYPE_0x57c", + "LH_NETEVENT_TYPE_0x57d", + "LH_NETEVENT_TYPE_0x57e", + "LH_NETEVENT_TYPE_0x57f", + "LH_NETEVENT_TYPE_0x580", + "LH_NETEVENT_TYPE_0x581", + "LH_NETEVENT_TYPE_0x582", + "LH_NETEVENT_TYPE_0x583", + "LH_NETEVENT_TYPE_0x584", + "LH_NETEVENT_TYPE_0x585", + "LH_NETEVENT_TYPE_0x586", + "LH_NETEVENT_TYPE_0x587", + "LH_NETEVENT_TYPE_0x588", + "LH_NETEVENT_TYPE_0x589", + "LH_NETEVENT_TYPE_0x58a", + "LH_NETEVENT_TYPE_0x58b", + "LH_NETEVENT_TYPE_0x58c", + "LH_NETEVENT_TYPE_0x58d", + "LH_NETEVENT_TYPE_0x58e", + "LH_NETEVENT_TYPE_0x58f", + "LH_NETEVENT_TYPE_0x590", + "LH_NETEVENT_TYPE_0x591", + "LH_NETEVENT_TYPE_0x592", + "LH_NETEVENT_TYPE_0x593", + "LH_NETEVENT_TYPE_0x594", + "LH_NETEVENT_TYPE_0x595", + "LH_NETEVENT_TYPE_0x596", + "LH_NETEVENT_TYPE_0x597", + "LH_NETEVENT_TYPE_0x598", + "LH_NETEVENT_TYPE_0x599", + "LH_NETEVENT_TYPE_0x59a", + "LH_NETEVENT_TYPE_0x59b", + "LH_NETEVENT_TYPE_0x59c", + "LH_NETEVENT_TYPE_0x59d", + "LH_NETEVENT_TYPE_0x59e", + "LH_NETEVENT_TYPE_0x59f", + "LH_NETEVENT_TYPE_0x5a0", + "LH_NETEVENT_TYPE_0x5a1", + "LH_NETEVENT_TYPE_0x5a2", + "LH_NETEVENT_TYPE_0x5a3", + "LH_NETEVENT_TYPE_0x5a4", + "LH_NETEVENT_TYPE_0x5a5", + "LH_NETEVENT_TYPE_0x5a6", + "LH_NETEVENT_TYPE_0x5a7", + "LH_NETEVENT_TYPE_0x5a8", + "LH_NETEVENT_TYPE_0x5a9", + "LH_NETEVENT_TYPE_0x5aa", + "LH_NETEVENT_TYPE_0x5ab", + "LH_NETEVENT_TYPE_0x5ac", + "LH_NETEVENT_TYPE_0x5ad", + "LH_NETEVENT_TYPE_0x5ae", + "LH_NETEVENT_TYPE_0x5af", + "LH_NETEVENT_TYPE_0x5b0", + "LH_NETEVENT_TYPE_0x5b1", + "LH_NETEVENT_TYPE_0x5b2", + "LH_NETEVENT_TYPE_0x5b3", + "LH_NETEVENT_TYPE_0x5b4", + "LH_NETEVENT_TYPE_0x5b5", + "LH_NETEVENT_TYPE_0x5b6", + "LH_NETEVENT_TYPE_0x5b7", + "LH_NETEVENT_TYPE_0x5b8", + "LH_NETEVENT_TYPE_0x5b9", + "LH_NETEVENT_TYPE_0x5ba", + "LH_NETEVENT_TYPE_0x5bb", + "LH_NETEVENT_TYPE_0x5bc", + "LH_NETEVENT_TYPE_0x5bd", + "LH_NETEVENT_TYPE_0x5be", + "LH_NETEVENT_TYPE_0x5bf", + "LH_NETEVENT_TYPE_0x5c0", + "LH_NETEVENT_TYPE_0x5c1", + "LH_NETEVENT_TYPE_0x5c2", + "LH_NETEVENT_TYPE_0x5c3", + "LH_NETEVENT_TYPE_0x5c4", + "LH_NETEVENT_TYPE_0x5c5", + "LH_NETEVENT_TYPE_0x5c6", + "LH_NETEVENT_TYPE_0x5c7", + "LH_NETEVENT_TYPE_0x5c8", + "LH_NETEVENT_TYPE_0x5c9", + "LH_NETEVENT_TYPE_0x5ca", + "LH_NETEVENT_TYPE_0x5cb", + "LH_NETEVENT_TYPE_0x5cc", + "LH_NETEVENT_TYPE_0x5cd", + "LH_NETEVENT_TYPE_0x5ce", + "LH_NETEVENT_TYPE_0x5cf", + "LH_NETEVENT_TYPE_0x5d0", + "LH_NETEVENT_TYPE_0x5d1", + "LH_NETEVENT_TYPE_0x5d2", + "LH_NETEVENT_TYPE_0x5d3", + "LH_NETEVENT_TYPE_0x5d4", + "LH_NETEVENT_TYPE_0x5d5", + "LH_NETEVENT_TYPE_0x5d6", + "LH_NETEVENT_TYPE_0x5d7", + "LH_NETEVENT_TYPE_0x5d8", + "LH_NETEVENT_TYPE_0x5d9", + "LH_NETEVENT_TYPE_0x5da", + "LH_NETEVENT_TYPE_0x5db", + "LH_NETEVENT_TYPE_0x5dc", + "LH_NETEVENT_TYPE_0x5dd", + "LH_NETEVENT_TYPE_0x5de", + "LH_NETEVENT_TYPE_0x5df", + "LH_NETEVENT_TYPE_0x5e0", + "LH_NETEVENT_TYPE_0x5e1", + "LH_NETEVENT_TYPE_0x5e2", + "LH_NETEVENT_TYPE_0x5e3", + "LH_NETEVENT_TYPE_0x5e4", + "LH_NETEVENT_TYPE_0x5e5", + "LH_NETEVENT_TYPE_0x5e6", + "LH_NETEVENT_TYPE_0x5e7", + "LH_NETEVENT_TYPE_0x5e8", + "LH_NETEVENT_TYPE_0x5e9", + "LH_NETEVENT_TYPE_0x5ea", + "LH_NETEVENT_TYPE_0x5eb", + "LH_NETEVENT_TYPE_0x5ec", + "LH_NETEVENT_TYPE_0x5ed", + "LH_NETEVENT_TYPE_0x5ee", + "LH_NETEVENT_TYPE_0x5ef", + "LH_NETEVENT_TYPE_0x5f0", + "LH_NETEVENT_TYPE_0x5f1", + "LH_NETEVENT_TYPE_0x5f2", + "LH_NETEVENT_TYPE_0x5f3", + "LH_NETEVENT_TYPE_0x5f4", + "LH_NETEVENT_TYPE_0x5f5", + "LH_NETEVENT_TYPE_0x5f6", + "LH_NETEVENT_TYPE_0x5f7", + "LH_NETEVENT_TYPE_0x5f8", + "LH_NETEVENT_TYPE_0x5f9", + "LH_NETEVENT_TYPE_0x5fa", + "LH_NETEVENT_TYPE_0x5fb", + "LH_NETEVENT_TYPE_0x5fc", + "LH_NETEVENT_TYPE_0x5fd", + "LH_NETEVENT_TYPE_0x5fe", + "LH_NETEVENT_TYPE_0x5ff", + "LH_NETEVENT_TYPE_0x600", + "LH_NETEVENT_TYPE_0x601", + "LH_NETEVENT_TYPE_0x602", + "LH_NETEVENT_TYPE_0x603", + "LH_NETEVENT_TYPE_0x604", + "LH_NETEVENT_TYPE_0x605", + "LH_NETEVENT_TYPE_0x606", + "LH_NETEVENT_TYPE_0x607", + "LH_NETEVENT_TYPE_0x608", + "LH_NETEVENT_TYPE_0x609", + "LH_NETEVENT_TYPE_0x60a", + "LH_NETEVENT_TYPE_0x60b", + "LH_NETEVENT_TYPE_0x60c", + "LH_NETEVENT_TYPE_0x60d", + "LH_NETEVENT_TYPE_0x60e", + "LH_NETEVENT_TYPE_0x60f", + "LH_NETEVENT_TYPE_0x610", + "LH_NETEVENT_TYPE_0x611", + "LH_NETEVENT_TYPE_0x612", + "LH_NETEVENT_TYPE_0x613", + "LH_NETEVENT_TYPE_0x614", + "LH_NETEVENT_TYPE_0x615", + "LH_NETEVENT_TYPE_0x616", + "LH_NETEVENT_TYPE_0x617", + "LH_NETEVENT_TYPE_0x618", + "LH_NETEVENT_TYPE_0x619", + "LH_NETEVENT_TYPE_0x61a", + "LH_NETEVENT_TYPE_0x61b", + "LH_NETEVENT_TYPE_0x61c", + "LH_NETEVENT_TYPE_0x61d", + "LH_NETEVENT_TYPE_0x61e", + "LH_NETEVENT_TYPE_0x61f", + "LH_NETEVENT_TYPE_0x620", + "LH_NETEVENT_TYPE_0x621", + "LH_NETEVENT_TYPE_0x622", + "LH_NETEVENT_TYPE_0x623", + "LH_NETEVENT_TYPE_0x624", + "LH_NETEVENT_TYPE_0x625", + "LH_NETEVENT_TYPE_0x626", + "LH_NETEVENT_TYPE_0x627", + "LH_NETEVENT_TYPE_0x628", + "LH_NETEVENT_TYPE_0x629", + "LH_NETEVENT_TYPE_0x62a", + "LH_NETEVENT_TYPE_0x62b", + "LH_NETEVENT_TYPE_0x62c", + "LH_NETEVENT_TYPE_0x62d", + "LH_NETEVENT_TYPE_0x62e", + "LH_NETEVENT_TYPE_0x62f", + "LH_NETEVENT_TYPE_0x630", + "LH_NETEVENT_TYPE_0x631", + "LH_NETEVENT_TYPE_0x632", + "LH_NETEVENT_TYPE_0x633", + "LH_NETEVENT_TYPE_0x634", + "LH_NETEVENT_TYPE_0x635", + "LH_NETEVENT_TYPE_0x636", + "LH_NETEVENT_TYPE_0x637", + "LH_NETEVENT_TYPE_0x638", + "LH_NETEVENT_TYPE_0x639", + "LH_NETEVENT_TYPE_0x63a", + "LH_NETEVENT_TYPE_0x63b", + "LH_NETEVENT_TYPE_0x63c", + "LH_NETEVENT_TYPE_0x63d", + "LH_NETEVENT_TYPE_0x63e", + "LH_NETEVENT_TYPE_0x63f", + "LH_NETEVENT_TYPE_0x640", + "LH_NETEVENT_TYPE_0x641", + "LH_NETEVENT_TYPE_0x642", + "LH_NETEVENT_TYPE_0x643", + "LH_NETEVENT_TYPE_0x644", + "LH_NETEVENT_TYPE_0x645", + "LH_NETEVENT_TYPE_0x646", + "LH_NETEVENT_TYPE_0x647", + "LH_NETEVENT_TYPE_0x648", + "LH_NETEVENT_TYPE_0x649", + "LH_NETEVENT_TYPE_0x64a", + "LH_NETEVENT_TYPE_0x64b", + "LH_NETEVENT_TYPE_0x64c", + "LH_NETEVENT_TYPE_0x64d", + "LH_NETEVENT_TYPE_0x64e", + "LH_NETEVENT_TYPE_0x64f", + "LH_NETEVENT_TYPE_0x650", + "LH_NETEVENT_TYPE_0x651", + "LH_NETEVENT_TYPE_0x652", + "LH_NETEVENT_TYPE_0x653", + "LH_NETEVENT_TYPE_0x654", + "LH_NETEVENT_TYPE_0x655", + "LH_NETEVENT_TYPE_0x656", + "LH_NETEVENT_TYPE_0x657", + "LH_NETEVENT_TYPE_0x658", + "LH_NETEVENT_TYPE_0x659", + "LH_NETEVENT_TYPE_0x65a", + "LH_NETEVENT_TYPE_0x65b", + "LH_NETEVENT_TYPE_0x65c", + "LH_NETEVENT_TYPE_0x65d", + "LH_NETEVENT_TYPE_0x65e", + "LH_NETEVENT_TYPE_0x65f", + "LH_NETEVENT_TYPE_0x660", + "LH_NETEVENT_TYPE_0x661", + "LH_NETEVENT_TYPE_0x662", + "LH_NETEVENT_TYPE_0x663", + "LH_NETEVENT_TYPE_0x664", + "LH_NETEVENT_TYPE_0x665", + "LH_NETEVENT_TYPE_0x666", + "LH_NETEVENT_TYPE_0x667", + "LH_NETEVENT_TYPE_0x668", + "LH_NETEVENT_TYPE_0x669", + "LH_NETEVENT_TYPE_0x66a", + "LH_NETEVENT_TYPE_0x66b", + "LH_NETEVENT_TYPE_0x66c", + "LH_NETEVENT_TYPE_0x66d", + "LH_NETEVENT_TYPE_0x66e", + "LH_NETEVENT_TYPE_0x66f", + "LH_NETEVENT_TYPE_0x670", + "LH_NETEVENT_TYPE_0x671", + "LH_NETEVENT_TYPE_0x672", + "LH_NETEVENT_TYPE_0x673", + "LH_NETEVENT_TYPE_0x674", + "LH_NETEVENT_TYPE_0x675", + "LH_NETEVENT_TYPE_0x676", + "LH_NETEVENT_TYPE_0x677", + "LH_NETEVENT_TYPE_0x678", + "LH_NETEVENT_TYPE_0x679", + "LH_NETEVENT_TYPE_0x67a", + "LH_NETEVENT_TYPE_0x67b", + "LH_NETEVENT_TYPE_0x67c", + "LH_NETEVENT_TYPE_0x67d", + "LH_NETEVENT_TYPE_0x67e", + "LH_NETEVENT_TYPE_0x67f", + "LH_NETEVENT_TYPE_0x680", + "LH_NETEVENT_TYPE_0x681", + "LH_NETEVENT_TYPE_0x682", + "LH_NETEVENT_TYPE_0x683", + "LH_NETEVENT_TYPE_0x684", + "LH_NETEVENT_TYPE_0x685", + "LH_NETEVENT_TYPE_0x686", + "LH_NETEVENT_TYPE_0x687", + "LH_NETEVENT_TYPE_0x688", + "LH_NETEVENT_TYPE_0x689", + "LH_NETEVENT_TYPE_0x68a", + "LH_NETEVENT_TYPE_0x68b", + "LH_NETEVENT_TYPE_0x68c", + "LH_NETEVENT_TYPE_0x68d", + "LH_NETEVENT_TYPE_0x68e", + "LH_NETEVENT_TYPE_0x68f", + "LH_NETEVENT_TYPE_0x690", + "LH_NETEVENT_TYPE_0x691", + "LH_NETEVENT_TYPE_0x692", + "LH_NETEVENT_TYPE_0x693", + "LH_NETEVENT_TYPE_0x694", + "LH_NETEVENT_TYPE_0x695", + "LH_NETEVENT_TYPE_0x696", + "LH_NETEVENT_TYPE_0x697", + "LH_NETEVENT_TYPE_0x698", + "LH_NETEVENT_TYPE_0x699", + "LH_NETEVENT_TYPE_0x69a", + "LH_NETEVENT_TYPE_0x69b", + "LH_NETEVENT_TYPE_0x69c", + "LH_NETEVENT_TYPE_0x69d", + "LH_NETEVENT_TYPE_0x69e", + "LH_NETEVENT_TYPE_0x69f", + "LH_NETEVENT_TYPE_0x6a0", + "LH_NETEVENT_TYPE_0x6a1", + "LH_NETEVENT_TYPE_0x6a2", + "LH_NETEVENT_TYPE_0x6a3", + "LH_NETEVENT_TYPE_0x6a4", + "LH_NETEVENT_TYPE_0x6a5", + "LH_NETEVENT_TYPE_0x6a6", + "LH_NETEVENT_TYPE_0x6a7", + "LH_NETEVENT_TYPE_0x6a8", + "LH_NETEVENT_TYPE_0x6a9", + "LH_NETEVENT_TYPE_0x6aa", + "LH_NETEVENT_TYPE_0x6ab", + "LH_NETEVENT_TYPE_0x6ac", + "LH_NETEVENT_TYPE_0x6ad", + "LH_NETEVENT_TYPE_0x6ae", + "LH_NETEVENT_TYPE_0x6af", + "LH_NETEVENT_TYPE_0x6b0", + "LH_NETEVENT_TYPE_0x6b1", + "LH_NETEVENT_TYPE_0x6b2", + "LH_NETEVENT_TYPE_0x6b3", + "LH_NETEVENT_TYPE_0x6b4", + "LH_NETEVENT_TYPE_0x6b5", + "LH_NETEVENT_TYPE_0x6b6", + "LH_NETEVENT_TYPE_0x6b7", + "LH_NETEVENT_TYPE_0x6b8", + "LH_NETEVENT_TYPE_0x6b9", + "LH_NETEVENT_TYPE_0x6ba", + "LH_NETEVENT_TYPE_0x6bb", + "LH_NETEVENT_TYPE_0x6bc", + "LH_NETEVENT_TYPE_0x6bd", + "LH_NETEVENT_TYPE_0x6be", + "LH_NETEVENT_TYPE_0x6bf", + "LH_NETEVENT_TYPE_0x6c0", + "LH_NETEVENT_TYPE_0x6c1", + "LH_NETEVENT_TYPE_0x6c2", + "LH_NETEVENT_TYPE_0x6c3", + "LH_NETEVENT_TYPE_0x6c4", + "LH_NETEVENT_TYPE_0x6c5", + "LH_NETEVENT_TYPE_0x6c6", + "LH_NETEVENT_TYPE_0x6c7", + "LH_NETEVENT_TYPE_0x6c8", + "LH_NETEVENT_TYPE_0x6c9", + "LH_NETEVENT_TYPE_0x6ca", + "LH_NETEVENT_TYPE_0x6cb", + "LH_NETEVENT_TYPE_0x6cc", + "LH_NETEVENT_TYPE_0x6cd", + "LH_NETEVENT_TYPE_0x6ce", + "LH_NETEVENT_TYPE_0x6cf", + "LH_NETEVENT_TYPE_0x6d0", + "LH_NETEVENT_TYPE_0x6d1", + "LH_NETEVENT_TYPE_0x6d2", + "LH_NETEVENT_TYPE_0x6d3", + "LH_NETEVENT_TYPE_0x6d4", + "LH_NETEVENT_TYPE_0x6d5", + "LH_NETEVENT_TYPE_0x6d6", + "LH_NETEVENT_TYPE_0x6d7", + "LH_NETEVENT_TYPE_0x6d8", + "LH_NETEVENT_TYPE_0x6d9", + "LH_NETEVENT_TYPE_0x6da", + "LH_NETEVENT_TYPE_0x6db", + "LH_NETEVENT_TYPE_0x6dc", + "LH_NETEVENT_TYPE_0x6dd", + "LH_NETEVENT_TYPE_0x6de", + "LH_NETEVENT_TYPE_0x6df", + "LH_NETEVENT_TYPE_0x6e0", + "LH_NETEVENT_TYPE_0x6e1", + "LH_NETEVENT_TYPE_0x6e2", + "LH_NETEVENT_TYPE_0x6e3", + "LH_NETEVENT_TYPE_0x6e4", + "LH_NETEVENT_TYPE_0x6e5", + "LH_NETEVENT_TYPE_0x6e6", + "LH_NETEVENT_TYPE_0x6e7", + "LH_NETEVENT_TYPE_0x6e8", + "LH_NETEVENT_TYPE_0x6e9", + "LH_NETEVENT_TYPE_0x6ea", + "LH_NETEVENT_TYPE_0x6eb", + "LH_NETEVENT_TYPE_0x6ec", + "LH_NETEVENT_TYPE_0x6ed", + "LH_NETEVENT_TYPE_0x6ee", + "LH_NETEVENT_TYPE_0x6ef", + "LH_NETEVENT_TYPE_0x6f0", + "LH_NETEVENT_TYPE_0x6f1", + "LH_NETEVENT_TYPE_0x6f2", + "LH_NETEVENT_TYPE_0x6f3", + "LH_NETEVENT_TYPE_0x6f4", + "LH_NETEVENT_TYPE_0x6f5", + "LH_NETEVENT_TYPE_0x6f6", + "LH_NETEVENT_TYPE_0x6f7", + "LH_NETEVENT_TYPE_0x6f8", + "LH_NETEVENT_TYPE_0x6f9", + "LH_NETEVENT_TYPE_0x6fa", + "LH_NETEVENT_TYPE_0x6fb", + "LH_NETEVENT_TYPE_0x6fc", + "LH_NETEVENT_TYPE_0x6fd", + "LH_NETEVENT_TYPE_0x6fe", + "LH_NETEVENT_TYPE_0x6ff", + "LH_NETEVENT_TYPE_0x700", + "LH_NETEVENT_TYPE_0x701", + "LH_NETEVENT_TYPE_0x702", + "LH_NETEVENT_TYPE_0x703", + "LH_NETEVENT_TYPE_0x704", + "LH_NETEVENT_TYPE_0x705", + "LH_NETEVENT_TYPE_0x706", + "LH_NETEVENT_TYPE_0x707", + "LH_NETEVENT_TYPE_0x708", + "LH_NETEVENT_TYPE_0x709", + "LH_NETEVENT_TYPE_0x70a", + "LH_NETEVENT_TYPE_0x70b", + "LH_NETEVENT_TYPE_0x70c", + "LH_NETEVENT_TYPE_0x70d", + "LH_NETEVENT_TYPE_0x70e", + "LH_NETEVENT_TYPE_0x70f", + "LH_NETEVENT_TYPE_0x710", + "LH_NETEVENT_TYPE_0x711", + "LH_NETEVENT_TYPE_0x712", + "LH_NETEVENT_TYPE_0x713", + "LH_NETEVENT_TYPE_0x714", + "LH_NETEVENT_TYPE_0x715", + "LH_NETEVENT_TYPE_0x716", + "LH_NETEVENT_TYPE_0x717", + "LH_NETEVENT_TYPE_0x718", + "LH_NETEVENT_TYPE_0x719", + "LH_NETEVENT_TYPE_0x71a", + "LH_NETEVENT_TYPE_0x71b", + "LH_NETEVENT_TYPE_0x71c", + "LH_NETEVENT_TYPE_0x71d", + "LH_NETEVENT_TYPE_0x71e", + "LH_NETEVENT_TYPE_0x71f", + "LH_NETEVENT_TYPE_0x720", + "LH_NETEVENT_TYPE_0x721", + "LH_NETEVENT_TYPE_0x722", + "LH_NETEVENT_TYPE_0x723", + "LH_NETEVENT_TYPE_0x724", + "LH_NETEVENT_TYPE_0x725", + "LH_NETEVENT_TYPE_0x726", + "LH_NETEVENT_TYPE_0x727", + "LH_NETEVENT_TYPE_0x728", + "LH_NETEVENT_TYPE_0x729", + "LH_NETEVENT_TYPE_0x72a", + "LH_NETEVENT_TYPE_0x72b", + "LH_NETEVENT_TYPE_0x72c", + "LH_NETEVENT_TYPE_0x72d", + "LH_NETEVENT_TYPE_0x72e", + "LH_NETEVENT_TYPE_0x72f", + "LH_NETEVENT_TYPE_0x730", + "LH_NETEVENT_TYPE_0x731", + "LH_NETEVENT_TYPE_0x732", + "LH_NETEVENT_TYPE_0x733", + "LH_NETEVENT_TYPE_0x734", + "LH_NETEVENT_TYPE_0x735", + "LH_NETEVENT_TYPE_0x736", + "LH_NETEVENT_TYPE_0x737", + "LH_NETEVENT_TYPE_0x738", + "LH_NETEVENT_TYPE_0x739", + "LH_NETEVENT_TYPE_0x73a", + "LH_NETEVENT_TYPE_0x73b", + "LH_NETEVENT_TYPE_0x73c", + "LH_NETEVENT_TYPE_0x73d", + "LH_NETEVENT_TYPE_0x73e", + "LH_NETEVENT_TYPE_0x73f", + "LH_NETEVENT_TYPE_0x740", + "LH_NETEVENT_TYPE_0x741", + "LH_NETEVENT_TYPE_0x742", + "LH_NETEVENT_TYPE_0x743", + "LH_NETEVENT_TYPE_0x744", + "LH_NETEVENT_TYPE_0x745", + "LH_NETEVENT_TYPE_0x746", + "LH_NETEVENT_TYPE_0x747", + "LH_NETEVENT_TYPE_0x748", + "LH_NETEVENT_TYPE_0x749", + "LH_NETEVENT_TYPE_0x74a", + "LH_NETEVENT_TYPE_0x74b", + "LH_NETEVENT_TYPE_0x74c", + "LH_NETEVENT_TYPE_0x74d", + "LH_NETEVENT_TYPE_0x74e", + "LH_NETEVENT_TYPE_0x74f", + "LH_NETEVENT_TYPE_0x750", + "LH_NETEVENT_TYPE_0x751", + "LH_NETEVENT_TYPE_0x752", + "LH_NETEVENT_TYPE_0x753", + "LH_NETEVENT_TYPE_0x754", + "LH_NETEVENT_TYPE_0x755", + "LH_NETEVENT_TYPE_0x756", + "LH_NETEVENT_TYPE_0x757", + "LH_NETEVENT_TYPE_0x758", + "LH_NETEVENT_TYPE_0x759", + "LH_NETEVENT_TYPE_0x75a", + "LH_NETEVENT_TYPE_0x75b", + "LH_NETEVENT_TYPE_0x75c", + "LH_NETEVENT_TYPE_0x75d", + "LH_NETEVENT_TYPE_0x75e", + "LH_NETEVENT_TYPE_0x75f", + "LH_NETEVENT_TYPE_0x760", + "LH_NETEVENT_TYPE_0x761", + "LH_NETEVENT_TYPE_0x762", + "LH_NETEVENT_TYPE_0x763", + "LH_NETEVENT_TYPE_0x764", + "LH_NETEVENT_TYPE_0x765", + "LH_NETEVENT_TYPE_0x766", + "LH_NETEVENT_TYPE_0x767", + "LH_NETEVENT_TYPE_0x768", + "LH_NETEVENT_TYPE_0x769", + "LH_NETEVENT_TYPE_0x76a", + "LH_NETEVENT_TYPE_0x76b", + "LH_NETEVENT_TYPE_0x76c", + "LH_NETEVENT_TYPE_0x76d", + "LH_NETEVENT_TYPE_0x76e", + "LH_NETEVENT_TYPE_0x76f", + "LH_NETEVENT_TYPE_0x770", + "LH_NETEVENT_TYPE_0x771", + "LH_NETEVENT_TYPE_0x772", + "LH_NETEVENT_TYPE_0x773", + "LH_NETEVENT_TYPE_0x774", + "LH_NETEVENT_TYPE_0x775", + "LH_NETEVENT_TYPE_0x776", + "LH_NETEVENT_TYPE_0x777", + "LH_NETEVENT_TYPE_0x778", + "LH_NETEVENT_TYPE_0x779", + "LH_NETEVENT_TYPE_0x77a", + "LH_NETEVENT_TYPE_0x77b", + "LH_NETEVENT_TYPE_0x77c", + "LH_NETEVENT_TYPE_0x77d", + "LH_NETEVENT_TYPE_0x77e", + "LH_NETEVENT_TYPE_0x77f", + "LH_NETEVENT_TYPE_0x780", + "LH_NETEVENT_TYPE_0x781", + "LH_NETEVENT_TYPE_0x782", + "LH_NETEVENT_TYPE_0x783", + "LH_NETEVENT_TYPE_0x784", + "LH_NETEVENT_TYPE_0x785", + "LH_NETEVENT_TYPE_0x786", + "LH_NETEVENT_TYPE_0x787", + "LH_NETEVENT_TYPE_0x788", + "LH_NETEVENT_TYPE_0x789", + "LH_NETEVENT_TYPE_0x78a", + "LH_NETEVENT_TYPE_0x78b", + "LH_NETEVENT_TYPE_0x78c", + "LH_NETEVENT_TYPE_0x78d", + "LH_NETEVENT_TYPE_0x78e", + "LH_NETEVENT_TYPE_0x78f", + "LH_NETEVENT_TYPE_0x790", + "LH_NETEVENT_TYPE_0x791", + "LH_NETEVENT_TYPE_0x792", + "LH_NETEVENT_TYPE_0x793", + "LH_NETEVENT_TYPE_0x794", + "LH_NETEVENT_TYPE_0x795", + "LH_NETEVENT_TYPE_0x796", + "LH_NETEVENT_TYPE_0x797", + "LH_NETEVENT_TYPE_0x798", + "LH_NETEVENT_TYPE_0x799", + "LH_NETEVENT_TYPE_0x79a", + "LH_NETEVENT_TYPE_0x79b", + "LH_NETEVENT_TYPE_0x79c", + "LH_NETEVENT_TYPE_0x79d", + "LH_NETEVENT_TYPE_0x79e", + "LH_NETEVENT_TYPE_0x79f", + "LH_NETEVENT_TYPE_0x7a0", + "LH_NETEVENT_TYPE_0x7a1", + "LH_NETEVENT_TYPE_0x7a2", + "LH_NETEVENT_TYPE_0x7a3", + "LH_NETEVENT_TYPE_0x7a4", + "LH_NETEVENT_TYPE_0x7a5", + "LH_NETEVENT_TYPE_0x7a6", + "LH_NETEVENT_TYPE_0x7a7", + "LH_NETEVENT_TYPE_0x7a8", + "LH_NETEVENT_TYPE_0x7a9", + "LH_NETEVENT_TYPE_0x7aa", + "LH_NETEVENT_TYPE_0x7ab", + "LH_NETEVENT_TYPE_0x7ac", + "LH_NETEVENT_TYPE_0x7ad", + "LH_NETEVENT_TYPE_0x7ae", + "LH_NETEVENT_TYPE_0x7af", + "LH_NETEVENT_TYPE_0x7b0", + "LH_NETEVENT_TYPE_0x7b1", + "LH_NETEVENT_TYPE_0x7b2", + "LH_NETEVENT_TYPE_0x7b3", + "LH_NETEVENT_TYPE_0x7b4", + "LH_NETEVENT_TYPE_0x7b5", + "LH_NETEVENT_TYPE_0x7b6", + "LH_NETEVENT_TYPE_0x7b7", + "LH_NETEVENT_TYPE_0x7b8", + "LH_NETEVENT_TYPE_0x7b9", + "LH_NETEVENT_TYPE_0x7ba", + "LH_NETEVENT_TYPE_0x7bb", + "LH_NETEVENT_TYPE_0x7bc", + "LH_NETEVENT_TYPE_0x7bd", + "LH_NETEVENT_TYPE_0x7be", + "LH_NETEVENT_TYPE_0x7bf", + "LH_NETEVENT_TYPE_0x7c0", + "LH_NETEVENT_TYPE_0x7c1", + "LH_NETEVENT_TYPE_0x7c2", + "LH_NETEVENT_TYPE_0x7c3", + "LH_NETEVENT_TYPE_0x7c4", + "LH_NETEVENT_TYPE_0x7c5", + "LH_NETEVENT_TYPE_0x7c6", + "LH_NETEVENT_TYPE_0x7c7", + "LH_NETEVENT_TYPE_0x7c8", + "LH_NETEVENT_TYPE_0x7c9", + "LH_NETEVENT_TYPE_0x7ca", + "LH_NETEVENT_TYPE_0x7cb", + "LH_NETEVENT_TYPE_0x7cc", + "LH_NETEVENT_TYPE_0x7cd", + "LH_NETEVENT_TYPE_0x7ce", + "LH_NETEVENT_TYPE_0x7cf", + "LH_NETEVENT_TYPE_0x7d0", + "LH_NETEVENT_TYPE_0x7d1", + "LH_NETEVENT_TYPE_0x7d2", + "LH_NETEVENT_TYPE_0x7d3", + "LH_NETEVENT_TYPE_0x7d4", + "LH_NETEVENT_TYPE_0x7d5", + "LH_NETEVENT_TYPE_0x7d6", + "LH_NETEVENT_TYPE_0x7d7", + "LH_NETEVENT_TYPE_0x7d8", + "LH_NETEVENT_TYPE_0x7d9", + "LH_NETEVENT_TYPE_0x7da", + "LH_NETEVENT_TYPE_0x7db", + "LH_NETEVENT_TYPE_0x7dc", + "LH_NETEVENT_TYPE_0x7dd", + "LH_NETEVENT_TYPE_0x7de", + "LH_NETEVENT_TYPE_0x7df", + "LH_NETEVENT_TYPE_0x7e0", + "LH_NETEVENT_TYPE_0x7e1", + "LH_NETEVENT_TYPE_0x7e2", + "LH_NETEVENT_TYPE_0x7e3", + "LH_NETEVENT_TYPE_0x7e4", + "LH_NETEVENT_TYPE_0x7e5", + "LH_NETEVENT_TYPE_0x7e6", + "LH_NETEVENT_TYPE_0x7e7", + "LH_NETEVENT_TYPE_0x7e8", + "LH_NETEVENT_TYPE_0x7e9", + "LH_NETEVENT_TYPE_0x7ea", + "LH_NETEVENT_TYPE_0x7eb", + "LH_NETEVENT_TYPE_0x7ec", + "LH_NETEVENT_TYPE_0x7ed", + "LH_NETEVENT_TYPE_0x7ee", + "LH_NETEVENT_TYPE_0x7ef", + "LH_NETEVENT_TYPE_0x7f0", + "LH_NETEVENT_TYPE_0x7f1", + "LH_NETEVENT_TYPE_0x7f2", + "LH_NETEVENT_TYPE_0x7f3", + "LH_NETEVENT_TYPE_0x7f4", + "LH_NETEVENT_TYPE_0x7f5", + "LH_NETEVENT_TYPE_0x7f6", + "LH_NETEVENT_TYPE_0x7f7", + "LH_NETEVENT_TYPE_0x7f8", + "LH_NETEVENT_TYPE_0x7f9", + "LH_NETEVENT_TYPE_0x7fa", + "LH_NETEVENT_TYPE_0x7fb", + "LH_NETEVENT_TYPE_0x7fc", + "LH_NETEVENT_TYPE_0x7fd", + "LH_NETEVENT_TYPE_0x7fe", + "LH_NETEVENT_TYPE_0x7ff", + "LH_NETEVENT_TYPE_0x800", + "LH_NETEVENT_TYPE_0x801", + "LH_NETEVENT_TYPE_0x802", + "LH_NETEVENT_TYPE_0x803", + "LH_NETEVENT_TYPE_0x804", + "LH_NETEVENT_TYPE_0x805", + "LH_NETEVENT_TYPE_0x806", + "LH_NETEVENT_TYPE_0x807", + "LH_NETEVENT_TYPE_0x808", + "LH_NETEVENT_TYPE_0x809", + "LH_NETEVENT_TYPE_0x80a", + "LH_NETEVENT_TYPE_0x80b", + "LH_NETEVENT_TYPE_0x80c", + "LH_NETEVENT_TYPE_0x80d", + "LH_NETEVENT_TYPE_0x80e", + "LH_NETEVENT_TYPE_0x80f", + "LH_NETEVENT_TYPE_0x810", + "LH_NETEVENT_TYPE_0x811", + "LH_NETEVENT_TYPE_0x812", + "LH_NETEVENT_TYPE_0x813", + "LH_NETEVENT_TYPE_0x814", + "LH_NETEVENT_TYPE_0x815", + "LH_NETEVENT_TYPE_0x816", + "LH_NETEVENT_TYPE_0x817", + "LH_NETEVENT_TYPE_0x818", + "LH_NETEVENT_TYPE_0x819", + "LH_NETEVENT_TYPE_0x81a", + "LH_NETEVENT_TYPE_0x81b", + "LH_NETEVENT_TYPE_0x81c", + "LH_NETEVENT_TYPE_0x81d", + "LH_NETEVENT_TYPE_0x81e", + "LH_NETEVENT_TYPE_0x81f", + "LH_NETEVENT_TYPE_0x820", + "LH_NETEVENT_TYPE_0x821", + "LH_NETEVENT_TYPE_0x822", + "LH_NETEVENT_TYPE_0x823", + "LH_NETEVENT_TYPE_0x824", + "LH_NETEVENT_TYPE_0x825", + "LH_NETEVENT_TYPE_0x826", + "LH_NETEVENT_TYPE_0x827", + "LH_NETEVENT_TYPE_0x828", + "LH_NETEVENT_TYPE_0x829", + "LH_NETEVENT_TYPE_0x82a", + "LH_NETEVENT_TYPE_0x82b", + "LH_NETEVENT_TYPE_0x82c", + "LH_NETEVENT_TYPE_0x82d", + "LH_NETEVENT_TYPE_0x82e", + "LH_NETEVENT_TYPE_0x82f", + "LH_NETEVENT_TYPE_0x830", + "LH_NETEVENT_TYPE_0x831", + "LH_NETEVENT_TYPE_0x832", + "LH_NETEVENT_TYPE_0x833", + "LH_NETEVENT_TYPE_0x834", + "LH_NETEVENT_TYPE_0x835", + "LH_NETEVENT_TYPE_0x836", + "LH_NETEVENT_TYPE_0x837", + "LH_NETEVENT_TYPE_0x838", + "LH_NETEVENT_TYPE_0x839", + "LH_NETEVENT_TYPE_0x83a", + "LH_NETEVENT_TYPE_0x83b", + "LH_NETEVENT_TYPE_0x83c", + "LH_NETEVENT_TYPE_0x83d", + "LH_NETEVENT_TYPE_0x83e", + "LH_NETEVENT_TYPE_0x83f", + "LH_NETEVENT_TYPE_0x840", + "LH_NETEVENT_TYPE_0x841", + "LH_NETEVENT_TYPE_0x842", + "LH_NETEVENT_TYPE_0x843", + "LH_NETEVENT_TYPE_0x844", + "LH_NETEVENT_TYPE_0x845", + "LH_NETEVENT_TYPE_0x846", + "LH_NETEVENT_TYPE_0x847", + "LH_NETEVENT_TYPE_0x848", + "LH_NETEVENT_TYPE_0x849", + "LH_NETEVENT_TYPE_0x84a", + "LH_NETEVENT_TYPE_0x84b", + "LH_NETEVENT_TYPE_0x84c", + "LH_NETEVENT_TYPE_0x84d", + "LH_NETEVENT_TYPE_0x84e", + "LH_NETEVENT_TYPE_0x84f", + "LH_NETEVENT_TYPE_0x850", + "LH_NETEVENT_TYPE_0x851", + "LH_NETEVENT_TYPE_0x852", + "LH_NETEVENT_TYPE_0x853", + "LH_NETEVENT_TYPE_0x854", + "LH_NETEVENT_TYPE_0x855", + "LH_NETEVENT_TYPE_0x856", + "LH_NETEVENT_TYPE_0x857", + "LH_NETEVENT_TYPE_0x858", + "LH_NETEVENT_TYPE_0x859", + "LH_NETEVENT_TYPE_0x85a", + "LH_NETEVENT_TYPE_0x85b", + "LH_NETEVENT_TYPE_0x85c", + "LH_NETEVENT_TYPE_0x85d", + "LH_NETEVENT_TYPE_0x85e", + "LH_NETEVENT_TYPE_0x85f", + "LH_NETEVENT_TYPE_0x860", + "LH_NETEVENT_TYPE_0x861", + "LH_NETEVENT_TYPE_0x862", + "LH_NETEVENT_TYPE_0x863", + "LH_NETEVENT_TYPE_0x864", + "LH_NETEVENT_TYPE_0x865", + "LH_NETEVENT_TYPE_0x866", + "LH_NETEVENT_TYPE_0x867", + "LH_NETEVENT_TYPE_0x868", + "LH_NETEVENT_TYPE_0x869", + "LH_NETEVENT_TYPE_0x86a", + "LH_NETEVENT_TYPE_0x86b", + "LH_NETEVENT_TYPE_0x86c", + "LH_NETEVENT_TYPE_0x86d", + "LH_NETEVENT_TYPE_0x86e", + "LH_NETEVENT_TYPE_0x86f", + "LH_NETEVENT_TYPE_0x870", + "LH_NETEVENT_TYPE_0x871", + "LH_NETEVENT_TYPE_0x872", + "LH_NETEVENT_TYPE_0x873", + "LH_NETEVENT_TYPE_0x874", + "LH_NETEVENT_TYPE_0x875", + "LH_NETEVENT_TYPE_0x876", + "LH_NETEVENT_TYPE_0x877", + "LH_NETEVENT_TYPE_0x878", + "LH_NETEVENT_TYPE_0x879", + "LH_NETEVENT_TYPE_0x87a", + "LH_NETEVENT_TYPE_0x87b", + "LH_NETEVENT_TYPE_0x87c", + "LH_NETEVENT_TYPE_0x87d", + "LH_NETEVENT_TYPE_0x87e", + "LH_NETEVENT_TYPE_0x87f", + "LH_NETEVENT_TYPE_0x880", + "LH_NETEVENT_TYPE_0x881", + "LH_NETEVENT_TYPE_0x882", + "LH_NETEVENT_TYPE_0x883", + "LH_NETEVENT_TYPE_0x884", + "LH_NETEVENT_TYPE_0x885", + "LH_NETEVENT_TYPE_0x886", + "LH_NETEVENT_TYPE_0x887", + "LH_NETEVENT_TYPE_0x888", + "LH_NETEVENT_TYPE_0x889", + "LH_NETEVENT_TYPE_0x88a", + "LH_NETEVENT_TYPE_0x88b", + "LH_NETEVENT_TYPE_0x88c", + "LH_NETEVENT_TYPE_0x88d", + "LH_NETEVENT_TYPE_0x88e", + "LH_NETEVENT_TYPE_0x88f", + "LH_NETEVENT_TYPE_0x890", + "LH_NETEVENT_TYPE_0x891", + "LH_NETEVENT_TYPE_0x892", + "LH_NETEVENT_TYPE_0x893", + "LH_NETEVENT_TYPE_0x894", + "LH_NETEVENT_TYPE_0x895", + "LH_NETEVENT_TYPE_0x896", + "LH_NETEVENT_TYPE_0x897", + "LH_NETEVENT_TYPE_0x898", + "LH_NETEVENT_TYPE_0x899", + "LH_NETEVENT_TYPE_0x89a", + "LH_NETEVENT_TYPE_0x89b", + "LH_NETEVENT_TYPE_0x89c", + "LH_NETEVENT_TYPE_0x89d", + "LH_NETEVENT_TYPE_0x89e", + "LH_NETEVENT_TYPE_0x89f", + "LH_NETEVENT_TYPE_0x8a0", + "LH_NETEVENT_TYPE_0x8a1", + "LH_NETEVENT_TYPE_0x8a2", + "LH_NETEVENT_TYPE_0x8a3", + "LH_NETEVENT_TYPE_0x8a4", + "LH_NETEVENT_TYPE_0x8a5", + "LH_NETEVENT_TYPE_0x8a6", + "LH_NETEVENT_TYPE_0x8a7", + "LH_NETEVENT_TYPE_0x8a8", + "LH_NETEVENT_TYPE_0x8a9", + "LH_NETEVENT_TYPE_0x8aa", + "LH_NETEVENT_TYPE_0x8ab", + "LH_NETEVENT_TYPE_0x8ac", + "LH_NETEVENT_TYPE_0x8ad", + "LH_NETEVENT_TYPE_0x8ae", + "LH_NETEVENT_TYPE_0x8af", + "LH_NETEVENT_TYPE_0x8b0", + "LH_NETEVENT_TYPE_0x8b1", + "LH_NETEVENT_TYPE_0x8b2", + "LH_NETEVENT_TYPE_0x8b3", + "LH_NETEVENT_TYPE_0x8b4", + "LH_NETEVENT_TYPE_0x8b5", + "LH_NETEVENT_TYPE_0x8b6", + "LH_NETEVENT_TYPE_0x8b7", + "LH_NETEVENT_TYPE_0x8b8", + "LH_NETEVENT_TYPE_0x8b9", + "LH_NETEVENT_TYPE_0x8ba", + "LH_NETEVENT_TYPE_0x8bb", + "LH_NETEVENT_TYPE_0x8bc", + "LH_NETEVENT_TYPE_0x8bd", + "LH_NETEVENT_TYPE_0x8be", + "LH_NETEVENT_TYPE_0x8bf", + "LH_NETEVENT_TYPE_0x8c0", + "LH_NETEVENT_TYPE_0x8c1", + "LH_NETEVENT_TYPE_0x8c2", + "LH_NETEVENT_TYPE_0x8c3", + "LH_NETEVENT_TYPE_0x8c4", + "LH_NETEVENT_TYPE_0x8c5", + "LH_NETEVENT_TYPE_0x8c6", + "LH_NETEVENT_TYPE_0x8c7", + "LH_NETEVENT_TYPE_0x8c8", + "LH_NETEVENT_TYPE_0x8c9", + "LH_NETEVENT_TYPE_0x8ca", + "LH_NETEVENT_TYPE_0x8cb", + "LH_NETEVENT_TYPE_0x8cc", + "LH_NETEVENT_TYPE_0x8cd", + "LH_NETEVENT_TYPE_0x8ce", + "LH_NETEVENT_TYPE_0x8cf", + "LH_NETEVENT_TYPE_0x8d0", + "LH_NETEVENT_TYPE_0x8d1", + "LH_NETEVENT_TYPE_0x8d2", + "LH_NETEVENT_TYPE_0x8d3", + "LH_NETEVENT_TYPE_0x8d4", + "LH_NETEVENT_TYPE_0x8d5", + "LH_NETEVENT_TYPE_0x8d6", + "LH_NETEVENT_TYPE_0x8d7", + "LH_NETEVENT_TYPE_0x8d8", + "LH_NETEVENT_TYPE_0x8d9", + "LH_NETEVENT_TYPE_0x8da", + "LH_NETEVENT_TYPE_0x8db", + "LH_NETEVENT_TYPE_0x8dc", + "LH_NETEVENT_TYPE_0x8dd", + "LH_NETEVENT_TYPE_0x8de", + "LH_NETEVENT_TYPE_0x8df", + "LH_NETEVENT_TYPE_0x8e0", + "LH_NETEVENT_TYPE_0x8e1", + "LH_NETEVENT_TYPE_0x8e2", + "LH_NETEVENT_TYPE_0x8e3", + "LH_NETEVENT_TYPE_0x8e4", + "LH_NETEVENT_TYPE_0x8e5", + "LH_NETEVENT_TYPE_0x8e6", + "LH_NETEVENT_TYPE_0x8e7", + "LH_NETEVENT_TYPE_0x8e8", + "LH_NETEVENT_TYPE_0x8e9", + "LH_NETEVENT_TYPE_0x8ea", + "LH_NETEVENT_TYPE_0x8eb", + "LH_NETEVENT_TYPE_0x8ec", + "LH_NETEVENT_TYPE_0x8ed", + "LH_NETEVENT_TYPE_0x8ee", + "LH_NETEVENT_TYPE_0x8ef", + "LH_NETEVENT_TYPE_0x8f0", + "LH_NETEVENT_TYPE_0x8f1", + "LH_NETEVENT_TYPE_0x8f2", + "LH_NETEVENT_TYPE_0x8f3", + "LH_NETEVENT_TYPE_0x8f4", + "LH_NETEVENT_TYPE_0x8f5", + "LH_NETEVENT_TYPE_0x8f6", + "LH_NETEVENT_TYPE_0x8f7", + "LH_NETEVENT_TYPE_0x8f8", + "LH_NETEVENT_TYPE_0x8f9", + "LH_NETEVENT_TYPE_0x8fa", + "LH_NETEVENT_TYPE_0x8fb", + "LH_NETEVENT_TYPE_0x8fc", + "LH_NETEVENT_TYPE_0x8fd", + "LH_NETEVENT_TYPE_0x8fe", + "LH_NETEVENT_TYPE_0x8ff", + "LH_NETEVENT_TYPE_0x900", + "LH_NETEVENT_TYPE_0x901", + "LH_NETEVENT_TYPE_0x902", + "LH_NETEVENT_TYPE_0x903", + "LH_NETEVENT_TYPE_0x904", + "LH_NETEVENT_TYPE_0x905", + "LH_NETEVENT_TYPE_0x906", + "LH_NETEVENT_TYPE_0x907", + "LH_NETEVENT_TYPE_0x908", + "LH_NETEVENT_TYPE_0x909", + "LH_NETEVENT_TYPE_0x90a", + "LH_NETEVENT_TYPE_0x90b", + "LH_NETEVENT_TYPE_0x90c", + "LH_NETEVENT_TYPE_0x90d", + "LH_NETEVENT_TYPE_0x90e", + "LH_NETEVENT_TYPE_0x90f", + "LH_NETEVENT_TYPE_0x910", + "LH_NETEVENT_TYPE_0x911", + "LH_NETEVENT_TYPE_0x912", + "LH_NETEVENT_TYPE_0x913", + "LH_NETEVENT_TYPE_0x914", + "LH_NETEVENT_TYPE_0x915", + "LH_NETEVENT_TYPE_0x916", + "LH_NETEVENT_TYPE_0x917", + "LH_NETEVENT_TYPE_0x918", + "LH_NETEVENT_TYPE_0x919", + "LH_NETEVENT_TYPE_0x91a", + "LH_NETEVENT_TYPE_0x91b", + "LH_NETEVENT_TYPE_0x91c", + "LH_NETEVENT_TYPE_0x91d", + "LH_NETEVENT_TYPE_0x91e", + "LH_NETEVENT_TYPE_0x91f", + "LH_NETEVENT_TYPE_0x920", + "LH_NETEVENT_TYPE_0x921", + "LH_NETEVENT_TYPE_0x922", + "LH_NETEVENT_TYPE_0x923", + "LH_NETEVENT_TYPE_0x924", + "LH_NETEVENT_TYPE_0x925", + "LH_NETEVENT_TYPE_0x926", + "LH_NETEVENT_TYPE_0x927", + "LH_NETEVENT_TYPE_0x928", + "LH_NETEVENT_TYPE_0x929", + "LH_NETEVENT_TYPE_0x92a", + "LH_NETEVENT_TYPE_0x92b", + "LH_NETEVENT_TYPE_0x92c", + "LH_NETEVENT_TYPE_0x92d", + "LH_NETEVENT_TYPE_0x92e", + "LH_NETEVENT_TYPE_0x92f", + "LH_NETEVENT_TYPE_0x930", + "LH_NETEVENT_TYPE_0x931", + "LH_NETEVENT_TYPE_0x932", + "LH_NETEVENT_TYPE_0x933", + "LH_NETEVENT_TYPE_0x934", + "LH_NETEVENT_TYPE_0x935", + "LH_NETEVENT_TYPE_0x936", + "LH_NETEVENT_TYPE_0x937", + "LH_NETEVENT_TYPE_0x938", + "LH_NETEVENT_TYPE_0x939", + "LH_NETEVENT_TYPE_0x93a", + "LH_NETEVENT_TYPE_0x93b", + "LH_NETEVENT_TYPE_0x93c", + "LH_NETEVENT_TYPE_0x93d", + "LH_NETEVENT_TYPE_0x93e", + "LH_NETEVENT_TYPE_0x93f", + "LH_NETEVENT_TYPE_0x940", + "LH_NETEVENT_TYPE_0x941", + "LH_NETEVENT_TYPE_0x942", + "LH_NETEVENT_TYPE_0x943", + "LH_NETEVENT_TYPE_0x944", + "LH_NETEVENT_TYPE_0x945", + "LH_NETEVENT_TYPE_0x946", + "LH_NETEVENT_TYPE_0x947", + "LH_NETEVENT_TYPE_0x948", + "LH_NETEVENT_TYPE_0x949", + "LH_NETEVENT_TYPE_0x94a", + "LH_NETEVENT_TYPE_0x94b", + "LH_NETEVENT_TYPE_0x94c", + "LH_NETEVENT_TYPE_0x94d", + "LH_NETEVENT_TYPE_0x94e", + "LH_NETEVENT_TYPE_0x94f", + "LH_NETEVENT_TYPE_0x950", + "LH_NETEVENT_TYPE_0x951", + "LH_NETEVENT_TYPE_0x952", + "LH_NETEVENT_TYPE_0x953", + "LH_NETEVENT_TYPE_0x954", + "LH_NETEVENT_TYPE_0x955", + "LH_NETEVENT_TYPE_0x956", + "LH_NETEVENT_TYPE_0x957", + "LH_NETEVENT_TYPE_0x958", + "LH_NETEVENT_TYPE_0x959", + "LH_NETEVENT_TYPE_0x95a", + "LH_NETEVENT_TYPE_0x95b", + "LH_NETEVENT_TYPE_0x95c", + "LH_NETEVENT_TYPE_0x95d", + "LH_NETEVENT_TYPE_0x95e", + "LH_NETEVENT_TYPE_0x95f", + "LH_NETEVENT_TYPE_0x960", + "LH_NETEVENT_TYPE_0x961", + "LH_NETEVENT_TYPE_0x962", + "LH_NETEVENT_TYPE_0x963", + "LH_NETEVENT_TYPE_0x964", + "LH_NETEVENT_TYPE_0x965", + "LH_NETEVENT_TYPE_0x966", + "LH_NETEVENT_TYPE_0x967", + "LH_NETEVENT_TYPE_0x968", + "LH_NETEVENT_TYPE_0x969", + "LH_NETEVENT_TYPE_0x96a", + "LH_NETEVENT_TYPE_0x96b", + "LH_NETEVENT_TYPE_0x96c", + "LH_NETEVENT_TYPE_0x96d", + "LH_NETEVENT_TYPE_0x96e", + "LH_NETEVENT_TYPE_0x96f", + "LH_NETEVENT_TYPE_0x970", + "LH_NETEVENT_TYPE_0x971", + "LH_NETEVENT_TYPE_0x972", + "LH_NETEVENT_TYPE_0x973", + "LH_NETEVENT_TYPE_0x974", + "LH_NETEVENT_TYPE_0x975", + "LH_NETEVENT_TYPE_0x976", + "LH_NETEVENT_TYPE_0x977", + "LH_NETEVENT_TYPE_0x978", + "LH_NETEVENT_TYPE_0x979", + "LH_NETEVENT_TYPE_0x97a", + "LH_NETEVENT_TYPE_0x97b", + "LH_NETEVENT_TYPE_0x97c", + "LH_NETEVENT_TYPE_0x97d", + "LH_NETEVENT_TYPE_0x97e", + "LH_NETEVENT_TYPE_0x97f", + "LH_NETEVENT_TYPE_0x980", + "LH_NETEVENT_TYPE_0x981", + "LH_NETEVENT_TYPE_0x982", + "LH_NETEVENT_TYPE_0x983", + "LH_NETEVENT_TYPE_0x984", + "LH_NETEVENT_TYPE_0x985", + "LH_NETEVENT_TYPE_0x986", + "LH_NETEVENT_TYPE_0x987", + "LH_NETEVENT_TYPE_0x988", + "LH_NETEVENT_TYPE_0x989", + "LH_NETEVENT_TYPE_0x98a", + "LH_NETEVENT_TYPE_0x98b", + "LH_NETEVENT_TYPE_0x98c", + "LH_NETEVENT_TYPE_0x98d", + "LH_NETEVENT_TYPE_0x98e", + "LH_NETEVENT_TYPE_0x98f", + "LH_NETEVENT_TYPE_0x990", + "LH_NETEVENT_TYPE_0x991", + "LH_NETEVENT_TYPE_0x992", + "LH_NETEVENT_TYPE_0x993", + "LH_NETEVENT_TYPE_0x994", + "LH_NETEVENT_TYPE_0x995", + "LH_NETEVENT_TYPE_0x996", + "LH_NETEVENT_TYPE_0x997", + "LH_NETEVENT_TYPE_0x998", + "LH_NETEVENT_TYPE_0x999", + "LH_NETEVENT_TYPE_0x99a", + "LH_NETEVENT_TYPE_0x99b", + "LH_NETEVENT_TYPE_0x99c", + "LH_NETEVENT_TYPE_0x99d", + "LH_NETEVENT_TYPE_0x99e", + "LH_NETEVENT_TYPE_0x99f", + "LH_NETEVENT_TYPE_0x9a0", + "LH_NETEVENT_TYPE_0x9a1", + "LH_NETEVENT_TYPE_0x9a2", + "LH_NETEVENT_TYPE_0x9a3", + "LH_NETEVENT_TYPE_0x9a4", + "LH_NETEVENT_TYPE_0x9a5", + "LH_NETEVENT_TYPE_0x9a6", + "LH_NETEVENT_TYPE_0x9a7", + "LH_NETEVENT_TYPE_0x9a8", + "LH_NETEVENT_TYPE_0x9a9", + "LH_NETEVENT_TYPE_0x9aa", + "LH_NETEVENT_TYPE_0x9ab", + "LH_NETEVENT_TYPE_0x9ac", + "LH_NETEVENT_TYPE_0x9ad", + "LH_NETEVENT_TYPE_0x9ae", + "LH_NETEVENT_TYPE_0x9af", + "LH_NETEVENT_TYPE_0x9b0", + "LH_NETEVENT_TYPE_0x9b1", + "LH_NETEVENT_TYPE_0x9b2", + "LH_NETEVENT_TYPE_0x9b3", + "LH_NETEVENT_TYPE_0x9b4", + "LH_NETEVENT_TYPE_0x9b5", + "LH_NETEVENT_TYPE_0x9b6", + "LH_NETEVENT_TYPE_0x9b7", + "LH_NETEVENT_TYPE_0x9b8", + "LH_NETEVENT_TYPE_0x9b9", + "LH_NETEVENT_TYPE_0x9ba", + "LH_NETEVENT_TYPE_0x9bb", + "LH_NETEVENT_TYPE_0x9bc", + "LH_NETEVENT_TYPE_0x9bd", + "LH_NETEVENT_TYPE_0x9be", + "LH_NETEVENT_TYPE_0x9bf", + "LH_NETEVENT_TYPE_0x9c0", + "LH_NETEVENT_TYPE_0x9c1", + "LH_NETEVENT_TYPE_0x9c2", + "LH_NETEVENT_TYPE_0x9c3", + "LH_NETEVENT_TYPE_0x9c4", + "LH_NETEVENT_TYPE_0x9c5", + "LH_NETEVENT_TYPE_0x9c6", + "LH_NETEVENT_TYPE_0x9c7", + "LH_NETEVENT_TYPE_0x9c8", + "LH_NETEVENT_TYPE_0x9c9", + "LH_NETEVENT_TYPE_0x9ca", + "LH_NETEVENT_TYPE_0x9cb", + "LH_NETEVENT_TYPE_0x9cc", + "LH_NETEVENT_TYPE_0x9cd", + "LH_NETEVENT_TYPE_0x9ce", + "LH_NETEVENT_TYPE_0x9cf", + "LH_NETEVENT_TYPE_0x9d0", + "LH_NETEVENT_TYPE_0x9d1", + "LH_NETEVENT_TYPE_0x9d2", + "LH_NETEVENT_TYPE_0x9d3", + "LH_NETEVENT_TYPE_0x9d4", + "LH_NETEVENT_TYPE_0x9d5", + "LH_NETEVENT_TYPE_0x9d6", + "LH_NETEVENT_TYPE_0x9d7", + "LH_NETEVENT_TYPE_0x9d8", + "LH_NETEVENT_TYPE_0x9d9", + "LH_NETEVENT_TYPE_0x9da", + "LH_NETEVENT_TYPE_0x9db", + "LH_NETEVENT_TYPE_0x9dc", + "LH_NETEVENT_TYPE_0x9dd", + "LH_NETEVENT_TYPE_0x9de", + "LH_NETEVENT_TYPE_0x9df", + "LH_NETEVENT_TYPE_0x9e0", + "LH_NETEVENT_TYPE_0x9e1", + "LH_NETEVENT_TYPE_0x9e2", + "LH_NETEVENT_TYPE_0x9e3", + "LH_NETEVENT_TYPE_0x9e4", + "LH_NETEVENT_TYPE_0x9e5", + "LH_NETEVENT_TYPE_0x9e6", + "LH_NETEVENT_TYPE_0x9e7", + "LH_NETEVENT_TYPE_0x9e8", + "LH_NETEVENT_TYPE_0x9e9", + "LH_NETEVENT_TYPE_0x9ea", + "LH_NETEVENT_TYPE_0x9eb", + "LH_NETEVENT_TYPE_0x9ec", + "LH_NETEVENT_TYPE_0x9ed", + "LH_NETEVENT_TYPE_0x9ee", + "LH_NETEVENT_TYPE_0x9ef", + "LH_NETEVENT_TYPE_0x9f0", + "LH_NETEVENT_TYPE_0x9f1", + "LH_NETEVENT_TYPE_0x9f2", + "LH_NETEVENT_TYPE_0x9f3", + "LH_NETEVENT_TYPE_0x9f4", + "LH_NETEVENT_TYPE_0x9f5", + "LH_NETEVENT_TYPE_0x9f6", + "LH_NETEVENT_TYPE_0x9f7", + "LH_NETEVENT_TYPE_0x9f8", + "LH_NETEVENT_TYPE_0x9f9", + "LH_NETEVENT_TYPE_0x9fa", + "LH_NETEVENT_TYPE_0x9fb", + "LH_NETEVENT_TYPE_0x9fc", + "LH_NETEVENT_TYPE_0x9fd", + "LH_NETEVENT_TYPE_0x9fe", + "LH_NETEVENT_TYPE_0x9ff", + "LH_NETEVENT_TYPE_0xa00", + "LH_NETEVENT_TYPE_0xa01", + "LH_NETEVENT_TYPE_0xa02", + "LH_NETEVENT_TYPE_0xa03", + "LH_NETEVENT_TYPE_0xa04", + "LH_NETEVENT_TYPE_0xa05", + "LH_NETEVENT_TYPE_0xa06", + "LH_NETEVENT_TYPE_0xa07", + "LH_NETEVENT_TYPE_0xa08", + "LH_NETEVENT_TYPE_0xa09", + "LH_NETEVENT_TYPE_0xa0a", + "LH_NETEVENT_TYPE_0xa0b", + "LH_NETEVENT_TYPE_0xa0c", + "LH_NETEVENT_TYPE_0xa0d", + "LH_NETEVENT_TYPE_0xa0e", + "LH_NETEVENT_TYPE_0xa0f", + "LH_NETEVENT_TYPE_0xa10", + "LH_NETEVENT_TYPE_0xa11", + "LH_NETEVENT_TYPE_0xa12", + "LH_NETEVENT_TYPE_0xa13", + "LH_NETEVENT_TYPE_0xa14", + "LH_NETEVENT_TYPE_0xa15", + "LH_NETEVENT_TYPE_0xa16", + "LH_NETEVENT_TYPE_0xa17", + "LH_NETEVENT_TYPE_0xa18", + "LH_NETEVENT_TYPE_0xa19", + "LH_NETEVENT_TYPE_0xa1a", + "LH_NETEVENT_TYPE_0xa1b", + "LH_NETEVENT_TYPE_0xa1c", + "LH_NETEVENT_TYPE_0xa1d", + "LH_NETEVENT_TYPE_0xa1e", + "LH_NETEVENT_TYPE_0xa1f", + "LH_NETEVENT_TYPE_0xa20", + "LH_NETEVENT_TYPE_0xa21", + "LH_NETEVENT_TYPE_0xa22", + "LH_NETEVENT_TYPE_0xa23", + "LH_NETEVENT_TYPE_0xa24", + "LH_NETEVENT_TYPE_0xa25", + "LH_NETEVENT_TYPE_0xa26", + "LH_NETEVENT_TYPE_0xa27", + "LH_NETEVENT_TYPE_0xa28", + "LH_NETEVENT_TYPE_0xa29", + "LH_NETEVENT_TYPE_0xa2a", + "LH_NETEVENT_TYPE_0xa2b", + "LH_NETEVENT_TYPE_0xa2c", + "LH_NETEVENT_TYPE_0xa2d", + "LH_NETEVENT_TYPE_0xa2e", + "LH_NETEVENT_TYPE_0xa2f", + "LH_NETEVENT_TYPE_0xa30", + "LH_NETEVENT_TYPE_0xa31", + "LH_NETEVENT_TYPE_0xa32", + "LH_NETEVENT_TYPE_0xa33", + "LH_NETEVENT_TYPE_0xa34", + "LH_NETEVENT_TYPE_0xa35", + "LH_NETEVENT_TYPE_0xa36", + "LH_NETEVENT_TYPE_0xa37", + "LH_NETEVENT_TYPE_0xa38", + "LH_NETEVENT_TYPE_0xa39", + "LH_NETEVENT_TYPE_0xa3a", + "LH_NETEVENT_TYPE_0xa3b", + "LH_NETEVENT_TYPE_0xa3c", + "LH_NETEVENT_TYPE_0xa3d", + "LH_NETEVENT_TYPE_0xa3e", + "LH_NETEVENT_TYPE_0xa3f", + "LH_NETEVENT_TYPE_0xa40", + "LH_NETEVENT_TYPE_0xa41", + "LH_NETEVENT_TYPE_0xa42", + "LH_NETEVENT_TYPE_0xa43", + "LH_NETEVENT_TYPE_0xa44", + "LH_NETEVENT_TYPE_0xa45", + "LH_NETEVENT_TYPE_0xa46", + "LH_NETEVENT_TYPE_0xa47", + "LH_NETEVENT_TYPE_0xa48", + "LH_NETEVENT_TYPE_0xa49", + "LH_NETEVENT_TYPE_0xa4a", + "LH_NETEVENT_TYPE_0xa4b", + "LH_NETEVENT_TYPE_0xa4c", + "LH_NETEVENT_TYPE_0xa4d", + "LH_NETEVENT_TYPE_0xa4e", + "LH_NETEVENT_TYPE_0xa4f", + "LH_NETEVENT_TYPE_0xa50", + "LH_NETEVENT_TYPE_0xa51", + "LH_NETEVENT_TYPE_0xa52", + "LH_NETEVENT_TYPE_0xa53", + "LH_NETEVENT_TYPE_0xa54", + "LH_NETEVENT_TYPE_0xa55", + "LH_NETEVENT_TYPE_0xa56", + "LH_NETEVENT_TYPE_0xa57", + "LH_NETEVENT_TYPE_0xa58", + "LH_NETEVENT_TYPE_0xa59", + "LH_NETEVENT_TYPE_0xa5a", + "LH_NETEVENT_TYPE_0xa5b", + "LH_NETEVENT_TYPE_0xa5c", + "LH_NETEVENT_TYPE_0xa5d", + "LH_NETEVENT_TYPE_0xa5e", + "LH_NETEVENT_TYPE_0xa5f", + "LH_NETEVENT_TYPE_0xa60", + "LH_NETEVENT_TYPE_0xa61", + "LH_NETEVENT_TYPE_0xa62", + "LH_NETEVENT_TYPE_0xa63", + "LH_NETEVENT_TYPE_0xa64", + "LH_NETEVENT_TYPE_0xa65", + "LH_NETEVENT_TYPE_0xa66", + "LH_NETEVENT_TYPE_0xa67", + "LH_NETEVENT_TYPE_0xa68", + "LH_NETEVENT_TYPE_0xa69", + "LH_NETEVENT_TYPE_0xa6a", + "LH_NETEVENT_TYPE_0xa6b", + "LH_NETEVENT_TYPE_0xa6c", + "LH_NETEVENT_TYPE_0xa6d", + "LH_NETEVENT_TYPE_0xa6e", + "LH_NETEVENT_TYPE_0xa6f", + "LH_NETEVENT_TYPE_0xa70", + "LH_NETEVENT_TYPE_0xa71", + "LH_NETEVENT_TYPE_0xa72", + "LH_NETEVENT_TYPE_0xa73", + "LH_NETEVENT_TYPE_0xa74", + "LH_NETEVENT_TYPE_0xa75", + "LH_NETEVENT_TYPE_0xa76", + "LH_NETEVENT_TYPE_0xa77", + "LH_NETEVENT_TYPE_0xa78", + "LH_NETEVENT_TYPE_0xa79", + "LH_NETEVENT_TYPE_0xa7a", + "LH_NETEVENT_TYPE_0xa7b", + "LH_NETEVENT_TYPE_0xa7c", + "LH_NETEVENT_TYPE_0xa7d", + "LH_NETEVENT_TYPE_0xa7e", + "LH_NETEVENT_TYPE_0xa7f", + "LH_NETEVENT_TYPE_0xa80", + "LH_NETEVENT_TYPE_0xa81", + "LH_NETEVENT_TYPE_0xa82", + "LH_NETEVENT_TYPE_0xa83", + "LH_NETEVENT_TYPE_0xa84", + "LH_NETEVENT_TYPE_0xa85", + "LH_NETEVENT_TYPE_0xa86", + "LH_NETEVENT_TYPE_0xa87", + "LH_NETEVENT_TYPE_0xa88", + "LH_NETEVENT_TYPE_0xa89", + "LH_NETEVENT_TYPE_0xa8a", + "LH_NETEVENT_TYPE_0xa8b", + "LH_NETEVENT_TYPE_0xa8c", + "LH_NETEVENT_TYPE_0xa8d", + "LH_NETEVENT_TYPE_0xa8e", + "LH_NETEVENT_TYPE_0xa8f", + "LH_NETEVENT_TYPE_0xa90", + "LH_NETEVENT_TYPE_0xa91", + "LH_NETEVENT_TYPE_0xa92", + "LH_NETEVENT_TYPE_0xa93", + "LH_NETEVENT_TYPE_0xa94", + "LH_NETEVENT_TYPE_0xa95", + "LH_NETEVENT_TYPE_0xa96", + "LH_NETEVENT_TYPE_0xa97", + "LH_NETEVENT_TYPE_0xa98", + "LH_NETEVENT_TYPE_0xa99", + "LH_NETEVENT_TYPE_0xa9a", + "LH_NETEVENT_TYPE_0xa9b", + "LH_NETEVENT_TYPE_0xa9c", + "LH_NETEVENT_TYPE_0xa9d", + "LH_NETEVENT_TYPE_0xa9e", + "LH_NETEVENT_TYPE_0xa9f", + "LH_NETEVENT_TYPE_0xaa0", + "LH_NETEVENT_TYPE_0xaa1", + "LH_NETEVENT_TYPE_0xaa2", + "LH_NETEVENT_TYPE_0xaa3", + "LH_NETEVENT_TYPE_0xaa4", + "LH_NETEVENT_TYPE_0xaa5", + "LH_NETEVENT_TYPE_0xaa6", + "LH_NETEVENT_TYPE_0xaa7", + "LH_NETEVENT_TYPE_0xaa8", + "LH_NETEVENT_TYPE_0xaa9", + "LH_NETEVENT_TYPE_0xaaa", + "LH_NETEVENT_TYPE_0xaab", + "LH_NETEVENT_TYPE_0xaac", + "LH_NETEVENT_TYPE_0xaad", + "LH_NETEVENT_TYPE_0xaae", + "LH_NETEVENT_TYPE_0xaaf", + "LH_NETEVENT_TYPE_0xab0", + "LH_NETEVENT_TYPE_0xab1", + "LH_NETEVENT_TYPE_0xab2", + "LH_NETEVENT_TYPE_0xab3", + "LH_NETEVENT_TYPE_0xab4", + "LH_NETEVENT_TYPE_0xab5", + "LH_NETEVENT_TYPE_0xab6", + "LH_NETEVENT_TYPE_0xab7", + "LH_NETEVENT_TYPE_0xab8", + "LH_NETEVENT_TYPE_0xab9", + "LH_NETEVENT_TYPE_0xaba", + "LH_NETEVENT_TYPE_0xabb", + "LH_NETEVENT_TYPE_0xabc", + "LH_NETEVENT_TYPE_0xabd", + "LH_NETEVENT_TYPE_0xabe", + "LH_NETEVENT_TYPE_0xabf", + "LH_NETEVENT_TYPE_0xac0", + "LH_NETEVENT_TYPE_0xac1", + "LH_NETEVENT_TYPE_0xac2", + "LH_NETEVENT_TYPE_0xac3", + "LH_NETEVENT_TYPE_0xac4", + "LH_NETEVENT_TYPE_0xac5", + "LH_NETEVENT_TYPE_0xac6", + "LH_NETEVENT_TYPE_0xac7", + "LH_NETEVENT_TYPE_0xac8", + "LH_NETEVENT_TYPE_0xac9", + "LH_NETEVENT_TYPE_0xaca", + "LH_NETEVENT_TYPE_0xacb", + "LH_NETEVENT_TYPE_0xacc", + "LH_NETEVENT_TYPE_0xacd", + "LH_NETEVENT_TYPE_0xace", + "LH_NETEVENT_TYPE_0xacf", + "LH_NETEVENT_TYPE_0xad0", + "LH_NETEVENT_TYPE_0xad1", + "LH_NETEVENT_TYPE_0xad2", + "LH_NETEVENT_TYPE_0xad3", + "LH_NETEVENT_TYPE_0xad4", + "LH_NETEVENT_TYPE_0xad5", + "LH_NETEVENT_TYPE_0xad6", + "LH_NETEVENT_TYPE_0xad7", + "LH_NETEVENT_TYPE_0xad8", + "LH_NETEVENT_TYPE_0xad9", + "LH_NETEVENT_TYPE_0xada", + "LH_NETEVENT_TYPE_0xadb", + "LH_NETEVENT_TYPE_0xadc", + "LH_NETEVENT_TYPE_0xadd", + "LH_NETEVENT_TYPE_0xade", + "LH_NETEVENT_TYPE_0xadf", + "LH_NETEVENT_TYPE_0xae0", + "LH_NETEVENT_TYPE_0xae1", + "LH_NETEVENT_TYPE_0xae2", + "LH_NETEVENT_TYPE_0xae3", + "LH_NETEVENT_TYPE_0xae4", + "LH_NETEVENT_TYPE_0xae5", + "LH_NETEVENT_TYPE_0xae6", + "LH_NETEVENT_TYPE_0xae7", + "LH_NETEVENT_TYPE_0xae8", + "LH_NETEVENT_TYPE_0xae9", + "LH_NETEVENT_TYPE_0xaea", + "LH_NETEVENT_TYPE_0xaeb", + "LH_NETEVENT_TYPE_0xaec", + "LH_NETEVENT_TYPE_0xaed", + "LH_NETEVENT_TYPE_0xaee", + "LH_NETEVENT_TYPE_0xaef", + "LH_NETEVENT_TYPE_0xaf0", + "LH_NETEVENT_TYPE_0xaf1", + "LH_NETEVENT_TYPE_0xaf2", + "LH_NETEVENT_TYPE_0xaf3", + "LH_NETEVENT_TYPE_0xaf4", + "LH_NETEVENT_TYPE_0xaf5", + "LH_NETEVENT_TYPE_0xaf6", + "LH_NETEVENT_TYPE_0xaf7", + "LH_NETEVENT_TYPE_0xaf8", + "LH_NETEVENT_TYPE_0xaf9", + "LH_NETEVENT_TYPE_0xafa", + "LH_NETEVENT_TYPE_0xafb", + "LH_NETEVENT_TYPE_0xafc", + "LH_NETEVENT_TYPE_0xafd", + "LH_NETEVENT_TYPE_0xafe", + "LH_NETEVENT_TYPE_0xaff", + "LH_NETEVENT_TYPE_0xb00", + "LH_NETEVENT_TYPE_0xb01", + "LH_NETEVENT_TYPE_0xb02", + "LH_NETEVENT_TYPE_0xb03", + "LH_NETEVENT_TYPE_0xb04", + "LH_NETEVENT_TYPE_0xb05", + "LH_NETEVENT_TYPE_0xb06", + "LH_NETEVENT_TYPE_0xb07", + "LH_NETEVENT_TYPE_0xb08", + "LH_NETEVENT_TYPE_0xb09", + "LH_NETEVENT_TYPE_0xb0a", + "LH_NETEVENT_TYPE_0xb0b", + "LH_NETEVENT_TYPE_0xb0c", + "LH_NETEVENT_TYPE_0xb0d", + "LH_NETEVENT_TYPE_0xb0e", + "LH_NETEVENT_TYPE_0xb0f", + "LH_NETEVENT_TYPE_0xb10", + "LH_NETEVENT_TYPE_0xb11", + "LH_NETEVENT_TYPE_0xb12", + "LH_NETEVENT_TYPE_0xb13", + "LH_NETEVENT_TYPE_0xb14", + "LH_NETEVENT_TYPE_0xb15", + "LH_NETEVENT_TYPE_0xb16", + "LH_NETEVENT_TYPE_0xb17", + "LH_NETEVENT_TYPE_0xb18", + "LH_NETEVENT_TYPE_0xb19", + "LH_NETEVENT_TYPE_0xb1a", + "LH_NETEVENT_TYPE_0xb1b", + "LH_NETEVENT_TYPE_0xb1c", + "LH_NETEVENT_TYPE_0xb1d", + "LH_NETEVENT_TYPE_0xb1e", + "LH_NETEVENT_TYPE_0xb1f", + "LH_NETEVENT_TYPE_0xb20", + "LH_NETEVENT_TYPE_0xb21", + "LH_NETEVENT_TYPE_0xb22", + "LH_NETEVENT_TYPE_0xb23", + "LH_NETEVENT_TYPE_0xb24", + "LH_NETEVENT_TYPE_0xb25", + "LH_NETEVENT_TYPE_0xb26", + "LH_NETEVENT_TYPE_0xb27", + "LH_NETEVENT_TYPE_0xb28", + "LH_NETEVENT_TYPE_0xb29", + "LH_NETEVENT_TYPE_0xb2a", + "LH_NETEVENT_TYPE_0xb2b", + "LH_NETEVENT_TYPE_0xb2c", + "LH_NETEVENT_TYPE_0xb2d", + "LH_NETEVENT_TYPE_0xb2e", + "LH_NETEVENT_TYPE_0xb2f", + "LH_NETEVENT_TYPE_0xb30", + "LH_NETEVENT_TYPE_0xb31", + "LH_NETEVENT_TYPE_0xb32", + "LH_NETEVENT_TYPE_0xb33", + "LH_NETEVENT_TYPE_0xb34", + "LH_NETEVENT_TYPE_0xb35", + "LH_NETEVENT_TYPE_0xb36", + "LH_NETEVENT_TYPE_0xb37", + "LH_NETEVENT_TYPE_0xb38", + "LH_NETEVENT_TYPE_0xb39", + "LH_NETEVENT_TYPE_0xb3a", + "LH_NETEVENT_TYPE_0xb3b", + "LH_NETEVENT_TYPE_0xb3c", + "LH_NETEVENT_TYPE_0xb3d", + "LH_NETEVENT_TYPE_0xb3e", + "LH_NETEVENT_TYPE_0xb3f", + "LH_NETEVENT_TYPE_0xb40", + "LH_NETEVENT_TYPE_0xb41", + "LH_NETEVENT_TYPE_0xb42", + "LH_NETEVENT_TYPE_0xb43", + "LH_NETEVENT_TYPE_0xb44", + "LH_NETEVENT_TYPE_0xb45", + "LH_NETEVENT_TYPE_0xb46", + "LH_NETEVENT_TYPE_0xb47", + "LH_NETEVENT_TYPE_0xb48", + "LH_NETEVENT_TYPE_0xb49", + "LH_NETEVENT_TYPE_0xb4a", + "LH_NETEVENT_TYPE_0xb4b", + "LH_NETEVENT_TYPE_0xb4c", + "LH_NETEVENT_TYPE_0xb4d", + "LH_NETEVENT_TYPE_0xb4e", + "LH_NETEVENT_TYPE_0xb4f", + "LH_NETEVENT_TYPE_0xb50", + "LH_NETEVENT_TYPE_0xb51", + "LH_NETEVENT_TYPE_0xb52", + "LH_NETEVENT_TYPE_0xb53", + "LH_NETEVENT_TYPE_0xb54", + "LH_NETEVENT_TYPE_0xb55", + "LH_NETEVENT_TYPE_0xb56", + "LH_NETEVENT_TYPE_0xb57", + "LH_NETEVENT_TYPE_0xb58", + "LH_NETEVENT_TYPE_0xb59", + "LH_NETEVENT_TYPE_0xb5a", + "LH_NETEVENT_TYPE_0xb5b", + "LH_NETEVENT_TYPE_0xb5c", + "LH_NETEVENT_TYPE_0xb5d", + "LH_NETEVENT_TYPE_0xb5e", + "LH_NETEVENT_TYPE_0xb5f", + "LH_NETEVENT_TYPE_0xb60", + "LH_NETEVENT_TYPE_0xb61", + "LH_NETEVENT_TYPE_0xb62", + "LH_NETEVENT_TYPE_0xb63", + "LH_NETEVENT_TYPE_0xb64", + "LH_NETEVENT_TYPE_0xb65", + "LH_NETEVENT_TYPE_0xb66", + "LH_NETEVENT_TYPE_0xb67", + "LH_NETEVENT_TYPE_0xb68", + "LH_NETEVENT_TYPE_0xb69", + "LH_NETEVENT_TYPE_0xb6a", + "LH_NETEVENT_TYPE_0xb6b", + "LH_NETEVENT_TYPE_0xb6c", + "LH_NETEVENT_TYPE_0xb6d", + "LH_NETEVENT_TYPE_0xb6e", + "LH_NETEVENT_TYPE_0xb6f", + "LH_NETEVENT_TYPE_0xb70", + "LH_NETEVENT_TYPE_0xb71", + "LH_NETEVENT_TYPE_0xb72", + "LH_NETEVENT_TYPE_0xb73", + "LH_NETEVENT_TYPE_0xb74", + "LH_NETEVENT_TYPE_0xb75", + "LH_NETEVENT_TYPE_0xb76", + "LH_NETEVENT_TYPE_0xb77", + "LH_NETEVENT_TYPE_0xb78", + "LH_NETEVENT_TYPE_0xb79", + "LH_NETEVENT_TYPE_0xb7a", + "LH_NETEVENT_TYPE_0xb7b", + "LH_NETEVENT_TYPE_0xb7c", + "LH_NETEVENT_TYPE_0xb7d", + "LH_NETEVENT_TYPE_0xb7e", + "LH_NETEVENT_TYPE_0xb7f", + "LH_NETEVENT_TYPE_0xb80", + "LH_NETEVENT_TYPE_0xb81", + "LH_NETEVENT_TYPE_0xb82", + "LH_NETEVENT_TYPE_0xb83", + "LH_NETEVENT_TYPE_0xb84", + "LH_NETEVENT_TYPE_0xb85", + "LH_NETEVENT_TYPE_0xb86", + "LH_NETEVENT_TYPE_0xb87", + "LH_NETEVENT_TYPE_0xb88", + "LH_NETEVENT_TYPE_0xb89", + "LH_NETEVENT_TYPE_0xb8a", + "LH_NETEVENT_TYPE_0xb8b", + "LH_NETEVENT_TYPE_0xb8c", + "LH_NETEVENT_TYPE_0xb8d", + "LH_NETEVENT_TYPE_0xb8e", + "LH_NETEVENT_TYPE_0xb8f", + "LH_NETEVENT_TYPE_0xb90", + "LH_NETEVENT_TYPE_0xb91", + "LH_NETEVENT_TYPE_0xb92", + "LH_NETEVENT_TYPE_0xb93", + "LH_NETEVENT_TYPE_0xb94", + "LH_NETEVENT_TYPE_0xb95", + "LH_NETEVENT_TYPE_0xb96", + "LH_NETEVENT_TYPE_0xb97", + "LH_NETEVENT_TYPE_0xb98", + "LH_NETEVENT_TYPE_0xb99", + "LH_NETEVENT_TYPE_0xb9a", + "LH_NETEVENT_TYPE_0xb9b", + "LH_NETEVENT_TYPE_0xb9c", + "LH_NETEVENT_TYPE_0xb9d", + "LH_NETEVENT_TYPE_0xb9e", + "LH_NETEVENT_TYPE_0xb9f", + "LH_NETEVENT_TYPE_0xba0", + "LH_NETEVENT_TYPE_0xba1", + "LH_NETEVENT_TYPE_0xba2", + "LH_NETEVENT_TYPE_0xba3", + "LH_NETEVENT_TYPE_0xba4", + "LH_NETEVENT_TYPE_0xba5", + "LH_NETEVENT_TYPE_0xba6", + "LH_NETEVENT_TYPE_0xba7", + "LH_NETEVENT_TYPE_0xba8", + "LH_NETEVENT_TYPE_0xba9", + "LH_NETEVENT_TYPE_0xbaa", + "LH_NETEVENT_TYPE_0xbab", + "LH_NETEVENT_TYPE_0xbac", + "LH_NETEVENT_TYPE_0xbad", + "LH_NETEVENT_TYPE_0xbae", + "LH_NETEVENT_TYPE_0xbaf", + "LH_NETEVENT_TYPE_0xbb0", + "LH_NETEVENT_TYPE_0xbb1", + "LH_NETEVENT_TYPE_0xbb2", + "LH_NETEVENT_TYPE_0xbb3", + "LH_NETEVENT_TYPE_0xbb4", + "LH_NETEVENT_TYPE_0xbb5", + "LH_NETEVENT_TYPE_0xbb6", + "LH_NETEVENT_TYPE_0xbb7", + "LH_NETEVENT_TYPE_0xbb8", + "LH_NETEVENT_TYPE_0xbb9", + "LH_NETEVENT_TYPE_0xbba", + "LH_NETEVENT_TYPE_0xbbb", + "LH_NETEVENT_TYPE_0xbbc", + "LH_NETEVENT_TYPE_0xbbd", + "LH_NETEVENT_TYPE_0xbbe", + "LH_NETEVENT_TYPE_0xbbf", + "LH_NETEVENT_TYPE_0xbc0", + "LH_NETEVENT_TYPE_0xbc1", + "LH_NETEVENT_TYPE_0xbc2", + "LH_NETEVENT_TYPE_0xbc3", + "LH_NETEVENT_TYPE_0xbc4", + "LH_NETEVENT_TYPE_0xbc5", + "LH_NETEVENT_TYPE_0xbc6", + "LH_NETEVENT_TYPE_0xbc7", + "LH_NETEVENT_TYPE_0xbc8", + "LH_NETEVENT_TYPE_0xbc9", + "LH_NETEVENT_TYPE_0xbca", + "LH_NETEVENT_TYPE_0xbcb", + "LH_NETEVENT_TYPE_0xbcc", + "LH_NETEVENT_TYPE_0xbcd", + "LH_NETEVENT_TYPE_0xbce", + "LH_NETEVENT_TYPE_0xbcf", + "LH_NETEVENT_TYPE_0xbd0", + "LH_NETEVENT_TYPE_0xbd1", + "LH_NETEVENT_TYPE_0xbd2", + "LH_NETEVENT_TYPE_0xbd3", + "LH_NETEVENT_TYPE_0xbd4", + "LH_NETEVENT_TYPE_0xbd5", + "LH_NETEVENT_TYPE_0xbd6", + "LH_NETEVENT_TYPE_0xbd7", + "LH_NETEVENT_TYPE_0xbd8", + "LH_NETEVENT_TYPE_0xbd9", + "LH_NETEVENT_TYPE_0xbda", + "LH_NETEVENT_TYPE_0xbdb", + "LH_NETEVENT_TYPE_0xbdc", + "LH_NETEVENT_TYPE_0xbdd", + "LH_NETEVENT_TYPE_0xbde", + "LH_NETEVENT_TYPE_0xbdf", + "LH_NETEVENT_TYPE_0xbe0", + "LH_NETEVENT_TYPE_0xbe1", + "LH_NETEVENT_TYPE_0xbe2", + "LH_NETEVENT_TYPE_0xbe3", + "LH_NETEVENT_TYPE_0xbe4", + "LH_NETEVENT_TYPE_0xbe5", + "LH_NETEVENT_TYPE_0xbe6", + "LH_NETEVENT_TYPE_0xbe7", + "LH_NETEVENT_TYPE_0xbe8", + "LH_NETEVENT_TYPE_0xbe9", + "LH_NETEVENT_TYPE_0xbea", + "LH_NETEVENT_TYPE_0xbeb", + "LH_NETEVENT_TYPE_0xbec", + "LH_NETEVENT_TYPE_0xbed", + "LH_NETEVENT_TYPE_0xbee", + "LH_NETEVENT_TYPE_0xbef", + "LH_NETEVENT_TYPE_0xbf0", + "LH_NETEVENT_TYPE_0xbf1", + "LH_NETEVENT_TYPE_0xbf2", + "LH_NETEVENT_TYPE_0xbf3", + "LH_NETEVENT_TYPE_0xbf4", + "LH_NETEVENT_TYPE_0xbf5", + "LH_NETEVENT_TYPE_0xbf6", + "LH_NETEVENT_TYPE_0xbf7", + "LH_NETEVENT_TYPE_0xbf8", + "LH_NETEVENT_TYPE_0xbf9", + "LH_NETEVENT_TYPE_0xbfa", + "LH_NETEVENT_TYPE_0xbfb", + "LH_NETEVENT_TYPE_0xbfc", + "LH_NETEVENT_TYPE_0xbfd", + "LH_NETEVENT_TYPE_0xbfe", + "LH_NETEVENT_TYPE_0xbff", + "LH_NETEVENT_TYPE_0xc00", + "LH_NETEVENT_TYPE_0xc01", + "LH_NETEVENT_TYPE_0xc02", + "LH_NETEVENT_TYPE_0xc03", + "LH_NETEVENT_TYPE_0xc04", + "LH_NETEVENT_TYPE_0xc05", + "LH_NETEVENT_TYPE_0xc06", + "LH_NETEVENT_TYPE_0xc07", + "LH_NETEVENT_TYPE_0xc08", + "LH_NETEVENT_TYPE_0xc09", + "LH_NETEVENT_TYPE_0xc0a", + "LH_NETEVENT_TYPE_0xc0b", + "LH_NETEVENT_TYPE_0xc0c", + "LH_NETEVENT_TYPE_0xc0d", + "LH_NETEVENT_TYPE_0xc0e", + "LH_NETEVENT_TYPE_0xc0f", + "LH_NETEVENT_TYPE_0xc10", + "LH_NETEVENT_TYPE_0xc11", + "LH_NETEVENT_TYPE_0xc12", + "LH_NETEVENT_TYPE_0xc13", + "LH_NETEVENT_TYPE_0xc14", + "LH_NETEVENT_TYPE_0xc15", + "LH_NETEVENT_TYPE_0xc16", + "LH_NETEVENT_TYPE_0xc17", + "LH_NETEVENT_TYPE_0xc18", + "LH_NETEVENT_TYPE_0xc19", + "LH_NETEVENT_TYPE_0xc1a", + "LH_NETEVENT_TYPE_0xc1b", + "LH_NETEVENT_TYPE_0xc1c", + "LH_NETEVENT_TYPE_0xc1d", + "LH_NETEVENT_TYPE_0xc1e", + "LH_NETEVENT_TYPE_0xc1f", + "LH_NETEVENT_TYPE_0xc20", + "LH_NETEVENT_TYPE_0xc21", + "LH_NETEVENT_TYPE_0xc22", + "LH_NETEVENT_TYPE_0xc23", + "LH_NETEVENT_TYPE_0xc24", + "LH_NETEVENT_TYPE_0xc25", + "LH_NETEVENT_TYPE_0xc26", + "LH_NETEVENT_TYPE_0xc27", + "LH_NETEVENT_TYPE_0xc28", + "LH_NETEVENT_TYPE_0xc29", + "LH_NETEVENT_TYPE_0xc2a", + "LH_NETEVENT_TYPE_0xc2b", + "LH_NETEVENT_TYPE_0xc2c", + "LH_NETEVENT_TYPE_0xc2d", + "LH_NETEVENT_TYPE_0xc2e", + "LH_NETEVENT_TYPE_0xc2f", + "LH_NETEVENT_TYPE_0xc30", + "LH_NETEVENT_TYPE_0xc31", + "LH_NETEVENT_TYPE_0xc32", + "LH_NETEVENT_TYPE_0xc33", + "LH_NETEVENT_TYPE_0xc34", + "LH_NETEVENT_TYPE_0xc35", + "LH_NETEVENT_TYPE_0xc36", + "LH_NETEVENT_TYPE_0xc37", + "LH_NETEVENT_TYPE_0xc38", + "LH_NETEVENT_TYPE_0xc39", + "LH_NETEVENT_TYPE_0xc3a", + "LH_NETEVENT_TYPE_0xc3b", + "LH_NETEVENT_TYPE_0xc3c", + "LH_NETEVENT_TYPE_0xc3d", + "LH_NETEVENT_TYPE_0xc3e", + "LH_NETEVENT_TYPE_0xc3f", + "LH_NETEVENT_TYPE_0xc40", + "LH_NETEVENT_TYPE_0xc41", + "LH_NETEVENT_TYPE_0xc42", + "LH_NETEVENT_TYPE_0xc43", + "LH_NETEVENT_TYPE_0xc44", + "LH_NETEVENT_TYPE_0xc45", + "LH_NETEVENT_TYPE_0xc46", + "LH_NETEVENT_TYPE_0xc47", + "LH_NETEVENT_TYPE_0xc48", + "LH_NETEVENT_TYPE_0xc49", + "LH_NETEVENT_TYPE_0xc4a", + "LH_NETEVENT_TYPE_0xc4b", + "LH_NETEVENT_TYPE_0xc4c", + "LH_NETEVENT_TYPE_0xc4d", + "LH_NETEVENT_TYPE_0xc4e", + "LH_NETEVENT_TYPE_0xc4f", + "LH_NETEVENT_TYPE_0xc50", + "LH_NETEVENT_TYPE_0xc51", + "LH_NETEVENT_TYPE_0xc52", + "LH_NETEVENT_TYPE_0xc53", + "LH_NETEVENT_TYPE_0xc54", + "LH_NETEVENT_TYPE_0xc55", + "LH_NETEVENT_TYPE_0xc56", + "LH_NETEVENT_TYPE_0xc57", + "LH_NETEVENT_TYPE_0xc58", + "LH_NETEVENT_TYPE_0xc59", + "LH_NETEVENT_TYPE_0xc5a", + "LH_NETEVENT_TYPE_0xc5b", + "LH_NETEVENT_TYPE_0xc5c", + "LH_NETEVENT_TYPE_0xc5d", + "LH_NETEVENT_TYPE_0xc5e", + "LH_NETEVENT_TYPE_0xc5f", + "LH_NETEVENT_TYPE_0xc60", + "LH_NETEVENT_TYPE_0xc61", + "LH_NETEVENT_TYPE_0xc62", + "LH_NETEVENT_TYPE_0xc63", + "LH_NETEVENT_TYPE_0xc64", + "LH_NETEVENT_TYPE_0xc65", + "LH_NETEVENT_TYPE_0xc66", + "LH_NETEVENT_TYPE_0xc67", + "LH_NETEVENT_TYPE_0xc68", + "LH_NETEVENT_TYPE_0xc69", + "LH_NETEVENT_TYPE_0xc6a", + "LH_NETEVENT_TYPE_0xc6b", + "LH_NETEVENT_TYPE_0xc6c", + "LH_NETEVENT_TYPE_0xc6d", + "LH_NETEVENT_TYPE_0xc6e", + "LH_NETEVENT_TYPE_0xc6f", + "LH_NETEVENT_TYPE_0xc70", + "LH_NETEVENT_TYPE_0xc71", + "LH_NETEVENT_TYPE_0xc72", + "LH_NETEVENT_TYPE_0xc73", + "LH_NETEVENT_TYPE_0xc74", + "LH_NETEVENT_TYPE_0xc75", + "LH_NETEVENT_TYPE_0xc76", + "LH_NETEVENT_TYPE_0xc77", + "LH_NETEVENT_TYPE_0xc78", + "LH_NETEVENT_TYPE_0xc79", + "LH_NETEVENT_TYPE_0xc7a", + "LH_NETEVENT_TYPE_0xc7b", + "LH_NETEVENT_TYPE_0xc7c", + "LH_NETEVENT_TYPE_0xc7d", + "LH_NETEVENT_TYPE_0xc7e", + "LH_NETEVENT_TYPE_0xc7f", + "LH_NETEVENT_TYPE_0xc80", + "LH_NETEVENT_TYPE_0xc81", + "LH_NETEVENT_TYPE_0xc82", + "LH_NETEVENT_TYPE_0xc83", + "LH_NETEVENT_TYPE_0xc84", + "LH_NETEVENT_TYPE_0xc85", + "LH_NETEVENT_TYPE_0xc86", + "LH_NETEVENT_TYPE_0xc87", + "LH_NETEVENT_TYPE_0xc88", + "LH_NETEVENT_TYPE_0xc89", + "LH_NETEVENT_TYPE_0xc8a", + "LH_NETEVENT_TYPE_0xc8b", + "LH_NETEVENT_TYPE_0xc8c", + "LH_NETEVENT_TYPE_0xc8d", + "LH_NETEVENT_TYPE_0xc8e", + "LH_NETEVENT_TYPE_0xc8f", + "LH_NETEVENT_TYPE_0xc90", + "LH_NETEVENT_TYPE_0xc91", + "LH_NETEVENT_TYPE_0xc92", + "LH_NETEVENT_TYPE_0xc93", + "LH_NETEVENT_TYPE_0xc94", + "LH_NETEVENT_TYPE_0xc95", + "LH_NETEVENT_TYPE_0xc96", + "LH_NETEVENT_TYPE_0xc97", + "LH_NETEVENT_TYPE_0xc98", + "LH_NETEVENT_TYPE_0xc99", + "LH_NETEVENT_TYPE_0xc9a", + "LH_NETEVENT_TYPE_0xc9b", + "LH_NETEVENT_TYPE_0xc9c", + "LH_NETEVENT_TYPE_0xc9d", + "LH_NETEVENT_TYPE_0xc9e", + "LH_NETEVENT_TYPE_0xc9f", + "LH_NETEVENT_TYPE_0xca0", + "LH_NETEVENT_TYPE_0xca1", + "LH_NETEVENT_TYPE_0xca2", + "LH_NETEVENT_TYPE_0xca3", + "LH_NETEVENT_TYPE_0xca4", + "LH_NETEVENT_TYPE_0xca5", + "LH_NETEVENT_TYPE_0xca6", + "LH_NETEVENT_TYPE_0xca7", + "LH_NETEVENT_TYPE_0xca8", + "LH_NETEVENT_TYPE_0xca9", + "LH_NETEVENT_TYPE_0xcaa", + "LH_NETEVENT_TYPE_0xcab", + "LH_NETEVENT_TYPE_0xcac", + "LH_NETEVENT_TYPE_0xcad", + "LH_NETEVENT_TYPE_0xcae", + "LH_NETEVENT_TYPE_0xcaf", + "LH_NETEVENT_TYPE_0xcb0", + "LH_NETEVENT_TYPE_0xcb1", + "LH_NETEVENT_TYPE_0xcb2", + "LH_NETEVENT_TYPE_0xcb3", + "LH_NETEVENT_TYPE_0xcb4", + "LH_NETEVENT_TYPE_0xcb5", + "LH_NETEVENT_TYPE_0xcb6", + "LH_NETEVENT_TYPE_0xcb7", + "LH_NETEVENT_TYPE_0xcb8", + "LH_NETEVENT_TYPE_0xcb9", + "LH_NETEVENT_TYPE_0xcba", + "LH_NETEVENT_TYPE_0xcbb", + "LH_NETEVENT_TYPE_0xcbc", + "LH_NETEVENT_TYPE_0xcbd", + "LH_NETEVENT_TYPE_0xcbe", + "LH_NETEVENT_TYPE_0xcbf", + "LH_NETEVENT_TYPE_0xcc0", + "LH_NETEVENT_TYPE_0xcc1", + "LH_NETEVENT_TYPE_0xcc2", + "LH_NETEVENT_TYPE_0xcc3", + "LH_NETEVENT_TYPE_0xcc4", + "LH_NETEVENT_TYPE_0xcc5", + "LH_NETEVENT_TYPE_0xcc6", + "LH_NETEVENT_TYPE_0xcc7", + "LH_NETEVENT_TYPE_0xcc8", + "LH_NETEVENT_TYPE_0xcc9", + "LH_NETEVENT_TYPE_0xcca", + "LH_NETEVENT_TYPE_0xccb", + "LH_NETEVENT_TYPE_0xccc", + "LH_NETEVENT_TYPE_0xccd", + "LH_NETEVENT_TYPE_0xcce", + "LH_NETEVENT_TYPE_0xccf", + "LH_NETEVENT_TYPE_0xcd0", + "LH_NETEVENT_TYPE_0xcd1", + "LH_NETEVENT_TYPE_0xcd2", + "LH_NETEVENT_TYPE_0xcd3", + "LH_NETEVENT_TYPE_0xcd4", + "LH_NETEVENT_TYPE_0xcd5", + "LH_NETEVENT_TYPE_0xcd6", + "LH_NETEVENT_TYPE_0xcd7", + "LH_NETEVENT_TYPE_0xcd8", + "LH_NETEVENT_TYPE_0xcd9", + "LH_NETEVENT_TYPE_0xcda", + "LH_NETEVENT_TYPE_0xcdb", + "LH_NETEVENT_TYPE_0xcdc", + "LH_NETEVENT_TYPE_0xcdd", + "LH_NETEVENT_TYPE_0xcde", + "LH_NETEVENT_TYPE_0xcdf", + "LH_NETEVENT_TYPE_0xce0", + "LH_NETEVENT_TYPE_0xce1", + "LH_NETEVENT_TYPE_0xce2", + "LH_NETEVENT_TYPE_0xce3", + "LH_NETEVENT_TYPE_0xce4", + "LH_NETEVENT_TYPE_0xce5", + "LH_NETEVENT_TYPE_0xce6", + "LH_NETEVENT_TYPE_0xce7", + "LH_NETEVENT_TYPE_0xce8", + "LH_NETEVENT_TYPE_0xce9", + "LH_NETEVENT_TYPE_0xcea", + "LH_NETEVENT_TYPE_0xceb", + "LH_NETEVENT_TYPE_0xcec", + "LH_NETEVENT_TYPE_0xced", + "LH_NETEVENT_TYPE_0xcee", + "LH_NETEVENT_TYPE_0xcef", + "LH_NETEVENT_TYPE_0xcf0", + "LH_NETEVENT_TYPE_0xcf1", + "LH_NETEVENT_TYPE_0xcf2", + "LH_NETEVENT_TYPE_0xcf3", + "LH_NETEVENT_TYPE_0xcf4", + "LH_NETEVENT_TYPE_0xcf5", + "LH_NETEVENT_TYPE_0xcf6", + "LH_NETEVENT_TYPE_0xcf7", + "LH_NETEVENT_TYPE_0xcf8", + "LH_NETEVENT_TYPE_0xcf9", + "LH_NETEVENT_TYPE_0xcfa", + "LH_NETEVENT_TYPE_0xcfb", + "LH_NETEVENT_TYPE_0xcfc", + "LH_NETEVENT_TYPE_0xcfd", + "LH_NETEVENT_TYPE_0xcfe", + "LH_NETEVENT_TYPE_0xcff", + "LH_NETEVENT_TYPE_0xd00", + "LH_NETEVENT_TYPE_0xd01", + "LH_NETEVENT_TYPE_0xd02", + "LH_NETEVENT_TYPE_0xd03", + "LH_NETEVENT_TYPE_0xd04", + "LH_NETEVENT_TYPE_0xd05", + "LH_NETEVENT_TYPE_0xd06", + "LH_NETEVENT_TYPE_0xd07", + "LH_NETEVENT_TYPE_0xd08", + "LH_NETEVENT_TYPE_0xd09", + "LH_NETEVENT_TYPE_0xd0a", + "LH_NETEVENT_TYPE_0xd0b", + "LH_NETEVENT_TYPE_0xd0c", + "LH_NETEVENT_TYPE_0xd0d", + "LH_NETEVENT_TYPE_0xd0e", + "LH_NETEVENT_TYPE_0xd0f", + "LH_NETEVENT_TYPE_0xd10", + "LH_NETEVENT_TYPE_0xd11", + "LH_NETEVENT_TYPE_0xd12", + "LH_NETEVENT_TYPE_0xd13", + "LH_NETEVENT_TYPE_0xd14", + "LH_NETEVENT_TYPE_0xd15", + "LH_NETEVENT_TYPE_0xd16", + "LH_NETEVENT_TYPE_0xd17", + "LH_NETEVENT_TYPE_0xd18", + "LH_NETEVENT_TYPE_0xd19", + "LH_NETEVENT_TYPE_0xd1a", + "LH_NETEVENT_TYPE_0xd1b", + "LH_NETEVENT_TYPE_0xd1c", + "LH_NETEVENT_TYPE_0xd1d", + "LH_NETEVENT_TYPE_0xd1e", + "LH_NETEVENT_TYPE_0xd1f", + "LH_NETEVENT_TYPE_0xd20", + "LH_NETEVENT_TYPE_0xd21", + "LH_NETEVENT_TYPE_0xd22", + "LH_NETEVENT_TYPE_0xd23", + "LH_NETEVENT_TYPE_0xd24", + "LH_NETEVENT_TYPE_0xd25", + "LH_NETEVENT_TYPE_0xd26", + "LH_NETEVENT_TYPE_0xd27", + "LH_NETEVENT_TYPE_0xd28", + "LH_NETEVENT_TYPE_0xd29", + "LH_NETEVENT_TYPE_0xd2a", + "LH_NETEVENT_TYPE_0xd2b", + "LH_NETEVENT_TYPE_0xd2c", + "LH_NETEVENT_TYPE_0xd2d", + "LH_NETEVENT_TYPE_0xd2e", + "LH_NETEVENT_TYPE_0xd2f", + "LH_NETEVENT_TYPE_0xd30", + "LH_NETEVENT_TYPE_0xd31", + "LH_NETEVENT_TYPE_0xd32", + "LH_NETEVENT_TYPE_0xd33", + "LH_NETEVENT_TYPE_0xd34", + "LH_NETEVENT_TYPE_0xd35", + "LH_NETEVENT_TYPE_0xd36", + "LH_NETEVENT_TYPE_0xd37", + "LH_NETEVENT_TYPE_0xd38", + "LH_NETEVENT_TYPE_0xd39", + "LH_NETEVENT_TYPE_0xd3a", + "LH_NETEVENT_TYPE_0xd3b", + "LH_NETEVENT_TYPE_0xd3c", + "LH_NETEVENT_TYPE_0xd3d", + "LH_NETEVENT_TYPE_0xd3e", + "LH_NETEVENT_TYPE_0xd3f", + "LH_NETEVENT_TYPE_0xd40", + "LH_NETEVENT_TYPE_0xd41", + "LH_NETEVENT_TYPE_0xd42", + "LH_NETEVENT_TYPE_0xd43", + "LH_NETEVENT_TYPE_0xd44", + "LH_NETEVENT_TYPE_0xd45", + "LH_NETEVENT_TYPE_0xd46", + "LH_NETEVENT_TYPE_0xd47", + "LH_NETEVENT_TYPE_0xd48", + "LH_NETEVENT_TYPE_0xd49", + "LH_NETEVENT_TYPE_0xd4a", + "LH_NETEVENT_TYPE_0xd4b", + "LH_NETEVENT_TYPE_0xd4c", + "LH_NETEVENT_TYPE_0xd4d", + "LH_NETEVENT_TYPE_0xd4e", + "LH_NETEVENT_TYPE_0xd4f", + "LH_NETEVENT_TYPE_0xd50", + "LH_NETEVENT_TYPE_0xd51", + "LH_NETEVENT_TYPE_0xd52", + "LH_NETEVENT_TYPE_0xd53", + "LH_NETEVENT_TYPE_0xd54", + "LH_NETEVENT_TYPE_0xd55", + "LH_NETEVENT_TYPE_0xd56", + "LH_NETEVENT_TYPE_0xd57", + "LH_NETEVENT_TYPE_0xd58", + "LH_NETEVENT_TYPE_0xd59", + "LH_NETEVENT_TYPE_0xd5a", + "LH_NETEVENT_TYPE_0xd5b", + "LH_NETEVENT_TYPE_0xd5c", + "LH_NETEVENT_TYPE_0xd5d", + "LH_NETEVENT_TYPE_0xd5e", + "LH_NETEVENT_TYPE_0xd5f", + "LH_NETEVENT_TYPE_0xd60", + "LH_NETEVENT_TYPE_0xd61", + "LH_NETEVENT_TYPE_0xd62", + "LH_NETEVENT_TYPE_0xd63", + "LH_NETEVENT_TYPE_0xd64", + "LH_NETEVENT_TYPE_0xd65", + "LH_NETEVENT_TYPE_0xd66", + "LH_NETEVENT_TYPE_0xd67", + "LH_NETEVENT_TYPE_0xd68", + "LH_NETEVENT_TYPE_0xd69", + "LH_NETEVENT_TYPE_0xd6a", + "LH_NETEVENT_TYPE_0xd6b", + "LH_NETEVENT_TYPE_0xd6c", + "LH_NETEVENT_TYPE_0xd6d", + "LH_NETEVENT_TYPE_0xd6e", + "LH_NETEVENT_TYPE_0xd6f", + "LH_NETEVENT_TYPE_0xd70", + "LH_NETEVENT_TYPE_0xd71", + "LH_NETEVENT_TYPE_0xd72", + "LH_NETEVENT_TYPE_0xd73", + "LH_NETEVENT_TYPE_0xd74", + "LH_NETEVENT_TYPE_0xd75", + "LH_NETEVENT_TYPE_0xd76", + "LH_NETEVENT_TYPE_0xd77", + "LH_NETEVENT_TYPE_0xd78", + "LH_NETEVENT_TYPE_0xd79", + "LH_NETEVENT_TYPE_0xd7a", + "LH_NETEVENT_TYPE_0xd7b", + "LH_NETEVENT_TYPE_0xd7c", + "LH_NETEVENT_TYPE_0xd7d", + "LH_NETEVENT_TYPE_0xd7e", + "LH_NETEVENT_TYPE_0xd7f", + "LH_NETEVENT_TYPE_0xd80", + "LH_NETEVENT_TYPE_0xd81", + "LH_NETEVENT_TYPE_0xd82", + "LH_NETEVENT_TYPE_0xd83", + "LH_NETEVENT_TYPE_0xd84", + "LH_NETEVENT_TYPE_0xd85", + "LH_NETEVENT_TYPE_0xd86", + "LH_NETEVENT_TYPE_0xd87", + "LH_NETEVENT_TYPE_0xd88", + "LH_NETEVENT_TYPE_0xd89", + "LH_NETEVENT_TYPE_0xd8a", + "LH_NETEVENT_TYPE_0xd8b", + "LH_NETEVENT_TYPE_0xd8c", + "LH_NETEVENT_TYPE_0xd8d", + "LH_NETEVENT_TYPE_0xd8e", + "LH_NETEVENT_TYPE_0xd8f", + "LH_NETEVENT_TYPE_0xd90", + "LH_NETEVENT_TYPE_0xd91", + "LH_NETEVENT_TYPE_0xd92", + "LH_NETEVENT_TYPE_0xd93", + "LH_NETEVENT_TYPE_0xd94", + "LH_NETEVENT_TYPE_0xd95", + "LH_NETEVENT_TYPE_0xd96", + "LH_NETEVENT_TYPE_0xd97", + "LH_NETEVENT_TYPE_0xd98", + "LH_NETEVENT_TYPE_0xd99", + "LH_NETEVENT_TYPE_0xd9a", + "LH_NETEVENT_TYPE_0xd9b", + "LH_NETEVENT_TYPE_0xd9c", + "LH_NETEVENT_TYPE_0xd9d", + "LH_NETEVENT_TYPE_0xd9e", + "LH_NETEVENT_TYPE_0xd9f", + "LH_NETEVENT_TYPE_0xda0", + "LH_NETEVENT_TYPE_0xda1", + "LH_NETEVENT_TYPE_0xda2", + "LH_NETEVENT_TYPE_0xda3", + "LH_NETEVENT_TYPE_0xda4", + "LH_NETEVENT_TYPE_0xda5", + "LH_NETEVENT_TYPE_0xda6", + "LH_NETEVENT_TYPE_0xda7", + "LH_NETEVENT_TYPE_0xda8", + "LH_NETEVENT_TYPE_0xda9", + "LH_NETEVENT_TYPE_0xdaa", + "LH_NETEVENT_TYPE_0xdab", + "LH_NETEVENT_TYPE_0xdac", + "LH_NETEVENT_TYPE_0xdad", + "LH_NETEVENT_TYPE_0xdae", + "LH_NETEVENT_TYPE_0xdaf", + "LH_NETEVENT_TYPE_0xdb0", + "LH_NETEVENT_TYPE_0xdb1", + "LH_NETEVENT_TYPE_0xdb2", + "LH_NETEVENT_TYPE_0xdb3", + "LH_NETEVENT_TYPE_0xdb4", + "LH_NETEVENT_TYPE_0xdb5", + "LH_NETEVENT_TYPE_0xdb6", + "LH_NETEVENT_TYPE_0xdb7", + "LH_NETEVENT_TYPE_0xdb8", + "LH_NETEVENT_TYPE_0xdb9", + "LH_NETEVENT_TYPE_0xdba", + "LH_NETEVENT_TYPE_0xdbb", + "LH_NETEVENT_TYPE_0xdbc", + "LH_NETEVENT_TYPE_0xdbd", + "LH_NETEVENT_TYPE_0xdbe", + "LH_NETEVENT_TYPE_0xdbf", + "LH_NETEVENT_TYPE_0xdc0", + "LH_NETEVENT_TYPE_0xdc1", + "LH_NETEVENT_TYPE_0xdc2", + "LH_NETEVENT_TYPE_0xdc3", + "LH_NETEVENT_TYPE_0xdc4", + "LH_NETEVENT_TYPE_0xdc5", + "LH_NETEVENT_TYPE_0xdc6", + "LH_NETEVENT_TYPE_0xdc7", + "LH_NETEVENT_TYPE_0xdc8", + "LH_NETEVENT_TYPE_0xdc9", + "LH_NETEVENT_TYPE_0xdca", + "LH_NETEVENT_TYPE_0xdcb", + "LH_NETEVENT_TYPE_0xdcc", + "LH_NETEVENT_TYPE_0xdcd", + "LH_NETEVENT_TYPE_0xdce", + "LH_NETEVENT_TYPE_0xdcf", + "LH_NETEVENT_TYPE_0xdd0", + "LH_NETEVENT_TYPE_0xdd1", + "LH_NETEVENT_TYPE_0xdd2", + "LH_NETEVENT_TYPE_0xdd3", + "LH_NETEVENT_TYPE_0xdd4", + "LH_NETEVENT_TYPE_0xdd5", + "LH_NETEVENT_TYPE_0xdd6", + "LH_NETEVENT_TYPE_0xdd7", + "LH_NETEVENT_TYPE_0xdd8", + "LH_NETEVENT_TYPE_0xdd9", + "LH_NETEVENT_TYPE_0xdda", + "LH_NETEVENT_TYPE_0xddb", + "LH_NETEVENT_TYPE_0xddc", + "LH_NETEVENT_TYPE_0xddd", + "LH_NETEVENT_TYPE_0xdde", + "LH_NETEVENT_TYPE_0xddf", + "LH_NETEVENT_TYPE_0xde0", + "LH_NETEVENT_TYPE_0xde1", + "LH_NETEVENT_TYPE_0xde2", + "LH_NETEVENT_TYPE_0xde3", + "LH_NETEVENT_TYPE_0xde4", + "LH_NETEVENT_TYPE_0xde5", + "LH_NETEVENT_TYPE_0xde6", + "LH_NETEVENT_TYPE_0xde7", + "LH_NETEVENT_TYPE_0xde8", + "LH_NETEVENT_TYPE_0xde9", + "LH_NETEVENT_TYPE_0xdea", + "LH_NETEVENT_TYPE_0xdeb", + "LH_NETEVENT_TYPE_0xdec", + "LH_NETEVENT_TYPE_0xded", + "LH_NETEVENT_TYPE_0xdee", + "LH_NETEVENT_TYPE_0xdef", + "LH_NETEVENT_TYPE_0xdf0", + "LH_NETEVENT_TYPE_0xdf1", + "LH_NETEVENT_TYPE_0xdf2", + "LH_NETEVENT_TYPE_0xdf3", + "LH_NETEVENT_TYPE_0xdf4", + "LH_NETEVENT_TYPE_0xdf5", + "LH_NETEVENT_TYPE_0xdf6", + "LH_NETEVENT_TYPE_0xdf7", + "LH_NETEVENT_TYPE_0xdf8", + "LH_NETEVENT_TYPE_0xdf9", + "LH_NETEVENT_TYPE_0xdfa", + "LH_NETEVENT_TYPE_0xdfb", + "LH_NETEVENT_TYPE_0xdfc", + "LH_NETEVENT_TYPE_0xdfd", + "LH_NETEVENT_TYPE_0xdfe", + "LH_NETEVENT_TYPE_0xdff", + "LH_NETEVENT_TYPE_0xe00", + "LH_NETEVENT_TYPE_0xe01", + "LH_NETEVENT_TYPE_0xe02", + "LH_NETEVENT_TYPE_0xe03", + "LH_NETEVENT_TYPE_0xe04", + "LH_NETEVENT_TYPE_0xe05", + "LH_NETEVENT_TYPE_0xe06", + "LH_NETEVENT_TYPE_0xe07", + "LH_NETEVENT_TYPE_0xe08", + "LH_NETEVENT_TYPE_0xe09", + "LH_NETEVENT_TYPE_0xe0a", + "LH_NETEVENT_TYPE_0xe0b", + "LH_NETEVENT_TYPE_0xe0c", + "LH_NETEVENT_TYPE_0xe0d", + "LH_NETEVENT_TYPE_0xe0e", + "LH_NETEVENT_TYPE_0xe0f", + "LH_NETEVENT_TYPE_0xe10", + "LH_NETEVENT_TYPE_0xe11", + "LH_NETEVENT_TYPE_0xe12", + "LH_NETEVENT_TYPE_0xe13", + "LH_NETEVENT_TYPE_0xe14", + "LH_NETEVENT_TYPE_0xe15", + "LH_NETEVENT_TYPE_0xe16", + "LH_NETEVENT_TYPE_0xe17", + "LH_NETEVENT_TYPE_0xe18", + "LH_NETEVENT_TYPE_0xe19", + "LH_NETEVENT_TYPE_0xe1a", + "LH_NETEVENT_TYPE_0xe1b", + "LH_NETEVENT_TYPE_0xe1c", + "LH_NETEVENT_TYPE_0xe1d", + "LH_NETEVENT_TYPE_0xe1e", + "LH_NETEVENT_TYPE_0xe1f", + "LH_NETEVENT_TYPE_0xe20", + "LH_NETEVENT_TYPE_0xe21", + "LH_NETEVENT_TYPE_0xe22", + "LH_NETEVENT_TYPE_0xe23", + "LH_NETEVENT_TYPE_0xe24", + "LH_NETEVENT_TYPE_0xe25", + "LH_NETEVENT_TYPE_0xe26", + "LH_NETEVENT_TYPE_0xe27", + "LH_NETEVENT_TYPE_0xe28", + "LH_NETEVENT_TYPE_0xe29", + "LH_NETEVENT_TYPE_0xe2a", + "LH_NETEVENT_TYPE_0xe2b", + "LH_NETEVENT_TYPE_0xe2c", + "LH_NETEVENT_TYPE_0xe2d", + "LH_NETEVENT_TYPE_0xe2e", + "LH_NETEVENT_TYPE_0xe2f", + "LH_NETEVENT_TYPE_0xe30", + "LH_NETEVENT_TYPE_0xe31", + "LH_NETEVENT_TYPE_0xe32", + "LH_NETEVENT_TYPE_0xe33", + "LH_NETEVENT_TYPE_0xe34", + "LH_NETEVENT_TYPE_0xe35", + "LH_NETEVENT_TYPE_0xe36", + "LH_NETEVENT_TYPE_0xe37", + "LH_NETEVENT_TYPE_0xe38", + "LH_NETEVENT_TYPE_0xe39", + "LH_NETEVENT_TYPE_0xe3a", + "LH_NETEVENT_TYPE_0xe3b", + "LH_NETEVENT_TYPE_0xe3c", + "LH_NETEVENT_TYPE_0xe3d", + "LH_NETEVENT_TYPE_0xe3e", + "LH_NETEVENT_TYPE_0xe3f", + "LH_NETEVENT_TYPE_0xe40", + "LH_NETEVENT_TYPE_0xe41", + "LH_NETEVENT_TYPE_0xe42", + "LH_NETEVENT_TYPE_0xe43", + "LH_NETEVENT_TYPE_0xe44", + "LH_NETEVENT_TYPE_0xe45", + "LH_NETEVENT_TYPE_0xe46", + "LH_NETEVENT_TYPE_0xe47", + "LH_NETEVENT_TYPE_0xe48", + "LH_NETEVENT_TYPE_0xe49", + "LH_NETEVENT_TYPE_0xe4a", + "LH_NETEVENT_TYPE_0xe4b", + "LH_NETEVENT_TYPE_0xe4c", + "LH_NETEVENT_TYPE_0xe4d", + "LH_NETEVENT_TYPE_0xe4e", + "LH_NETEVENT_TYPE_0xe4f", + "LH_NETEVENT_TYPE_0xe50", + "LH_NETEVENT_TYPE_0xe51", + "LH_NETEVENT_TYPE_0xe52", + "LH_NETEVENT_TYPE_0xe53", + "LH_NETEVENT_TYPE_0xe54", + "LH_NETEVENT_TYPE_0xe55", + "LH_NETEVENT_TYPE_0xe56", + "LH_NETEVENT_TYPE_0xe57", + "LH_NETEVENT_TYPE_0xe58", + "LH_NETEVENT_TYPE_0xe59", + "LH_NETEVENT_TYPE_0xe5a", + "LH_NETEVENT_TYPE_0xe5b", + "LH_NETEVENT_TYPE_0xe5c", + "LH_NETEVENT_TYPE_0xe5d", + "LH_NETEVENT_TYPE_0xe5e", + "LH_NETEVENT_TYPE_0xe5f", + "LH_NETEVENT_TYPE_0xe60", + "LH_NETEVENT_TYPE_0xe61", + "LH_NETEVENT_TYPE_0xe62", + "LH_NETEVENT_TYPE_0xe63", + "LH_NETEVENT_TYPE_0xe64", + "LH_NETEVENT_TYPE_0xe65", + "LH_NETEVENT_TYPE_0xe66", + "LH_NETEVENT_TYPE_0xe67", + "LH_NETEVENT_TYPE_0xe68", + "LH_NETEVENT_TYPE_0xe69", + "LH_NETEVENT_TYPE_0xe6a", + "LH_NETEVENT_TYPE_0xe6b", + "LH_NETEVENT_TYPE_0xe6c", + "LH_NETEVENT_TYPE_0xe6d", + "LH_NETEVENT_TYPE_0xe6e", + "LH_NETEVENT_TYPE_0xe6f", + "LH_NETEVENT_TYPE_0xe70", + "LH_NETEVENT_TYPE_0xe71", + "LH_NETEVENT_TYPE_0xe72", + "LH_NETEVENT_TYPE_0xe73", + "LH_NETEVENT_TYPE_0xe74", + "LH_NETEVENT_TYPE_0xe75", + "LH_NETEVENT_TYPE_0xe76", + "LH_NETEVENT_TYPE_0xe77", + "LH_NETEVENT_TYPE_0xe78", + "LH_NETEVENT_TYPE_0xe79", + "LH_NETEVENT_TYPE_0xe7a", + "LH_NETEVENT_TYPE_0xe7b", + "LH_NETEVENT_TYPE_0xe7c", + "LH_NETEVENT_TYPE_0xe7d", + "LH_NETEVENT_TYPE_0xe7e", + "LH_NETEVENT_TYPE_0xe7f", + "LH_NETEVENT_TYPE_0xe80", + "LH_NETEVENT_TYPE_0xe81", + "LH_NETEVENT_TYPE_0xe82", + "LH_NETEVENT_TYPE_0xe83", + "LH_NETEVENT_TYPE_0xe84", + "LH_NETEVENT_TYPE_0xe85", + "LH_NETEVENT_TYPE_0xe86", + "LH_NETEVENT_TYPE_0xe87", + "LH_NETEVENT_TYPE_0xe88", + "LH_NETEVENT_TYPE_0xe89", + "LH_NETEVENT_TYPE_0xe8a", + "LH_NETEVENT_TYPE_0xe8b", + "LH_NETEVENT_TYPE_0xe8c", + "LH_NETEVENT_TYPE_0xe8d", + "LH_NETEVENT_TYPE_0xe8e", + "LH_NETEVENT_TYPE_0xe8f", + "LH_NETEVENT_TYPE_0xe90", + "LH_NETEVENT_TYPE_0xe91", + "LH_NETEVENT_TYPE_0xe92", + "LH_NETEVENT_TYPE_0xe93", + "LH_NETEVENT_TYPE_0xe94", + "LH_NETEVENT_TYPE_0xe95", + "LH_NETEVENT_TYPE_0xe96", + "LH_NETEVENT_TYPE_0xe97", + "LH_NETEVENT_TYPE_0xe98", + "LH_NETEVENT_TYPE_0xe99", + "LH_NETEVENT_TYPE_0xe9a", + "LH_NETEVENT_TYPE_0xe9b", + "LH_NETEVENT_TYPE_0xe9c", + "LH_NETEVENT_TYPE_0xe9d", + "LH_NETEVENT_TYPE_0xe9e", + "LH_NETEVENT_TYPE_0xe9f", + "LH_NETEVENT_TYPE_0xea0", + "LH_NETEVENT_TYPE_0xea1", + "LH_NETEVENT_TYPE_0xea2", + "LH_NETEVENT_TYPE_0xea3", + "LH_NETEVENT_TYPE_0xea4", + "LH_NETEVENT_TYPE_0xea5", + "LH_NETEVENT_TYPE_0xea6", + "LH_NETEVENT_TYPE_0xea7", + "LH_NETEVENT_TYPE_0xea8", + "LH_NETEVENT_TYPE_0xea9", + "LH_NETEVENT_TYPE_0xeaa", + "LH_NETEVENT_TYPE_0xeab", + "LH_NETEVENT_TYPE_0xeac", + "LH_NETEVENT_TYPE_0xead", + "LH_NETEVENT_TYPE_0xeae", + "LH_NETEVENT_TYPE_0xeaf", + "LH_NETEVENT_TYPE_0xeb0", + "LH_NETEVENT_TYPE_0xeb1", + "LH_NETEVENT_TYPE_0xeb2", + "LH_NETEVENT_TYPE_0xeb3", + "LH_NETEVENT_TYPE_0xeb4", + "LH_NETEVENT_TYPE_0xeb5", + "LH_NETEVENT_TYPE_0xeb6", + "LH_NETEVENT_TYPE_0xeb7", + "LH_NETEVENT_TYPE_0xeb8", + "LH_NETEVENT_TYPE_0xeb9", + "LH_NETEVENT_TYPE_0xeba", + "LH_NETEVENT_TYPE_0xebb", + "LH_NETEVENT_TYPE_0xebc", + "LH_NETEVENT_TYPE_0xebd", + "LH_NETEVENT_TYPE_0xebe", + "LH_NETEVENT_TYPE_0xebf", + "LH_NETEVENT_TYPE_0xec0", + "LH_NETEVENT_TYPE_0xec1", + "LH_NETEVENT_TYPE_0xec2", + "LH_NETEVENT_TYPE_0xec3", + "LH_NETEVENT_TYPE_0xec4", + "LH_NETEVENT_TYPE_0xec5", + "LH_NETEVENT_TYPE_0xec6", + "LH_NETEVENT_TYPE_0xec7", + "LH_NETEVENT_TYPE_0xec8", + "LH_NETEVENT_TYPE_0xec9", + "LH_NETEVENT_TYPE_0xeca", + "LH_NETEVENT_TYPE_0xecb", + "LH_NETEVENT_TYPE_0xecc", + "LH_NETEVENT_TYPE_0xecd", + "LH_NETEVENT_TYPE_0xece", + "LH_NETEVENT_TYPE_0xecf", + "LH_NETEVENT_TYPE_0xed0", + "LH_NETEVENT_TYPE_0xed1", + "LH_NETEVENT_TYPE_0xed2", + "LH_NETEVENT_TYPE_0xed3", + "LH_NETEVENT_TYPE_0xed4", + "LH_NETEVENT_TYPE_0xed5", + "LH_NETEVENT_TYPE_0xed6", + "LH_NETEVENT_TYPE_0xed7", + "LH_NETEVENT_TYPE_0xed8", + "LH_NETEVENT_TYPE_0xed9", + "LH_NETEVENT_TYPE_0xeda", + "LH_NETEVENT_TYPE_0xedb", + "LH_NETEVENT_TYPE_0xedc", + "LH_NETEVENT_TYPE_0xedd", + "LH_NETEVENT_TYPE_0xede", + "LH_NETEVENT_TYPE_0xedf", + "LH_NETEVENT_TYPE_0xee0", + "LH_NETEVENT_TYPE_0xee1", + "LH_NETEVENT_TYPE_0xee2", + "LH_NETEVENT_TYPE_0xee3", + "LH_NETEVENT_TYPE_0xee4", + "LH_NETEVENT_TYPE_0xee5", + "LH_NETEVENT_TYPE_0xee6", + "LH_NETEVENT_TYPE_0xee7", + "LH_NETEVENT_TYPE_0xee8", + "LH_NETEVENT_TYPE_0xee9", + "LH_NETEVENT_TYPE_0xeea", + "LH_NETEVENT_TYPE_0xeeb", + "LH_NETEVENT_TYPE_0xeec", + "LH_NETEVENT_TYPE_0xeed", + "LH_NETEVENT_TYPE_0xeee", + "LH_NETEVENT_TYPE_0xeef", + "LH_NETEVENT_TYPE_0xef0", + "LH_NETEVENT_TYPE_0xef1", + "LH_NETEVENT_TYPE_0xef2", + "LH_NETEVENT_TYPE_0xef3", + "LH_NETEVENT_TYPE_0xef4", + "LH_NETEVENT_TYPE_0xef5", + "LH_NETEVENT_TYPE_0xef6", + "LH_NETEVENT_TYPE_0xef7", + "LH_NETEVENT_TYPE_0xef8", + "LH_NETEVENT_TYPE_0xef9", + "LH_NETEVENT_TYPE_0xefa", + "LH_NETEVENT_TYPE_0xefb", + "LH_NETEVENT_TYPE_0xefc", + "LH_NETEVENT_TYPE_0xefd", + "LH_NETEVENT_TYPE_0xefe", + "LH_NETEVENT_TYPE_0xeff", + "LH_NETEVENT_TYPE_0xf00", + "LH_NETEVENT_TYPE_0xf01", + "LH_NETEVENT_TYPE_0xf02", + "LH_NETEVENT_TYPE_0xf03", + "LH_NETEVENT_TYPE_0xf04", + "LH_NETEVENT_TYPE_0xf05", + "LH_NETEVENT_TYPE_0xf06", + "LH_NETEVENT_TYPE_0xf07", + "LH_NETEVENT_TYPE_0xf08", + "LH_NETEVENT_TYPE_0xf09", + "LH_NETEVENT_TYPE_0xf0a", + "LH_NETEVENT_TYPE_0xf0b", + "LH_NETEVENT_TYPE_0xf0c", + "LH_NETEVENT_TYPE_0xf0d", + "LH_NETEVENT_TYPE_0xf0e", + "LH_NETEVENT_TYPE_0xf0f", + "LH_NETEVENT_TYPE_0xf10", + "LH_NETEVENT_TYPE_0xf11", + "LH_NETEVENT_TYPE_0xf12", + "LH_NETEVENT_TYPE_0xf13", + "LH_NETEVENT_TYPE_0xf14", + "LH_NETEVENT_TYPE_0xf15", + "LH_NETEVENT_TYPE_0xf16", + "LH_NETEVENT_TYPE_0xf17", + "LH_NETEVENT_TYPE_0xf18", + "LH_NETEVENT_TYPE_0xf19", + "LH_NETEVENT_TYPE_0xf1a", + "LH_NETEVENT_TYPE_0xf1b", + "LH_NETEVENT_TYPE_0xf1c", + "LH_NETEVENT_TYPE_0xf1d", + "LH_NETEVENT_TYPE_0xf1e", + "LH_NETEVENT_TYPE_0xf1f", + "LH_NETEVENT_TYPE_0xf20", + "LH_NETEVENT_TYPE_0xf21", + "LH_NETEVENT_TYPE_0xf22", + "LH_NETEVENT_TYPE_0xf23", + "LH_NETEVENT_TYPE_0xf24", + "LH_NETEVENT_TYPE_0xf25", + "LH_NETEVENT_TYPE_0xf26", + "LH_NETEVENT_TYPE_0xf27", + "LH_NETEVENT_TYPE_0xf28", + "LH_NETEVENT_TYPE_0xf29", + "LH_NETEVENT_TYPE_0xf2a", + "LH_NETEVENT_TYPE_0xf2b", + "LH_NETEVENT_TYPE_0xf2c", + "LH_NETEVENT_TYPE_0xf2d", + "LH_NETEVENT_TYPE_0xf2e", + "LH_NETEVENT_TYPE_0xf2f", + "LH_NETEVENT_TYPE_0xf30", + "LH_NETEVENT_TYPE_0xf31", + "LH_NETEVENT_TYPE_0xf32", + "LH_NETEVENT_TYPE_0xf33", + "LH_NETEVENT_TYPE_0xf34", + "LH_NETEVENT_TYPE_0xf35", + "LH_NETEVENT_TYPE_0xf36", + "LH_NETEVENT_TYPE_0xf37", + "LH_NETEVENT_TYPE_0xf38", + "LH_NETEVENT_TYPE_0xf39", + "LH_NETEVENT_TYPE_0xf3a", + "LH_NETEVENT_TYPE_0xf3b", + "LH_NETEVENT_TYPE_0xf3c", + "LH_NETEVENT_TYPE_0xf3d", + "LH_NETEVENT_TYPE_0xf3e", + "LH_NETEVENT_TYPE_0xf3f", + "LH_NETEVENT_TYPE_0xf40", + "LH_NETEVENT_TYPE_0xf41", + "LH_NETEVENT_TYPE_0xf42", + "LH_NETEVENT_TYPE_0xf43", + "LH_NETEVENT_TYPE_0xf44", + "LH_NETEVENT_TYPE_0xf45", + "LH_NETEVENT_TYPE_0xf46", + "LH_NETEVENT_TYPE_0xf47", + "LH_NETEVENT_TYPE_0xf48", + "LH_NETEVENT_TYPE_0xf49", + "LH_NETEVENT_TYPE_0xf4a", + "LH_NETEVENT_TYPE_0xf4b", + "LH_NETEVENT_TYPE_0xf4c", + "LH_NETEVENT_TYPE_0xf4d", + "LH_NETEVENT_TYPE_0xf4e", + "LH_NETEVENT_TYPE_0xf4f", + "LH_NETEVENT_TYPE_0xf50", + "LH_NETEVENT_TYPE_0xf51", + "LH_NETEVENT_TYPE_0xf52", + "LH_NETEVENT_TYPE_0xf53", + "LH_NETEVENT_TYPE_0xf54", + "LH_NETEVENT_TYPE_0xf55", + "LH_NETEVENT_TYPE_0xf56", + "LH_NETEVENT_TYPE_0xf57", + "LH_NETEVENT_TYPE_0xf58", + "LH_NETEVENT_TYPE_0xf59", + "LH_NETEVENT_TYPE_0xf5a", + "LH_NETEVENT_TYPE_0xf5b", + "LH_NETEVENT_TYPE_0xf5c", + "LH_NETEVENT_TYPE_0xf5d", + "LH_NETEVENT_TYPE_0xf5e", + "LH_NETEVENT_TYPE_0xf5f", + "LH_NETEVENT_TYPE_0xf60", + "LH_NETEVENT_TYPE_0xf61", + "LH_NETEVENT_TYPE_0xf62", + "LH_NETEVENT_TYPE_0xf63", + "LH_NETEVENT_TYPE_0xf64", + "LH_NETEVENT_TYPE_0xf65", + "LH_NETEVENT_TYPE_0xf66", + "LH_NETEVENT_TYPE_0xf67", + "LH_NETEVENT_TYPE_0xf68", + "LH_NETEVENT_TYPE_0xf69", + "LH_NETEVENT_TYPE_0xf6a", + "LH_NETEVENT_TYPE_0xf6b", + "LH_NETEVENT_TYPE_0xf6c", + "LH_NETEVENT_TYPE_0xf6d", + "LH_NETEVENT_TYPE_0xf6e", + "LH_NETEVENT_TYPE_0xf6f", + "LH_NETEVENT_TYPE_0xf70", + "LH_NETEVENT_TYPE_0xf71", + "LH_NETEVENT_TYPE_0xf72", + "LH_NETEVENT_TYPE_0xf73", + "LH_NETEVENT_TYPE_0xf74", + "LH_NETEVENT_TYPE_0xf75", + "LH_NETEVENT_TYPE_0xf76", + "LH_NETEVENT_TYPE_0xf77", + "LH_NETEVENT_TYPE_0xf78", + "LH_NETEVENT_TYPE_0xf79", + "LH_NETEVENT_TYPE_0xf7a", + "LH_NETEVENT_TYPE_0xf7b", + "LH_NETEVENT_TYPE_0xf7c", + "LH_NETEVENT_TYPE_0xf7d", + "LH_NETEVENT_TYPE_0xf7e", + "LH_NETEVENT_TYPE_0xf7f", + "LH_NETEVENT_TYPE_0xf80", + "LH_NETEVENT_TYPE_0xf81", + "LH_NETEVENT_TYPE_0xf82", + "LH_NETEVENT_TYPE_0xf83", + "LH_NETEVENT_TYPE_0xf84", + "LH_NETEVENT_TYPE_0xf85", + "LH_NETEVENT_TYPE_0xf86", + "LH_NETEVENT_TYPE_0xf87", + "LH_NETEVENT_TYPE_0xf88", + "LH_NETEVENT_TYPE_0xf89", + "LH_NETEVENT_TYPE_0xf8a", + "LH_NETEVENT_TYPE_0xf8b", + "LH_NETEVENT_TYPE_0xf8c", + "LH_NETEVENT_TYPE_0xf8d", + "LH_NETEVENT_TYPE_0xf8e", + "LH_NETEVENT_TYPE_0xf8f", + "LH_NETEVENT_TYPE_0xf90", + "LH_NETEVENT_TYPE_0xf91", + "LH_NETEVENT_TYPE_0xf92", + "LH_NETEVENT_TYPE_0xf93", + "LH_NETEVENT_TYPE_0xf94", + "LH_NETEVENT_TYPE_0xf95", + "LH_NETEVENT_TYPE_0xf96", + "LH_NETEVENT_TYPE_0xf97", + "LH_NETEVENT_TYPE_0xf98", + "LH_NETEVENT_TYPE_0xf99", + "LH_NETEVENT_TYPE_0xf9a", + "LH_NETEVENT_TYPE_0xf9b", + "LH_NETEVENT_TYPE_0xf9c", + "LH_NETEVENT_TYPE_0xf9d", + "LH_NETEVENT_TYPE_0xf9e", + "LH_NETEVENT_TYPE_0xf9f", + "LH_NETEVENT_TYPE_0xfa0", + "LH_NETEVENT_TYPE_0xfa1", + "LH_NETEVENT_TYPE_0xfa2", + "LH_NETEVENT_TYPE_0xfa3", + "LH_NETEVENT_TYPE_0xfa4", + "LH_NETEVENT_TYPE_0xfa5", + "LH_NETEVENT_TYPE_0xfa6", + "LH_NETEVENT_TYPE_0xfa7", + "LH_NETEVENT_TYPE_0xfa8", + "LH_NETEVENT_TYPE_0xfa9", + "LH_NETEVENT_TYPE_0xfaa", + "LH_NETEVENT_TYPE_0xfab", + "LH_NETEVENT_TYPE_0xfac", + "LH_NETEVENT_TYPE_0xfad", + "LH_NETEVENT_TYPE_0xfae", + "LH_NETEVENT_TYPE_0xfaf", + "LH_NETEVENT_TYPE_0xfb0", + "LH_NETEVENT_TYPE_0xfb1", + "LH_NETEVENT_TYPE_0xfb2", + "LH_NETEVENT_TYPE_0xfb3", + "LH_NETEVENT_TYPE_0xfb4", + "LH_NETEVENT_TYPE_0xfb5", + "LH_NETEVENT_TYPE_0xfb6", + "LH_NETEVENT_TYPE_0xfb7", + "LH_NETEVENT_TYPE_0xfb8", + "LH_NETEVENT_TYPE_0xfb9", + "LH_NETEVENT_TYPE_0xfba", + "LH_NETEVENT_TYPE_0xfbb", + "LH_NETEVENT_TYPE_0xfbc", + "LH_NETEVENT_TYPE_0xfbd", + "LH_NETEVENT_TYPE_0xfbe", + "LH_NETEVENT_TYPE_0xfbf", + "LH_NETEVENT_TYPE_0xfc0", + "LH_NETEVENT_TYPE_0xfc1", + "LH_NETEVENT_TYPE_0xfc2", + "LH_NETEVENT_TYPE_0xfc3", + "LH_NETEVENT_TYPE_0xfc4", + "LH_NETEVENT_TYPE_0xfc5", + "LH_NETEVENT_TYPE_0xfc6", + "LH_NETEVENT_TYPE_0xfc7", + "LH_NETEVENT_TYPE_0xfc8", + "LH_NETEVENT_TYPE_0xfc9", + "LH_NETEVENT_TYPE_0xfca", + "LH_NETEVENT_TYPE_0xfcb", + "LH_NETEVENT_TYPE_0xfcc", + "LH_NETEVENT_TYPE_0xfcd", + "LH_NETEVENT_TYPE_0xfce", + "LH_NETEVENT_TYPE_0xfcf", + "LH_NETEVENT_TYPE_0xfd0", + "LH_NETEVENT_TYPE_0xfd1", + "LH_NETEVENT_TYPE_0xfd2", + "LH_NETEVENT_TYPE_0xfd3", + "LH_NETEVENT_TYPE_0xfd4", + "LH_NETEVENT_TYPE_0xfd5", + "LH_NETEVENT_TYPE_0xfd6", + "LH_NETEVENT_TYPE_0xfd7", + "LH_NETEVENT_TYPE_0xfd8", + "LH_NETEVENT_TYPE_0xfd9", + "LH_NETEVENT_TYPE_0xfda", + "LH_NETEVENT_TYPE_0xfdb", + "LH_NETEVENT_TYPE_0xfdc", + "LH_NETEVENT_TYPE_0xfdd", + "LH_NETEVENT_TYPE_0xfde", + "LH_NETEVENT_TYPE_0xfdf", + "LH_NETEVENT_TYPE_0xfe0", + "LH_NETEVENT_TYPE_0xfe1", + "LH_NETEVENT_TYPE_0xfe2", + "LH_NETEVENT_TYPE_0xfe3", + "LH_NETEVENT_TYPE_0xfe4", + "LH_NETEVENT_TYPE_0xfe5", + "LH_NETEVENT_TYPE_0xfe6", + "LH_NETEVENT_TYPE_0xfe7", + "LH_NETEVENT_TYPE_0xfe8", + "LH_NETEVENT_TYPE_0xfe9", + "LH_NETEVENT_TYPE_0xfea", + "LH_NETEVENT_TYPE_0xfeb", + "LH_NETEVENT_TYPE_0xfec", + "LH_NETEVENT_TYPE_0xfed", + "LH_NETEVENT_TYPE_0xfee", + "LH_NETEVENT_TYPE_0xfef", + "LH_NETEVENT_TYPE_0xff0", + "LH_NETEVENT_TYPE_0xff1", + "LH_NETEVENT_TYPE_0xff2", + "LH_NETEVENT_TYPE_0xff3", + "LH_NETEVENT_TYPE_0xff4", + "LH_NETEVENT_TYPE_0xff5", + "LH_NETEVENT_TYPE_0xff6", + "LH_NETEVENT_TYPE_0xff7", + "LH_NETEVENT_TYPE_0xff8", + "LH_NETEVENT_TYPE_0xff9", + "LH_NETEVENT_TYPE_0xffa", + "LH_NETEVENT_TYPE_0xffb", + "LH_NETEVENT_TYPE_0xffc", + "LH_NETEVENT_TYPE_0xffd", + "LH_NETEVENT_TYPE_0xffe", + "LH_NETEVENT_TYPE_0xfff", + "LH_NETEVENT_TYPE_0x1000", + "LH_NETEVENT_TYPE_0x1001", + "LH_NETEVENT_TYPE_0x1002", + "LH_NETEVENT_TYPE_0x1003", + "LH_NETEVENT_TYPE_0x1004", + "LH_NETEVENT_TYPE_0x1005", + "LH_NETEVENT_TYPE_0x1006", + "LH_NETEVENT_TYPE_0x1007", + "LH_NETEVENT_TYPE_0x1008", + "LH_NETEVENT_TYPE_0x1009", + "LH_NETEVENT_TYPE_0x100a", + "LH_NETEVENT_TYPE_0x100b", + "LH_NETEVENT_TYPE_0x100c", + "LH_NETEVENT_TYPE_0x100d", + "LH_NETEVENT_TYPE_0x100e", + "LH_NETEVENT_TYPE_0x100f", + "LH_NETEVENT_TYPE_0x1010", + "LH_NETEVENT_TYPE_0x1011", + "LH_NETEVENT_TYPE_0x1012", + "LH_NETEVENT_TYPE_0x1013", + "LH_NETEVENT_TYPE_0x1014", + "LH_NETEVENT_TYPE_0x1015", + "LH_NETEVENT_TYPE_0x1016", + "LH_NETEVENT_TYPE_0x1017", + "LH_NETEVENT_TYPE_0x1018", + "LH_NETEVENT_TYPE_0x1019", + "LH_NETEVENT_TYPE_0x101a", + "LH_NETEVENT_TYPE_0x101b", + "LH_NETEVENT_TYPE_0x101c", + "LH_NETEVENT_TYPE_0x101d", + "LH_NETEVENT_TYPE_0x101e", + "LH_NETEVENT_TYPE_0x101f", + "LH_NETEVENT_TYPE_0x1020", + "LH_NETEVENT_TYPE_0x1021", + "LH_NETEVENT_TYPE_0x1022", + "LH_NETEVENT_TYPE_0x1023", + "LH_NETEVENT_TYPE_0x1024", + "LH_NETEVENT_TYPE_0x1025", + "LH_NETEVENT_TYPE_0x1026", + "LH_NETEVENT_TYPE_0x1027", + "LH_NETEVENT_TYPE_0x1028", + "LH_NETEVENT_TYPE_0x1029", + "LH_NETEVENT_TYPE_0x102a", + "LH_NETEVENT_TYPE_0x102b", + "LH_NETEVENT_TYPE_0x102c", + "LH_NETEVENT_TYPE_0x102d", + "LH_NETEVENT_TYPE_0x102e", + "LH_NETEVENT_TYPE_0x102f", + "LH_NETEVENT_TYPE_0x1030", + "LH_NETEVENT_TYPE_0x1031", + "LH_NETEVENT_TYPE_0x1032", + "LH_NETEVENT_TYPE_0x1033", + "LH_NETEVENT_TYPE_0x1034", + "LH_NETEVENT_TYPE_0x1035", + "LH_NETEVENT_TYPE_0x1036", + "LH_NETEVENT_TYPE_0x1037", + "LH_NETEVENT_TYPE_0x1038", + "LH_NETEVENT_TYPE_0x1039", + "LH_NETEVENT_TYPE_0x103a", + "LH_NETEVENT_TYPE_0x103b", + "LH_NETEVENT_TYPE_0x103c", + "LH_NETEVENT_TYPE_0x103d", + "LH_NETEVENT_TYPE_0x103e", + "LH_NETEVENT_TYPE_0x103f", + "LH_NETEVENT_TYPE_0x1040", + "LH_NETEVENT_TYPE_0x1041", + "LH_NETEVENT_TYPE_0x1042", + "LH_NETEVENT_TYPE_0x1043", + "LH_NETEVENT_TYPE_0x1044", + "LH_NETEVENT_TYPE_0x1045", + "LH_NETEVENT_TYPE_0x1046", + "LH_NETEVENT_TYPE_0x1047", + "LH_NETEVENT_TYPE_0x1048", + "LH_NETEVENT_TYPE_0x1049", + "LH_NETEVENT_TYPE_0x104a", + "LH_NETEVENT_TYPE_0x104b", + "LH_NETEVENT_TYPE_0x104c", + "LH_NETEVENT_TYPE_0x104d", + "LH_NETEVENT_TYPE_0x104e", + "LH_NETEVENT_TYPE_0x104f", + "LH_NETEVENT_TYPE_0x1050", + "LH_NETEVENT_TYPE_0x1051", + "LH_NETEVENT_TYPE_0x1052", + "LH_NETEVENT_TYPE_0x1053", + "LH_NETEVENT_TYPE_0x1054", + "LH_NETEVENT_TYPE_0x1055", + "LH_NETEVENT_TYPE_0x1056", + "LH_NETEVENT_TYPE_0x1057", + "LH_NETEVENT_TYPE_0x1058", + "LH_NETEVENT_TYPE_0x1059", + "LH_NETEVENT_TYPE_0x105a", + "LH_NETEVENT_TYPE_0x105b", + "LH_NETEVENT_TYPE_0x105c", + "LH_NETEVENT_TYPE_0x105d", + "LH_NETEVENT_TYPE_0x105e", + "LH_NETEVENT_TYPE_0x105f", + "LH_NETEVENT_TYPE_0x1060", + "LH_NETEVENT_TYPE_0x1061", + "LH_NETEVENT_TYPE_0x1062", + "LH_NETEVENT_TYPE_0x1063", + "LH_NETEVENT_TYPE_0x1064", + "LH_NETEVENT_TYPE_0x1065", + "LH_NETEVENT_TYPE_0x1066", + "LH_NETEVENT_TYPE_0x1067", + "LH_NETEVENT_TYPE_0x1068", + "LH_NETEVENT_TYPE_0x1069", + "LH_NETEVENT_TYPE_0x106a", + "LH_NETEVENT_TYPE_0x106b", + "LH_NETEVENT_TYPE_0x106c", + "LH_NETEVENT_TYPE_0x106d", + "LH_NETEVENT_TYPE_0x106e", + "LH_NETEVENT_TYPE_0x106f", + "LH_NETEVENT_TYPE_0x1070", + "LH_NETEVENT_TYPE_0x1071", + "LH_NETEVENT_TYPE_0x1072", + "LH_NETEVENT_TYPE_0x1073", + "LH_NETEVENT_TYPE_0x1074", + "LH_NETEVENT_TYPE_0x1075", + "LH_NETEVENT_TYPE_0x1076", + "LH_NETEVENT_TYPE_0x1077", + "LH_NETEVENT_TYPE_0x1078", + "LH_NETEVENT_TYPE_0x1079", + "LH_NETEVENT_TYPE_0x107a", + "LH_NETEVENT_TYPE_0x107b", + "LH_NETEVENT_TYPE_0x107c", + "LH_NETEVENT_TYPE_0x107d", + "LH_NETEVENT_TYPE_0x107e", + "LH_NETEVENT_TYPE_0x107f", + "LH_NETEVENT_TYPE_SEND_BROADCAST_MESSAGE_TO_INTERNAL_LOBBY_0x1080", + "LH_NETEVENT_TYPE_0x1081", + "LH_NETEVENT_TYPE_SEND_BROADCAST_MESSAGE_TO_INTERNAL_LOBBY_0x1082", + "LH_NETEVENT_TYPE_0x1083", + "LH_NETEVENT_TYPE_0x1084", + "LH_NETEVENT_TYPE_0x1085", + "LH_NETEVENT_TYPE_0x1086", + "LH_NETEVENT_TYPE_0x1087", + "LH_NETEVENT_TYPE_0x1088", + "LH_NETEVENT_TYPE_0x1089", + "LH_NETEVENT_TYPE_0x108a", + "LH_NETEVENT_TYPE_0x108b", + "LH_NETEVENT_TYPE_0x108c", + "LH_NETEVENT_TYPE_0x108d", + "LH_NETEVENT_TYPE_0x108e", + "LH_NETEVENT_TYPE_0x108f", + "LH_NETEVENT_TYPE_0x1090", + "LH_NETEVENT_TYPE_0x1091", + "LH_NETEVENT_TYPE_0x1092", + "LH_NETEVENT_TYPE_0x1093", + "LH_NETEVENT_TYPE_0x1094", + "LH_NETEVENT_TYPE_0x1095", + "LH_NETEVENT_TYPE_0x1096", + "LH_NETEVENT_TYPE_0x1097", + "LH_NETEVENT_TYPE_0x1098", + "LH_NETEVENT_TYPE_0x1099", + "LH_NETEVENT_TYPE_0x109a", + "LH_NETEVENT_TYPE_BROADCAST_LOBBY_ADDRESS_REQUEST", + "LH_NETEVENT_TYPE_BROADCAST_LOBBY_ADDRESS", + "LH_NETEVENT_TYPE_BROADCAST_LOBBY_SHUTDOWN", + "LH_NETEVENT_TYPE_0x109e", + "LH_NETEVENT_TYPE_0x109f", + "LH_NETEVENT_TYPE_0x10a0", + "LH_NETEVENT_TYPE_0x10a1", + "LH_NETEVENT_TYPE_0x10a2", + "LH_NETEVENT_TYPE_0x10a3", + "LH_NETEVENT_TYPE_0x10a4", + "LH_NETEVENT_TYPE_0x10a5", + "LH_NETEVENT_TYPE_0x10a6", + "LH_NETEVENT_TYPE_0x10a7", + "LH_NETEVENT_TYPE_0x10a8", + "LH_NETEVENT_TYPE_0x10a9", + "LH_NETEVENT_TYPE_0x10aa", + "LH_NETEVENT_TYPE_0x10ab", + "LH_NETEVENT_TYPE_0x10ac", + "LH_NETEVENT_TYPE_0x10ad", + "LH_NETEVENT_TYPE_0x10ae", + "LH_NETEVENT_TYPE_0x10af", + "LH_NETEVENT_TYPE_0x10b0", + "LH_NETEVENT_TYPE_0x10b1", + "LH_NETEVENT_TYPE_0x10b2", + "LH_NETEVENT_TYPE_0x10b3", + "LH_NETEVENT_TYPE_0x10b4", + "LH_NETEVENT_TYPE_0x10b5", + "LH_NETEVENT_TYPE_0x10b6", + "LH_NETEVENT_TYPE_0x10b7", + "LH_NETEVENT_TYPE_0x10b8", + "LH_NETEVENT_TYPE_0x10b9", + "LH_NETEVENT_TYPE_0x10ba", + "LH_NETEVENT_TYPE_0x10bb", + "LH_NETEVENT_TYPE_0x10bc", + "LH_NETEVENT_TYPE_0x10bd", + "LH_NETEVENT_TYPE_0x10be", + "LH_NETEVENT_TYPE_0x10bf", + "LH_NETEVENT_TYPE_0x10c0", + "LH_NETEVENT_TYPE_0x10c1", + "LH_NETEVENT_TYPE_0x10c2", + "LH_NETEVENT_TYPE_0x10c3", + "LH_NETEVENT_TYPE_0x10c4", + "LH_NETEVENT_TYPE_0x10c5", + "LH_NETEVENT_TYPE_0x10c6", + "LH_NETEVENT_TYPE_0x10c7", + "LH_NETEVENT_TYPE_0x10c8", + "LH_NETEVENT_TYPE_0x10c9", + "LH_NETEVENT_TYPE_0x10ca", + "LH_NETEVENT_TYPE_0x10cb", + "LH_NETEVENT_TYPE_0x10cc", + "LH_NETEVENT_TYPE_0x10cd", + "LH_NETEVENT_TYPE_0x10ce", + "LH_NETEVENT_TYPE_0x10cf", + "LH_NETEVENT_TYPE_0x10d0", + "LH_NETEVENT_TYPE_0x10d1", + "LH_NETEVENT_TYPE_0x10d2", + "LH_NETEVENT_TYPE_0x10d3", + "LH_NETEVENT_TYPE_0x10d4", + "LH_NETEVENT_TYPE_0x10d5", + "LH_NETEVENT_TYPE_0x10d6", + "LH_NETEVENT_TYPE_0x10d7", + "LH_NETEVENT_TYPE_0x10d8", + "LH_NETEVENT_TYPE_0x10d9", + "LH_NETEVENT_TYPE_0x10da", + "LH_NETEVENT_TYPE_0x10db", + "LH_NETEVENT_TYPE_0x10dc", + "LH_NETEVENT_TYPE_0x10dd", + "LH_NETEVENT_TYPE_0x10de", + "LH_NETEVENT_TYPE_0x10df", + "LH_NETEVENT_TYPE_0x10e0", + "LH_NETEVENT_TYPE_0x10e1", + "LH_NETEVENT_TYPE_0x10e2", + "LH_NETEVENT_TYPE_0x10e3", + "LH_NETEVENT_TYPE_0x10e4", + "LH_NETEVENT_TYPE_0x10e5", + "LH_NETEVENT_TYPE_0x10e6", + "LH_NETEVENT_TYPE_0x10e7", + "LH_NETEVENT_TYPE_0x10e8", + "LH_NETEVENT_TYPE_0x10e9", + "LH_NETEVENT_TYPE_0x10ea", + "LH_NETEVENT_TYPE_0x10eb", + "LH_NETEVENT_TYPE_0x10ec", + "LH_NETEVENT_TYPE_0x10ed", + "LH_NETEVENT_TYPE_0x10ee", + "LH_NETEVENT_TYPE_0x10ef", + "LH_NETEVENT_TYPE_0x10f0", + "LH_NETEVENT_TYPE_0x10f1", + "LH_NETEVENT_TYPE_0x10f2", + "LH_NETEVENT_TYPE_0x10f3", + "LH_NETEVENT_TYPE_0x10f4", + "LH_NETEVENT_TYPE_0x10f5", + "LH_NETEVENT_TYPE_0x10f6", + "LH_NETEVENT_TYPE_0x10f7", + "LH_NETEVENT_TYPE_0x10f8", + "LH_NETEVENT_TYPE_0x10f9", + "LH_NETEVENT_TYPE_0x10fa", + "LH_NETEVENT_TYPE_0x10fb", + "LH_NETEVENT_TYPE_0x10fc", + "LH_NETEVENT_TYPE_0x10fd", + "LH_NETEVENT_TYPE_0x10fe", + "LH_NETEVENT_TYPE_0x10ff", + "LH_NETEVENT_TYPE_0x1100", + "LH_NETEVENT_TYPE_0x1101", + "LH_NETEVENT_TYPE_0x1102", + "LH_NETEVENT_TYPE_0x1103", + "LH_NETEVENT_TYPE_0x1104", + "LH_NETEVENT_TYPE_0x1105", + "LH_NETEVENT_TYPE_0x1106", + "LH_NETEVENT_TYPE_0x1107", + "LH_NETEVENT_TYPE_0x1108", + "LH_NETEVENT_TYPE_0x1109", + "LH_NETEVENT_TYPE_0x110a", + "LH_NETEVENT_TYPE_0x110b", + "LH_NETEVENT_TYPE_0x110c", + "LH_NETEVENT_TYPE_0x110d", + "LH_NETEVENT_TYPE_0x110e", + "LH_NETEVENT_TYPE_0x110f", + "LH_NETEVENT_TYPE_0x1110", + "LH_NETEVENT_TYPE_0x1111", + "LH_NETEVENT_TYPE_0x1112", + "LH_NETEVENT_TYPE_0x1113", + "LH_NETEVENT_TYPE_0x1114", + "LH_NETEVENT_TYPE_0x1115", + "LH_NETEVENT_TYPE_0x1116", + "LH_NETEVENT_TYPE_0x1117", + "LH_NETEVENT_TYPE_0x1118", + "LH_NETEVENT_TYPE_0x1119", + "LH_NETEVENT_TYPE_0x111a", + "LH_NETEVENT_TYPE_0x111b", + "LH_NETEVENT_TYPE_0x111c", + "LH_NETEVENT_TYPE_0x111d", + "LH_NETEVENT_TYPE_0x111e", + "LH_NETEVENT_TYPE_0x111f", + "LH_NETEVENT_TYPE_0x1120", + "LH_NETEVENT_TYPE_0x1121", + "LH_NETEVENT_TYPE_0x1122", + "LH_NETEVENT_TYPE_0x1123", + "LH_NETEVENT_TYPE_0x1124", + "LH_NETEVENT_TYPE_0x1125", + "LH_NETEVENT_TYPE_0x1126", + "LH_NETEVENT_TYPE_0x1127", + "LH_NETEVENT_TYPE_0x1128", + "LH_NETEVENT_TYPE_0x1129", + "LH_NETEVENT_TYPE_0x112a", + "LH_NETEVENT_TYPE_0x112b", + "LH_NETEVENT_TYPE_0x112c", + "LH_NETEVENT_TYPE_0x112d", + "LH_NETEVENT_TYPE_0x112e", + "LH_NETEVENT_TYPE_0x112f", + "LH_NETEVENT_TYPE_0x1130", + "LH_NETEVENT_TYPE_0x1131", + "LH_NETEVENT_TYPE_0x1132", + "LH_NETEVENT_TYPE_0x1133", + "LH_NETEVENT_TYPE_0x1134", + "LH_NETEVENT_TYPE_0x1135", + "LH_NETEVENT_TYPE_0x1136", + "LH_NETEVENT_TYPE_0x1137", + "LH_NETEVENT_TYPE_0x1138", + "LH_NETEVENT_TYPE_0x1139", + "LH_NETEVENT_TYPE_0x113a", + "LH_NETEVENT_TYPE_0x113b", + "LH_NETEVENT_TYPE_0x113c", + "LH_NETEVENT_TYPE_0x113d", + "LH_NETEVENT_TYPE_0x113e", + "LH_NETEVENT_TYPE_0x113f", + "LH_NETEVENT_TYPE_0x1140", + "LH_NETEVENT_TYPE_0x1141", + "LH_NETEVENT_TYPE_0x1142", + "LH_NETEVENT_TYPE_0x1143", + "LH_NETEVENT_TYPE_0x1144", + "LH_NETEVENT_TYPE_0x1145", + "LH_NETEVENT_TYPE_0x1146", + "LH_NETEVENT_TYPE_0x1147", + "LH_NETEVENT_TYPE_0x1148", + "LH_NETEVENT_TYPE_0x1149", + "LH_NETEVENT_TYPE_0x114a", + "LH_NETEVENT_TYPE_0x114b", + "LH_NETEVENT_TYPE_0x114c", + "LH_NETEVENT_TYPE_0x114d", + "LH_NETEVENT_TYPE_0x114e", + "LH_NETEVENT_TYPE_0x114f", + "LH_NETEVENT_TYPE_0x1150", + "LH_NETEVENT_TYPE_0x1151", + "LH_NETEVENT_TYPE_0x1152", + "LH_NETEVENT_TYPE_0x1153", + "LH_NETEVENT_TYPE_0x1154", + "LH_NETEVENT_TYPE_0x1155", + "LH_NETEVENT_TYPE_0x1156", + "LH_NETEVENT_TYPE_0x1157", + "LH_NETEVENT_TYPE_0x1158", + "LH_NETEVENT_TYPE_0x1159", + "LH_NETEVENT_TYPE_0x115a", + "LH_NETEVENT_TYPE_0x115b", + "LH_NETEVENT_TYPE_0x115c", + "LH_NETEVENT_TYPE_0x115d", + "LH_NETEVENT_TYPE_0x115e", + "LH_NETEVENT_TYPE_0x115f", + "LH_NETEVENT_TYPE_0x1160", + "LH_NETEVENT_TYPE_0x1161", + "LH_NETEVENT_TYPE_0x1162", + "LH_NETEVENT_TYPE_0x1163", + "LH_NETEVENT_TYPE_0x1164", + "LH_NETEVENT_TYPE_0x1165", + "LH_NETEVENT_TYPE_0x1166", + "LH_NETEVENT_TYPE_0x1167", + "LH_NETEVENT_TYPE_0x1168", + "LH_NETEVENT_TYPE_0x1169", + "LH_NETEVENT_TYPE_0x116a", + "LH_NETEVENT_TYPE_0x116b", + "LH_NETEVENT_TYPE_0x116c", + "LH_NETEVENT_TYPE_0x116d", + "LH_NETEVENT_TYPE_0x116e", + "LH_NETEVENT_TYPE_0x116f", + "LH_NETEVENT_TYPE_0x1170", + "LH_NETEVENT_TYPE_0x1171", + "LH_NETEVENT_TYPE_0x1172", + "LH_NETEVENT_TYPE_0x1173", + "LH_NETEVENT_TYPE_0x1174", + "LH_NETEVENT_TYPE_0x1175", + "LH_NETEVENT_TYPE_0x1176", + "LH_NETEVENT_TYPE_0x1177", + "LH_NETEVENT_TYPE_0x1178", + "LH_NETEVENT_TYPE_0x1179", + "LH_NETEVENT_TYPE_0x117a", + "LH_NETEVENT_TYPE_0x117b", + "LH_NETEVENT_TYPE_0x117c", + "LH_NETEVENT_TYPE_0x117d", + "LH_NETEVENT_TYPE_0x117e", + "LH_NETEVENT_TYPE_0x117f", + "LH_NETEVENT_TYPE_0x1180", + "LH_NETEVENT_TYPE_0x1181", + "LH_NETEVENT_TYPE_0x1182", + "LH_NETEVENT_TYPE_0x1183", + "LH_NETEVENT_TYPE_0x1184", + "LH_NETEVENT_TYPE_0x1185", + "LH_NETEVENT_TYPE_0x1186", + "LH_NETEVENT_TYPE_0x1187", + "LH_NETEVENT_TYPE_0x1188", + "LH_NETEVENT_TYPE_0x1189", + "LH_NETEVENT_TYPE_0x118a", + "LH_NETEVENT_TYPE_0x118b", + "LH_NETEVENT_TYPE_0x118c", + "LH_NETEVENT_TYPE_0x118d", + "LH_NETEVENT_TYPE_0x118e", + "LH_NETEVENT_TYPE_0x118f", + "LH_NETEVENT_TYPE_0x1190", + "LH_NETEVENT_TYPE_0x1191", + "LH_NETEVENT_TYPE_0x1192", + "LH_NETEVENT_TYPE_0x1193", + "LH_NETEVENT_TYPE_0x1194", + "LH_NETEVENT_TYPE_0x1195", + "LH_NETEVENT_TYPE_0x1196", + "LH_NETEVENT_TYPE_0x1197", + "LH_NETEVENT_TYPE_0x1198", + "LH_NETEVENT_TYPE_0x1199", + "LH_NETEVENT_TYPE_0x119a", + "LH_NETEVENT_TYPE_0x119b", + "LH_NETEVENT_TYPE_0x119c", + "LH_NETEVENT_TYPE_0x119d", + "LH_NETEVENT_TYPE_0x119e", + "LH_NETEVENT_TYPE_0x119f", + "LH_NETEVENT_TYPE_0x11a0", + "LH_NETEVENT_TYPE_0x11a1", + "LH_NETEVENT_TYPE_0x11a2", + "LH_NETEVENT_TYPE_0x11a3", + "LH_NETEVENT_TYPE_0x11a4", + "LH_NETEVENT_TYPE_0x11a5", + "LH_NETEVENT_TYPE_0x11a6", + "LH_NETEVENT_TYPE_0x11a7", + "LH_NETEVENT_TYPE_0x11a8", + "LH_NETEVENT_TYPE_0x11a9", + "LH_NETEVENT_TYPE_0x11aa", + "LH_NETEVENT_TYPE_0x11ab", + "LH_NETEVENT_TYPE_0x11ac", + "LH_NETEVENT_TYPE_0x11ad", + "LH_NETEVENT_TYPE_0x11ae", + "LH_NETEVENT_TYPE_0x11af", + "LH_NETEVENT_TYPE_0x11b0", + "LH_NETEVENT_TYPE_0x11b1", + "LH_NETEVENT_TYPE_0x11b2", + "LH_NETEVENT_TYPE_0x11b3", + "LH_NETEVENT_TYPE_0x11b4", + "LH_NETEVENT_TYPE_0x11b5", + "LH_NETEVENT_TYPE_0x11b6", + "LH_NETEVENT_TYPE_0x11b7", + "LH_NETEVENT_TYPE_0x11b8", + "LH_NETEVENT_TYPE_0x11b9", + "LH_NETEVENT_TYPE_0x11ba", + "LH_NETEVENT_TYPE_0x11bb", + "LH_NETEVENT_TYPE_0x11bc", + "LH_NETEVENT_TYPE_0x11bd", + "LH_NETEVENT_TYPE_0x11be", + "LH_NETEVENT_TYPE_0x11bf", + "LH_NETEVENT_TYPE_0x11c0", + "LH_NETEVENT_TYPE_0x11c1", + "LH_NETEVENT_TYPE_0x11c2", + "LH_NETEVENT_TYPE_0x11c3", + "LH_NETEVENT_TYPE_0x11c4", + "LH_NETEVENT_TYPE_0x11c5", + "LH_NETEVENT_TYPE_0x11c6", + "LH_NETEVENT_TYPE_0x11c7", + "LH_NETEVENT_TYPE_0x11c8", + "LH_NETEVENT_TYPE_0x11c9", + "LH_NETEVENT_TYPE_0x11ca", + "LH_NETEVENT_TYPE_0x11cb", + "LH_NETEVENT_TYPE_0x11cc", + "LH_NETEVENT_TYPE_0x11cd", + "LH_NETEVENT_TYPE_0x11ce", + "LH_NETEVENT_TYPE_0x11cf", + "LH_NETEVENT_TYPE_0x11d0", + "LH_NETEVENT_TYPE_0x11d1", + "LH_NETEVENT_TYPE_0x11d2", + "LH_NETEVENT_TYPE_0x11d3", + "LH_NETEVENT_TYPE_0x11d4", + "LH_NETEVENT_TYPE_0x11d5", + "LH_NETEVENT_TYPE_0x11d6", + "LH_NETEVENT_TYPE_0x11d7", + "LH_NETEVENT_TYPE_0x11d8", + "LH_NETEVENT_TYPE_0x11d9", + "LH_NETEVENT_TYPE_0x11da", + "LH_NETEVENT_TYPE_0x11db", + "LH_NETEVENT_TYPE_0x11dc", + "LH_NETEVENT_TYPE_0x11dd", + "LH_NETEVENT_TYPE_0x11de", + "LH_NETEVENT_TYPE_0x11df", + "LH_NETEVENT_TYPE_0x11e0", + "LH_NETEVENT_TYPE_0x11e1", + "LH_NETEVENT_TYPE_0x11e2", + "LH_NETEVENT_TYPE_0x11e3", + "LH_NETEVENT_TYPE_0x11e4", + "LH_NETEVENT_TYPE_0x11e5", + "LH_NETEVENT_TYPE_0x11e6", + "LH_NETEVENT_TYPE_0x11e7", + "LH_NETEVENT_TYPE_0x11e8", + "LH_NETEVENT_TYPE_0x11e9", + "LH_NETEVENT_TYPE_0x11ea", + "LH_NETEVENT_TYPE_0x11eb", + "LH_NETEVENT_TYPE_0x11ec", + "LH_NETEVENT_TYPE_0x11ed", + "LH_NETEVENT_TYPE_0x11ee", + "LH_NETEVENT_TYPE_0x11ef", + "LH_NETEVENT_TYPE_0x11f0", + "LH_NETEVENT_TYPE_0x11f1", + "LH_NETEVENT_TYPE_0x11f2", + "LH_NETEVENT_TYPE_0x11f3", + "LH_NETEVENT_TYPE_0x11f4", + "LH_NETEVENT_TYPE_0x11f5", + "LH_NETEVENT_TYPE_0x11f6", + "LH_NETEVENT_TYPE_0x11f7", + "LH_NETEVENT_TYPE_0x11f8", + "LH_NETEVENT_TYPE_0x11f9", + "LH_NETEVENT_TYPE_0x11fa", + "LH_NETEVENT_TYPE_0x11fb", + "LH_NETEVENT_TYPE_0x11fc", + "LH_NETEVENT_TYPE_0x11fd", + "LH_NETEVENT_TYPE_0x11fe", + "LH_NETEVENT_TYPE_0x11ff", + "LH_NETEVENT_TYPE_0x1200", + "LH_NETEVENT_TYPE_0x1201", + "LH_NETEVENT_TYPE_0x1202", + "LH_NETEVENT_TYPE_0x1203", + "LH_NETEVENT_TYPE_0x1204", + "LH_NETEVENT_TYPE_0x1205", + "LH_NETEVENT_TYPE_0x1206", + "LH_NETEVENT_TYPE_0x1207", + "LH_NETEVENT_TYPE_0x1208", + "LH_NETEVENT_TYPE_0x1209", + "LH_NETEVENT_TYPE_0x120a", + "LH_NETEVENT_TYPE_0x120b", + "LH_NETEVENT_TYPE_0x120c", + "LH_NETEVENT_TYPE_0x120d", + "LH_NETEVENT_TYPE_0x120e", + "LH_NETEVENT_TYPE_0x120f", + "LH_NETEVENT_TYPE_0x1210", + "LH_NETEVENT_TYPE_0x1211", + "LH_NETEVENT_TYPE_0x1212", + "LH_NETEVENT_TYPE_0x1213", + "LH_NETEVENT_TYPE_0x1214", + "LH_NETEVENT_TYPE_0x1215", + "LH_NETEVENT_TYPE_0x1216", + "LH_NETEVENT_TYPE_0x1217", + "LH_NETEVENT_TYPE_0x1218", + "LH_NETEVENT_TYPE_0x1219", + "LH_NETEVENT_TYPE_0x121a", + "LH_NETEVENT_TYPE_0x121b", + "LH_NETEVENT_TYPE_0x121c", + "LH_NETEVENT_TYPE_0x121d", + "LH_NETEVENT_TYPE_0x121e", + "LH_NETEVENT_TYPE_0x121f", + "LH_NETEVENT_TYPE_0x1220", + "LH_NETEVENT_TYPE_0x1221", + "LH_NETEVENT_TYPE_0x1222", + "LH_NETEVENT_TYPE_0x1223", + "LH_NETEVENT_TYPE_0x1224", + "LH_NETEVENT_TYPE_0x1225", + "LH_NETEVENT_TYPE_0x1226", + "LH_NETEVENT_TYPE_0x1227", + "LH_NETEVENT_TYPE_0x1228", + "LH_NETEVENT_TYPE_0x1229", + "LH_NETEVENT_TYPE_0x122a", + "LH_NETEVENT_TYPE_0x122b", + "LH_NETEVENT_TYPE_0x122c", + "LH_NETEVENT_TYPE_0x122d", + "LH_NETEVENT_TYPE_0x122e", + "LH_NETEVENT_TYPE_0x122f", + "LH_NETEVENT_TYPE_0x1230", + "LH_NETEVENT_TYPE_0x1231", + "LH_NETEVENT_TYPE_0x1232", + "LH_NETEVENT_TYPE_0x1233", + "LH_NETEVENT_TYPE_0x1234", + "LH_NETEVENT_TYPE_0x1235", + "LH_NETEVENT_TYPE_0x1236", + "LH_NETEVENT_TYPE_0x1237", + "LH_NETEVENT_TYPE_0x1238", + "LH_NETEVENT_TYPE_0x1239", + "LH_NETEVENT_TYPE_0x123a", + "LH_NETEVENT_TYPE_0x123b", + "LH_NETEVENT_TYPE_0x123c", + "LH_NETEVENT_TYPE_0x123d", + "LH_NETEVENT_TYPE_0x123e", + "LH_NETEVENT_TYPE_0x123f", + "LH_NETEVENT_TYPE_0x1240", + "LH_NETEVENT_TYPE_0x1241", + "LH_NETEVENT_TYPE_0x1242", + "LH_NETEVENT_TYPE_0x1243", + "LH_NETEVENT_TYPE_0x1244", + "LH_NETEVENT_TYPE_0x1245", + "LH_NETEVENT_TYPE_0x1246", + "LH_NETEVENT_TYPE_0x1247", + "LH_NETEVENT_TYPE_0x1248", + "LH_NETEVENT_TYPE_0x1249", + "LH_NETEVENT_TYPE_0x124a", + "LH_NETEVENT_TYPE_0x124b", + "LH_NETEVENT_TYPE_0x124c", + "LH_NETEVENT_TYPE_0x124d", + "LH_NETEVENT_TYPE_0x124e", + "LH_NETEVENT_TYPE_0x124f", + "LH_NETEVENT_TYPE_0x1250", + "LH_NETEVENT_TYPE_0x1251", + "LH_NETEVENT_TYPE_0x1252", + "LH_NETEVENT_TYPE_0x1253", + "LH_NETEVENT_TYPE_0x1254", + "LH_NETEVENT_TYPE_0x1255", + "LH_NETEVENT_TYPE_0x1256", + "LH_NETEVENT_TYPE_0x1257", + "LH_NETEVENT_TYPE_0x1258", + "LH_NETEVENT_TYPE_0x1259", + "LH_NETEVENT_TYPE_0x125a", + "LH_NETEVENT_TYPE_0x125b", + "LH_NETEVENT_TYPE_0x125c", + "LH_NETEVENT_TYPE_0x125d", + "LH_NETEVENT_TYPE_0x125e", + "LH_NETEVENT_TYPE_0x125f", + "LH_NETEVENT_TYPE_0x1260", + "LH_NETEVENT_TYPE_0x1261", + "LH_NETEVENT_TYPE_0x1262", + "LH_NETEVENT_TYPE_0x1263", + "LH_NETEVENT_TYPE_0x1264", + "LH_NETEVENT_TYPE_0x1265", + "LH_NETEVENT_TYPE_0x1266", + "LH_NETEVENT_TYPE_0x1267", + "LH_NETEVENT_TYPE_0x1268", + "LH_NETEVENT_TYPE_0x1269", + "LH_NETEVENT_TYPE_0x126a", + "LH_NETEVENT_TYPE_0x126b", + "LH_NETEVENT_TYPE_0x126c", + "LH_NETEVENT_TYPE_0x126d", + "LH_NETEVENT_TYPE_0x126e", + "LH_NETEVENT_TYPE_0x126f", + "LH_NETEVENT_TYPE_0x1270", + "LH_NETEVENT_TYPE_0x1271", + "LH_NETEVENT_TYPE_0x1272", + "LH_NETEVENT_TYPE_0x1273", + "LH_NETEVENT_TYPE_0x1274", + "LH_NETEVENT_TYPE_0x1275", + "LH_NETEVENT_TYPE_0x1276", + "LH_NETEVENT_TYPE_0x1277", + "LH_NETEVENT_TYPE_0x1278", + "LH_NETEVENT_TYPE_0x1279", + "LH_NETEVENT_TYPE_0x127a", + "LH_NETEVENT_TYPE_0x127b", + "LH_NETEVENT_TYPE_0x127c", + "LH_NETEVENT_TYPE_0x127d", + "LH_NETEVENT_TYPE_0x127e", + "LH_NETEVENT_TYPE_0x127f", + "LH_NETEVENT_TYPE_0x1280", + "LH_NETEVENT_TYPE_0x1281", + "LH_NETEVENT_TYPE_0x1282", + "LH_NETEVENT_TYPE_0x1283", + "LH_NETEVENT_TYPE_0x1284", + "LH_NETEVENT_TYPE_0x1285", + "LH_NETEVENT_TYPE_0x1286", + "LH_NETEVENT_TYPE_0x1287", + "LH_NETEVENT_TYPE_0x1288", + "LH_NETEVENT_TYPE_0x1289", + "LH_NETEVENT_TYPE_0x128a", + "LH_NETEVENT_TYPE_0x128b", + "LH_NETEVENT_TYPE_0x128c", + "LH_NETEVENT_TYPE_0x128d", + "LH_NETEVENT_TYPE_0x128e", + "LH_NETEVENT_TYPE_0x128f", + "LH_NETEVENT_TYPE_0x1290", + "LH_NETEVENT_TYPE_0x1291", + "LH_NETEVENT_TYPE_0x1292", + "LH_NETEVENT_TYPE_0x1293", + "LH_NETEVENT_TYPE_0x1294", + "LH_NETEVENT_TYPE_0x1295", + "LH_NETEVENT_TYPE_0x1296", + "LH_NETEVENT_TYPE_0x1297", + "LH_NETEVENT_TYPE_0x1298", + "LH_NETEVENT_TYPE_0x1299", + "LH_NETEVENT_TYPE_0x129a", + "LH_NETEVENT_TYPE_0x129b", + "LH_NETEVENT_TYPE_0x129c", + "LH_NETEVENT_TYPE_0x129d", + "LH_NETEVENT_TYPE_0x129e", + "LH_NETEVENT_TYPE_0x129f", + "LH_NETEVENT_TYPE_0x12a0", + "LH_NETEVENT_TYPE_0x12a1", + "LH_NETEVENT_TYPE_0x12a2", + "LH_NETEVENT_TYPE_0x12a3", + "LH_NETEVENT_TYPE_0x12a4", + "LH_NETEVENT_TYPE_0x12a5", + "LH_NETEVENT_TYPE_0x12a6", + "LH_NETEVENT_TYPE_0x12a7", + "LH_NETEVENT_TYPE_0x12a8", + "LH_NETEVENT_TYPE_0x12a9", + "LH_NETEVENT_TYPE_0x12aa", + "LH_NETEVENT_TYPE_0x12ab", + "LH_NETEVENT_TYPE_0x12ac", + "LH_NETEVENT_TYPE_0x12ad", + "LH_NETEVENT_TYPE_0x12ae", + "LH_NETEVENT_TYPE_0x12af", + "LH_NETEVENT_TYPE_0x12b0", + "LH_NETEVENT_TYPE_0x12b1", + "LH_NETEVENT_TYPE_0x12b2", + "LH_NETEVENT_TYPE_0x12b3", + "LH_NETEVENT_TYPE_0x12b4", + "LH_NETEVENT_TYPE_0x12b5", + "LH_NETEVENT_TYPE_0x12b6", + "LH_NETEVENT_TYPE_0x12b7", + "LH_NETEVENT_TYPE_0x12b8", + "LH_NETEVENT_TYPE_0x12b9", + "LH_NETEVENT_TYPE_0x12ba", + "LH_NETEVENT_TYPE_0x12bb", + "LH_NETEVENT_TYPE_0x12bc", + "LH_NETEVENT_TYPE_0x12bd", + "LH_NETEVENT_TYPE_0x12be", + "LH_NETEVENT_TYPE_0x12bf", + "LH_NETEVENT_TYPE_0x12c0", + "LH_NETEVENT_TYPE_0x12c1", + "LH_NETEVENT_TYPE_0x12c2", + "LH_NETEVENT_TYPE_0x12c3", + "LH_NETEVENT_TYPE_0x12c4", + "LH_NETEVENT_TYPE_0x12c5", + "LH_NETEVENT_TYPE_0x12c6", + "LH_NETEVENT_TYPE_0x12c7", + "LH_NETEVENT_TYPE_0x12c8", + "LH_NETEVENT_TYPE_0x12c9", + "LH_NETEVENT_TYPE_0x12ca", + "LH_NETEVENT_TYPE_0x12cb", + "LH_NETEVENT_TYPE_0x12cc", + "LH_NETEVENT_TYPE_0x12cd", + "LH_NETEVENT_TYPE_0x12ce", + "LH_NETEVENT_TYPE_0x12cf", + "LH_NETEVENT_TYPE_0x12d0", + "LH_NETEVENT_TYPE_0x12d1", + "LH_NETEVENT_TYPE_0x12d2", + "LH_NETEVENT_TYPE_0x12d3", + "LH_NETEVENT_TYPE_0x12d4", + "LH_NETEVENT_TYPE_0x12d5", + "LH_NETEVENT_TYPE_0x12d6", + "LH_NETEVENT_TYPE_0x12d7", + "LH_NETEVENT_TYPE_0x12d8", + "LH_NETEVENT_TYPE_0x12d9", + "LH_NETEVENT_TYPE_0x12da", + "LH_NETEVENT_TYPE_0x12db", + "LH_NETEVENT_TYPE_0x12dc", + "LH_NETEVENT_TYPE_0x12dd", + "LH_NETEVENT_TYPE_0x12de", + "LH_NETEVENT_TYPE_0x12df", + "LH_NETEVENT_TYPE_0x12e0", + "LH_NETEVENT_TYPE_0x12e1", + "LH_NETEVENT_TYPE_0x12e2", + "LH_NETEVENT_TYPE_0x12e3", + "LH_NETEVENT_TYPE_0x12e4", + "LH_NETEVENT_TYPE_0x12e5", + "LH_NETEVENT_TYPE_0x12e6", + "LH_NETEVENT_TYPE_0x12e7", + "LH_NETEVENT_TYPE_0x12e8", + "LH_NETEVENT_TYPE_0x12e9", + "LH_NETEVENT_TYPE_0x12ea", + "LH_NETEVENT_TYPE_0x12eb", + "LH_NETEVENT_TYPE_0x12ec", + "LH_NETEVENT_TYPE_0x12ed", + "LH_NETEVENT_TYPE_0x12ee", + "LH_NETEVENT_TYPE_0x12ef", + "LH_NETEVENT_TYPE_0x12f0", + "LH_NETEVENT_TYPE_0x12f1", + "LH_NETEVENT_TYPE_0x12f2", + "LH_NETEVENT_TYPE_0x12f3", + "LH_NETEVENT_TYPE_0x12f4", + "LH_NETEVENT_TYPE_0x12f5", + "LH_NETEVENT_TYPE_0x12f6", + "LH_NETEVENT_TYPE_0x12f7", + "LH_NETEVENT_TYPE_0x12f8", + "LH_NETEVENT_TYPE_0x12f9", + "LH_NETEVENT_TYPE_0x12fa", + "LH_NETEVENT_TYPE_0x12fb", + "LH_NETEVENT_TYPE_0x12fc", + "LH_NETEVENT_TYPE_0x12fd", + "LH_NETEVENT_TYPE_0x12fe", + "LH_NETEVENT_TYPE_0x12ff", + "LH_NETEVENT_TYPE_0x1300", + "LH_NETEVENT_TYPE_0x1301", + "LH_NETEVENT_TYPE_0x1302", + "LH_NETEVENT_TYPE_0x1303", + "LH_NETEVENT_TYPE_0x1304", + "LH_NETEVENT_TYPE_0x1305", + "LH_NETEVENT_TYPE_0x1306", + "LH_NETEVENT_TYPE_0x1307", + "LH_NETEVENT_TYPE_0x1308", + "LH_NETEVENT_TYPE_0x1309", + "LH_NETEVENT_TYPE_0x130a", + "LH_NETEVENT_TYPE_0x130b", + "LH_NETEVENT_TYPE_0x130c", + "LH_NETEVENT_TYPE_0x130d", + "LH_NETEVENT_TYPE_0x130e", + "LH_NETEVENT_TYPE_0x130f", + "LH_NETEVENT_TYPE_0x1310", + "LH_NETEVENT_TYPE_0x1311", + "LH_NETEVENT_TYPE_0x1312", + "LH_NETEVENT_TYPE_0x1313", + "LH_NETEVENT_TYPE_0x1314", + "LH_NETEVENT_TYPE_0x1315", + "LH_NETEVENT_TYPE_0x1316", + "LH_NETEVENT_TYPE_0x1317", + "LH_NETEVENT_TYPE_0x1318", + "LH_NETEVENT_TYPE_0x1319", + "LH_NETEVENT_TYPE_0x131a", + "LH_NETEVENT_TYPE_0x131b", + "LH_NETEVENT_TYPE_0x131c", + "LH_NETEVENT_TYPE_0x131d", + "LH_NETEVENT_TYPE_0x131e", + "LH_NETEVENT_TYPE_0x131f", + "LH_NETEVENT_TYPE_0x1320", + "LH_NETEVENT_TYPE_0x1321", + "LH_NETEVENT_TYPE_0x1322", + "LH_NETEVENT_TYPE_0x1323", + "LH_NETEVENT_TYPE_0x1324", + "LH_NETEVENT_TYPE_0x1325", + "LH_NETEVENT_TYPE_0x1326", + "LH_NETEVENT_TYPE_0x1327", + "LH_NETEVENT_TYPE_0x1328", + "LH_NETEVENT_TYPE_0x1329", + "LH_NETEVENT_TYPE_0x132a", + "LH_NETEVENT_TYPE_0x132b", + "LH_NETEVENT_TYPE_0x132c", + "LH_NETEVENT_TYPE_0x132d", + "LH_NETEVENT_TYPE_0x132e", + "LH_NETEVENT_TYPE_0x132f", + "LH_NETEVENT_TYPE_0x1330", + "LH_NETEVENT_TYPE_0x1331", + "LH_NETEVENT_TYPE_0x1332", + "LH_NETEVENT_TYPE_0x1333", + "LH_NETEVENT_TYPE_0x1334", + "LH_NETEVENT_TYPE_0x1335", + "LH_NETEVENT_TYPE_0x1336", + "LH_NETEVENT_TYPE_0x1337", + "LH_NETEVENT_TYPE_0x1338", + "LH_NETEVENT_TYPE_0x1339", + "LH_NETEVENT_TYPE_0x133a", + "LH_NETEVENT_TYPE_0x133b", + "LH_NETEVENT_TYPE_0x133c", + "LH_NETEVENT_TYPE_0x133d", + "LH_NETEVENT_TYPE_0x133e", + "LH_NETEVENT_TYPE_0x133f", + "LH_NETEVENT_TYPE_0x1340", + "LH_NETEVENT_TYPE_0x1341", + "LH_NETEVENT_TYPE_0x1342", + "LH_NETEVENT_TYPE_0x1343", + "LH_NETEVENT_TYPE_0x1344", + "LH_NETEVENT_TYPE_0x1345", + "LH_NETEVENT_TYPE_0x1346", + "LH_NETEVENT_TYPE_0x1347", + "LH_NETEVENT_TYPE_0x1348", + "LH_NETEVENT_TYPE_0x1349", + "LH_NETEVENT_TYPE_0x134a", + "LH_NETEVENT_TYPE_0x134b", + "LH_NETEVENT_TYPE_0x134c", + "LH_NETEVENT_TYPE_0x134d", + "LH_NETEVENT_TYPE_0x134e", + "LH_NETEVENT_TYPE_0x134f", + "LH_NETEVENT_TYPE_0x1350", + "LH_NETEVENT_TYPE_0x1351", + "LH_NETEVENT_TYPE_0x1352", + "LH_NETEVENT_TYPE_0x1353", + "LH_NETEVENT_TYPE_0x1354", + "LH_NETEVENT_TYPE_0x1355", + "LH_NETEVENT_TYPE_0x1356", + "LH_NETEVENT_TYPE_0x1357", + "LH_NETEVENT_TYPE_0x1358", + "LH_NETEVENT_TYPE_0x1359", + "LH_NETEVENT_TYPE_0x135a", + "LH_NETEVENT_TYPE_0x135b", + "LH_NETEVENT_TYPE_0x135c", + "LH_NETEVENT_TYPE_0x135d", + "LH_NETEVENT_TYPE_0x135e", + "LH_NETEVENT_TYPE_0x135f", + "LH_NETEVENT_TYPE_0x1360", + "LH_NETEVENT_TYPE_0x1361", + "LH_NETEVENT_TYPE_0x1362", + "LH_NETEVENT_TYPE_0x1363", + "LH_NETEVENT_TYPE_0x1364", + "LH_NETEVENT_TYPE_0x1365", + "LH_NETEVENT_TYPE_0x1366", + "LH_NETEVENT_TYPE_0x1367", + "LH_NETEVENT_TYPE_0x1368", + "LH_NETEVENT_TYPE_0x1369", + "LH_NETEVENT_TYPE_0x136a", + "LH_NETEVENT_TYPE_0x136b", + "LH_NETEVENT_TYPE_0x136c", + "LH_NETEVENT_TYPE_0x136d", + "LH_NETEVENT_TYPE_0x136e", + "LH_NETEVENT_TYPE_0x136f", + "LH_NETEVENT_TYPE_0x1370", + "LH_NETEVENT_TYPE_0x1371", + "LH_NETEVENT_TYPE_0x1372", + "LH_NETEVENT_TYPE_0x1373", + "LH_NETEVENT_TYPE_0x1374", + "LH_NETEVENT_TYPE_0x1375", + "LH_NETEVENT_TYPE_0x1376", + "LH_NETEVENT_TYPE_0x1377", + "LH_NETEVENT_TYPE_0x1378", + "LH_NETEVENT_TYPE_0x1379", + "LH_NETEVENT_TYPE_0x137a", + "LH_NETEVENT_TYPE_0x137b", + "LH_NETEVENT_TYPE_0x137c", + "LH_NETEVENT_TYPE_0x137d", + "LH_NETEVENT_TYPE_0x137e", + "LH_NETEVENT_TYPE_0x137f", + "LH_NETEVENT_TYPE_0x1380", + "LH_NETEVENT_TYPE_0x1381", + "LH_NETEVENT_TYPE_0x1382", + "LH_NETEVENT_TYPE_0x1383", + "LH_NETEVENT_TYPE_0x1384", + "LH_NETEVENT_TYPE_0x1385", + "LH_NETEVENT_TYPE_0x1386", + "LH_NETEVENT_TYPE_0x1387", + "LH_NETEVENT_TYPE_0x1388", + "LH_NETEVENT_TYPE_0x1389", + "LH_NETEVENT_TYPE_0x138a", + "LH_NETEVENT_TYPE_0x138b", + "LH_NETEVENT_TYPE_0x138c", + "LH_NETEVENT_TYPE_0x138d", + "LH_NETEVENT_TYPE_0x138e", + "LH_NETEVENT_TYPE_0x138f", + "LH_NETEVENT_TYPE_0x1390", + "LH_NETEVENT_TYPE_0x1391", + "LH_NETEVENT_TYPE_0x1392", + "LH_NETEVENT_TYPE_0x1393", + "LH_NETEVENT_TYPE_0x1394", + "LH_NETEVENT_TYPE_0x1395", + "LH_NETEVENT_TYPE_0x1396", + "LH_NETEVENT_TYPE_0x1397", + "LH_NETEVENT_TYPE_0x1398", + "LH_NETEVENT_TYPE_0x1399", + "LH_NETEVENT_TYPE_0x139a", + "LH_NETEVENT_TYPE_0x139b", + "LH_NETEVENT_TYPE_0x139c", + "LH_NETEVENT_TYPE_0x139d", + "LH_NETEVENT_TYPE_0x139e", + "LH_NETEVENT_TYPE_0x139f", + "LH_NETEVENT_TYPE_0x13a0", + "LH_NETEVENT_TYPE_0x13a1", + "LH_NETEVENT_TYPE_0x13a2", + "LH_NETEVENT_TYPE_0x13a3", + "LH_NETEVENT_TYPE_0x13a4", + "LH_NETEVENT_TYPE_0x13a5", + "LH_NETEVENT_TYPE_0x13a6", + "LH_NETEVENT_TYPE_0x13a7", + "LH_NETEVENT_TYPE_0x13a8", + "LH_NETEVENT_TYPE_0x13a9", + "LH_NETEVENT_TYPE_0x13aa", + "LH_NETEVENT_TYPE_0x13ab", + "LH_NETEVENT_TYPE_0x13ac", + "LH_NETEVENT_TYPE_0x13ad", + "LH_NETEVENT_TYPE_0x13ae", + "LH_NETEVENT_TYPE_0x13af", + "LH_NETEVENT_TYPE_0x13b0", + "LH_NETEVENT_TYPE_0x13b1", + "LH_NETEVENT_TYPE_0x13b2", + "LH_NETEVENT_TYPE_0x13b3", + "LH_NETEVENT_TYPE_0x13b4", + "LH_NETEVENT_TYPE_0x13b5", + "LH_NETEVENT_TYPE_0x13b6", + "LH_NETEVENT_TYPE_0x13b7", + "LH_NETEVENT_TYPE_0x13b8", + "LH_NETEVENT_TYPE_0x13b9", + "LH_NETEVENT_TYPE_0x13ba", + "LH_NETEVENT_TYPE_0x13bb", + "LH_NETEVENT_TYPE_0x13bc", + "LH_NETEVENT_TYPE_0x13bd", + "LH_NETEVENT_TYPE_0x13be", + "LH_NETEVENT_TYPE_0x13bf", + "LH_NETEVENT_TYPE_0x13c0", + "LH_NETEVENT_TYPE_0x13c1", + "LH_NETEVENT_TYPE_0x13c2", + "LH_NETEVENT_TYPE_0x13c3", + "LH_NETEVENT_TYPE_0x13c4", + "LH_NETEVENT_TYPE_0x13c5", + "LH_NETEVENT_TYPE_0x13c6", + "LH_NETEVENT_TYPE_0x13c7", + "LH_NETEVENT_TYPE_0x13c8", + "LH_NETEVENT_TYPE_0x13c9", + "LH_NETEVENT_TYPE_0x13ca", + "LH_NETEVENT_TYPE_0x13cb", + "LH_NETEVENT_TYPE_0x13cc", + "LH_NETEVENT_TYPE_0x13cd", + "LH_NETEVENT_TYPE_0x13ce", + "LH_NETEVENT_TYPE_0x13cf", + "LH_NETEVENT_TYPE_0x13d0", + "LH_NETEVENT_TYPE_0x13d1", + "LH_NETEVENT_TYPE_0x13d2", + "LH_NETEVENT_TYPE_0x13d3", + "LH_NETEVENT_TYPE_0x13d4", + "LH_NETEVENT_TYPE_0x13d5", + "LH_NETEVENT_TYPE_0x13d6", + "LH_NETEVENT_TYPE_0x13d7", + "LH_NETEVENT_TYPE_0x13d8", + "LH_NETEVENT_TYPE_0x13d9", + "LH_NETEVENT_TYPE_0x13da", + "LH_NETEVENT_TYPE_0x13db", + "LH_NETEVENT_TYPE_0x13dc", + "LH_NETEVENT_TYPE_0x13dd", + "LH_NETEVENT_TYPE_0x13de", + "LH_NETEVENT_TYPE_0x13df", + "LH_NETEVENT_TYPE_0x13e0", + "LH_NETEVENT_TYPE_0x13e1", + "LH_NETEVENT_TYPE_0x13e2", + "LH_NETEVENT_TYPE_0x13e3", + "LH_NETEVENT_TYPE_0x13e4", + "LH_NETEVENT_TYPE_0x13e5", + "LH_NETEVENT_TYPE_0x13e6", + "LH_NETEVENT_TYPE_0x13e7", + "LH_NETEVENT_TYPE_0x13e8", + "LH_NETEVENT_TYPE_0x13e9", + "LH_NETEVENT_TYPE_0x13ea", + "LH_NETEVENT_TYPE_0x13eb", + "LH_NETEVENT_TYPE_0x13ec", + "LH_NETEVENT_TYPE_0x13ed", + "LH_NETEVENT_TYPE_0x13ee", + "LH_NETEVENT_TYPE_0x13ef", + "LH_NETEVENT_TYPE_0x13f0", + "LH_NETEVENT_TYPE_0x13f1", + "LH_NETEVENT_TYPE_0x13f2", + "LH_NETEVENT_TYPE_0x13f3", + "LH_NETEVENT_TYPE_0x13f4", + "LH_NETEVENT_TYPE_0x13f5", + "LH_NETEVENT_TYPE_0x13f6", + "LH_NETEVENT_TYPE_0x13f7", + "LH_NETEVENT_TYPE_0x13f8", + "LH_NETEVENT_TYPE_0x13f9", + "LH_NETEVENT_TYPE_0x13fa", + "LH_NETEVENT_TYPE_0x13fb", + "LH_NETEVENT_TYPE_0x13fc", + "LH_NETEVENT_TYPE_0x13fd", + "LH_NETEVENT_TYPE_0x13fe", + "LH_NETEVENT_TYPE_0x13ff", + "LH_NETEVENT_TYPE_0x1400", + "LH_NETEVENT_TYPE_0x1401", + "LH_NETEVENT_TYPE_0x1402", + "LH_NETEVENT_TYPE_0x1403", + "LH_NETEVENT_TYPE_0x1404", + "LH_NETEVENT_TYPE_0x1405", + "LH_NETEVENT_TYPE_0x1406", + "LH_NETEVENT_TYPE_0x1407", + "LH_NETEVENT_TYPE_0x1408", + "LH_NETEVENT_TYPE_0x1409", + "LH_NETEVENT_TYPE_0x140a", + "LH_NETEVENT_TYPE_0x140b", + "LH_NETEVENT_TYPE_0x140c", + "LH_NETEVENT_TYPE_0x140d", + "LH_NETEVENT_TYPE_0x140e", + "LH_NETEVENT_TYPE_0x140f", + "LH_NETEVENT_TYPE_0x1410", + "LH_NETEVENT_TYPE_0x1411", + "LH_NETEVENT_TYPE_0x1412", + "LH_NETEVENT_TYPE_0x1413", + "LH_NETEVENT_TYPE_0x1414", + "LH_NETEVENT_TYPE_0x1415", + "LH_NETEVENT_TYPE_0x1416", + "LH_NETEVENT_TYPE_0x1417", + "LH_NETEVENT_TYPE_0x1418", + "LH_NETEVENT_TYPE_0x1419", + "LH_NETEVENT_TYPE_0x141a", + "LH_NETEVENT_TYPE_0x141b", + "LH_NETEVENT_TYPE_0x141c", + "LH_NETEVENT_TYPE_0x141d", + "LH_NETEVENT_TYPE_0x141e", + "LH_NETEVENT_TYPE_0x141f", + "LH_NETEVENT_TYPE_0x1420", + "LH_NETEVENT_TYPE_0x1421", + "LH_NETEVENT_TYPE_0x1422", + "LH_NETEVENT_TYPE_0x1423", + "LH_NETEVENT_TYPE_0x1424", + "LH_NETEVENT_TYPE_0x1425", + "LH_NETEVENT_TYPE_0x1426", + "LH_NETEVENT_TYPE_0x1427", + "LH_NETEVENT_TYPE_0x1428", + "LH_NETEVENT_TYPE_0x1429", + "LH_NETEVENT_TYPE_0x142a", + "LH_NETEVENT_TYPE_0x142b", + "LH_NETEVENT_TYPE_0x142c", + "LH_NETEVENT_TYPE_0x142d", + "LH_NETEVENT_TYPE_0x142e", + "LH_NETEVENT_TYPE_0x142f", + "LH_NETEVENT_TYPE_0x1430", + "LH_NETEVENT_TYPE_0x1431", + "LH_NETEVENT_TYPE_0x1432", + "LH_NETEVENT_TYPE_0x1433", + "LH_NETEVENT_TYPE_0x1434", + "LH_NETEVENT_TYPE_0x1435", + "LH_NETEVENT_TYPE_0x1436", + "LH_NETEVENT_TYPE_0x1437", + "LH_NETEVENT_TYPE_0x1438", + "LH_NETEVENT_TYPE_0x1439", + "LH_NETEVENT_TYPE_0x143a", + "LH_NETEVENT_TYPE_0x143b", + "LH_NETEVENT_TYPE_0x143c", + "LH_NETEVENT_TYPE_0x143d", + "LH_NETEVENT_TYPE_0x143e", + "LH_NETEVENT_TYPE_0x143f", + "LH_NETEVENT_TYPE_0x1440", + "LH_NETEVENT_TYPE_0x1441", + "LH_NETEVENT_TYPE_0x1442", + "LH_NETEVENT_TYPE_0x1443", + "LH_NETEVENT_TYPE_0x1444", + "LH_NETEVENT_TYPE_0x1445", + "LH_NETEVENT_TYPE_0x1446", + "LH_NETEVENT_TYPE_0x1447", + "LH_NETEVENT_TYPE_0x1448", + "LH_NETEVENT_TYPE_0x1449", + "LH_NETEVENT_TYPE_0x144a", + "LH_NETEVENT_TYPE_0x144b", + "LH_NETEVENT_TYPE_0x144c", + "LH_NETEVENT_TYPE_0x144d", + "LH_NETEVENT_TYPE_0x144e", + "LH_NETEVENT_TYPE_0x144f", + "LH_NETEVENT_TYPE_0x1450", + "LH_NETEVENT_TYPE_0x1451", + "LH_NETEVENT_TYPE_0x1452", + "LH_NETEVENT_TYPE_0x1453", + "LH_NETEVENT_TYPE_0x1454", + "LH_NETEVENT_TYPE_0x1455", + "LH_NETEVENT_TYPE_0x1456", + "LH_NETEVENT_TYPE_0x1457", + "LH_NETEVENT_TYPE_0x1458", + "LH_NETEVENT_TYPE_0x1459", + "LH_NETEVENT_TYPE_0x145a", + "LH_NETEVENT_TYPE_0x145b", + "LH_NETEVENT_TYPE_0x145c", + "LH_NETEVENT_TYPE_0x145d", + "LH_NETEVENT_TYPE_0x145e", + "LH_NETEVENT_TYPE_0x145f", + "LH_NETEVENT_TYPE_0x1460", + "LH_NETEVENT_TYPE_0x1461", + "LH_NETEVENT_TYPE_0x1462", + "LH_NETEVENT_TYPE_0x1463", + "LH_NETEVENT_TYPE_0x1464", + "LH_NETEVENT_TYPE_0x1465", + "LH_NETEVENT_TYPE_0x1466", + "LH_NETEVENT_TYPE_0x1467", + "LH_NETEVENT_TYPE_0x1468", + "LH_NETEVENT_TYPE_0x1469", + "LH_NETEVENT_TYPE_0x146a", + "LH_NETEVENT_TYPE_0x146b", + "LH_NETEVENT_TYPE_0x146c", + "LH_NETEVENT_TYPE_0x146d", + "LH_NETEVENT_TYPE_0x146e", + "LH_NETEVENT_TYPE_0x146f", + "LH_NETEVENT_TYPE_0x1470", + "LH_NETEVENT_TYPE_0x1471", + "LH_NETEVENT_TYPE_0x1472", + "LH_NETEVENT_TYPE_0x1473", + "LH_NETEVENT_TYPE_0x1474", + "LH_NETEVENT_TYPE_0x1475", + "LH_NETEVENT_TYPE_0x1476", + "LH_NETEVENT_TYPE_0x1477", + "LH_NETEVENT_TYPE_0x1478", + "LH_NETEVENT_TYPE_0x1479", + "LH_NETEVENT_TYPE_0x147a", + "LH_NETEVENT_TYPE_0x147b", + "LH_NETEVENT_TYPE_0x147c", + "LH_NETEVENT_TYPE_0x147d", + "LH_NETEVENT_TYPE_0x147e", + "LH_NETEVENT_TYPE_0x147f", + "LH_NETEVENT_TYPE_0x1480", + "LH_NETEVENT_TYPE_0x1481", + "LH_NETEVENT_TYPE_0x1482", + "LH_NETEVENT_TYPE_0x1483", + "LH_NETEVENT_TYPE_0x1484", + "LH_NETEVENT_TYPE_0x1485", + "LH_NETEVENT_TYPE_0x1486", + "LH_NETEVENT_TYPE_0x1487", + "LH_NETEVENT_TYPE_0x1488", + "LH_NETEVENT_TYPE_0x1489", + "LH_NETEVENT_TYPE_0x148a", + "LH_NETEVENT_TYPE_0x148b", + "LH_NETEVENT_TYPE_0x148c", + "LH_NETEVENT_TYPE_0x148d", + "LH_NETEVENT_TYPE_0x148e", + "LH_NETEVENT_TYPE_0x148f", + "LH_NETEVENT_TYPE_0x1490", + "LH_NETEVENT_TYPE_0x1491", + "LH_NETEVENT_TYPE_0x1492", + "LH_NETEVENT_TYPE_0x1493", + "LH_NETEVENT_TYPE_0x1494", + "LH_NETEVENT_TYPE_0x1495", + "LH_NETEVENT_TYPE_0x1496", + "LH_NETEVENT_TYPE_0x1497", + "LH_NETEVENT_TYPE_0x1498", + "LH_NETEVENT_TYPE_0x1499", + "LH_NETEVENT_TYPE_0x149a", + "LH_NETEVENT_TYPE_0x149b", + "LH_NETEVENT_TYPE_0x149c", + "LH_NETEVENT_TYPE_0x149d", + "LH_NETEVENT_TYPE_0x149e", + "LH_NETEVENT_TYPE_0x149f", + "LH_NETEVENT_TYPE_0x14a0", + "LH_NETEVENT_TYPE_0x14a1", + "LH_NETEVENT_TYPE_0x14a2", + "LH_NETEVENT_TYPE_0x14a3", + "LH_NETEVENT_TYPE_0x14a4", + "LH_NETEVENT_TYPE_0x14a5", + "LH_NETEVENT_TYPE_0x14a6", + "LH_NETEVENT_TYPE_0x14a7", + "LH_NETEVENT_TYPE_0x14a8", + "LH_NETEVENT_TYPE_0x14a9", + "LH_NETEVENT_TYPE_0x14aa", + "LH_NETEVENT_TYPE_0x14ab", + "LH_NETEVENT_TYPE_0x14ac", + "LH_NETEVENT_TYPE_0x14ad", + "LH_NETEVENT_TYPE_0x14ae", + "LH_NETEVENT_TYPE_0x14af", + "LH_NETEVENT_TYPE_0x14b0", + "LH_NETEVENT_TYPE_0x14b1", + "LH_NETEVENT_TYPE_0x14b2", + "LH_NETEVENT_TYPE_0x14b3", + "LH_NETEVENT_TYPE_0x14b4", + "LH_NETEVENT_TYPE_0x14b5", + "LH_NETEVENT_TYPE_0x14b6", + "LH_NETEVENT_TYPE_0x14b7", + "LH_NETEVENT_TYPE_0x14b8", + "LH_NETEVENT_TYPE_0x14b9", + "LH_NETEVENT_TYPE_0x14ba", + "LH_NETEVENT_TYPE_0x14bb", + "LH_NETEVENT_TYPE_0x14bc", + "LH_NETEVENT_TYPE_0x14bd", + "LH_NETEVENT_TYPE_0x14be", + "LH_NETEVENT_TYPE_0x14bf", + "LH_NETEVENT_TYPE_0x14c0", + "LH_NETEVENT_TYPE_0x14c1", + "LH_NETEVENT_TYPE_0x14c2", + "LH_NETEVENT_TYPE_0x14c3", + "LH_NETEVENT_TYPE_0x14c4", + "LH_NETEVENT_TYPE_0x14c5", + "LH_NETEVENT_TYPE_0x14c6", + "LH_NETEVENT_TYPE_0x14c7", + "LH_NETEVENT_TYPE_0x14c8", + "LH_NETEVENT_TYPE_0x14c9", + "LH_NETEVENT_TYPE_0x14ca", + "LH_NETEVENT_TYPE_0x14cb", + "LH_NETEVENT_TYPE_0x14cc", + "LH_NETEVENT_TYPE_0x14cd", + "LH_NETEVENT_TYPE_0x14ce", + "LH_NETEVENT_TYPE_0x14cf", + "LH_NETEVENT_TYPE_0x14d0", + "LH_NETEVENT_TYPE_0x14d1", + "LH_NETEVENT_TYPE_0x14d2", + "LH_NETEVENT_TYPE_0x14d3", + "LH_NETEVENT_TYPE_0x14d4", + "LH_NETEVENT_TYPE_0x14d5", + "LH_NETEVENT_TYPE_0x14d6", + "LH_NETEVENT_TYPE_0x14d7", + "LH_NETEVENT_TYPE_0x14d8", + "LH_NETEVENT_TYPE_0x14d9", + "LH_NETEVENT_TYPE_0x14da", + "LH_NETEVENT_TYPE_0x14db", + "LH_NETEVENT_TYPE_0x14dc", + "LH_NETEVENT_TYPE_0x14dd", + "LH_NETEVENT_TYPE_0x14de", + "LH_NETEVENT_TYPE_0x14df", + "LH_NETEVENT_TYPE_0x14e0", + "LH_NETEVENT_TYPE_0x14e1", + "LH_NETEVENT_TYPE_0x14e2", + "LH_NETEVENT_TYPE_0x14e3", + "LH_NETEVENT_TYPE_0x14e4", + "LH_NETEVENT_TYPE_0x14e5", + "LH_NETEVENT_TYPE_0x14e6", + "LH_NETEVENT_TYPE_0x14e7", + "LH_NETEVENT_TYPE_0x14e8", + "LH_NETEVENT_TYPE_0x14e9", + "LH_NETEVENT_TYPE_0x14ea", + "LH_NETEVENT_TYPE_0x14eb", + "LH_NETEVENT_TYPE_0x14ec", + "LH_NETEVENT_TYPE_0x14ed", + "LH_NETEVENT_TYPE_0x14ee", + "LH_NETEVENT_TYPE_0x14ef", + "LH_NETEVENT_TYPE_0x14f0", + "LH_NETEVENT_TYPE_0x14f1", + "LH_NETEVENT_TYPE_0x14f2", + "LH_NETEVENT_TYPE_0x14f3", + "LH_NETEVENT_TYPE_0x14f4", + "LH_NETEVENT_TYPE_0x14f5", + "LH_NETEVENT_TYPE_0x14f6", + "LH_NETEVENT_TYPE_0x14f7", + "LH_NETEVENT_TYPE_0x14f8", + "LH_NETEVENT_TYPE_0x14f9", + "LH_NETEVENT_TYPE_0x14fa", + "LH_NETEVENT_TYPE_0x14fb", + "LH_NETEVENT_TYPE_0x14fc", + "LH_NETEVENT_TYPE_0x14fd", + "LH_NETEVENT_TYPE_0x14fe", + "LH_NETEVENT_TYPE_0x14ff", + "LH_NETEVENT_TYPE_0x1500", + "LH_NETEVENT_TYPE_0x1501", + "LH_NETEVENT_TYPE_0x1502", + "LH_NETEVENT_TYPE_0x1503", + "LH_NETEVENT_TYPE_0x1504", + "LH_NETEVENT_TYPE_0x1505", + "LH_NETEVENT_TYPE_0x1506", + "LH_NETEVENT_TYPE_0x1507", + "LH_NETEVENT_TYPE_0x1508", + "LH_NETEVENT_TYPE_0x1509", + "LH_NETEVENT_TYPE_0x150a", + "LH_NETEVENT_TYPE_0x150b", + "LH_NETEVENT_TYPE_0x150c", + "LH_NETEVENT_TYPE_0x150d", + "LH_NETEVENT_TYPE_0x150e", + "LH_NETEVENT_TYPE_0x150f", + "LH_NETEVENT_TYPE_0x1510", + "LH_NETEVENT_TYPE_0x1511", + "LH_NETEVENT_TYPE_0x1512", + "LH_NETEVENT_TYPE_0x1513", + "LH_NETEVENT_TYPE_0x1514", + "LH_NETEVENT_TYPE_0x1515", + "LH_NETEVENT_TYPE_0x1516", + "LH_NETEVENT_TYPE_0x1517", + "LH_NETEVENT_TYPE_0x1518", + "LH_NETEVENT_TYPE_0x1519", + "LH_NETEVENT_TYPE_0x151a", + "LH_NETEVENT_TYPE_0x151b", + "LH_NETEVENT_TYPE_0x151c", + "LH_NETEVENT_TYPE_0x151d", + "LH_NETEVENT_TYPE_0x151e", + "LH_NETEVENT_TYPE_0x151f", + "LH_NETEVENT_TYPE_0x1520", + "LH_NETEVENT_TYPE_0x1521", + "LH_NETEVENT_TYPE_0x1522", + "LH_NETEVENT_TYPE_0x1523", + "LH_NETEVENT_TYPE_0x1524", + "LH_NETEVENT_TYPE_0x1525", + "LH_NETEVENT_TYPE_0x1526", + "LH_NETEVENT_TYPE_0x1527", + "LH_NETEVENT_TYPE_0x1528", + "LH_NETEVENT_TYPE_0x1529", + "LH_NETEVENT_TYPE_0x152a", + "LH_NETEVENT_TYPE_0x152b", + "LH_NETEVENT_TYPE_0x152c", + "LH_NETEVENT_TYPE_0x152d", + "LH_NETEVENT_TYPE_0x152e", + "LH_NETEVENT_TYPE_0x152f", + "LH_NETEVENT_TYPE_0x1530", + "LH_NETEVENT_TYPE_0x1531", + "LH_NETEVENT_TYPE_0x1532", + "LH_NETEVENT_TYPE_0x1533", + "LH_NETEVENT_TYPE_0x1534", + "LH_NETEVENT_TYPE_0x1535", + "LH_NETEVENT_TYPE_0x1536", + "LH_NETEVENT_TYPE_0x1537", + "LH_NETEVENT_TYPE_0x1538", + "LH_NETEVENT_TYPE_0x1539", + "LH_NETEVENT_TYPE_0x153a", + "LH_NETEVENT_TYPE_0x153b", + "LH_NETEVENT_TYPE_0x153c", + "LH_NETEVENT_TYPE_0x153d", + "LH_NETEVENT_TYPE_0x153e", + "LH_NETEVENT_TYPE_0x153f", + "LH_NETEVENT_TYPE_0x1540", + "LH_NETEVENT_TYPE_0x1541", + "LH_NETEVENT_TYPE_0x1542", + "LH_NETEVENT_TYPE_0x1543", + "LH_NETEVENT_TYPE_0x1544", + "LH_NETEVENT_TYPE_0x1545", + "LH_NETEVENT_TYPE_0x1546", + "LH_NETEVENT_TYPE_0x1547", + "LH_NETEVENT_TYPE_0x1548", + "LH_NETEVENT_TYPE_0x1549", + "LH_NETEVENT_TYPE_0x154a", + "LH_NETEVENT_TYPE_0x154b", + "LH_NETEVENT_TYPE_0x154c", + "LH_NETEVENT_TYPE_0x154d", + "LH_NETEVENT_TYPE_0x154e", + "LH_NETEVENT_TYPE_0x154f", + "LH_NETEVENT_TYPE_0x1550", + "LH_NETEVENT_TYPE_0x1551", + "LH_NETEVENT_TYPE_0x1552", + "LH_NETEVENT_TYPE_0x1553", + "LH_NETEVENT_TYPE_0x1554", + "LH_NETEVENT_TYPE_0x1555", + "LH_NETEVENT_TYPE_0x1556", + "LH_NETEVENT_TYPE_0x1557", + "LH_NETEVENT_TYPE_0x1558", + "LH_NETEVENT_TYPE_0x1559", + "LH_NETEVENT_TYPE_0x155a", + "LH_NETEVENT_TYPE_0x155b", + "LH_NETEVENT_TYPE_0x155c", + "LH_NETEVENT_TYPE_0x155d", + "LH_NETEVENT_TYPE_0x155e", + "LH_NETEVENT_TYPE_0x155f", + "LH_NETEVENT_TYPE_0x1560", + "LH_NETEVENT_TYPE_0x1561", + "LH_NETEVENT_TYPE_0x1562", + "LH_NETEVENT_TYPE_0x1563", + "LH_NETEVENT_TYPE_0x1564", + "LH_NETEVENT_TYPE_0x1565", + "LH_NETEVENT_TYPE_0x1566", + "LH_NETEVENT_TYPE_0x1567", + "LH_NETEVENT_TYPE_0x1568", + "LH_NETEVENT_TYPE_0x1569", + "LH_NETEVENT_TYPE_0x156a", + "LH_NETEVENT_TYPE_0x156b", + "LH_NETEVENT_TYPE_0x156c", + "LH_NETEVENT_TYPE_0x156d", + "LH_NETEVENT_TYPE_0x156e", + "LH_NETEVENT_TYPE_0x156f", + "LH_NETEVENT_TYPE_0x1570", + "LH_NETEVENT_TYPE_0x1571", + "LH_NETEVENT_TYPE_0x1572", + "LH_NETEVENT_TYPE_0x1573", + "LH_NETEVENT_TYPE_0x1574", + "LH_NETEVENT_TYPE_0x1575", + "LH_NETEVENT_TYPE_0x1576", + "LH_NETEVENT_TYPE_0x1577", + "LH_NETEVENT_TYPE_0x1578", + "LH_NETEVENT_TYPE_0x1579", + "LH_NETEVENT_TYPE_0x157a", + "LH_NETEVENT_TYPE_0x157b", + "LH_NETEVENT_TYPE_0x157c", + "LH_NETEVENT_TYPE_0x157d", + "LH_NETEVENT_TYPE_0x157e", + "LH_NETEVENT_TYPE_0x157f", + "LH_NETEVENT_TYPE_0x1580", + "LH_NETEVENT_TYPE_0x1581", + "LH_NETEVENT_TYPE_0x1582", + "LH_NETEVENT_TYPE_0x1583", + "LH_NETEVENT_TYPE_0x1584", + "LH_NETEVENT_TYPE_0x1585", + "LH_NETEVENT_TYPE_0x1586", + "LH_NETEVENT_TYPE_0x1587", + "LH_NETEVENT_TYPE_0x1588", + "LH_NETEVENT_TYPE_0x1589", + "LH_NETEVENT_TYPE_0x158a", + "LH_NETEVENT_TYPE_0x158b", + "LH_NETEVENT_TYPE_0x158c", + "LH_NETEVENT_TYPE_0x158d", + "LH_NETEVENT_TYPE_0x158e", + "LH_NETEVENT_TYPE_0x158f", + "LH_NETEVENT_TYPE_0x1590", + "LH_NETEVENT_TYPE_0x1591", + "LH_NETEVENT_TYPE_0x1592", + "LH_NETEVENT_TYPE_0x1593", + "LH_NETEVENT_TYPE_0x1594", + "LH_NETEVENT_TYPE_0x1595", + "LH_NETEVENT_TYPE_0x1596", + "LH_NETEVENT_TYPE_0x1597", + "LH_NETEVENT_TYPE_0x1598", + "LH_NETEVENT_TYPE_0x1599", + "LH_NETEVENT_TYPE_0x159a", + "LH_NETEVENT_TYPE_0x159b", + "LH_NETEVENT_TYPE_0x159c", + "LH_NETEVENT_TYPE_0x159d", + "LH_NETEVENT_TYPE_0x159e", + "LH_NETEVENT_TYPE_0x159f", + "LH_NETEVENT_TYPE_0x15a0", + "LH_NETEVENT_TYPE_0x15a1", + "LH_NETEVENT_TYPE_0x15a2", + "LH_NETEVENT_TYPE_0x15a3", + "LH_NETEVENT_TYPE_0x15a4", + "LH_NETEVENT_TYPE_0x15a5", + "LH_NETEVENT_TYPE_0x15a6", + "LH_NETEVENT_TYPE_0x15a7", + "LH_NETEVENT_TYPE_0x15a8", + "LH_NETEVENT_TYPE_0x15a9", + "LH_NETEVENT_TYPE_0x15aa", + "LH_NETEVENT_TYPE_0x15ab", + "LH_NETEVENT_TYPE_0x15ac", + "LH_NETEVENT_TYPE_0x15ad", + "LH_NETEVENT_TYPE_0x15ae", + "LH_NETEVENT_TYPE_0x15af", + "LH_NETEVENT_TYPE_0x15b0", + "LH_NETEVENT_TYPE_0x15b1", + "LH_NETEVENT_TYPE_0x15b2", + "LH_NETEVENT_TYPE_0x15b3", + "LH_NETEVENT_TYPE_0x15b4", + "LH_NETEVENT_TYPE_0x15b5", + "LH_NETEVENT_TYPE_0x15b6", + "LH_NETEVENT_TYPE_0x15b7", + "LH_NETEVENT_TYPE_0x15b8", + "LH_NETEVENT_TYPE_0x15b9", + "LH_NETEVENT_TYPE_0x15ba", + "LH_NETEVENT_TYPE_0x15bb", + "LH_NETEVENT_TYPE_0x15bc", + "LH_NETEVENT_TYPE_0x15bd", + "LH_NETEVENT_TYPE_0x15be", + "LH_NETEVENT_TYPE_0x15bf", + "LH_NETEVENT_TYPE_0x15c0", + "LH_NETEVENT_TYPE_0x15c1", + "LH_NETEVENT_TYPE_0x15c2", + "LH_NETEVENT_TYPE_0x15c3", + "LH_NETEVENT_TYPE_0x15c4", + "LH_NETEVENT_TYPE_0x15c5", + "LH_NETEVENT_TYPE_0x15c6", + "LH_NETEVENT_TYPE_0x15c7", + "LH_NETEVENT_TYPE_0x15c8", + "LH_NETEVENT_TYPE_0x15c9", + "LH_NETEVENT_TYPE_0x15ca", + "LH_NETEVENT_TYPE_0x15cb", + "LH_NETEVENT_TYPE_0x15cc", + "LH_NETEVENT_TYPE_0x15cd", + "LH_NETEVENT_TYPE_0x15ce", + "LH_NETEVENT_TYPE_0x15cf", + "LH_NETEVENT_TYPE_0x15d0", + "LH_NETEVENT_TYPE_0x15d1", + "LH_NETEVENT_TYPE_0x15d2", + "LH_NETEVENT_TYPE_0x15d3", + "LH_NETEVENT_TYPE_0x15d4", + "LH_NETEVENT_TYPE_0x15d5", + "LH_NETEVENT_TYPE_0x15d6", + "LH_NETEVENT_TYPE_0x15d7", + "LH_NETEVENT_TYPE_0x15d8", + "LH_NETEVENT_TYPE_0x15d9", + "LH_NETEVENT_TYPE_0x15da", + "LH_NETEVENT_TYPE_0x15db", + "LH_NETEVENT_TYPE_0x15dc", + "LH_NETEVENT_TYPE_0x15dd", + "LH_NETEVENT_TYPE_0x15de", + "LH_NETEVENT_TYPE_0x15df", + "LH_NETEVENT_TYPE_0x15e0", + "LH_NETEVENT_TYPE_0x15e1", + "LH_NETEVENT_TYPE_0x15e2", + "LH_NETEVENT_TYPE_0x15e3", + "LH_NETEVENT_TYPE_0x15e4", + "LH_NETEVENT_TYPE_0x15e5", + "LH_NETEVENT_TYPE_0x15e6", + "LH_NETEVENT_TYPE_0x15e7", + "LH_NETEVENT_TYPE_0x15e8", + "LH_NETEVENT_TYPE_0x15e9", + "LH_NETEVENT_TYPE_0x15ea", + "LH_NETEVENT_TYPE_0x15eb", + "LH_NETEVENT_TYPE_0x15ec", + "LH_NETEVENT_TYPE_0x15ed", + "LH_NETEVENT_TYPE_0x15ee", + "LH_NETEVENT_TYPE_0x15ef", + "LH_NETEVENT_TYPE_0x15f0", + "LH_NETEVENT_TYPE_0x15f1", + "LH_NETEVENT_TYPE_0x15f2", + "LH_NETEVENT_TYPE_0x15f3", + "LH_NETEVENT_TYPE_0x15f4", + "LH_NETEVENT_TYPE_0x15f5", + "LH_NETEVENT_TYPE_0x15f6", + "LH_NETEVENT_TYPE_0x15f7", + "LH_NETEVENT_TYPE_0x15f8", + "LH_NETEVENT_TYPE_0x15f9", + "LH_NETEVENT_TYPE_0x15fa", + "LH_NETEVENT_TYPE_0x15fb", + "LH_NETEVENT_TYPE_0x15fc", + "LH_NETEVENT_TYPE_0x15fd", + "LH_NETEVENT_TYPE_0x15fe", + "LH_NETEVENT_TYPE_0x15ff", + "LH_NETEVENT_TYPE_0x1600", + "LH_NETEVENT_TYPE_0x1601", + "LH_NETEVENT_TYPE_0x1602", + "LH_NETEVENT_TYPE_0x1603", + "LH_NETEVENT_TYPE_0x1604", + "LH_NETEVENT_TYPE_0x1605", + "LH_NETEVENT_TYPE_0x1606", + "LH_NETEVENT_TYPE_0x1607", + "LH_NETEVENT_TYPE_0x1608", + "LH_NETEVENT_TYPE_0x1609", + "LH_NETEVENT_TYPE_0x160a", + "LH_NETEVENT_TYPE_0x160b", + "LH_NETEVENT_TYPE_0x160c", + "LH_NETEVENT_TYPE_0x160d", + "LH_NETEVENT_TYPE_0x160e", + "LH_NETEVENT_TYPE_0x160f", + "LH_NETEVENT_TYPE_0x1610", + "LH_NETEVENT_TYPE_0x1611", + "LH_NETEVENT_TYPE_0x1612", + "LH_NETEVENT_TYPE_0x1613", + "LH_NETEVENT_TYPE_0x1614", + "LH_NETEVENT_TYPE_0x1615", + "LH_NETEVENT_TYPE_0x1616", + "LH_NETEVENT_TYPE_0x1617", + "LH_NETEVENT_TYPE_0x1618", + "LH_NETEVENT_TYPE_0x1619", + "LH_NETEVENT_TYPE_0x161a", + "LH_NETEVENT_TYPE_0x161b", + "LH_NETEVENT_TYPE_0x161c", + "LH_NETEVENT_TYPE_0x161d", + "LH_NETEVENT_TYPE_0x161e", + "LH_NETEVENT_TYPE_0x161f", + "LH_NETEVENT_TYPE_0x1620", + "LH_NETEVENT_TYPE_0x1621", + "LH_NETEVENT_TYPE_0x1622", + "LH_NETEVENT_TYPE_0x1623", + "LH_NETEVENT_TYPE_0x1624", + "LH_NETEVENT_TYPE_0x1625", + "LH_NETEVENT_TYPE_0x1626", + "LH_NETEVENT_TYPE_0x1627", + "LH_NETEVENT_TYPE_0x1628", + "LH_NETEVENT_TYPE_0x1629", + "LH_NETEVENT_TYPE_0x162a", + "LH_NETEVENT_TYPE_0x162b", + "LH_NETEVENT_TYPE_0x162c", + "LH_NETEVENT_TYPE_0x162d", + "LH_NETEVENT_TYPE_0x162e", + "LH_NETEVENT_TYPE_0x162f", + "LH_NETEVENT_TYPE_0x1630", + "LH_NETEVENT_TYPE_0x1631", + "LH_NETEVENT_TYPE_0x1632", + "LH_NETEVENT_TYPE_0x1633", + "LH_NETEVENT_TYPE_0x1634", + "LH_NETEVENT_TYPE_0x1635", + "LH_NETEVENT_TYPE_0x1636", + "LH_NETEVENT_TYPE_0x1637", + "LH_NETEVENT_TYPE_0x1638", + "LH_NETEVENT_TYPE_0x1639", + "LH_NETEVENT_TYPE_0x163a", + "LH_NETEVENT_TYPE_0x163b", + "LH_NETEVENT_TYPE_0x163c", + "LH_NETEVENT_TYPE_0x163d", + "LH_NETEVENT_TYPE_0x163e", + "LH_NETEVENT_TYPE_0x163f", + "LH_NETEVENT_TYPE_0x1640", + "LH_NETEVENT_TYPE_0x1641", + "LH_NETEVENT_TYPE_0x1642", + "LH_NETEVENT_TYPE_0x1643", + "LH_NETEVENT_TYPE_0x1644", + "LH_NETEVENT_TYPE_0x1645", + "LH_NETEVENT_TYPE_0x1646", + "LH_NETEVENT_TYPE_0x1647", + "LH_NETEVENT_TYPE_0x1648", + "LH_NETEVENT_TYPE_0x1649", + "LH_NETEVENT_TYPE_0x164a", + "LH_NETEVENT_TYPE_0x164b", + "LH_NETEVENT_TYPE_0x164c", + "LH_NETEVENT_TYPE_0x164d", + "LH_NETEVENT_TYPE_0x164e", + "LH_NETEVENT_TYPE_0x164f", + "LH_NETEVENT_TYPE_0x1650", + "LH_NETEVENT_TYPE_0x1651", + "LH_NETEVENT_TYPE_0x1652", + "LH_NETEVENT_TYPE_0x1653", + "LH_NETEVENT_TYPE_0x1654", + "LH_NETEVENT_TYPE_0x1655", + "LH_NETEVENT_TYPE_0x1656", + "LH_NETEVENT_TYPE_0x1657", + "LH_NETEVENT_TYPE_0x1658", + "LH_NETEVENT_TYPE_0x1659", + "LH_NETEVENT_TYPE_0x165a", + "LH_NETEVENT_TYPE_0x165b", + "LH_NETEVENT_TYPE_0x165c", + "LH_NETEVENT_TYPE_0x165d", + "LH_NETEVENT_TYPE_0x165e", + "LH_NETEVENT_TYPE_0x165f", + "LH_NETEVENT_TYPE_0x1660", + "LH_NETEVENT_TYPE_0x1661", + "LH_NETEVENT_TYPE_0x1662", + "LH_NETEVENT_TYPE_0x1663", + "LH_NETEVENT_TYPE_0x1664", + "LH_NETEVENT_TYPE_0x1665", + "LH_NETEVENT_TYPE_0x1666", + "LH_NETEVENT_TYPE_0x1667", + "LH_NETEVENT_TYPE_0x1668", + "LH_NETEVENT_TYPE_0x1669", + "LH_NETEVENT_TYPE_0x166a", + "LH_NETEVENT_TYPE_0x166b", + "LH_NETEVENT_TYPE_0x166c", + "LH_NETEVENT_TYPE_0x166d", + "LH_NETEVENT_TYPE_0x166e", + "LH_NETEVENT_TYPE_0x166f", + "LH_NETEVENT_TYPE_0x1670", + "LH_NETEVENT_TYPE_0x1671", + "LH_NETEVENT_TYPE_0x1672", + "LH_NETEVENT_TYPE_0x1673", + "LH_NETEVENT_TYPE_0x1674", + "LH_NETEVENT_TYPE_0x1675", + "LH_NETEVENT_TYPE_0x1676", + "LH_NETEVENT_TYPE_0x1677", + "LH_NETEVENT_TYPE_0x1678", + "LH_NETEVENT_TYPE_0x1679", + "LH_NETEVENT_TYPE_0x167a", + "LH_NETEVENT_TYPE_0x167b", + "LH_NETEVENT_TYPE_0x167c", + "LH_NETEVENT_TYPE_0x167d", + "LH_NETEVENT_TYPE_0x167e", + "LH_NETEVENT_TYPE_0x167f", + "LH_NETEVENT_TYPE_0x1680", + "LH_NETEVENT_TYPE_0x1681", + "LH_NETEVENT_TYPE_0x1682", + "LH_NETEVENT_TYPE_0x1683", + "LH_NETEVENT_TYPE_0x1684", + "LH_NETEVENT_TYPE_0x1685", + "LH_NETEVENT_TYPE_0x1686", + "LH_NETEVENT_TYPE_0x1687", + "LH_NETEVENT_TYPE_0x1688", + "LH_NETEVENT_TYPE_0x1689", + "LH_NETEVENT_TYPE_0x168a", + "LH_NETEVENT_TYPE_0x168b", + "LH_NETEVENT_TYPE_0x168c", + "LH_NETEVENT_TYPE_0x168d", + "LH_NETEVENT_TYPE_0x168e", + "LH_NETEVENT_TYPE_0x168f", + "LH_NETEVENT_TYPE_0x1690", + "LH_NETEVENT_TYPE_0x1691", + "LH_NETEVENT_TYPE_0x1692", + "LH_NETEVENT_TYPE_0x1693", + "LH_NETEVENT_TYPE_0x1694", + "LH_NETEVENT_TYPE_0x1695", + "LH_NETEVENT_TYPE_0x1696", + "LH_NETEVENT_TYPE_0x1697", + "LH_NETEVENT_TYPE_0x1698", + "LH_NETEVENT_TYPE_0x1699", + "LH_NETEVENT_TYPE_0x169a", + "LH_NETEVENT_TYPE_0x169b", + "LH_NETEVENT_TYPE_0x169c", + "LH_NETEVENT_TYPE_0x169d", + "LH_NETEVENT_TYPE_0x169e", + "LH_NETEVENT_TYPE_0x169f", + "LH_NETEVENT_TYPE_0x16a0", + "LH_NETEVENT_TYPE_0x16a1", + "LH_NETEVENT_TYPE_0x16a2", + "LH_NETEVENT_TYPE_0x16a3", + "LH_NETEVENT_TYPE_0x16a4", + "LH_NETEVENT_TYPE_0x16a5", + "LH_NETEVENT_TYPE_0x16a6", + "LH_NETEVENT_TYPE_0x16a7", + "LH_NETEVENT_TYPE_0x16a8", + "LH_NETEVENT_TYPE_0x16a9", + "LH_NETEVENT_TYPE_0x16aa", + "LH_NETEVENT_TYPE_0x16ab", + "LH_NETEVENT_TYPE_0x16ac", + "LH_NETEVENT_TYPE_0x16ad", + "LH_NETEVENT_TYPE_0x16ae", + "LH_NETEVENT_TYPE_0x16af", + "LH_NETEVENT_TYPE_0x16b0", + "LH_NETEVENT_TYPE_0x16b1", + "LH_NETEVENT_TYPE_0x16b2", + "LH_NETEVENT_TYPE_0x16b3", + "LH_NETEVENT_TYPE_0x16b4", + "LH_NETEVENT_TYPE_0x16b5", + "LH_NETEVENT_TYPE_0x16b6", + "LH_NETEVENT_TYPE_0x16b7", + "LH_NETEVENT_TYPE_0x16b8", + "LH_NETEVENT_TYPE_0x16b9", + "LH_NETEVENT_TYPE_0x16ba", + "LH_NETEVENT_TYPE_0x16bb", + "LH_NETEVENT_TYPE_0x16bc", + "LH_NETEVENT_TYPE_0x16bd", + "LH_NETEVENT_TYPE_0x16be", + "LH_NETEVENT_TYPE_0x16bf", + "LH_NETEVENT_TYPE_0x16c0", + "LH_NETEVENT_TYPE_0x16c1", + "LH_NETEVENT_TYPE_0x16c2", + "LH_NETEVENT_TYPE_0x16c3", + "LH_NETEVENT_TYPE_0x16c4", + "LH_NETEVENT_TYPE_0x16c5", + "LH_NETEVENT_TYPE_0x16c6", + "LH_NETEVENT_TYPE_0x16c7", + "LH_NETEVENT_TYPE_0x16c8", + "LH_NETEVENT_TYPE_0x16c9", + "LH_NETEVENT_TYPE_0x16ca", + "LH_NETEVENT_TYPE_0x16cb", + "LH_NETEVENT_TYPE_0x16cc", + "LH_NETEVENT_TYPE_0x16cd", + "LH_NETEVENT_TYPE_0x16ce", + "LH_NETEVENT_TYPE_0x16cf", + "LH_NETEVENT_TYPE_0x16d0", + "LH_NETEVENT_TYPE_0x16d1", + "LH_NETEVENT_TYPE_0x16d2", + "LH_NETEVENT_TYPE_0x16d3", + "LH_NETEVENT_TYPE_0x16d4", + "LH_NETEVENT_TYPE_0x16d5", + "LH_NETEVENT_TYPE_0x16d6", + "LH_NETEVENT_TYPE_0x16d7", + "LH_NETEVENT_TYPE_0x16d8", + "LH_NETEVENT_TYPE_0x16d9", + "LH_NETEVENT_TYPE_0x16da", + "LH_NETEVENT_TYPE_0x16db", + "LH_NETEVENT_TYPE_0x16dc", + "LH_NETEVENT_TYPE_0x16dd", + "LH_NETEVENT_TYPE_0x16de", + "LH_NETEVENT_TYPE_0x16df", + "LH_NETEVENT_TYPE_0x16e0", + "LH_NETEVENT_TYPE_0x16e1", + "LH_NETEVENT_TYPE_0x16e2", + "LH_NETEVENT_TYPE_0x16e3", + "LH_NETEVENT_TYPE_0x16e4", + "LH_NETEVENT_TYPE_0x16e5", + "LH_NETEVENT_TYPE_0x16e6", + "LH_NETEVENT_TYPE_0x16e7", + "LH_NETEVENT_TYPE_0x16e8", + "LH_NETEVENT_TYPE_0x16e9", + "LH_NETEVENT_TYPE_0x16ea", + "LH_NETEVENT_TYPE_0x16eb", + "LH_NETEVENT_TYPE_0x16ec", + "LH_NETEVENT_TYPE_0x16ed", + "LH_NETEVENT_TYPE_0x16ee", + "LH_NETEVENT_TYPE_0x16ef", + "LH_NETEVENT_TYPE_0x16f0", + "LH_NETEVENT_TYPE_0x16f1", + "LH_NETEVENT_TYPE_0x16f2", + "LH_NETEVENT_TYPE_0x16f3", + "LH_NETEVENT_TYPE_0x16f4", + "LH_NETEVENT_TYPE_0x16f5", + "LH_NETEVENT_TYPE_0x16f6", + "LH_NETEVENT_TYPE_0x16f7", + "LH_NETEVENT_TYPE_0x16f8", + "LH_NETEVENT_TYPE_0x16f9", + "LH_NETEVENT_TYPE_0x16fa", + "LH_NETEVENT_TYPE_0x16fb", + "LH_NETEVENT_TYPE_0x16fc", + "LH_NETEVENT_TYPE_0x16fd", + "LH_NETEVENT_TYPE_0x16fe", + "LH_NETEVENT_TYPE_0x16ff", + "LH_NETEVENT_TYPE_0x1700", + "LH_NETEVENT_TYPE_0x1701", + "LH_NETEVENT_TYPE_0x1702", + "LH_NETEVENT_TYPE_0x1703", + "LH_NETEVENT_TYPE_0x1704", + "LH_NETEVENT_TYPE_0x1705", + "LH_NETEVENT_TYPE_0x1706", + "LH_NETEVENT_TYPE_0x1707", + "LH_NETEVENT_TYPE_0x1708", + "LH_NETEVENT_TYPE_0x1709", + "LH_NETEVENT_TYPE_0x170a", + "LH_NETEVENT_TYPE_0x170b", + "LH_NETEVENT_TYPE_0x170c", + "LH_NETEVENT_TYPE_0x170d", + "LH_NETEVENT_TYPE_0x170e", + "LH_NETEVENT_TYPE_0x170f", + "LH_NETEVENT_TYPE_0x1710", + "LH_NETEVENT_TYPE_0x1711", + "LH_NETEVENT_TYPE_0x1712", + "LH_NETEVENT_TYPE_0x1713", + "LH_NETEVENT_TYPE_0x1714", + "LH_NETEVENT_TYPE_0x1715", + "LH_NETEVENT_TYPE_0x1716", + "LH_NETEVENT_TYPE_0x1717", + "LH_NETEVENT_TYPE_0x1718", + "LH_NETEVENT_TYPE_0x1719", + "LH_NETEVENT_TYPE_0x171a", + "LH_NETEVENT_TYPE_0x171b", + "LH_NETEVENT_TYPE_0x171c", + "LH_NETEVENT_TYPE_0x171d", + "LH_NETEVENT_TYPE_0x171e", + "LH_NETEVENT_TYPE_0x171f", + "LH_NETEVENT_TYPE_0x1720", + "LH_NETEVENT_TYPE_0x1721", + "LH_NETEVENT_TYPE_0x1722", + "LH_NETEVENT_TYPE_0x1723", + "LH_NETEVENT_TYPE_0x1724", + "LH_NETEVENT_TYPE_0x1725", + "LH_NETEVENT_TYPE_0x1726", + "LH_NETEVENT_TYPE_0x1727", + "LH_NETEVENT_TYPE_0x1728", + "LH_NETEVENT_TYPE_0x1729", + "LH_NETEVENT_TYPE_0x172a", + "LH_NETEVENT_TYPE_0x172b", + "LH_NETEVENT_TYPE_0x172c", + "LH_NETEVENT_TYPE_0x172d", + "LH_NETEVENT_TYPE_0x172e", + "LH_NETEVENT_TYPE_0x172f", + "LH_NETEVENT_TYPE_0x1730", + "LH_NETEVENT_TYPE_0x1731", + "LH_NETEVENT_TYPE_0x1732", + "LH_NETEVENT_TYPE_0x1733", + "LH_NETEVENT_TYPE_0x1734", + "LH_NETEVENT_TYPE_0x1735", + "LH_NETEVENT_TYPE_0x1736", + "LH_NETEVENT_TYPE_0x1737", + "LH_NETEVENT_TYPE_0x1738", + "LH_NETEVENT_TYPE_0x1739", + "LH_NETEVENT_TYPE_0x173a", + "LH_NETEVENT_TYPE_0x173b", + "LH_NETEVENT_TYPE_0x173c", + "LH_NETEVENT_TYPE_0x173d", + "LH_NETEVENT_TYPE_0x173e", + "LH_NETEVENT_TYPE_0x173f", + "LH_NETEVENT_TYPE_0x1740", + "LH_NETEVENT_TYPE_0x1741", + "LH_NETEVENT_TYPE_0x1742", + "LH_NETEVENT_TYPE_0x1743", + "LH_NETEVENT_TYPE_0x1744", + "LH_NETEVENT_TYPE_0x1745", + "LH_NETEVENT_TYPE_0x1746", + "LH_NETEVENT_TYPE_0x1747", + "LH_NETEVENT_TYPE_0x1748", + "LH_NETEVENT_TYPE_0x1749", + "LH_NETEVENT_TYPE_0x174a", + "LH_NETEVENT_TYPE_0x174b", + "LH_NETEVENT_TYPE_0x174c", + "LH_NETEVENT_TYPE_0x174d", + "LH_NETEVENT_TYPE_0x174e", + "LH_NETEVENT_TYPE_0x174f", + "LH_NETEVENT_TYPE_0x1750", + "LH_NETEVENT_TYPE_0x1751", + "LH_NETEVENT_TYPE_0x1752", + "LH_NETEVENT_TYPE_0x1753", + "LH_NETEVENT_TYPE_0x1754", + "LH_NETEVENT_TYPE_0x1755", + "LH_NETEVENT_TYPE_0x1756", + "LH_NETEVENT_TYPE_0x1757", + "LH_NETEVENT_TYPE_0x1758", + "LH_NETEVENT_TYPE_0x1759", + "LH_NETEVENT_TYPE_0x175a", + "LH_NETEVENT_TYPE_0x175b", + "LH_NETEVENT_TYPE_0x175c", + "LH_NETEVENT_TYPE_0x175d", + "LH_NETEVENT_TYPE_0x175e", + "LH_NETEVENT_TYPE_0x175f", + "LH_NETEVENT_TYPE_0x1760", + "LH_NETEVENT_TYPE_0x1761", + "LH_NETEVENT_TYPE_0x1762", + "LH_NETEVENT_TYPE_0x1763", + "LH_NETEVENT_TYPE_0x1764", + "LH_NETEVENT_TYPE_0x1765", + "LH_NETEVENT_TYPE_0x1766", + "LH_NETEVENT_TYPE_0x1767", + "LH_NETEVENT_TYPE_0x1768", + "LH_NETEVENT_TYPE_0x1769", + "LH_NETEVENT_TYPE_0x176a", + "LH_NETEVENT_TYPE_0x176b", + "LH_NETEVENT_TYPE_0x176c", + "LH_NETEVENT_TYPE_0x176d", + "LH_NETEVENT_TYPE_0x176e", + "LH_NETEVENT_TYPE_0x176f", + "LH_NETEVENT_TYPE_0x1770", + "LH_NETEVENT_TYPE_0x1771", + "LH_NETEVENT_TYPE_0x1772", + "LH_NETEVENT_TYPE_0x1773", + "LH_NETEVENT_TYPE_0x1774", + "LH_NETEVENT_TYPE_0x1775", + "LH_NETEVENT_TYPE_0x1776", + "LH_NETEVENT_TYPE_0x1777", + "LH_NETEVENT_TYPE_0x1778", + "LH_NETEVENT_TYPE_0x1779", + "LH_NETEVENT_TYPE_0x177a", + "LH_NETEVENT_TYPE_0x177b", + "LH_NETEVENT_TYPE_0x177c", + "LH_NETEVENT_TYPE_0x177d", + "LH_NETEVENT_TYPE_0x177e", + "LH_NETEVENT_TYPE_0x177f", + "LH_NETEVENT_TYPE_0x1780", + "LH_NETEVENT_TYPE_0x1781", + "LH_NETEVENT_TYPE_0x1782", + "LH_NETEVENT_TYPE_0x1783", + "LH_NETEVENT_TYPE_0x1784", + "LH_NETEVENT_TYPE_0x1785", + "LH_NETEVENT_TYPE_0x1786", + "LH_NETEVENT_TYPE_0x1787", + "LH_NETEVENT_TYPE_0x1788", + "LH_NETEVENT_TYPE_0x1789", + "LH_NETEVENT_TYPE_0x178a", + "LH_NETEVENT_TYPE_0x178b", + "LH_NETEVENT_TYPE_0x178c", + "LH_NETEVENT_TYPE_0x178d", + "LH_NETEVENT_TYPE_0x178e", + "LH_NETEVENT_TYPE_0x178f", + "LH_NETEVENT_TYPE_0x1790", + "LH_NETEVENT_TYPE_0x1791", + "LH_NETEVENT_TYPE_0x1792", + "LH_NETEVENT_TYPE_0x1793", + "LH_NETEVENT_TYPE_0x1794", + "LH_NETEVENT_TYPE_0x1795", + "LH_NETEVENT_TYPE_0x1796", + "LH_NETEVENT_TYPE_0x1797", + "LH_NETEVENT_TYPE_0x1798", + "LH_NETEVENT_TYPE_0x1799", + "LH_NETEVENT_TYPE_0x179a", + "LH_NETEVENT_TYPE_0x179b", + "LH_NETEVENT_TYPE_0x179c", + "LH_NETEVENT_TYPE_0x179d", + "LH_NETEVENT_TYPE_0x179e", + "LH_NETEVENT_TYPE_0x179f", + "LH_NETEVENT_TYPE_0x17a0", + "LH_NETEVENT_TYPE_0x17a1", + "LH_NETEVENT_TYPE_0x17a2", + "LH_NETEVENT_TYPE_0x17a3", + "LH_NETEVENT_TYPE_0x17a4", + "LH_NETEVENT_TYPE_0x17a5", + "LH_NETEVENT_TYPE_0x17a6", + "LH_NETEVENT_TYPE_0x17a7", + "LH_NETEVENT_TYPE_0x17a8", + "LH_NETEVENT_TYPE_0x17a9", + "LH_NETEVENT_TYPE_0x17aa", + "LH_NETEVENT_TYPE_0x17ab", + "LH_NETEVENT_TYPE_0x17ac", + "LH_NETEVENT_TYPE_0x17ad", + "LH_NETEVENT_TYPE_0x17ae", + "LH_NETEVENT_TYPE_0x17af", + "LH_NETEVENT_TYPE_0x17b0", + "LH_NETEVENT_TYPE_0x17b1", + "LH_NETEVENT_TYPE_0x17b2", + "LH_NETEVENT_TYPE_0x17b3", + "LH_NETEVENT_TYPE_0x17b4", + "LH_NETEVENT_TYPE_0x17b5", + "LH_NETEVENT_TYPE_0x17b6", + "LH_NETEVENT_TYPE_0x17b7", + "LH_NETEVENT_TYPE_0x17b8", + "LH_NETEVENT_TYPE_0x17b9", + "LH_NETEVENT_TYPE_0x17ba", + "LH_NETEVENT_TYPE_0x17bb", + "LH_NETEVENT_TYPE_0x17bc", + "LH_NETEVENT_TYPE_0x17bd", + "LH_NETEVENT_TYPE_0x17be", + "LH_NETEVENT_TYPE_0x17bf", + "LH_NETEVENT_TYPE_0x17c0", + "LH_NETEVENT_TYPE_0x17c1", + "LH_NETEVENT_TYPE_0x17c2", + "LH_NETEVENT_TYPE_0x17c3", + "LH_NETEVENT_TYPE_0x17c4", + "LH_NETEVENT_TYPE_0x17c5", + "LH_NETEVENT_TYPE_0x17c6", + "LH_NETEVENT_TYPE_0x17c7", + "LH_NETEVENT_TYPE_0x17c8", + "LH_NETEVENT_TYPE_0x17c9", + "LH_NETEVENT_TYPE_0x17ca", + "LH_NETEVENT_TYPE_0x17cb", + "LH_NETEVENT_TYPE_0x17cc", + "LH_NETEVENT_TYPE_0x17cd", + "LH_NETEVENT_TYPE_0x17ce", + "LH_NETEVENT_TYPE_0x17cf", + "LH_NETEVENT_TYPE_0x17d0", + "LH_NETEVENT_TYPE_0x17d1", + "LH_NETEVENT_TYPE_0x17d2", + "LH_NETEVENT_TYPE_0x17d3", + "LH_NETEVENT_TYPE_0x17d4", + "LH_NETEVENT_TYPE_0x17d5", + "LH_NETEVENT_TYPE_0x17d6", + "LH_NETEVENT_TYPE_0x17d7", + "LH_NETEVENT_TYPE_0x17d8", + "LH_NETEVENT_TYPE_0x17d9", + "LH_NETEVENT_TYPE_0x17da", + "LH_NETEVENT_TYPE_0x17db", + "LH_NETEVENT_TYPE_0x17dc", + "LH_NETEVENT_TYPE_0x17dd", + "LH_NETEVENT_TYPE_0x17de", + "LH_NETEVENT_TYPE_0x17df", + "LH_NETEVENT_TYPE_0x17e0", + "LH_NETEVENT_TYPE_0x17e1", + "LH_NETEVENT_TYPE_0x17e2", + "LH_NETEVENT_TYPE_0x17e3", + "LH_NETEVENT_TYPE_0x17e4", + "LH_NETEVENT_TYPE_0x17e5", + "LH_NETEVENT_TYPE_0x17e6", + "LH_NETEVENT_TYPE_0x17e7", + "LH_NETEVENT_TYPE_0x17e8", + "LH_NETEVENT_TYPE_0x17e9", + "LH_NETEVENT_TYPE_0x17ea", + "LH_NETEVENT_TYPE_0x17eb", + "LH_NETEVENT_TYPE_0x17ec", + "LH_NETEVENT_TYPE_0x17ed", + "LH_NETEVENT_TYPE_0x17ee", + "LH_NETEVENT_TYPE_0x17ef", + "LH_NETEVENT_TYPE_0x17f0", + "LH_NETEVENT_TYPE_0x17f1", + "LH_NETEVENT_TYPE_0x17f2", + "LH_NETEVENT_TYPE_0x17f3", + "LH_NETEVENT_TYPE_0x17f4", + "LH_NETEVENT_TYPE_0x17f5", + "LH_NETEVENT_TYPE_0x17f6", + "LH_NETEVENT_TYPE_0x17f7", + "LH_NETEVENT_TYPE_0x17f8", + "LH_NETEVENT_TYPE_0x17f9", + "LH_NETEVENT_TYPE_0x17fa", + "LH_NETEVENT_TYPE_0x17fb", + "LH_NETEVENT_TYPE_0x17fc", + "LH_NETEVENT_TYPE_0x17fd", + "LH_NETEVENT_TYPE_0x17fe", + "LH_NETEVENT_TYPE_0x17ff", + "LH_NETEVENT_TYPE_0x1800", + "LH_NETEVENT_TYPE_0x1801", + "LH_NETEVENT_TYPE_0x1802", + "LH_NETEVENT_TYPE_0x1803", + "LH_NETEVENT_TYPE_0x1804", + "LH_NETEVENT_TYPE_0x1805", + "LH_NETEVENT_TYPE_0x1806", + "LH_NETEVENT_TYPE_0x1807", + "LH_NETEVENT_TYPE_0x1808", + "LH_NETEVENT_TYPE_0x1809", + "LH_NETEVENT_TYPE_0x180a", + "LH_NETEVENT_TYPE_0x180b", + "LH_NETEVENT_TYPE_0x180c", + "LH_NETEVENT_TYPE_0x180d", + "LH_NETEVENT_TYPE_0x180e", + "LH_NETEVENT_TYPE_0x180f", + "LH_NETEVENT_TYPE_0x1810", + "LH_NETEVENT_TYPE_0x1811", + "LH_NETEVENT_TYPE_0x1812", + "LH_NETEVENT_TYPE_0x1813", + "LH_NETEVENT_TYPE_0x1814", + "LH_NETEVENT_TYPE_0x1815", + "LH_NETEVENT_TYPE_0x1816", + "LH_NETEVENT_TYPE_0x1817", + "LH_NETEVENT_TYPE_0x1818", + "LH_NETEVENT_TYPE_0x1819", + "LH_NETEVENT_TYPE_0x181a", + "LH_NETEVENT_TYPE_0x181b", + "LH_NETEVENT_TYPE_0x181c", + "LH_NETEVENT_TYPE_0x181d", + "LH_NETEVENT_TYPE_0x181e", + "LH_NETEVENT_TYPE_0x181f", + "LH_NETEVENT_TYPE_0x1820", + "LH_NETEVENT_TYPE_0x1821", + "LH_NETEVENT_TYPE_0x1822", + "LH_NETEVENT_TYPE_0x1823", + "LH_NETEVENT_TYPE_0x1824", + "LH_NETEVENT_TYPE_0x1825", + "LH_NETEVENT_TYPE_0x1826", + "LH_NETEVENT_TYPE_0x1827", + "LH_NETEVENT_TYPE_0x1828", + "LH_NETEVENT_TYPE_0x1829", + "LH_NETEVENT_TYPE_0x182a", + "LH_NETEVENT_TYPE_0x182b", + "LH_NETEVENT_TYPE_0x182c", + "LH_NETEVENT_TYPE_0x182d", + "LH_NETEVENT_TYPE_0x182e", + "LH_NETEVENT_TYPE_0x182f", + "LH_NETEVENT_TYPE_0x1830", + "LH_NETEVENT_TYPE_0x1831", + "LH_NETEVENT_TYPE_0x1832", + "LH_NETEVENT_TYPE_0x1833", + "LH_NETEVENT_TYPE_0x1834", + "LH_NETEVENT_TYPE_0x1835", + "LH_NETEVENT_TYPE_0x1836", + "LH_NETEVENT_TYPE_0x1837", + "LH_NETEVENT_TYPE_0x1838", + "LH_NETEVENT_TYPE_0x1839", + "LH_NETEVENT_TYPE_0x183a", + "LH_NETEVENT_TYPE_0x183b", + "LH_NETEVENT_TYPE_0x183c", + "LH_NETEVENT_TYPE_0x183d", + "LH_NETEVENT_TYPE_0x183e", + "LH_NETEVENT_TYPE_0x183f", + "LH_NETEVENT_TYPE_0x1840", + "LH_NETEVENT_TYPE_0x1841", + "LH_NETEVENT_TYPE_0x1842", + "LH_NETEVENT_TYPE_0x1843", + "LH_NETEVENT_TYPE_0x1844", + "LH_NETEVENT_TYPE_0x1845", + "LH_NETEVENT_TYPE_0x1846", + "LH_NETEVENT_TYPE_0x1847", + "LH_NETEVENT_TYPE_0x1848", + "LH_NETEVENT_TYPE_0x1849", + "LH_NETEVENT_TYPE_0x184a", + "LH_NETEVENT_TYPE_0x184b", + "LH_NETEVENT_TYPE_0x184c", + "LH_NETEVENT_TYPE_0x184d", + "LH_NETEVENT_TYPE_0x184e", + "LH_NETEVENT_TYPE_0x184f", + "LH_NETEVENT_TYPE_0x1850", + "LH_NETEVENT_TYPE_0x1851", + "LH_NETEVENT_TYPE_0x1852", + "LH_NETEVENT_TYPE_0x1853", + "LH_NETEVENT_TYPE_0x1854", + "LH_NETEVENT_TYPE_0x1855", + "LH_NETEVENT_TYPE_0x1856", + "LH_NETEVENT_TYPE_0x1857", + "LH_NETEVENT_TYPE_0x1858", + "LH_NETEVENT_TYPE_0x1859", + "LH_NETEVENT_TYPE_0x185a", + "LH_NETEVENT_TYPE_0x185b", + "LH_NETEVENT_TYPE_0x185c", + "LH_NETEVENT_TYPE_0x185d", + "LH_NETEVENT_TYPE_0x185e", + "LH_NETEVENT_TYPE_0x185f", + "LH_NETEVENT_TYPE_0x1860", + "LH_NETEVENT_TYPE_0x1861", + "LH_NETEVENT_TYPE_0x1862", + "LH_NETEVENT_TYPE_0x1863", + "LH_NETEVENT_TYPE_0x1864", + "LH_NETEVENT_TYPE_0x1865", + "LH_NETEVENT_TYPE_0x1866", + "LH_NETEVENT_TYPE_0x1867", + "LH_NETEVENT_TYPE_0x1868", + "LH_NETEVENT_TYPE_0x1869", + "LH_NETEVENT_TYPE_0x186a", + "LH_NETEVENT_TYPE_0x186b", + "LH_NETEVENT_TYPE_0x186c", + "LH_NETEVENT_TYPE_0x186d", + "LH_NETEVENT_TYPE_0x186e", + "LH_NETEVENT_TYPE_0x186f", + "LH_NETEVENT_TYPE_0x1870", + "LH_NETEVENT_TYPE_0x1871", + "LH_NETEVENT_TYPE_0x1872", + "LH_NETEVENT_TYPE_0x1873", + "LH_NETEVENT_TYPE_0x1874", + "LH_NETEVENT_TYPE_0x1875", + "LH_NETEVENT_TYPE_0x1876", + "LH_NETEVENT_TYPE_0x1877", + "LH_NETEVENT_TYPE_0x1878", + "LH_NETEVENT_TYPE_0x1879", + "LH_NETEVENT_TYPE_0x187a", + "LH_NETEVENT_TYPE_0x187b", + "LH_NETEVENT_TYPE_0x187c", + "LH_NETEVENT_TYPE_0x187d", + "LH_NETEVENT_TYPE_0x187e", + "LH_NETEVENT_TYPE_0x187f", + "LH_NETEVENT_TYPE_0x1880", + "LH_NETEVENT_TYPE_0x1881", + "LH_NETEVENT_TYPE_0x1882", + "LH_NETEVENT_TYPE_0x1883", + "LH_NETEVENT_TYPE_0x1884", + "LH_NETEVENT_TYPE_0x1885", + "LH_NETEVENT_TYPE_0x1886", + "LH_NETEVENT_TYPE_0x1887", + "LH_NETEVENT_TYPE_0x1888", + "LH_NETEVENT_TYPE_0x1889", + "LH_NETEVENT_TYPE_0x188a", + "LH_NETEVENT_TYPE_0x188b", + "LH_NETEVENT_TYPE_0x188c", + "LH_NETEVENT_TYPE_0x188d", + "LH_NETEVENT_TYPE_0x188e", + "LH_NETEVENT_TYPE_0x188f", + "LH_NETEVENT_TYPE_0x1890", + "LH_NETEVENT_TYPE_0x1891", + "LH_NETEVENT_TYPE_0x1892", + "LH_NETEVENT_TYPE_0x1893", + "LH_NETEVENT_TYPE_0x1894", + "LH_NETEVENT_TYPE_0x1895", + "LH_NETEVENT_TYPE_0x1896", + "LH_NETEVENT_TYPE_0x1897", + "LH_NETEVENT_TYPE_0x1898", + "LH_NETEVENT_TYPE_0x1899", + "LH_NETEVENT_TYPE_0x189a", + "LH_NETEVENT_TYPE_0x189b", + "LH_NETEVENT_TYPE_0x189c", + "LH_NETEVENT_TYPE_0x189d", + "LH_NETEVENT_TYPE_0x189e", + "LH_NETEVENT_TYPE_0x189f", + "LH_NETEVENT_TYPE_0x18a0", + "LH_NETEVENT_TYPE_0x18a1", + "LH_NETEVENT_TYPE_0x18a2", + "LH_NETEVENT_TYPE_0x18a3", + "LH_NETEVENT_TYPE_0x18a4", + "LH_NETEVENT_TYPE_0x18a5", + "LH_NETEVENT_TYPE_0x18a6", + "LH_NETEVENT_TYPE_0x18a7", + "LH_NETEVENT_TYPE_0x18a8", + "LH_NETEVENT_TYPE_0x18a9", + "LH_NETEVENT_TYPE_0x18aa", + "LH_NETEVENT_TYPE_0x18ab", + "LH_NETEVENT_TYPE_0x18ac", + "LH_NETEVENT_TYPE_0x18ad", + "LH_NETEVENT_TYPE_0x18ae", + "LH_NETEVENT_TYPE_0x18af", + "LH_NETEVENT_TYPE_0x18b0", + "LH_NETEVENT_TYPE_0x18b1", + "LH_NETEVENT_TYPE_0x18b2", + "LH_NETEVENT_TYPE_0x18b3", + "LH_NETEVENT_TYPE_0x18b4", + "LH_NETEVENT_TYPE_0x18b5", + "LH_NETEVENT_TYPE_0x18b6", + "LH_NETEVENT_TYPE_0x18b7", + "LH_NETEVENT_TYPE_0x18b8", + "LH_NETEVENT_TYPE_0x18b9", + "LH_NETEVENT_TYPE_0x18ba", + "LH_NETEVENT_TYPE_0x18bb", + "LH_NETEVENT_TYPE_0x18bc", + "LH_NETEVENT_TYPE_0x18bd", + "LH_NETEVENT_TYPE_0x18be", + "LH_NETEVENT_TYPE_0x18bf", + "LH_NETEVENT_TYPE_0x18c0", + "LH_NETEVENT_TYPE_0x18c1", + "LH_NETEVENT_TYPE_0x18c2", + "LH_NETEVENT_TYPE_0x18c3", + "LH_NETEVENT_TYPE_0x18c4", + "LH_NETEVENT_TYPE_0x18c5", + "LH_NETEVENT_TYPE_0x18c6", + "LH_NETEVENT_TYPE_0x18c7", + "LH_NETEVENT_TYPE_0x18c8", + "LH_NETEVENT_TYPE_0x18c9", + "LH_NETEVENT_TYPE_0x18ca", + "LH_NETEVENT_TYPE_0x18cb", + "LH_NETEVENT_TYPE_0x18cc", + "LH_NETEVENT_TYPE_0x18cd", + "LH_NETEVENT_TYPE_0x18ce", + "LH_NETEVENT_TYPE_0x18cf", + "LH_NETEVENT_TYPE_0x18d0", + "LH_NETEVENT_TYPE_0x18d1", + "LH_NETEVENT_TYPE_0x18d2", + "LH_NETEVENT_TYPE_0x18d3", + "LH_NETEVENT_TYPE_0x18d4", + "LH_NETEVENT_TYPE_0x18d5", + "LH_NETEVENT_TYPE_0x18d6", + "LH_NETEVENT_TYPE_0x18d7", + "LH_NETEVENT_TYPE_0x18d8", + "LH_NETEVENT_TYPE_0x18d9", + "LH_NETEVENT_TYPE_0x18da", + "LH_NETEVENT_TYPE_0x18db", + "LH_NETEVENT_TYPE_0x18dc", + "LH_NETEVENT_TYPE_0x18dd", + "LH_NETEVENT_TYPE_0x18de", + "LH_NETEVENT_TYPE_0x18df", + "LH_NETEVENT_TYPE_0x18e0", + "LH_NETEVENT_TYPE_0x18e1", + "LH_NETEVENT_TYPE_0x18e2", + "LH_NETEVENT_TYPE_0x18e3", + "LH_NETEVENT_TYPE_0x18e4", + "LH_NETEVENT_TYPE_0x18e5", + "LH_NETEVENT_TYPE_0x18e6", + "LH_NETEVENT_TYPE_0x18e7", + "LH_NETEVENT_TYPE_0x18e8", + "LH_NETEVENT_TYPE_0x18e9", + "LH_NETEVENT_TYPE_0x18ea", + "LH_NETEVENT_TYPE_0x18eb", + "LH_NETEVENT_TYPE_0x18ec", + "LH_NETEVENT_TYPE_0x18ed", + "LH_NETEVENT_TYPE_0x18ee", + "LH_NETEVENT_TYPE_0x18ef", + "LH_NETEVENT_TYPE_0x18f0", + "LH_NETEVENT_TYPE_0x18f1", + "LH_NETEVENT_TYPE_0x18f2", + "LH_NETEVENT_TYPE_0x18f3", + "LH_NETEVENT_TYPE_0x18f4", + "LH_NETEVENT_TYPE_0x18f5", + "LH_NETEVENT_TYPE_0x18f6", + "LH_NETEVENT_TYPE_0x18f7", + "LH_NETEVENT_TYPE_0x18f8", + "LH_NETEVENT_TYPE_0x18f9", + "LH_NETEVENT_TYPE_0x18fa", + "LH_NETEVENT_TYPE_0x18fb", + "LH_NETEVENT_TYPE_0x18fc", + "LH_NETEVENT_TYPE_0x18fd", + "LH_NETEVENT_TYPE_0x18fe", + "LH_NETEVENT_TYPE_0x18ff", + "LH_NETEVENT_TYPE_0x1900", + "LH_NETEVENT_TYPE_0x1901", + "LH_NETEVENT_TYPE_0x1902", + "LH_NETEVENT_TYPE_0x1903", + "LH_NETEVENT_TYPE_0x1904", + "LH_NETEVENT_TYPE_0x1905", + "LH_NETEVENT_TYPE_0x1906", + "LH_NETEVENT_TYPE_0x1907", + "LH_NETEVENT_TYPE_0x1908", + "LH_NETEVENT_TYPE_0x1909", + "LH_NETEVENT_TYPE_0x190a", + "LH_NETEVENT_TYPE_0x190b", + "LH_NETEVENT_TYPE_0x190c", + "LH_NETEVENT_TYPE_0x190d", + "LH_NETEVENT_TYPE_0x190e", + "LH_NETEVENT_TYPE_0x190f", + "LH_NETEVENT_TYPE_0x1910", + "LH_NETEVENT_TYPE_0x1911", + "LH_NETEVENT_TYPE_0x1912", + "LH_NETEVENT_TYPE_0x1913", + "LH_NETEVENT_TYPE_0x1914", + "LH_NETEVENT_TYPE_0x1915", + "LH_NETEVENT_TYPE_0x1916", + "LH_NETEVENT_TYPE_0x1917", + "LH_NETEVENT_TYPE_0x1918", + "LH_NETEVENT_TYPE_0x1919", + "LH_NETEVENT_TYPE_0x191a", + "LH_NETEVENT_TYPE_0x191b", + "LH_NETEVENT_TYPE_0x191c", + "LH_NETEVENT_TYPE_0x191d", + "LH_NETEVENT_TYPE_0x191e", + "LH_NETEVENT_TYPE_0x191f", + "LH_NETEVENT_TYPE_0x1920", + "LH_NETEVENT_TYPE_0x1921", + "LH_NETEVENT_TYPE_0x1922", + "LH_NETEVENT_TYPE_0x1923", + "LH_NETEVENT_TYPE_0x1924", + "LH_NETEVENT_TYPE_0x1925", + "LH_NETEVENT_TYPE_0x1926", + "LH_NETEVENT_TYPE_0x1927", + "LH_NETEVENT_TYPE_0x1928", + "LH_NETEVENT_TYPE_0x1929", + "LH_NETEVENT_TYPE_0x192a", + "LH_NETEVENT_TYPE_0x192b", + "LH_NETEVENT_TYPE_0x192c", + "LH_NETEVENT_TYPE_0x192d", + "LH_NETEVENT_TYPE_0x192e", + "LH_NETEVENT_TYPE_0x192f", + "LH_NETEVENT_TYPE_0x1930", + "LH_NETEVENT_TYPE_0x1931", + "LH_NETEVENT_TYPE_0x1932", + "LH_NETEVENT_TYPE_0x1933", + "LH_NETEVENT_TYPE_0x1934", + "LH_NETEVENT_TYPE_0x1935", + "LH_NETEVENT_TYPE_0x1936", + "LH_NETEVENT_TYPE_0x1937", + "LH_NETEVENT_TYPE_0x1938", + "LH_NETEVENT_TYPE_0x1939", + "LH_NETEVENT_TYPE_0x193a", + "LH_NETEVENT_TYPE_0x193b", + "LH_NETEVENT_TYPE_0x193c", + "LH_NETEVENT_TYPE_0x193d", + "LH_NETEVENT_TYPE_0x193e", + "LH_NETEVENT_TYPE_0x193f", + "LH_NETEVENT_TYPE_0x1940", + "LH_NETEVENT_TYPE_0x1941", + "LH_NETEVENT_TYPE_0x1942", + "LH_NETEVENT_TYPE_0x1943", + "LH_NETEVENT_TYPE_0x1944", + "LH_NETEVENT_TYPE_0x1945", + "LH_NETEVENT_TYPE_0x1946", + "LH_NETEVENT_TYPE_0x1947", + "LH_NETEVENT_TYPE_0x1948", + "LH_NETEVENT_TYPE_0x1949", + "LH_NETEVENT_TYPE_0x194a", + "LH_NETEVENT_TYPE_0x194b", + "LH_NETEVENT_TYPE_0x194c", + "LH_NETEVENT_TYPE_0x194d", + "LH_NETEVENT_TYPE_0x194e", + "LH_NETEVENT_TYPE_0x194f", + "LH_NETEVENT_TYPE_0x1950", + "LH_NETEVENT_TYPE_0x1951", + "LH_NETEVENT_TYPE_0x1952", + "LH_NETEVENT_TYPE_0x1953", + "LH_NETEVENT_TYPE_0x1954", + "LH_NETEVENT_TYPE_0x1955", + "LH_NETEVENT_TYPE_0x1956", + "LH_NETEVENT_TYPE_0x1957", + "LH_NETEVENT_TYPE_0x1958", + "LH_NETEVENT_TYPE_0x1959", + "LH_NETEVENT_TYPE_0x195a", + "LH_NETEVENT_TYPE_0x195b", + "LH_NETEVENT_TYPE_0x195c", + "LH_NETEVENT_TYPE_0x195d", + "LH_NETEVENT_TYPE_0x195e", + "LH_NETEVENT_TYPE_0x195f", + "LH_NETEVENT_TYPE_0x1960", + "LH_NETEVENT_TYPE_0x1961", + "LH_NETEVENT_TYPE_0x1962", + "LH_NETEVENT_TYPE_0x1963", + "LH_NETEVENT_TYPE_0x1964", + "LH_NETEVENT_TYPE_0x1965", + "LH_NETEVENT_TYPE_0x1966", + "LH_NETEVENT_TYPE_0x1967", + "LH_NETEVENT_TYPE_0x1968", + "LH_NETEVENT_TYPE_0x1969", + "LH_NETEVENT_TYPE_0x196a", + "LH_NETEVENT_TYPE_0x196b", + "LH_NETEVENT_TYPE_0x196c", + "LH_NETEVENT_TYPE_0x196d", + "LH_NETEVENT_TYPE_0x196e", + "LH_NETEVENT_TYPE_0x196f", + "LH_NETEVENT_TYPE_0x1970", + "LH_NETEVENT_TYPE_0x1971", + "LH_NETEVENT_TYPE_0x1972", + "LH_NETEVENT_TYPE_0x1973", + "LH_NETEVENT_TYPE_0x1974", + "LH_NETEVENT_TYPE_0x1975", + "LH_NETEVENT_TYPE_0x1976", + "LH_NETEVENT_TYPE_0x1977", + "LH_NETEVENT_TYPE_0x1978", + "LH_NETEVENT_TYPE_0x1979", + "LH_NETEVENT_TYPE_0x197a", + "LH_NETEVENT_TYPE_0x197b", + "LH_NETEVENT_TYPE_0x197c", + "LH_NETEVENT_TYPE_0x197d", + "LH_NETEVENT_TYPE_0x197e", + "LH_NETEVENT_TYPE_0x197f", + "LH_NETEVENT_TYPE_0x1980", + "LH_NETEVENT_TYPE_0x1981", + "LH_NETEVENT_TYPE_0x1982", + "LH_NETEVENT_TYPE_0x1983", + "LH_NETEVENT_TYPE_0x1984", + "LH_NETEVENT_TYPE_0x1985", + "LH_NETEVENT_TYPE_0x1986", + "LH_NETEVENT_TYPE_0x1987", + "LH_NETEVENT_TYPE_0x1988", + "LH_NETEVENT_TYPE_0x1989", + "LH_NETEVENT_TYPE_0x198a", + "LH_NETEVENT_TYPE_0x198b", + "LH_NETEVENT_TYPE_0x198c", + "LH_NETEVENT_TYPE_0x198d", + "LH_NETEVENT_TYPE_0x198e", + "LH_NETEVENT_TYPE_0x198f", + "LH_NETEVENT_TYPE_0x1990", + "LH_NETEVENT_TYPE_0x1991", + "LH_NETEVENT_TYPE_0x1992", + "LH_NETEVENT_TYPE_0x1993", + "LH_NETEVENT_TYPE_0x1994", + "LH_NETEVENT_TYPE_0x1995", + "LH_NETEVENT_TYPE_0x1996", + "LH_NETEVENT_TYPE_0x1997", + "LH_NETEVENT_TYPE_0x1998", + "LH_NETEVENT_TYPE_0x1999", + "LH_NETEVENT_TYPE_0x199a", + "LH_NETEVENT_TYPE_0x199b", + "LH_NETEVENT_TYPE_0x199c", + "LH_NETEVENT_TYPE_0x199d", + "LH_NETEVENT_TYPE_0x199e", + "LH_NETEVENT_TYPE_0x199f", + "LH_NETEVENT_TYPE_0x19a0", + "LH_NETEVENT_TYPE_0x19a1", + "LH_NETEVENT_TYPE_0x19a2", + "LH_NETEVENT_TYPE_0x19a3", + "LH_NETEVENT_TYPE_0x19a4", + "LH_NETEVENT_TYPE_0x19a5", + "LH_NETEVENT_TYPE_0x19a6", + "LH_NETEVENT_TYPE_0x19a7", + "LH_NETEVENT_TYPE_0x19a8", + "LH_NETEVENT_TYPE_0x19a9", + "LH_NETEVENT_TYPE_0x19aa", + "LH_NETEVENT_TYPE_0x19ab", + "LH_NETEVENT_TYPE_0x19ac", + "LH_NETEVENT_TYPE_0x19ad", + "LH_NETEVENT_TYPE_0x19ae", + "LH_NETEVENT_TYPE_0x19af", + "LH_NETEVENT_TYPE_0x19b0", + "LH_NETEVENT_TYPE_0x19b1", + "LH_NETEVENT_TYPE_0x19b2", + "LH_NETEVENT_TYPE_0x19b3", + "LH_NETEVENT_TYPE_0x19b4", + "LH_NETEVENT_TYPE_0x19b5", + "LH_NETEVENT_TYPE_0x19b6", + "LH_NETEVENT_TYPE_0x19b7", + "LH_NETEVENT_TYPE_0x19b8", + "LH_NETEVENT_TYPE_0x19b9", + "LH_NETEVENT_TYPE_0x19ba", + "LH_NETEVENT_TYPE_0x19bb", + "LH_NETEVENT_TYPE_0x19bc", + "LH_NETEVENT_TYPE_0x19bd", + "LH_NETEVENT_TYPE_0x19be", + "LH_NETEVENT_TYPE_0x19bf", + "LH_NETEVENT_TYPE_0x19c0", + "LH_NETEVENT_TYPE_0x19c1", + "LH_NETEVENT_TYPE_0x19c2", + "LH_NETEVENT_TYPE_0x19c3", + "LH_NETEVENT_TYPE_0x19c4", + "LH_NETEVENT_TYPE_0x19c5", + "LH_NETEVENT_TYPE_0x19c6", + "LH_NETEVENT_TYPE_0x19c7", + "LH_NETEVENT_TYPE_0x19c8", + "LH_NETEVENT_TYPE_0x19c9", + "LH_NETEVENT_TYPE_0x19ca", + "LH_NETEVENT_TYPE_0x19cb", + "LH_NETEVENT_TYPE_0x19cc", + "LH_NETEVENT_TYPE_0x19cd", + "LH_NETEVENT_TYPE_0x19ce", + "LH_NETEVENT_TYPE_0x19cf", + "LH_NETEVENT_TYPE_0x19d0", + "LH_NETEVENT_TYPE_0x19d1", + "LH_NETEVENT_TYPE_0x19d2", + "LH_NETEVENT_TYPE_0x19d3", + "LH_NETEVENT_TYPE_0x19d4", + "LH_NETEVENT_TYPE_0x19d5", + "LH_NETEVENT_TYPE_0x19d6", + "LH_NETEVENT_TYPE_0x19d7", + "LH_NETEVENT_TYPE_0x19d8", + "LH_NETEVENT_TYPE_0x19d9", + "LH_NETEVENT_TYPE_0x19da", + "LH_NETEVENT_TYPE_0x19db", + "LH_NETEVENT_TYPE_0x19dc", + "LH_NETEVENT_TYPE_0x19dd", + "LH_NETEVENT_TYPE_0x19de", + "LH_NETEVENT_TYPE_0x19df", + "LH_NETEVENT_TYPE_0x19e0", + "LH_NETEVENT_TYPE_0x19e1", + "LH_NETEVENT_TYPE_0x19e2", + "LH_NETEVENT_TYPE_0x19e3", + "LH_NETEVENT_TYPE_0x19e4", + "LH_NETEVENT_TYPE_0x19e5", + "LH_NETEVENT_TYPE_0x19e6", + "LH_NETEVENT_TYPE_0x19e7", + "LH_NETEVENT_TYPE_0x19e8", + "LH_NETEVENT_TYPE_0x19e9", + "LH_NETEVENT_TYPE_0x19ea", + "LH_NETEVENT_TYPE_0x19eb", + "LH_NETEVENT_TYPE_0x19ec", + "LH_NETEVENT_TYPE_0x19ed", + "LH_NETEVENT_TYPE_0x19ee", + "LH_NETEVENT_TYPE_0x19ef", + "LH_NETEVENT_TYPE_0x19f0", + "LH_NETEVENT_TYPE_0x19f1", + "LH_NETEVENT_TYPE_0x19f2", + "LH_NETEVENT_TYPE_0x19f3", + "LH_NETEVENT_TYPE_0x19f4", + "LH_NETEVENT_TYPE_0x19f5", + "LH_NETEVENT_TYPE_0x19f6", + "LH_NETEVENT_TYPE_0x19f7", + "LH_NETEVENT_TYPE_0x19f8", + "LH_NETEVENT_TYPE_0x19f9", + "LH_NETEVENT_TYPE_0x19fa", + "LH_NETEVENT_TYPE_0x19fb", + "LH_NETEVENT_TYPE_0x19fc", + "LH_NETEVENT_TYPE_0x19fd", + "LH_NETEVENT_TYPE_0x19fe", + "LH_NETEVENT_TYPE_0x19ff", + "LH_NETEVENT_TYPE_0x1a00", + "LH_NETEVENT_TYPE_0x1a01", + "LH_NETEVENT_TYPE_0x1a02", + "LH_NETEVENT_TYPE_0x1a03", + "LH_NETEVENT_TYPE_0x1a04", + "LH_NETEVENT_TYPE_0x1a05", + "LH_NETEVENT_TYPE_0x1a06", + "LH_NETEVENT_TYPE_0x1a07", + "LH_NETEVENT_TYPE_0x1a08", + "LH_NETEVENT_TYPE_0x1a09", + "LH_NETEVENT_TYPE_0x1a0a", + "LH_NETEVENT_TYPE_0x1a0b", + "LH_NETEVENT_TYPE_0x1a0c", + "LH_NETEVENT_TYPE_0x1a0d", + "LH_NETEVENT_TYPE_0x1a0e", + "LH_NETEVENT_TYPE_0x1a0f", + "LH_NETEVENT_TYPE_0x1a10", + "LH_NETEVENT_TYPE_0x1a11", + "LH_NETEVENT_TYPE_0x1a12", + "LH_NETEVENT_TYPE_0x1a13", + "LH_NETEVENT_TYPE_0x1a14", + "LH_NETEVENT_TYPE_0x1a15", + "LH_NETEVENT_TYPE_0x1a16", + "LH_NETEVENT_TYPE_0x1a17", + "LH_NETEVENT_TYPE_0x1a18", + "LH_NETEVENT_TYPE_0x1a19", + "LH_NETEVENT_TYPE_0x1a1a", + "LH_NETEVENT_TYPE_0x1a1b", + "LH_NETEVENT_TYPE_0x1a1c", + "LH_NETEVENT_TYPE_0x1a1d", + "LH_NETEVENT_TYPE_0x1a1e", + "LH_NETEVENT_TYPE_0x1a1f", + "LH_NETEVENT_TYPE_0x1a20", + "LH_NETEVENT_TYPE_0x1a21", + "LH_NETEVENT_TYPE_0x1a22", + "LH_NETEVENT_TYPE_0x1a23", + "LH_NETEVENT_TYPE_0x1a24", + "LH_NETEVENT_TYPE_0x1a25", + "LH_NETEVENT_TYPE_0x1a26", + "LH_NETEVENT_TYPE_0x1a27", + "LH_NETEVENT_TYPE_0x1a28", + "LH_NETEVENT_TYPE_0x1a29", + "LH_NETEVENT_TYPE_0x1a2a", + "LH_NETEVENT_TYPE_0x1a2b", + "LH_NETEVENT_TYPE_0x1a2c", + "LH_NETEVENT_TYPE_0x1a2d", + "LH_NETEVENT_TYPE_0x1a2e", + "LH_NETEVENT_TYPE_0x1a2f", + "LH_NETEVENT_TYPE_0x1a30", + "LH_NETEVENT_TYPE_0x1a31", + "LH_NETEVENT_TYPE_0x1a32", + "LH_NETEVENT_TYPE_0x1a33", + "LH_NETEVENT_TYPE_0x1a34", + "LH_NETEVENT_TYPE_0x1a35", + "LH_NETEVENT_TYPE_0x1a36", + "LH_NETEVENT_TYPE_0x1a37", + "LH_NETEVENT_TYPE_0x1a38", + "LH_NETEVENT_TYPE_0x1a39", + "LH_NETEVENT_TYPE_0x1a3a", + "LH_NETEVENT_TYPE_0x1a3b", + "LH_NETEVENT_TYPE_0x1a3c", + "LH_NETEVENT_TYPE_0x1a3d", + "LH_NETEVENT_TYPE_0x1a3e", + "LH_NETEVENT_TYPE_0x1a3f", + "LH_NETEVENT_TYPE_0x1a40", + "LH_NETEVENT_TYPE_0x1a41", + "LH_NETEVENT_TYPE_0x1a42", + "LH_NETEVENT_TYPE_0x1a43", + "LH_NETEVENT_TYPE_0x1a44", + "LH_NETEVENT_TYPE_0x1a45", + "LH_NETEVENT_TYPE_0x1a46", + "LH_NETEVENT_TYPE_0x1a47", + "LH_NETEVENT_TYPE_0x1a48", + "LH_NETEVENT_TYPE_0x1a49", + "LH_NETEVENT_TYPE_0x1a4a", + "LH_NETEVENT_TYPE_0x1a4b", + "LH_NETEVENT_TYPE_0x1a4c", + "LH_NETEVENT_TYPE_0x1a4d", + "LH_NETEVENT_TYPE_0x1a4e", + "LH_NETEVENT_TYPE_0x1a4f", + "LH_NETEVENT_TYPE_0x1a50", + "LH_NETEVENT_TYPE_0x1a51", + "LH_NETEVENT_TYPE_0x1a52", + "LH_NETEVENT_TYPE_0x1a53", + "LH_NETEVENT_TYPE_0x1a54", + "LH_NETEVENT_TYPE_0x1a55", + "LH_NETEVENT_TYPE_0x1a56", + "LH_NETEVENT_TYPE_0x1a57", + "LH_NETEVENT_TYPE_0x1a58", + "LH_NETEVENT_TYPE_0x1a59", + "LH_NETEVENT_TYPE_0x1a5a", + "LH_NETEVENT_TYPE_0x1a5b", + "LH_NETEVENT_TYPE_0x1a5c", + "LH_NETEVENT_TYPE_0x1a5d", + "LH_NETEVENT_TYPE_0x1a5e", + "LH_NETEVENT_TYPE_0x1a5f", + "LH_NETEVENT_TYPE_0x1a60", + "LH_NETEVENT_TYPE_0x1a61", + "LH_NETEVENT_TYPE_0x1a62", + "LH_NETEVENT_TYPE_0x1a63", + "LH_NETEVENT_TYPE_0x1a64", + "LH_NETEVENT_TYPE_0x1a65", + "LH_NETEVENT_TYPE_0x1a66", + "LH_NETEVENT_TYPE_0x1a67", + "LH_NETEVENT_TYPE_0x1a68", + "LH_NETEVENT_TYPE_0x1a69", + "LH_NETEVENT_TYPE_0x1a6a", + "LH_NETEVENT_TYPE_0x1a6b", + "LH_NETEVENT_TYPE_0x1a6c", + "LH_NETEVENT_TYPE_0x1a6d", + "LH_NETEVENT_TYPE_0x1a6e", + "LH_NETEVENT_TYPE_0x1a6f", + "LH_NETEVENT_TYPE_0x1a70", + "LH_NETEVENT_TYPE_0x1a71", + "LH_NETEVENT_TYPE_0x1a72", + "LH_NETEVENT_TYPE_0x1a73", + "LH_NETEVENT_TYPE_0x1a74", + "LH_NETEVENT_TYPE_0x1a75", + "LH_NETEVENT_TYPE_0x1a76", + "LH_NETEVENT_TYPE_0x1a77", + "LH_NETEVENT_TYPE_0x1a78", + "LH_NETEVENT_TYPE_0x1a79", + "LH_NETEVENT_TYPE_0x1a7a", + "LH_NETEVENT_TYPE_0x1a7b", + "LH_NETEVENT_TYPE_0x1a7c", + "LH_NETEVENT_TYPE_0x1a7d", + "LH_NETEVENT_TYPE_0x1a7e", + "LH_NETEVENT_TYPE_0x1a7f", + "LH_NETEVENT_TYPE_0x1a80", + "LH_NETEVENT_TYPE_0x1a81", + "LH_NETEVENT_TYPE_0x1a82", + "LH_NETEVENT_TYPE_0x1a83", + "LH_NETEVENT_TYPE_0x1a84", + "LH_NETEVENT_TYPE_0x1a85", + "LH_NETEVENT_TYPE_0x1a86", + "LH_NETEVENT_TYPE_0x1a87", + "LH_NETEVENT_TYPE_0x1a88", + "LH_NETEVENT_TYPE_0x1a89", + "LH_NETEVENT_TYPE_0x1a8a", + "LH_NETEVENT_TYPE_0x1a8b", + "LH_NETEVENT_TYPE_0x1a8c", + "LH_NETEVENT_TYPE_0x1a8d", + "LH_NETEVENT_TYPE_0x1a8e", + "LH_NETEVENT_TYPE_0x1a8f", + "LH_NETEVENT_TYPE_0x1a90", + "LH_NETEVENT_TYPE_0x1a91", + "LH_NETEVENT_TYPE_0x1a92", + "LH_NETEVENT_TYPE_0x1a93", + "LH_NETEVENT_TYPE_0x1a94", + "LH_NETEVENT_TYPE_0x1a95", + "LH_NETEVENT_TYPE_0x1a96", + "LH_NETEVENT_TYPE_0x1a97", + "LH_NETEVENT_TYPE_0x1a98", + "LH_NETEVENT_TYPE_0x1a99", + "LH_NETEVENT_TYPE_0x1a9a", + "LH_NETEVENT_TYPE_0x1a9b", + "LH_NETEVENT_TYPE_0x1a9c", + "LH_NETEVENT_TYPE_0x1a9d", + "LH_NETEVENT_TYPE_0x1a9e", + "LH_NETEVENT_TYPE_0x1a9f", + "LH_NETEVENT_TYPE_0x1aa0", + "LH_NETEVENT_TYPE_0x1aa1", + "LH_NETEVENT_TYPE_0x1aa2", + "LH_NETEVENT_TYPE_0x1aa3", + "LH_NETEVENT_TYPE_0x1aa4", + "LH_NETEVENT_TYPE_0x1aa5", + "LH_NETEVENT_TYPE_0x1aa6", + "LH_NETEVENT_TYPE_0x1aa7", + "LH_NETEVENT_TYPE_0x1aa8", + "LH_NETEVENT_TYPE_0x1aa9", + "LH_NETEVENT_TYPE_0x1aaa", + "LH_NETEVENT_TYPE_0x1aab", + "LH_NETEVENT_TYPE_0x1aac", + "LH_NETEVENT_TYPE_0x1aad", + "LH_NETEVENT_TYPE_0x1aae", + "LH_NETEVENT_TYPE_0x1aaf", + "LH_NETEVENT_TYPE_0x1ab0", + "LH_NETEVENT_TYPE_0x1ab1", + "LH_NETEVENT_TYPE_0x1ab2", + "LH_NETEVENT_TYPE_0x1ab3", + "LH_NETEVENT_TYPE_0x1ab4", + "LH_NETEVENT_TYPE_0x1ab5", + "LH_NETEVENT_TYPE_0x1ab6", + "LH_NETEVENT_TYPE_0x1ab7", + "LH_NETEVENT_TYPE_0x1ab8", + "LH_NETEVENT_TYPE_0x1ab9", + "LH_NETEVENT_TYPE_0x1aba", + "LH_NETEVENT_TYPE_0x1abb", + "LH_NETEVENT_TYPE_0x1abc", + "LH_NETEVENT_TYPE_0x1abd", + "LH_NETEVENT_TYPE_0x1abe", + "LH_NETEVENT_TYPE_0x1abf", + "LH_NETEVENT_TYPE_0x1ac0", + "LH_NETEVENT_TYPE_0x1ac1", + "LH_NETEVENT_TYPE_0x1ac2", + "LH_NETEVENT_TYPE_0x1ac3", + "LH_NETEVENT_TYPE_0x1ac4", + "LH_NETEVENT_TYPE_0x1ac5", + "LH_NETEVENT_TYPE_0x1ac6", + "LH_NETEVENT_TYPE_0x1ac7", + "LH_NETEVENT_TYPE_0x1ac8", + "LH_NETEVENT_TYPE_0x1ac9", + "LH_NETEVENT_TYPE_0x1aca", + "LH_NETEVENT_TYPE_0x1acb", + "LH_NETEVENT_TYPE_0x1acc", + "LH_NETEVENT_TYPE_0x1acd", + "LH_NETEVENT_TYPE_0x1ace", + "LH_NETEVENT_TYPE_0x1acf", + "LH_NETEVENT_TYPE_0x1ad0", + "LH_NETEVENT_TYPE_0x1ad1", + "LH_NETEVENT_TYPE_0x1ad2", + "LH_NETEVENT_TYPE_0x1ad3", + "LH_NETEVENT_TYPE_0x1ad4", + "LH_NETEVENT_TYPE_0x1ad5", + "LH_NETEVENT_TYPE_0x1ad6", + "LH_NETEVENT_TYPE_0x1ad7", + "LH_NETEVENT_TYPE_0x1ad8", + "LH_NETEVENT_TYPE_0x1ad9", + "LH_NETEVENT_TYPE_0x1ada", + "LH_NETEVENT_TYPE_0x1adb", + "LH_NETEVENT_TYPE_0x1adc", + "LH_NETEVENT_TYPE_0x1add", + "LH_NETEVENT_TYPE_0x1ade", + "LH_NETEVENT_TYPE_0x1adf", + "LH_NETEVENT_TYPE_0x1ae0", + "LH_NETEVENT_TYPE_0x1ae1", + "LH_NETEVENT_TYPE_0x1ae2", + "LH_NETEVENT_TYPE_0x1ae3", + "LH_NETEVENT_TYPE_0x1ae4", + "LH_NETEVENT_TYPE_0x1ae5", + "LH_NETEVENT_TYPE_0x1ae6", + "LH_NETEVENT_TYPE_0x1ae7", + "LH_NETEVENT_TYPE_0x1ae8", + "LH_NETEVENT_TYPE_0x1ae9", + "LH_NETEVENT_TYPE_0x1aea", + "LH_NETEVENT_TYPE_0x1aeb", + "LH_NETEVENT_TYPE_0x1aec", + "LH_NETEVENT_TYPE_0x1aed", + "LH_NETEVENT_TYPE_0x1aee", + "LH_NETEVENT_TYPE_0x1aef", + "LH_NETEVENT_TYPE_0x1af0", + "LH_NETEVENT_TYPE_0x1af1", + "LH_NETEVENT_TYPE_0x1af2", + "LH_NETEVENT_TYPE_0x1af3", + "LH_NETEVENT_TYPE_0x1af4", + "LH_NETEVENT_TYPE_0x1af5", + "LH_NETEVENT_TYPE_0x1af6", + "LH_NETEVENT_TYPE_0x1af7", + "LH_NETEVENT_TYPE_0x1af8", + "LH_NETEVENT_TYPE_0x1af9", + "LH_NETEVENT_TYPE_0x1afa", + "LH_NETEVENT_TYPE_0x1afb", + "LH_NETEVENT_TYPE_0x1afc", + "LH_NETEVENT_TYPE_0x1afd", + "LH_NETEVENT_TYPE_0x1afe", + "LH_NETEVENT_TYPE_0x1aff", + "LH_NETEVENT_TYPE_0x1b00", + "LH_NETEVENT_TYPE_0x1b01", + "LH_NETEVENT_TYPE_0x1b02", + "LH_NETEVENT_TYPE_0x1b03", + "LH_NETEVENT_TYPE_0x1b04", + "LH_NETEVENT_TYPE_0x1b05", + "LH_NETEVENT_TYPE_0x1b06", + "LH_NETEVENT_TYPE_0x1b07", + "LH_NETEVENT_TYPE_0x1b08", + "LH_NETEVENT_TYPE_0x1b09", + "LH_NETEVENT_TYPE_0x1b0a", + "LH_NETEVENT_TYPE_0x1b0b", + "LH_NETEVENT_TYPE_0x1b0c", + "LH_NETEVENT_TYPE_0x1b0d", + "LH_NETEVENT_TYPE_0x1b0e", + "LH_NETEVENT_TYPE_0x1b0f", + "LH_NETEVENT_TYPE_0x1b10", + "LH_NETEVENT_TYPE_0x1b11", + "LH_NETEVENT_TYPE_0x1b12", + "LH_NETEVENT_TYPE_0x1b13", + "LH_NETEVENT_TYPE_0x1b14", + "LH_NETEVENT_TYPE_0x1b15", + "LH_NETEVENT_TYPE_0x1b16", + "LH_NETEVENT_TYPE_0x1b17", + "LH_NETEVENT_TYPE_0x1b18", + "LH_NETEVENT_TYPE_0x1b19", + "LH_NETEVENT_TYPE_0x1b1a", + "LH_NETEVENT_TYPE_0x1b1b", + "LH_NETEVENT_TYPE_0x1b1c", + "LH_NETEVENT_TYPE_0x1b1d", + "LH_NETEVENT_TYPE_0x1b1e", + "LH_NETEVENT_TYPE_0x1b1f", + "LH_NETEVENT_TYPE_0x1b20", + "LH_NETEVENT_TYPE_0x1b21", + "LH_NETEVENT_TYPE_0x1b22", + "LH_NETEVENT_TYPE_0x1b23", + "LH_NETEVENT_TYPE_0x1b24", + "LH_NETEVENT_TYPE_0x1b25", + "LH_NETEVENT_TYPE_0x1b26", + "LH_NETEVENT_TYPE_0x1b27", + "LH_NETEVENT_TYPE_0x1b28", + "LH_NETEVENT_TYPE_0x1b29", + "LH_NETEVENT_TYPE_0x1b2a", + "LH_NETEVENT_TYPE_0x1b2b", + "LH_NETEVENT_TYPE_0x1b2c", + "LH_NETEVENT_TYPE_0x1b2d", + "LH_NETEVENT_TYPE_0x1b2e", + "LH_NETEVENT_TYPE_0x1b2f", + "LH_NETEVENT_TYPE_0x1b30", + "LH_NETEVENT_TYPE_0x1b31", + "LH_NETEVENT_TYPE_0x1b32", + "LH_NETEVENT_TYPE_0x1b33", + "LH_NETEVENT_TYPE_0x1b34", + "LH_NETEVENT_TYPE_0x1b35", + "LH_NETEVENT_TYPE_0x1b36", + "LH_NETEVENT_TYPE_0x1b37", + "LH_NETEVENT_TYPE_0x1b38", + "LH_NETEVENT_TYPE_0x1b39", + "LH_NETEVENT_TYPE_0x1b3a", + "LH_NETEVENT_TYPE_0x1b3b", + "LH_NETEVENT_TYPE_0x1b3c", + "LH_NETEVENT_TYPE_0x1b3d", + "LH_NETEVENT_TYPE_0x1b3e", + "LH_NETEVENT_TYPE_0x1b3f", + "LH_NETEVENT_TYPE_0x1b40", + "LH_NETEVENT_TYPE_0x1b41", + "LH_NETEVENT_TYPE_0x1b42", + "LH_NETEVENT_TYPE_0x1b43", + "LH_NETEVENT_TYPE_0x1b44", + "LH_NETEVENT_TYPE_0x1b45", + "LH_NETEVENT_TYPE_0x1b46", + "LH_NETEVENT_TYPE_0x1b47", + "LH_NETEVENT_TYPE_0x1b48", + "LH_NETEVENT_TYPE_0x1b49", + "LH_NETEVENT_TYPE_0x1b4a", + "LH_NETEVENT_TYPE_0x1b4b", + "LH_NETEVENT_TYPE_0x1b4c", + "LH_NETEVENT_TYPE_0x1b4d", + "LH_NETEVENT_TYPE_0x1b4e", + "LH_NETEVENT_TYPE_0x1b4f", + "LH_NETEVENT_TYPE_0x1b50", + "LH_NETEVENT_TYPE_0x1b51", + "LH_NETEVENT_TYPE_0x1b52", + "LH_NETEVENT_TYPE_0x1b53", + "LH_NETEVENT_TYPE_0x1b54", + "LH_NETEVENT_TYPE_0x1b55", + "LH_NETEVENT_TYPE_0x1b56", + "LH_NETEVENT_TYPE_0x1b57", + "LH_NETEVENT_TYPE_0x1b58", + "LH_NETEVENT_TYPE_0x1b59", + "LH_NETEVENT_TYPE_0x1b5a", + "LH_NETEVENT_TYPE_0x1b5b", + "LH_NETEVENT_TYPE_0x1b5c", + "LH_NETEVENT_TYPE_0x1b5d", + "LH_NETEVENT_TYPE_0x1b5e", + "LH_NETEVENT_TYPE_0x1b5f", + "LH_NETEVENT_TYPE_0x1b60", + "LH_NETEVENT_TYPE_0x1b61", + "LH_NETEVENT_TYPE_0x1b62", + "LH_NETEVENT_TYPE_0x1b63", +}; + +struct LHDynamicQueueNode_pLHNetEvent_ +{ + struct LHNetEvent* payload; /* 0x0 */ + struct LHDynamicQueueNode_pLHNetEvent_* next; +}; +static_assert(sizeof(struct LHDynamicQueueNode_pLHNetEvent_) == 0x8, "Data type is of wrong size"); + +struct LHDynamicQueue_pLHNetEvent_ +{ + struct LHDynamicQueueNode_pLHNetEvent_* head; /* 0x0 */ + struct LHDynamicQueueNode_pLHNetEvent_* tail; + uint32_t count; +}; +static_assert(sizeof(struct LHDynamicQueue_pLHNetEvent_) == 0xc, "Data type is of wrong size"); + +struct LHNetEvent +{ + struct LHPacket* packet; /* 0x0 */ + int field_0x4; + struct LHTransportInfo transport_info; +}; +static_assert(sizeof(struct LHNetEvent) == 0x7c, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 10016a80 mac 10101090 LHNetEvent::RawDecode(LHNetEvent * this, char * param_1, char * param_2) +enum LH_RETURN __fastcall RawDecode__10LHNetEventFPcPc(struct LHNetEvent* this, const void* edx, const char* param_1, const char* param_2); + +#endif /* BW1_DECOMP_LH_NET_EVENT_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHNetUser.h b/libs/lionhead/lhmultiplayer/ver4.0/LHNetUser.h new file mode 100644 index 0000000..8b358e7 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHNetUser.h @@ -0,0 +1,19 @@ +#ifndef BW1_DECOMP_LH_NET_USER_INCLUDED_H +#define BW1_DECOMP_LH_NET_USER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +struct LH_USER_ID +{ + uint32_t field_0x0; +}; +static_assert(sizeof(struct LH_USER_ID) == 0x4, "Data type is of wrong size"); + +struct LHNetUser +{ + struct LH_USER_ID id; /* 0x0 */ +}; +static_assert(sizeof(struct LHNetUser) == 0x4, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_NET_USER_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHNetUtils.h b/libs/lionhead/lhmultiplayer/ver4.0/LHNetUtils.h new file mode 100644 index 0000000..a57b605 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHNetUtils.h @@ -0,0 +1,11 @@ +#ifndef BW1_DECOMP_LH_NET_UTILS_INCLUDED_H +#define BW1_DECOMP_LH_NET_UTILS_INCLUDED_H + +#include /* For char16_t */ + +// win1.41 100189d0 mac 101058d0 ushort * LHNetGetCurrentUsedProfile(void) +char16_t* __cdecl LHNetGetCurrentUsedProfile__Fv(void); +// win1.41 10018b30 mac 101054f0 ushort * LHNetGetCurrentProfileNameFromRegistry(void) +char16_t* __cdecl LHNetGetCurrentProfileNameFromRegistry__Fv(void); + +#endif /* BW1_DECOMP_LH_NET_UTILS_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHPacket.h b/libs/lionhead/lhmultiplayer/ver4.0/LHPacket.h new file mode 100644 index 0000000..17683d6 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHPacket.h @@ -0,0 +1,24 @@ +#ifndef BW1_DECOMP_LH_PACKET_INCLUDED_H +#define BW1_DECOMP_LH_PACKET_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint8_t */ + +#include "LHNetUser.h" /* For struct LH_USER_ID */ + +struct LHPacketHeader +{ + uint16_t length; /* 0x0 */ + uint16_t netevent_type; + struct LH_USER_ID user_id; +}; +static_assert(sizeof(struct LHPacketHeader) == 0x8, "Data type is of wrong size"); + +struct LHPacket +{ + struct LHPacketHeader header; /* 0x0 */ + uint8_t payload[0x0]; +}; +static_assert(sizeof(struct LHPacket) == 0x8, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_PACKET_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHPacketisableObject.h b/libs/lionhead/lhmultiplayer/ver4.0/LHPacketisableObject.h new file mode 100644 index 0000000..290dd63 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHPacketisableObject.h @@ -0,0 +1,22 @@ +#ifndef BW1_DECOMP_LH_PACKETISABLE_OBJECT_INCLUDED_H +#define BW1_DECOMP_LH_PACKETISABLE_OBJECT_INCLUDED_H + +#include /* For static_assert */ +#include /* For uintptr_t */ + +struct LHPacketisableObjectVftable +{ + uintptr_t (__fastcall* GetEncodedLength)(void* param_0, const void* edx); /* 0x0 */ + uintptr_t (__fastcall* EncodeToBuffer)(void* param_0, const void* edx); + uintptr_t (__fastcall* DecodeFromBuffer)(void* param_0, const void* edx); + uintptr_t (__fastcall* ClearObject)(void* param_0, const void* edx); +}; +static_assert(sizeof(struct LHPacketisableObjectVftable) == 0x10, "Data type is of wrong size"); + +struct LHPacketisableObject +{ + struct LHPacketisableObjectVftable* vftable; /* 0x0 */ +}; +static_assert(sizeof(struct LHPacketisableObject) == 0x4, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_PACKETISABLE_OBJECT_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHPlayer.h b/libs/lionhead/lhmultiplayer/ver4.0/LHPlayer.h new file mode 100644 index 0000000..83e72d7 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHPlayer.h @@ -0,0 +1,28 @@ +#ifndef BW1_DECOMP_LH_PLAYER_INCLUDED_H +#define BW1_DECOMP_LH_PLAYER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ +#include /* For char16_t */ + +#include "LHPacketisableObject.h" /* For struct LHPacketisableObject */ +#include "LHTransportInfo.h" /* For struct LHTransportInfo */ + +struct LHPlayer +{ + struct LHPacketisableObject super; /* 0x0 */ + char user_filename[0x104]; + void* user_data; /* 0x108 */ + uint32_t user_data_len; + char16_t name[0x32]; /* 0x110 */ + uint32_t player_id; /* 0x174 */ + uint32_t user_id; + void* system_data; + struct LHTransportInfo transport_info; /* 0x180 */ + uint32_t field_0x1f4; + uint32_t field_0x1f8; + uint32_t field_0x1fc; +}; +static_assert(sizeof(struct LHPlayer) == 0x200, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_PLAYER_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHSerial.h b/libs/lionhead/lhmultiplayer/ver4.0/LHSerial.h new file mode 100644 index 0000000..b0c62cb --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHSerial.h @@ -0,0 +1,26 @@ +#ifndef BW1_DECOMP_LH_SERIAL_INCLUDED_H +#define BW1_DECOMP_LH_SERIAL_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t */ + +// Forward Declares + +struct LHPacket; + +struct LHSerial +{ + uint32_t field_0x0; + uint32_t field_0x4; + struct LHPacket* packet; +}; +static_assert(sizeof(struct LHSerial) == 0xc, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 1001c190 mac inlined LHSerial::SendPacket(LHPacket*) +enum LH_RETURN __fastcall SendPacket__8LHSerialFP8LHPacket(struct LHSerial* this, const void* edx, struct LHPacket* packet); +// win1.41 1001c1b0 mac inlined LHSerial::RecievePacket(LHPacket **) +enum LH_RETURN __fastcall RecievePacket__8LHSerialFPP8LHPacket(struct LHSerial* this, const void* edx, struct LHPacket** packet); + +#endif /* BW1_DECOMP_LH_SERIAL_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHServerPlayer.h b/libs/lionhead/lhmultiplayer/ver4.0/LHServerPlayer.h new file mode 100644 index 0000000..2de58d5 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHServerPlayer.h @@ -0,0 +1,25 @@ +#ifndef BW1_DECOMP_LH_SERVER_PLAYER_INCLUDED_H +#define BW1_DECOMP_LH_SERVER_PLAYER_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include /* For bool32_t */ + +#include "LHPlayer.h" /* For struct LHPlayer */ + +// Forward Declares + +struct LHConnection; + +struct LHServerPlayer +{ + struct LHPlayer super; /* 0x0 */ + uint8_t field_0x200[0x10]; + struct LHConnection* connection; /* 0x210 */ + uint32_t field_0x214; + bool32_t runs_message_server; +}; +static_assert(sizeof(struct LHServerPlayer) == 0x21c, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_SERVER_PLAYER_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHSession.h b/libs/lionhead/lhmultiplayer/ver4.0/LHSession.h new file mode 100644 index 0000000..cd2f7c3 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHSession.h @@ -0,0 +1,57 @@ +#ifndef BW1_DECOMP_LH_SESSION_INCLUDED_H +#define BW1_DECOMP_LH_SESSION_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint8_t */ + +#include "LHConnection.h" /* For struct LHConnection */ + +struct LHSession +{ + struct LHConnection conn; /* 0x0 */ + uint8_t field_0x88; /* 0x90 */ + uint8_t field_0x89; + uint8_t field_0x8a; + uint8_t field_0x8b; + int field_0x8c; + uint8_t field_0x90; + uint8_t field_0x91; + uint8_t field_0x92; + uint8_t field_0x93; + uint8_t field_0x94; + uint8_t field_0x95; + uint8_t field_0x96; + uint8_t field_0x97; + uint8_t field_0x98; /* 0xa0 */ + uint8_t field_0x99; + uint8_t field_0x9a; + uint8_t field_0x9b; + uint8_t field_0x9c; + uint8_t field_0x9d; + uint8_t field_0x9e; + uint8_t field_0x9f; + int field_0xa0; + uint8_t field_0xa4; + uint8_t field_0xa5; + uint8_t field_0xa6; + uint8_t field_0xa7; + uint8_t field_0xa8; /* 0xb0 */ + uint8_t field_0xa9; + uint8_t field_0xaa; + uint8_t field_0xab; + uint8_t field_0xac; + uint8_t field_0xad; + uint8_t field_0xae; + uint8_t field_0xaf; +}; +static_assert(sizeof(struct LHSession) == 0xb8, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 1001dab0 mac 10036a3c LHSession::IsSinglePlayer(void) +bool __fastcall IsSinglePlayer__9LHSessionFv(struct LHSession* this); +// win1.41 1001e5e0 mac inlined LHSession::NextPacketIsSuperpacket(void) +bool __fastcall NextPacketIsSuperpacket__9LHSessionFv(struct LHSession* this); + +#endif /* BW1_DECOMP_LH_SESSION_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHSocket.h b/libs/lionhead/lhmultiplayer/ver4.0/LHSocket.h new file mode 100644 index 0000000..40e43f1 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHSocket.h @@ -0,0 +1,44 @@ +#ifndef BW1_DECOMP_LH_SOCKET_INCLUDED_H +#define BW1_DECOMP_LH_SOCKET_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +// Forward Declares + +struct LHPacket; +struct LHSocket; +struct LHTransportInfo; + +struct LHSocketVftable +{ + enum LH_RETURN (__fastcall* Connect)(struct LHSocket* this, const void* edx, struct LHTransportInfo* transport_info); /* 0x0 */ + void* (__fastcall* SendDatagram)(struct LHSocket* this); + void* (__fastcall* SendDatagramPacket)(struct LHSocket* this); + void* (__fastcall* Disconnect)(struct LHSocket* this); + enum LH_RETURN (__fastcall* Send)(struct LHSocket* this, const void* edx, const void* data, long data_len); /* 0x10 */ + void* (__fastcall* Receive)(struct LHSocket* this); + enum LH_RETURN (__fastcall* SendPacket)(struct LHSocket* this, const void* edx, const struct LHPacket* packet); + void* (__fastcall* ReceivePacket)(struct LHSocket* this); + void* (__fastcall* ListenForBroadcastRequests)(struct LHSocket* this); /* 0x20 */ + void* (__fastcall* ReceiveUDPPacket)(struct LHSocket* this); +}; +static_assert(sizeof(struct LHSocketVftable) == 0x28, "Data type is of wrong size"); + +struct LHSocket +{ + struct LHSocketVftable* vftable; /* 0x0 */ + uint32_t field_0x4; + uint32_t field_0x8; + uint32_t field_0xc; + uint8_t ip_bin[0x4]; /* 0x10 */ + uint32_t field_0x14; + uint32_t field_0x18; + char** name; + uint32_t send_bytes_total; /* 0x20 */ + uint32_t send_bytes; + uint32_t connection_status; +}; +static_assert(sizeof(struct LHSocket) == 0x2c, "Data type is of wrong size"); + +#endif /* BW1_DECOMP_LH_SOCKET_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHSocketTCP.h b/libs/lionhead/lhmultiplayer/ver4.0/LHSocketTCP.h new file mode 100644 index 0000000..7ece7c2 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHSocketTCP.h @@ -0,0 +1,43 @@ +#ifndef BW1_DECOMP_LH_SOCKET_TCP_INCLUDED_H +#define BW1_DECOMP_LH_SOCKET_TCP_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint32_t, uint8_t */ + +#include "LHSocket.h" /* For struct LHSocket */ + +// Forward Declares + +struct LHPacket; +struct LHTransportInfo; + +struct LHSocketTCP +{ + struct LHSocket super; /* 0x0 */ + uint8_t field_0x2c[0x5013c]; +}; +static_assert(sizeof(struct LHSocketTCP) == 0x50168, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 10020c30 mac 10113b90 LHSocketTCP::DoAttemptReadPacketNonBlocking(void) +enum LH_RETURN __fastcall DoAttemptReadPacketNonBlocking__11LHSocketTCPFv(struct LHSocketTCP* this); +// win1.41 10020e40 mac 10113960 LHSocketTCP::DecompressPacketIfCompressed(void) +enum LH_RETURN __fastcall DecompressPacketIfCompressed__11LHSocketTCPFv(struct LHSocketTCP* this); +// win1.41 10020f80 mac 10113770 LHSocketTCP::ReceiveRaw(void *, long *) +enum LH_RETURN __fastcall ReceiveRaw__11LHSocketTCPFPvPl(struct LHSocketTCP* this, const void* edx, void* data, long* data_len); +// win1.41 10021120 mac 10113390 LHSocketTCP::ReceivePacket(LHPacket **) +enum LH_RETURN __fastcall ReceivePacket__11LHSocketTCPFPP8LHPacket(struct LHSocketTCP* this, const void* edx, struct LHPacket** packet); +// win1.41 10021470 mac 10112f10 LHSocketTCP::ReceiveUDPPacket(LHPacket **, unsigned long, LHTransportInfo *) +enum LH_RETURN __fastcall ReceiveUDPPacket__11LHSocketTCPFPP8LHPacketUlP15LHTransportInfo(struct LHSocketTCP* this, const void* edx, struct LHPacket** packet, uint32_t size, struct LHTransportInfo* transport_info); + +// Override methods + +// win1.41 100206e0 mac 10114410 LHSocketTCP::Connect(LHTransportInfo *) +enum LH_RETURN __fastcall Connect__11LHSocketTCPFP15LHTransportInfo(struct LHSocketTCP* this, const void* edx, struct LHTransportInfo* transport_info); +// win1.41 10020900 mac 10114350 LHSocketTCP::Send(void *, long) +enum LH_RETURN __fastcall Send__11LHSocketTCPFPvl(struct LHSocketTCP* this, const void* edx, const void* data, long data_len); +// win1.41 100210c0 mac 10113550 LHSocketTCP::SendPacket(LHPacket *) +enum LH_RETURN __fastcall SendPacket__11LHSocketTCPFP8LHPacket(struct LHSocketTCP* this, const void* edx, const struct LHPacket* packet); + +#endif /* BW1_DECOMP_LH_SOCKET_TCP_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHTransport.h b/libs/lionhead/lhmultiplayer/ver4.0/LHTransport.h new file mode 100644 index 0000000..dc2f269 --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHTransport.h @@ -0,0 +1,87 @@ +#ifndef BW1_DECOMP_LH_TRANSPORT_INCLUDED_H +#define BW1_DECOMP_LH_TRANSPORT_INCLUDED_H + +#include /* For static_assert */ +#include /* For bool */ +#include /* For uint32_t, uint8_t, uintptr_t */ + +#include /* For bool32_t */ + +#include "LHNetEvent.h" /* For enum LH_NETEVENT_TYPE */ +#include "LHTransportInfo.h" /* For enum LH_TRANSPORT_TYPE */ + +// Forward Declares + +struct LHDynamicQueue_pLHNetEvent_; +struct LHNetEvent; +struct LHTransport; +struct LHTransportInfo; + +struct LHTransportVftable +{ + struct LHTransport* (__fastcall* __dt)(struct LHTransport* this, const void* edx, bool param_1); /* 0x0 */ + enum LH_RETURN (__fastcall* Open)(struct LHTransport* this, const void* edx, struct LHDynamicQueue_pLHNetEvent_* param_1, struct LHDynamicQueue_pLHNetEvent_* param_2, struct LHTransportInfo* param_3); + uintptr_t (__fastcall* OpenConnectionToTransport)(struct LHTransport* this); + uintptr_t (__fastcall* Close)(struct LHTransport* this); + uintptr_t (__fastcall* Disconnect)(struct LHTransport* this); /* 0x10 */ + uintptr_t (__fastcall* Flushed)(struct LHTransport* this); + uintptr_t (__fastcall* Flush)(struct LHTransport* this); + void* (__fastcall* Read)(struct LHTransport* this, const void* edx, uint32_t size); + void (__fastcall* Write)(struct LHTransport* this, const void* edx, struct LHNetEvent* net_event); /* 0x20 */ + uintptr_t (__fastcall* AddToIncommingEventQ)(struct LHTransport* this); + uintptr_t (__fastcall* AddToFrontOfIncomingEventQ)(struct LHTransport* this); + uintptr_t (__fastcall* AddAtPositionInIncomingEventQ)(struct LHTransport* this); + bool (__fastcall* CheckForEvents)(struct LHTransport* this); /* 0x30 */ + uintptr_t (__fastcall* IsDisconnected)(struct LHTransport* this); + uintptr_t (__fastcall* CheckForEvent)(struct LHTransport* this); + uintptr_t (__fastcall* GetSignalDataToRead)(struct LHTransport* this); + uintptr_t (__fastcall* GetTransportInfo)(struct LHTransport* this); /* 0x40 */ + uintptr_t (__fastcall* WaitForEvent)(struct LHTransport* this); + struct LHNetEvent* (__fastcall* ExtractEvent)(struct LHTransport* this, const void* edx, enum LH_NETEVENT_TYPE type, uint32_t size); + uintptr_t (__fastcall* RawPeek)(struct LHTransport* this); + uintptr_t (__fastcall* Peek)(struct LHTransport* this); /* 0x50 */ +}; +static_assert(sizeof(struct LHTransportVftable) == 0x54, "Data type is of wrong size"); + +struct LHTransport +{ + struct LHTransportVftable* vftable; /* 0x0 */ + uint32_t field_0x4; + bool32_t owns_read_queue; + bool32_t owns_wrtie_queue; + struct LHNetEvent* current_event; /* 0x10 */ + uint32_t field_0x14; + uint32_t field_0x18; + struct LHDynamicQueue_pLHNetEvent_* write_queue; + struct LHDynamicQueue_pLHNetEvent_* read_queue; /* 0x20 */ + uint8_t field_0x24; +}; +static_assert(sizeof(struct LHTransport) == 0x28, "Data type is of wrong size"); + +// Static methods + +// win1.41 10022a70 mac 10119960 LHTransport::Create(LH_TRANSPORT_TYPE) +struct LHTransport* __cdecl Create__11LHTransportF17LH_TRANSPORT_TYPE(enum LH_TRANSPORT_TYPE type); + +// Non-virtual methods + +// win1.41 10022550 mac 1011b170 LHTransport::OpenConnectionToTransport(LHTransport *, void (*)(void *), void *) +enum LH_RETURN __fastcall OpenConnectionToTransport__11LHTransportFP11LHTransportPFPv_vPv(struct LHTransport* this, const void* edx, struct LHTransport* param_1, void (__cdecl* param_2)(void * param_1), void* param_3); + +// Override methods + +// win1.41 10022790 mac 1011acc0 LHTransport::Write(LHNetEvent *) +void __fastcall Write__11LHTransportFP10LHNetEvent(struct LHTransport* this, const void* edx, struct LHNetEvent* net_event); + +struct LHTransportRemote +{ + uint8_t field_0x0; +}; +static_assert(sizeof(struct LHTransportRemote) == 0x1, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 10023880 mac 101178b0 LHTransportRemote::RemoteTransportThread(void) +void __fastcall RemoteTransportThread__17LHTransportRemoteFv(struct LHTransportRemote* this); + +#endif /* BW1_DECOMP_LH_TRANSPORT_INCLUDED_H */ diff --git a/libs/lionhead/lhmultiplayer/ver4.0/LHTransportInfo.h b/libs/lionhead/lhmultiplayer/ver4.0/LHTransportInfo.h new file mode 100644 index 0000000..2590b8e --- /dev/null +++ b/libs/lionhead/lhmultiplayer/ver4.0/LHTransportInfo.h @@ -0,0 +1,51 @@ +#ifndef BW1_DECOMP_LH_TRANSPORT_INFO_INCLUDED_H +#define BW1_DECOMP_LH_TRANSPORT_INFO_INCLUDED_H + +#include /* For static_assert */ +#include /* For uint16_t, uint8_t, uintptr_t */ + +enum LH_TRANSPORT_TYPE +{ + LH_TRANSPORT_TYPE_BASE = 0x1, + LH_TRANSPORT_TYPE_SYNC = 0x2, + LH_TRANSPORT_TYPE_ASYNC = 0x3, + LH_TRANSPORT_TYPE_TCP = 0x4, + LH_TRANSPORT_TYPE_UDP = 0x5, + _LH_TRANSPORT_TYPE_COUNT = 0x6 +}; +static_assert(sizeof(enum LH_TRANSPORT_TYPE) == 0x4, "Data type is of wrong size"); + +static const char* LH_TRANSPORT_TYPE_strs[_LH_TRANSPORT_TYPE_COUNT] = { + "LH_TRANSPORT_TYPE_0x0", + "LH_TRANSPORT_TYPE_BASE", + "LH_TRANSPORT_TYPE_SYNC", + "LH_TRANSPORT_TYPE_ASYNC", + "LH_TRANSPORT_TYPE_TCP", + "LH_TRANSPORT_TYPE_UDP", +}; + +struct LHTransportInfoVftable +{ + uintptr_t GetEncodedLength; /* 0x0 */ + uintptr_t EncodeToBuffer; + uintptr_t DecodeFromBuffer; + uintptr_t ClearObject; +}; +static_assert(sizeof(struct LHTransportInfoVftable) == 0x10, "Data type is of wrong size"); + +struct LHTransportInfo +{ + struct LHTransportInfoVftable* vftable; /* 0x0 */ + enum LH_TRANSPORT_TYPE type; + int data_len; + uint16_t port; + char ip[0x64]; +}; +static_assert(sizeof(struct LHTransportInfo) == 0x74, "Data type is of wrong size"); + +// Non-virtual methods + +// win1.41 100243b0 mac 1011b9e0 LHTransportInfo::DecodeFromBuffer(unsigned char *) +uint8_t* __fastcall DecodeFromBuffer__15LHTransportInfoFPUc(struct LHTransportInfo* this, const void* edx, const uint8_t* data); + +#endif /* BW1_DECOMP_LH_TRANSPORT_INFO_INCLUDED_H */ diff --git a/libs/reversing_utils/re_common.h b/libs/reversing_utils/re_common.h new file mode 100644 index 0000000..08f1865 --- /dev/null +++ b/libs/reversing_utils/re_common.h @@ -0,0 +1,33 @@ +#ifndef BW1_DECOMP_REVERSING_UTILS_COMMON_INCLUDED_H +#define BW1_DECOMP_REVERSING_UTILS_COMMON_INCLUDED_H + +#include /* For uint32_t */ +#include /* For fmaxf, fminf */ + +struct HWND__; typedef struct HWND__ *HWND; +typedef struct _RTL_CRITICAL_SECTION RTL_CRITICAL_SECTION; + +typedef uint32_t bool32_t; + +struct vec2u16 +{ + uint16_t x, y; +}; + +inline float clampf(float a, float minimum, float maximum) { + return fminf(fmaxf(a, minimum), maximum); +} + +inline float saturatef(float a) { + return clampf(a, 0.0f, 1.0f); +} + +inline int clampi(int a, int minimum, int maximum) { + if (a < minimum) + return minimum; + if (a > maximum) + return maximum; + return a; +} + +#endif /* BW1_DECOMP_REVERSING_UTILS_COMMON_INCLUDED_H */ diff --git a/libs/reversing_utils/re_rtti.h b/libs/reversing_utils/re_rtti.h new file mode 100644 index 0000000..07d51c4 --- /dev/null +++ b/libs/reversing_utils/re_rtti.h @@ -0,0 +1,46 @@ +#ifndef BW1_DECOMP_REVERSING_UTILS_RTTI_INCLUDED_H +#define BW1_DECOMP_REVERSING_UTILS_RTTI_INCLUDED_H + +#include +#include +#include + +#define VT_TO_RTTI_TYPE_DESCRIPTOR(VT) \ + (((const struct RTTICompleteObjectLocator*)((uintptr_t)(VT) - 4))->pTypeDescriptor) + +struct RTTIBaseClassDescriptor { + struct TypeDescriptor* pTypeDescriptor; + unsigned long numContainedBases; + unsigned where; + unsigned long attributes; +}; + +struct RTTIBaseClassArray { + struct RTTIBaseClassDescriptor* arrayOfBaseClassDescriptors[0]; +}; + +struct RTTIClassHierarchyDescriptor { + unsigned long signature; + unsigned long attributes; + unsigned long numBaseClasses; + struct RTTIBaseClassArray* pBaseClassArray; +}; + +struct TypeDescriptor { + const void* pVFTable; + void* spare; + const char name[]; +}; + +struct RTTICompleteObjectLocator { + unsigned long signature; + unsigned long offset; + unsigned long cdOffset; + struct TypeDescriptor* pTypeDescriptor; + struct RTTIClassHierarchyDescriptor* pClassDescriptor; +}; + +void* __cdecl __RTDynamicCast(void* intptr, size_t vf_delta, struct TypeDescriptor* src_type, struct TypeDescriptor* target_type, bool is_reference); +const char* __RTTypeName(const void* intptr); + +#endif /* BW1_DECOMP_REVERSING_UTILS_RTTI_INCLUDED_H */ diff --git a/scripts/headers/analyze_headers.py b/scripts/headers/analyze_headers.py index 23afd77..69b98c7 100644 --- a/scripts/headers/analyze_headers.py +++ b/scripts/headers/analyze_headers.py @@ -421,7 +421,7 @@ def fix_up_type_spelling(t): def main(header_path=None, out_path="extracted_reversing_data_bw_141.json") -> bool: if header_path is None: - header_path = Path(__file__).parent.parent.parent / "generated_headers_output" + header_path = Path(__file__).parent.parent.parent elif type(header_path) is str: header_path = Path(header_path)