mirror of
https://github.com/zeldaret/st
synced 2026-07-11 07:15:33 -04:00
Misc Stuff 5 (#63)
* name item 31 to 34 * name item 25 to 29 * decompile PassengerManager (95%) * started cargo manager * local attribute * passenger/cargo manager ov001 functions * name item manager functions * fix build issues & more docs on 027e0cd8 * format
This commit is contained in:
@@ -26,9 +26,9 @@ public:
|
||||
/* A4 */ u32 mUnk_A4;
|
||||
/* A8 */ u32 mUnk_A8;
|
||||
/* AC */ bool mUnk_AC;
|
||||
/* AC */ unk8 mUnk_AD; // pad?
|
||||
/* AC */ unk8 mUnk_AE; // pad?
|
||||
/* AC */ unk8 mUnk_AF; // pad?
|
||||
/* AC */ unk8 mUnk_AD; // pad?
|
||||
/* AC */ unk8 mUnk_AE; // pad?
|
||||
/* AC */ unk8 mUnk_AF; // pad?
|
||||
/* B0 */ ActorUnkSWTM_B0 mUnk_B0[5]; // unused?
|
||||
/* C4 */
|
||||
|
||||
|
||||
@@ -17,20 +17,20 @@ enum CutsceneIndex_ {
|
||||
/* 8 */ CutsceneIndex_WalkingToSpiritTower,
|
||||
/* 9 */ CutsceneIndex_FirstAnjeanMeeting,
|
||||
/* 10 */ CutsceneIndex_FirstPhantomPossession,
|
||||
/* 11 */ CutsceneIndex_ForestTempleCompleted_01, // Altar appearing in boss room
|
||||
/* 12 */ CutsceneIndex_ForestTempleCompleted_02, // Forest Realm Spirit Tracks restoring
|
||||
/* 13 */ CutsceneIndex_ForestTempleCompleted_03, // First part of Spirit Tower split re-attatching
|
||||
/* 14 */ CutsceneIndex_BlizzardTempleCompleted_01, // Altar appearing in boss room
|
||||
/* 15 */ CutsceneIndex_BlizzardTempleCompleted_02, // Snow Realm Spirit Tracks restoring
|
||||
/* 16 */ CutsceneIndex_BlizzardTempleCompleted_03, // Second part of Spirit Tower split re-attatching
|
||||
/* 17 */ CutsceneIndex_MarineTempleCompleted_01, // Altar appearing in boss room
|
||||
/* 18 */ CutsceneIndex_MarineTempleCompleted_02, // Ocean Realm Spirit Tracks restoring
|
||||
/* 19 */ CutsceneIndex_MarineTempleCompleted_03, // Third part of Spirit Tower split re-attatching
|
||||
/* 11 */ CutsceneIndex_ForestTempleCompleted_01, // Altar appearing in boss room
|
||||
/* 12 */ CutsceneIndex_ForestTempleCompleted_02, // Forest Realm Spirit Tracks restoring
|
||||
/* 13 */ CutsceneIndex_ForestTempleCompleted_03, // First part of Spirit Tower split re-attatching
|
||||
/* 14 */ CutsceneIndex_BlizzardTempleCompleted_01, // Altar appearing in boss room
|
||||
/* 15 */ CutsceneIndex_BlizzardTempleCompleted_02, // Snow Realm Spirit Tracks restoring
|
||||
/* 16 */ CutsceneIndex_BlizzardTempleCompleted_03, // Second part of Spirit Tower split re-attatching
|
||||
/* 17 */ CutsceneIndex_MarineTempleCompleted_01, // Altar appearing in boss room
|
||||
/* 18 */ CutsceneIndex_MarineTempleCompleted_02, // Ocean Realm Spirit Tracks restoring
|
||||
/* 19 */ CutsceneIndex_MarineTempleCompleted_03, // Third part of Spirit Tower split re-attatching
|
||||
/* 20 */ CutsceneIndex_StavenInTOSAfterFireGlyph_01, // Staven appearing in ToS
|
||||
/* 21 */ CutsceneIndex_StavenInTOSAfterFireGlyph_02, // Zelda and Link falling inside tower's lobby
|
||||
/* 22 */ CutsceneIndex_MountainTempleCompleted_01, // Altar appearing in boss room
|
||||
/* 23 */ CutsceneIndex_MountainTempleCompleted_02, // Fire Realm Spirit Tracks restoring
|
||||
/* 24 */ CutsceneIndex_MountainTempleCompleted_03, // Fourth part of Spirit Tower split re-attatching
|
||||
/* 22 */ CutsceneIndex_MountainTempleCompleted_01, // Altar appearing in boss room
|
||||
/* 23 */ CutsceneIndex_MountainTempleCompleted_02, // Fire Realm Spirit Tracks restoring
|
||||
/* 24 */ CutsceneIndex_MountainTempleCompleted_03, // Fourth part of Spirit Tower split re-attatching
|
||||
/* 25 */ CutsceneIndex_StavenPreBattle,
|
||||
/* 26 */ CutsceneIndex_StavenPostBattle,
|
||||
/* 27 */ CutsceneIndex_MalladusOnTOSSummit_01, // Malladus appearing
|
||||
|
||||
@@ -63,11 +63,11 @@ class FileSelectMicTest : public GameModeManagerBase_104 {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 01C */ FSMicTestState mState;
|
||||
/* 020 */ UnkSystem2_UnkSubSystem5 mUnk_020; // "mic test" string
|
||||
/* 020 */ UnkSystem2_UnkSubSystem5 mUnk_020; // "mic test" string
|
||||
/* 258 */ UnkStruct_ov019_020d24c8_28_258 mUnk_258; // "mic test" background
|
||||
/* 270 */ UnkStruct_ov019_020d24c8_28_270 mUnk_270; // microphone level display (green to red bars + background)
|
||||
/* 304 */ UnkStruct_ov019_020d24c8_28_304 mUnk_304; // "go back" arrow
|
||||
/* 3F8 */ UnkSystem2_UnkSubSystem5 mUnk_3F8; // "please face the mic" string
|
||||
/* 3F8 */ UnkSystem2_UnkSubSystem5 mUnk_3F8; // "please face the mic" string
|
||||
/* 630 */ bool mUnk_630;
|
||||
/* 631 */ unk8 mUnk_631;
|
||||
/* 632 */ unk8 mUnk_632;
|
||||
|
||||
@@ -51,20 +51,20 @@ public:
|
||||
/* 0008 */ UnkStruct_ov019_020d24c8_28_258 mUnk_008;
|
||||
|
||||
// message speed
|
||||
/* 0020 */ UnkSystem2_UnkSubSystem5 mUnk_020; // label
|
||||
/* 0258 */ UnkSystem2_UnkSubSystem5 mUnk_258; // current string
|
||||
/* 0020 */ UnkSystem2_UnkSubSystem5 mUnk_020; // label
|
||||
/* 0258 */ UnkSystem2_UnkSubSystem5 mUnk_258; // current string
|
||||
/* 0490 */ UnkSystem2_UnkSubSystem1_Derived1 mUnk_490; // left arrow
|
||||
/* 04F0 */ UnkSystem2_UnkSubSystem1_Derived1 mUnk_4F0; // right arrow
|
||||
|
||||
// sound settings
|
||||
/* 0550 */ UnkSystem2_UnkSubSystem5 mUnk_550; // label
|
||||
/* 0788 */ UnkSystem2_UnkSubSystem5 mUnk_788; // current string
|
||||
/* 0550 */ UnkSystem2_UnkSubSystem5 mUnk_550; // label
|
||||
/* 0788 */ UnkSystem2_UnkSubSystem5 mUnk_788; // current string
|
||||
/* 09C0 */ UnkSystem2_UnkSubSystem1_Derived1 mUnk_9C0; // left arrow
|
||||
/* 0A20 */ UnkSystem2_UnkSubSystem1_Derived1 mUnk_A20; // right arrow
|
||||
|
||||
// handedness
|
||||
/* 0A80 */ UnkSystem2_UnkSubSystem5 mUnk_A80; // label
|
||||
/* 0CB8 */ UnkSystem2_UnkSubSystem5 mUnk_CB8; // current type string
|
||||
/* 0A80 */ UnkSystem2_UnkSubSystem5 mUnk_A80; // label
|
||||
/* 0CB8 */ UnkSystem2_UnkSubSystem5 mUnk_CB8; // current type string
|
||||
/* 0EF0 */ UnkSystem2_UnkSubSystem1_Derived1 mUnk_EF0; // left arrow
|
||||
/* 0F50 */ UnkSystem2_UnkSubSystem1_Derived1 mUnk_F50; // right arrow
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ public:
|
||||
|
||||
// data_02044018 vtable
|
||||
/* 00 */ virtual ~GameModeBase();
|
||||
/* 08 */ virtual void vfunc_08(); // Init
|
||||
/* 08 */ virtual void vfunc_08(); // Init
|
||||
/* 0C */ virtual void vfunc_0C() = 0; // Update
|
||||
/* 10 */ virtual void vfunc_10();
|
||||
/* 14 */ virtual void vfunc_14();
|
||||
|
||||
+118
-118
@@ -100,124 +100,124 @@ enum ItemFlag_ {
|
||||
typedef s32 ItemId;
|
||||
typedef s16 ItemId_s16;
|
||||
enum ItemId_ {
|
||||
/* 0xFF */ ItemId_None = -1,
|
||||
/* 0x00 */ ItemId_Nothing = 0,
|
||||
/* 0x01 */ ItemId_NormalShield = 1,
|
||||
/* 0x02 */ ItemId_NormalSword = 2,
|
||||
/* 0x03 */ ItemId_Whirlwind = 3,
|
||||
/* 0x04 */ ItemId_BombBag = 4,
|
||||
/* 0x05 */ ItemId_NormalBow = 5,
|
||||
/* 0x06 */ ItemId_Boomerang = 6,
|
||||
/* 0x07 */ ItemId_Whip = 7,
|
||||
/* 0x08 */ ItemId_SandRod = 8,
|
||||
/* 0x09 */ ItemId_9 = 9,
|
||||
/* 0x0A */ ItemId_NormalKey = 10,
|
||||
/* 0x0B */ ItemId_BossKey = 11,
|
||||
/* 0x0C */ ItemId_GreenRupee = 12,
|
||||
/* 0x0D */ ItemId_BlueRupee = 13,
|
||||
/* 0x0E */ ItemId_RedRupee = 14,
|
||||
/* 0x0F */ ItemId_BigGreenRupee = 15,
|
||||
/* 0x10 */ ItemId_BigRedRupee = 16,
|
||||
/* 0x11 */ ItemId_BigGoldRupee = 17,
|
||||
/* 0x12 */ ItemId_ForceGem_18 = 18, // kidnapped papuchia man
|
||||
/* 0x13 */ ItemId_ForceGem_19 = 19, // ice for fish seller
|
||||
/* 0x14 */ ItemId_ForceGem_20 = 20, // goron lava house ice
|
||||
/* 0x15 */ ItemId_ForestGlyph = 21,
|
||||
/* 0x16 */ ItemId_SnowGlyph = 22,
|
||||
/* 0x17 */ ItemId_OceanGlyph = 23,
|
||||
/* 0x18 */ ItemId_FireGlyph = 24,
|
||||
/* 0x19 */ ItemId_25 = 25, // glyph after forest restoration song
|
||||
/* 0x1A */ ItemId_26 = 26, // glyph after restoration song
|
||||
/* 0x1B */ ItemId_27 = 27, // glyph after restoration song
|
||||
/* 0x1C */ ItemId_28 = 28, // glyph after restoration song
|
||||
/* 0x1D */ ItemId_29 = 29, // glyph after restoration song
|
||||
/* 0x1E */ ItemId_FinalTrack = 30, // unlocks the endgame portal
|
||||
/* 0x1F */ ItemId_31 = 31,
|
||||
/* 0x20 */ ItemId_32 = 32,
|
||||
/* 0x21 */ ItemId_33 = 33,
|
||||
/* 0x22 */ ItemId_34 = 34,
|
||||
/* 0x23 */ ItemId_ForceGem_35 = 35, // rightmost fire gem
|
||||
/* 0x24 */ ItemId_ForceGem_36 = 36, // right snow gem
|
||||
/* 0x25 */ ItemId_ForceGem_37 = 37, // top fire gem
|
||||
/* 0x26 */ ItemId_RecruitUniform = 38,
|
||||
/* 0x27 */ ItemId_PostmasterLetter = 39,
|
||||
/* 0x28 */ ItemId_HeartContainer = 40,
|
||||
/* 0x29 */ ItemId_QuiverMedium = 41,
|
||||
/* 0x2A */ ItemId_BombBagMedium = 42,
|
||||
/* 0x2B */ ItemId_ForceGem_43 = 43, // one of rightmost forest
|
||||
/* 0x2C */ ItemId_ForceGem_44 = 44, // the other rightmost forest, but more middle than top
|
||||
/* 0x2D */ ItemId_ForceGem_45 = 45, // the bottom-rightmost forest
|
||||
/* 0x2E */ ItemId_ForceGem_46 = 46, // the top-rightmost fire
|
||||
/* 0x2F */ ItemId_ForceGem_47 = 47, // the center forest
|
||||
/* 0x30 */ ItemId_ForceGem_48 = 48, // the middle-left forest
|
||||
/* 0x31 */ ItemId_ForceGem_49 = 49, // the below middle-left forest
|
||||
/* 0x32 */ ItemId_ForceGem_50 = 50,
|
||||
/* 0x33 */ ItemId_ForceGem_51 = 51,
|
||||
/* 0x34 */ ItemId_ForceGem_52 = 52,
|
||||
/* 0x35 */ ItemId_ForceGem_53 = 53,
|
||||
/* 0x36 */ ItemId_ForceGem_54 = 54,
|
||||
/* 0x37 */ ItemId_ForceGem_55 = 55,
|
||||
/* 0x38 */ ItemId_ForceGem_56 = 56,
|
||||
/* 0x39 */ ItemId_ForceGem_57 = 57,
|
||||
/* 0x3A */ ItemId_ForceGem_58 = 58,
|
||||
/* 0x3B */ ItemId_ForceGem_59 = 59,
|
||||
/* 0x3C */ ItemId_ForceGem_60 = 60,
|
||||
/* 0x3D */ ItemId_ForceGem_61 = 61,
|
||||
/* 0x3E */ ItemId_PanFlute = 62,
|
||||
/* 0x3F */ ItemId_StampBook = 63,
|
||||
/* 0x40 */ ItemId_LightBow = 64,
|
||||
/* 0x41 */ ItemId_LokomoSword = 65,
|
||||
/* 0x42 */ ItemId_TenPriceCard = 66,
|
||||
/* 0x43 */ ItemId_RedPotion = 67,
|
||||
/* 0x44 */ ItemId_PurplePotion = 68,
|
||||
/* 0x45 */ ItemId_YellowPotion = 69,
|
||||
/* 0x46 */ ItemId_DemonFossil = 70,
|
||||
/* 0x47 */ ItemId_StalfosSkull = 71,
|
||||
/* 0x48 */ ItemId_StarFragment = 72,
|
||||
/* 0x49 */ ItemId_BeeLarvae = 73,
|
||||
/* 0x4A */ ItemId_WoodHeart = 74,
|
||||
/* 0x4B */ ItemId_DarkPearlLoop = 75,
|
||||
/* 0x4C */ ItemId_WhitePearlLoop = 76,
|
||||
/* 0x4D */ ItemId_RutoCrown = 77,
|
||||
/* 0x4E */ ItemId_DragonScale = 78,
|
||||
/* 0x4F */ ItemId_PirateNecklace = 79,
|
||||
/* 0x50 */ ItemId_PalaceDish = 80,
|
||||
/* 0x51 */ ItemId_GoronAmber = 81,
|
||||
/* 0x52 */ ItemId_MysticJade = 82,
|
||||
/* 0x53 */ ItemId_AncientCoin = 83,
|
||||
/* 0x54 */ ItemId_PricelessStone = 84,
|
||||
/* 0x55 */ ItemId_RegalRing = 85,
|
||||
/* 0x56 */ ItemId_ArrowsRefill = 86,
|
||||
/* 0x57 */ ItemId_BombsRefill = 87,
|
||||
/* 0x58 */ ItemId_SoldOutSign = 88,
|
||||
/* 0x59 */ ItemId_AncientShield = 89,
|
||||
/* 0x5A */ ItemId_QuiverLarge = 90,
|
||||
/* 0x5B */ ItemId_BombBagLarge = 91,
|
||||
/* 0x5C */ ItemId_RandCommonTreasure = 92,
|
||||
/* 0x5D */ ItemId_RandUncommonTreasure = 93,
|
||||
/* 0x5E */ ItemId_RandRareTreasure = 94,
|
||||
/* 0x5F */ ItemId_RandLegendaryTreasure = 95,
|
||||
/* 0x60 */ ItemId_TearLight = 96,
|
||||
/* 0x61 */ ItemId_LightCompass = 97,
|
||||
/* 0x62 */ ItemId_ScrollSpinAttack = 98,
|
||||
/* 0x63 */ ItemId_ScrollBeam = 99,
|
||||
/* 0x64 */ ItemId_LinebeckLetter = 100,
|
||||
/* 0x65 */ ItemId_PanFluteSong_101 = 101,
|
||||
/* 0x66 */ ItemId_PanFluteSong_102 = 102,
|
||||
/* 0x67 */ ItemId_PanFluteSong_103 = 103,
|
||||
/* 0x68 */ ItemId_PanFluteSong_104 = 104,
|
||||
/* 0x69 */ ItemId_PanFluteSong_105 = 105,
|
||||
/* 0x6A */ ItemId_RabbitNet = 106,
|
||||
/* 0x6B */ ItemId_BeedleCard = 107,
|
||||
/* 0x6C */ ItemId_SilverCard = 108,
|
||||
/* 0x6D */ ItemId_GoldCard = 109,
|
||||
/* 0x6E */ ItemId_PlatinumCard = 110,
|
||||
/* 0x6F */ ItemId_DiamondCard = 111,
|
||||
/* 0x70 */ ItemId_FreebieCard = 112,
|
||||
/* 0x71 */ ItemId_QuintupleCard = 113,
|
||||
/* 0x72 */ ItemId_CarbenLetter = 114,
|
||||
/* 0x73 */ ItemId_RecruitUniform2 = 115,
|
||||
/* 0x74 */ ItemId_EngineerUniform = 116,
|
||||
/* 0xFF */ ItemId_None = -1,
|
||||
/* 0x00 */ ItemId_Nothing = 0,
|
||||
/* 0x01 */ ItemId_NormalShield = 1,
|
||||
/* 0x02 */ ItemId_NormalSword = 2,
|
||||
/* 0x03 */ ItemId_Whirlwind = 3,
|
||||
/* 0x04 */ ItemId_BombBag = 4,
|
||||
/* 0x05 */ ItemId_NormalBow = 5,
|
||||
/* 0x06 */ ItemId_Boomerang = 6,
|
||||
/* 0x07 */ ItemId_Whip = 7,
|
||||
/* 0x08 */ ItemId_SandRod = 8,
|
||||
/* 0x09 */ ItemId_9 = 9,
|
||||
/* 0x0A */ ItemId_NormalKey = 10,
|
||||
/* 0x0B */ ItemId_BossKey = 11,
|
||||
/* 0x0C */ ItemId_GreenRupee = 12,
|
||||
/* 0x0D */ ItemId_BlueRupee = 13,
|
||||
/* 0x0E */ ItemId_RedRupee = 14,
|
||||
/* 0x0F */ ItemId_BigGreenRupee = 15,
|
||||
/* 0x10 */ ItemId_BigRedRupee = 16,
|
||||
/* 0x11 */ ItemId_BigGoldRupee = 17,
|
||||
/* 0x12 */ ItemId_ForceGem_18 = 18, // kidnapped papuchia man
|
||||
/* 0x13 */ ItemId_ForceGem_19 = 19, // ice for fish seller
|
||||
/* 0x14 */ ItemId_ForceGem_20 = 20, // goron lava house ice
|
||||
/* 0x15 */ ItemId_ForestGlyph = 21,
|
||||
/* 0x16 */ ItemId_SnowGlyph = 22,
|
||||
/* 0x17 */ ItemId_OceanGlyph = 23,
|
||||
/* 0x18 */ ItemId_FireGlyph = 24,
|
||||
/* 0x19 */ ItemId_RestoredForestGlyph = 25, // glyph after forest restoration song
|
||||
/* 0x1A */ ItemId_RestoredSnowGlyph = 26, // glyph after restoration song
|
||||
/* 0x1B */ ItemId_RestoredOceanGlyph = 27, // glyph after restoration song
|
||||
/* 0x1C */ ItemId_RestoredFireGlyph = 28, // glyph after restoration song
|
||||
/* 0x1D */ ItemId_RestoredDesertOceanGlyph = 29, // glyph after restoration song
|
||||
/* 0x1E */ ItemId_FinalTrack = 30, // unlocks the endgame portal
|
||||
/* 0x1F */ ItemId_SpiritTrain = 31,
|
||||
/* 0x20 */ ItemId_TrainCannon = 32,
|
||||
/* 0x21 */ ItemId_SpiritTrainCar = 33,
|
||||
/* 0x22 */ ItemId_TrainWagon = 34,
|
||||
/* 0x23 */ ItemId_ForceGem_35 = 35, // rightmost fire gem
|
||||
/* 0x24 */ ItemId_ForceGem_36 = 36, // right snow gem
|
||||
/* 0x25 */ ItemId_ForceGem_37 = 37, // top fire gem
|
||||
/* 0x26 */ ItemId_RecruitUniform = 38,
|
||||
/* 0x27 */ ItemId_PostmasterLetter = 39,
|
||||
/* 0x28 */ ItemId_HeartContainer = 40,
|
||||
/* 0x29 */ ItemId_QuiverMedium = 41,
|
||||
/* 0x2A */ ItemId_BombBagMedium = 42,
|
||||
/* 0x2B */ ItemId_ForceGem_43 = 43, // one of rightmost forest
|
||||
/* 0x2C */ ItemId_ForceGem_44 = 44, // the other rightmost forest, but more middle than top
|
||||
/* 0x2D */ ItemId_ForceGem_45 = 45, // the bottom-rightmost forest
|
||||
/* 0x2E */ ItemId_ForceGem_46 = 46, // the top-rightmost fire
|
||||
/* 0x2F */ ItemId_ForceGem_47 = 47, // the center forest
|
||||
/* 0x30 */ ItemId_ForceGem_48 = 48, // the middle-left forest
|
||||
/* 0x31 */ ItemId_ForceGem_49 = 49, // the below middle-left forest
|
||||
/* 0x32 */ ItemId_ForceGem_50 = 50,
|
||||
/* 0x33 */ ItemId_ForceGem_51 = 51,
|
||||
/* 0x34 */ ItemId_ForceGem_52 = 52,
|
||||
/* 0x35 */ ItemId_ForceGem_53 = 53,
|
||||
/* 0x36 */ ItemId_ForceGem_54 = 54,
|
||||
/* 0x37 */ ItemId_ForceGem_55 = 55,
|
||||
/* 0x38 */ ItemId_ForceGem_56 = 56,
|
||||
/* 0x39 */ ItemId_ForceGem_57 = 57,
|
||||
/* 0x3A */ ItemId_ForceGem_58 = 58,
|
||||
/* 0x3B */ ItemId_ForceGem_59 = 59,
|
||||
/* 0x3C */ ItemId_ForceGem_60 = 60,
|
||||
/* 0x3D */ ItemId_ForceGem_61 = 61,
|
||||
/* 0x3E */ ItemId_PanFlute = 62,
|
||||
/* 0x3F */ ItemId_StampBook = 63,
|
||||
/* 0x40 */ ItemId_LightBow = 64,
|
||||
/* 0x41 */ ItemId_LokomoSword = 65,
|
||||
/* 0x42 */ ItemId_TenPriceCard = 66,
|
||||
/* 0x43 */ ItemId_RedPotion = 67,
|
||||
/* 0x44 */ ItemId_PurplePotion = 68,
|
||||
/* 0x45 */ ItemId_YellowPotion = 69,
|
||||
/* 0x46 */ ItemId_DemonFossil = 70,
|
||||
/* 0x47 */ ItemId_StalfosSkull = 71,
|
||||
/* 0x48 */ ItemId_StarFragment = 72,
|
||||
/* 0x49 */ ItemId_BeeLarvae = 73,
|
||||
/* 0x4A */ ItemId_WoodHeart = 74,
|
||||
/* 0x4B */ ItemId_DarkPearlLoop = 75,
|
||||
/* 0x4C */ ItemId_WhitePearlLoop = 76,
|
||||
/* 0x4D */ ItemId_RutoCrown = 77,
|
||||
/* 0x4E */ ItemId_DragonScale = 78,
|
||||
/* 0x4F */ ItemId_PirateNecklace = 79,
|
||||
/* 0x50 */ ItemId_PalaceDish = 80,
|
||||
/* 0x51 */ ItemId_GoronAmber = 81,
|
||||
/* 0x52 */ ItemId_MysticJade = 82,
|
||||
/* 0x53 */ ItemId_AncientCoin = 83,
|
||||
/* 0x54 */ ItemId_PricelessStone = 84,
|
||||
/* 0x55 */ ItemId_RegalRing = 85,
|
||||
/* 0x56 */ ItemId_ArrowsRefill = 86,
|
||||
/* 0x57 */ ItemId_BombsRefill = 87,
|
||||
/* 0x58 */ ItemId_SoldOutSign = 88,
|
||||
/* 0x59 */ ItemId_AncientShield = 89,
|
||||
/* 0x5A */ ItemId_QuiverLarge = 90,
|
||||
/* 0x5B */ ItemId_BombBagLarge = 91,
|
||||
/* 0x5C */ ItemId_RandCommonTreasure = 92,
|
||||
/* 0x5D */ ItemId_RandUncommonTreasure = 93,
|
||||
/* 0x5E */ ItemId_RandRareTreasure = 94,
|
||||
/* 0x5F */ ItemId_RandLegendaryTreasure = 95,
|
||||
/* 0x60 */ ItemId_TearLight = 96,
|
||||
/* 0x61 */ ItemId_LightCompass = 97,
|
||||
/* 0x62 */ ItemId_ScrollSpinAttack = 98,
|
||||
/* 0x63 */ ItemId_ScrollBeam = 99,
|
||||
/* 0x64 */ ItemId_LinebeckLetter = 100,
|
||||
/* 0x65 */ ItemId_PanFluteSong_101 = 101,
|
||||
/* 0x66 */ ItemId_PanFluteSong_102 = 102,
|
||||
/* 0x67 */ ItemId_PanFluteSong_103 = 103,
|
||||
/* 0x68 */ ItemId_PanFluteSong_104 = 104,
|
||||
/* 0x69 */ ItemId_PanFluteSong_105 = 105,
|
||||
/* 0x6A */ ItemId_RabbitNet = 106,
|
||||
/* 0x6B */ ItemId_BeedleCard = 107,
|
||||
/* 0x6C */ ItemId_SilverCard = 108,
|
||||
/* 0x6D */ ItemId_GoldCard = 109,
|
||||
/* 0x6E */ ItemId_PlatinumCard = 110,
|
||||
/* 0x6F */ ItemId_DiamondCard = 111,
|
||||
/* 0x70 */ ItemId_FreebieCard = 112,
|
||||
/* 0x71 */ ItemId_QuintupleCard = 113,
|
||||
/* 0x72 */ ItemId_CarbenLetter = 114,
|
||||
/* 0x73 */ ItemId_RecruitUniform2 = 115,
|
||||
/* 0x74 */ ItemId_EngineerUniform = 116,
|
||||
};
|
||||
|
||||
#define MAX_TREASURE 99
|
||||
|
||||
@@ -24,15 +24,15 @@ public:
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
|
||||
/* 00 */ virtual void vfunc_00(); //! TODO: name symbol func_ov000_020667d8
|
||||
/* 04 */ virtual void vfunc_04(); //! TODO: name symbol func_ov000_020667f4
|
||||
/* 08 */ virtual void vfunc_08(); //! TODO: name symbol func_ov000_020673c8
|
||||
/* 0C */ virtual void vfunc_0c(); //! TODO: name symbol func_ov000_02067434
|
||||
/* 10 */ virtual void vfunc_10(); //! TODO: name symbol func_ov000_02067474
|
||||
/* 14 */ virtual void vfunc_14(); //! TODO: name symbol func_ov000_02066dfc
|
||||
/* 18 */ virtual void vfunc_18(); //! TODO: name symbol func_ov000_020669d8
|
||||
/* 1C */ virtual void vfunc_1c(); //! TODO: name symbol func_ov000_02067234
|
||||
/* 20 */ virtual void vfunc_20(); //! TODO: name symbol func_ov000_0206723c
|
||||
/* 00 */ virtual void vfunc_00(); //! TODO: name symbol func_ov000_020667d8
|
||||
/* 04 */ virtual void vfunc_04(); //! TODO: name symbol func_ov000_020667f4
|
||||
/* 08 */ virtual void vfunc_08(); //! TODO: name symbol func_ov000_020673c8
|
||||
/* 0C */ virtual void vfunc_0c(); //! TODO: name symbol func_ov000_02067434
|
||||
/* 10 */ virtual void vfunc_10(); //! TODO: name symbol func_ov000_02067474
|
||||
/* 14 */ virtual void vfunc_14(); //! TODO: name symbol func_ov000_02066dfc
|
||||
/* 18 */ virtual void vfunc_18(); //! TODO: name symbol func_ov000_020669d8
|
||||
/* 1C */ virtual void vfunc_1c(); //! TODO: name symbol func_ov000_02067234
|
||||
/* 20 */ virtual void vfunc_20(); //! TODO: name symbol func_ov000_0206723c
|
||||
/* 24 */ virtual ~UnkStruct_ItemManager_20_14(); //! TODO: name symbols func_ov000_020672ac, func_ov000_020672f4
|
||||
|
||||
UnkStruct_ItemManager_20_14();
|
||||
@@ -58,12 +58,12 @@ class ItemManager : public SysObject {
|
||||
public:
|
||||
/* 00 */ ItemFlag mEquippedItem;
|
||||
/* 04 */ ItemFlag mForcedItem;
|
||||
/* 08 */ u32 mUnk_08[2]; // inventory items bitfield & collection/equipment bitfield
|
||||
/* 08 */ u32 mFlags[2]; // inventory items bitfield & collection/equipment bitfield
|
||||
/* 10 */ u16 mNumRupees;
|
||||
/* 12 */ u16 mUnk_12; // "toggle bitfield"
|
||||
/* 12 */ u16 mUnk_12; // "toggle bitfield"
|
||||
/* 14 */ u16 mItemRestrictions; // bitfield
|
||||
/* 16 */ u8 mTearsAmount; // number of tears of light
|
||||
/* 17 */ u8 mKeyAmount; // number of small keys
|
||||
/* 16 */ u8 mTearsAmount; // number of tears of light
|
||||
/* 17 */ u8 mKeyAmount; // number of small keys
|
||||
/* 18 */ UpgradeCapacity mQuiverCapacity;
|
||||
/* 19 */ UpgradeCapacity mBombBagCapacity;
|
||||
/* 1A */ u8 mArrowAmount;
|
||||
@@ -80,25 +80,25 @@ public:
|
||||
ItemManager();
|
||||
~ItemManager();
|
||||
|
||||
void func_ov000_020a863c(ItemFlag itemFlag);
|
||||
void func_ov000_020a865c(ItemFlag itemFlag);
|
||||
bool func_ov000_020a8680();
|
||||
void SetFlag(ItemFlag itemFlag);
|
||||
void ClearFlag(ItemFlag itemFlag);
|
||||
bool HasRecruitUniform();
|
||||
unk32 func_ov000_020a86a4();
|
||||
u32 func_ov000_020a86d0(ItemFlag itemFlag);
|
||||
u8 func_ov000_020a8728();
|
||||
u8 func_ov000_020a8748();
|
||||
u32 GetItemAmount(ItemFlag itemFlag);
|
||||
u8 GetQuiverCapacity();
|
||||
u8 GetBombBagCapacity();
|
||||
void GiveRupees(s32 amount, bool param2, bool param3);
|
||||
void func_ov000_020a87c8(s32 amount);
|
||||
void func_ov000_020a87ec(s32 amount);
|
||||
void func_ov000_020a8820(s32 amount);
|
||||
bool func_ov000_020a8854();
|
||||
void func_ov000_020a888c(PotionType type);
|
||||
bool func_ov000_020a88c8();
|
||||
bool func_ov000_020a88f4();
|
||||
void func_ov000_020a8920();
|
||||
bool func_ov000_020a8948();
|
||||
void GiveSmallKeys(s32 amount);
|
||||
void GiveArrows(s32 amount);
|
||||
void GiveBombs(s32 amount);
|
||||
bool TryEquipForcedItem();
|
||||
void GivePotion(PotionType type);
|
||||
bool HasPotion();
|
||||
bool HasPurplePotion();
|
||||
void RemovePurplePotion();
|
||||
bool PotionSlotsFull();
|
||||
static UnkStruct_ov000_020afc48 *func_ov000_020a8974(ItemFlag itemFlag);
|
||||
static ItemFlag func_ov000_020a8984(ItemId itemId);
|
||||
static ItemFlag GetEquippedItemFlag(ItemId itemId);
|
||||
void func_ov000_020a89bc();
|
||||
bool func_ov000_020a89d4();
|
||||
bool func_ov000_020a8a0c();
|
||||
|
||||
@@ -0,0 +1,80 @@
|
||||
#pragma once
|
||||
|
||||
#include "types.h"
|
||||
|
||||
enum CargoType_ {
|
||||
CargoType_None = -1,
|
||||
CargoType_MegaIce,
|
||||
CargoType_Wood,
|
||||
CargoType_Iron,
|
||||
CargoType_Fish,
|
||||
CargoType_Cuccos,
|
||||
CargoType_Vessel,
|
||||
CargoType_DarkOre,
|
||||
CargoType_Max,
|
||||
};
|
||||
|
||||
class Cargo {
|
||||
public:
|
||||
/* 00 */ unk32 mType;
|
||||
/* 04 */ unk32 mAmount;
|
||||
/* 08 */ u32 mDecayTimer;
|
||||
/* 0C */
|
||||
|
||||
Cargo() {
|
||||
this->Clear();
|
||||
}
|
||||
|
||||
void Set(unk32 type, unk32 amount) {
|
||||
this->mType = type;
|
||||
this->mAmount = amount;
|
||||
this->mDecayTimer = 0;
|
||||
}
|
||||
|
||||
void Clear() {
|
||||
this->mType = CargoType_None;
|
||||
this->mAmount = 0;
|
||||
this->mDecayTimer = 0;
|
||||
}
|
||||
};
|
||||
|
||||
class CargoManager : public AutoInstance<CargoManager> {
|
||||
public:
|
||||
/* 00 */ Cargo mCargo;
|
||||
/* 0C */ Cargo mCargo2;
|
||||
/* 18 */ unk32 mUnk_18; // invicibility timer?
|
||||
/* 1C */ bool mUnk_1C;
|
||||
/* 20 */
|
||||
|
||||
// overlay 1
|
||||
CargoManager();
|
||||
~CargoManager();
|
||||
|
||||
void func_ov001_020bf830();
|
||||
|
||||
static void SetInstance(CargoManager *pInstance);
|
||||
static bool ClearInstance();
|
||||
static void Destroy(); // func_ov001_020bf428
|
||||
|
||||
// overlay 17
|
||||
void Update();
|
||||
void Reset();
|
||||
void Init(unk32 type, unk32 amount);
|
||||
void func_ov017_020bebdc();
|
||||
void func_ov017_020bec20();
|
||||
void RemoveAmount(unk32 decr);
|
||||
bool func_ov017_020bec9c();
|
||||
|
||||
static void DoUpdate();
|
||||
static bool IsNotUsingTimer(unk32 type);
|
||||
|
||||
// overlay 24
|
||||
void SetCargo(unk32 type, unk32 amount);
|
||||
void GetTypeAndAmount(unk32 *pType, unk32 *pAmount);
|
||||
void func_ov024_020d5900();
|
||||
void func_ov024_020d591c();
|
||||
|
||||
static CargoManager *Create();
|
||||
};
|
||||
|
||||
extern CargoManager *gpCargoManager;
|
||||
@@ -11,16 +11,16 @@
|
||||
|
||||
enum LetterType_ {
|
||||
/* -1 */ LetterType_None = -1,
|
||||
/* 0 */ LetterType_MetPostmanFirst = 0, // AdventureFlag_MetPostmanFirstLetter
|
||||
/* 1 */ LetterType_ReceivedZeldas = 1, // AdventureFlag_ReceivedZeldasLetter
|
||||
/* 2 */ LetterType_ReceivedAlfonzos = 2, // AdventureFlag_ReceivedAlfonzosLetter
|
||||
/* 3 */ LetterType_ReceivedRussells = 3, // AdventureFlag_ReceivedRussellsLetter
|
||||
/* 4 */ LetterType_ObtainedLinebecks = 4, // AdventureFlag_ObtainedLinebecksLetter
|
||||
/* 5 */ LetterType_ReceivedBeedlesFirst = 5, // AdventureFlag_ReceivedBeedlesFirstLetter
|
||||
/* 6 */ LetterType_Unk_03E = 6, // AdventureFlag_Unk_03E
|
||||
/* 7 */ LetterType_Unk_03F = 7, // AdventureFlag_Unk_03F
|
||||
/* 8 */ LetterType_Unk_040 = 8, // AdventureFlag_Unk_040
|
||||
/* 9 */ LetterType_Unk_041 = 9, // AdventureFlag_Unk_041
|
||||
/* 0 */ LetterType_MetPostmanFirst = 0, // AdventureFlag_MetPostmanFirstLetter
|
||||
/* 1 */ LetterType_ReceivedZeldas = 1, // AdventureFlag_ReceivedZeldasLetter
|
||||
/* 2 */ LetterType_ReceivedAlfonzos = 2, // AdventureFlag_ReceivedAlfonzosLetter
|
||||
/* 3 */ LetterType_ReceivedRussells = 3, // AdventureFlag_ReceivedRussellsLetter
|
||||
/* 4 */ LetterType_ObtainedLinebecks = 4, // AdventureFlag_ObtainedLinebecksLetter
|
||||
/* 5 */ LetterType_ReceivedBeedlesFirst = 5, // AdventureFlag_ReceivedBeedlesFirstLetter
|
||||
/* 6 */ LetterType_Unk_03E = 6, // AdventureFlag_Unk_03E
|
||||
/* 7 */ LetterType_Unk_03F = 7, // AdventureFlag_Unk_03F
|
||||
/* 8 */ LetterType_Unk_040 = 8, // AdventureFlag_Unk_040
|
||||
/* 9 */ LetterType_Unk_041 = 9, // AdventureFlag_Unk_041
|
||||
/* 10 */ LetterType_Unk_042 = 10, // AdventureFlag_Unk_042
|
||||
/* 11 */ LetterType_Unk_043 = 11, // AdventureFlag_Unk_043
|
||||
/* 12 */ LetterType_Unk_044 = 12, // AdventureFlag_Unk_044
|
||||
@@ -69,16 +69,16 @@ public:
|
||||
/* 68 */ s8 mObtainedStamps[StampType_Max];
|
||||
/* 7C */ u8 mLastRandomNum;
|
||||
/* 7D */ u8 mRandomNum;
|
||||
/* 7E */ s8 mNumPriceCards; // current amount of price cards
|
||||
/* 7E */ s8 mNumPriceCards; // current amount of price cards
|
||||
/* 7F */ s8 mNumPostedPriceCards; // current amount of posted price cards
|
||||
/* 80 */ unk8 mUnk_80;
|
||||
/* 81 */ unk8 mUnk_81; // pad?
|
||||
/* 82 */ unk8 mUnk_82; // pad?
|
||||
/* 83 */ unk8 mUnk_83; // pad?
|
||||
/* 81 */ unk8 mUnk_81; // pad?
|
||||
/* 82 */ unk8 mUnk_82; // pad?
|
||||
/* 83 */ unk8 mUnk_83; // pad?
|
||||
/* 84 */ unk32 mLettersRead; // bitfield
|
||||
/* 88 */ unk32 mStampsFlag; // bitfield, related to the checkmarks from the stampbook
|
||||
/* 8C */ unk16 mSongs; // bitfield
|
||||
/* 8E */ unk16 mUnk_8E; // pad?
|
||||
/* 88 */ unk32 mStampsFlag; // bitfield, related to the checkmarks from the stampbook
|
||||
/* 8C */ unk16 mSongs; // bitfield
|
||||
/* 8E */ unk16 mUnk_8E; // pad?
|
||||
/* 90 */
|
||||
|
||||
MiscAdvManager();
|
||||
|
||||
@@ -0,0 +1,93 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/ActorId.hpp"
|
||||
#include "Save/AdventureFlags.hpp"
|
||||
#include "Unknown/UnkStruct_027e09a4.hpp"
|
||||
#include "types.h"
|
||||
|
||||
enum HappinessLevel_ {
|
||||
HappinessLevel_0,
|
||||
HappinessLevel_1,
|
||||
HappinessLevel_2,
|
||||
HappinessLevel_3,
|
||||
HappinessLevel_4,
|
||||
HappinessLevel_5,
|
||||
};
|
||||
|
||||
struct UnkStruct_Param1 {
|
||||
ActorId actorId;
|
||||
s16 mUnk_04;
|
||||
SceneIndex_Half sceneIndex;
|
||||
u8 roomIndex;
|
||||
unk32 mUnk_0C;
|
||||
unk32 happiness;
|
||||
u16 mUnk_14;
|
||||
};
|
||||
|
||||
class Passenger {
|
||||
public:
|
||||
/* 00 */ ActorId mActorId;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ SceneIndex mSceneIndex;
|
||||
/* 0C */ u8 mRoomIndex;
|
||||
/* 10 */ unk32 mHappiness;
|
||||
|
||||
Passenger();
|
||||
void Reset();
|
||||
};
|
||||
|
||||
class PassengerManager : public AutoInstance<PassengerManager> {
|
||||
public:
|
||||
/* 00 */ Passenger mPassenger;
|
||||
/* 14 */ Passenger mPassenger2;
|
||||
/* 28 */ u16 mDate;
|
||||
/* 2A */ unk16 mUnk_2A;
|
||||
/* 2C */ unk32 mUnk_2C;
|
||||
/* 30 */ unk32 mUnk_30;
|
||||
/* 34 */
|
||||
|
||||
// overlay 1
|
||||
PassengerManager();
|
||||
~PassengerManager();
|
||||
|
||||
void func_ov001_020bf8e4();
|
||||
void func_ov001_020bf90c();
|
||||
void func_ov001_020bf910();
|
||||
bool func_ov001_020bfa1c();
|
||||
|
||||
static bool func_ov001_020bf870();
|
||||
static void SetInstance(PassengerManager *pInstance); // func_ov001_020bfa38
|
||||
static bool ClearInstance(); // func_ov001_020bfa44
|
||||
|
||||
// overlay 24
|
||||
void func_ov024_020d41bc(UnkStruct_Param1 *pActorId);
|
||||
void func_ov024_020d41f4(UnkStruct_Param1 *param1);
|
||||
void func_ov024_020d4228();
|
||||
void func_ov024_020d4258();
|
||||
bool TryBoardTrain(ActorId actorId, SceneIndex sceneIndex, u32 roomIndex);
|
||||
bool TryReset();
|
||||
bool TryResetAtDestination();
|
||||
bool ReachedDestination(SceneIndex sceneIndex, u32 roomIndex);
|
||||
bool TrySetCaughtByPirates();
|
||||
bool CaughtByPiratesTryReset();
|
||||
void GiveHappiness(unk32 amount);
|
||||
unk32 GetHappiness();
|
||||
unk32 GetHappinessCond();
|
||||
bool CanCompleteTrip();
|
||||
bool IsCaughtByPirates();
|
||||
ActorId GetActorId();
|
||||
PassengerManager *GetInstance();
|
||||
void func_ov024_020d4554();
|
||||
void Reset();
|
||||
bool IsDateUnset();
|
||||
s16 GetDate();
|
||||
u32 GetRandomIndex(u32 arg1, s32 arg2);
|
||||
void SetFailedFlag();
|
||||
|
||||
static u32 GetPassengerInfoIndex(ActorId actorId);
|
||||
static AdventureFlag GetBoardFlag(ActorId actorId);
|
||||
static AdventureFlag GetFailFlag(ActorId actorId);
|
||||
static PassengerManager *Create();
|
||||
};
|
||||
|
||||
extern PassengerManager *gpPassengerManager;
|
||||
@@ -13,8 +13,8 @@ public:
|
||||
/* 00 */ MapObject **mMapObjTable;
|
||||
/* 04 */ MapObject **mMapObjTableEnd;
|
||||
/* 08 */ MapObject **mUnk_08; // pointer to first available slot?
|
||||
/* 0C */ s16 **mUnk_0C; // unknown table
|
||||
/* 10 */ void **mUnk_10; // unknown table end
|
||||
/* 0C */ s16 **mUnk_0C; // unknown table
|
||||
/* 10 */ void **mUnk_10; // unknown table end
|
||||
/* 14 */ void *mUnk_14;
|
||||
/* 18 */ unk16 mUnk_18;
|
||||
/* 1A */ unk16 mUnk_1A;
|
||||
@@ -35,7 +35,7 @@ public:
|
||||
void func_ov000_0209c3e8();
|
||||
void func_ov000_0209c444();
|
||||
|
||||
void SetInstance(); // func_ov001_020baf4c
|
||||
void SetInstance(); // func_ov001_020baf4c
|
||||
void ClearInstance(); // func_ov001_020baf58
|
||||
|
||||
static void func_ov000_0209c490();
|
||||
|
||||
@@ -11,7 +11,7 @@ public:
|
||||
/* 00 (base) */
|
||||
/* 40 */ UnkSystem6_Derived2 mUnk_40;
|
||||
/* 48 */ unk8 mUnk_48;
|
||||
/* 49 */ unk8 mUnk_49; // pad?
|
||||
/* 49 */ unk8 mUnk_49; // pad?
|
||||
/* 4A */ unk16 mUnk_4A; // pad?
|
||||
/* 4C */
|
||||
|
||||
|
||||
+12
-12
@@ -70,16 +70,16 @@ typedef enum BMGFileIndex {
|
||||
} BMGFileIndex;
|
||||
|
||||
struct SectionBase {
|
||||
/* 00 */ u32 tag; // "INF1", "DAT1", ...
|
||||
/* 00 */ u32 tag; // "INF1", "DAT1", ...
|
||||
/* 04 */ u32 size; // the size of the section
|
||||
/* 08 */
|
||||
};
|
||||
|
||||
struct BMGHeader {
|
||||
/* 00 */ char magic[8]; // always "MESGbmg1"
|
||||
/* 08 */ u32 fileSize; // the size of the BMG file
|
||||
/* 00 */ char magic[8]; // always "MESGbmg1"
|
||||
/* 08 */ u32 fileSize; // the size of the BMG file
|
||||
/* 0C */ u32 numSections; // the number of sections (INF1, DAT1, ...)
|
||||
/* 10 */ u8 encoding; // see `BMGEncoding`
|
||||
/* 10 */ u8 encoding; // see `BMGEncoding`
|
||||
/* 11 */ u8 unk_11[0x0F]; // alignment padding?
|
||||
/* 20 */
|
||||
};
|
||||
@@ -112,9 +112,9 @@ enum InstrType {
|
||||
};
|
||||
|
||||
struct InstrShowMsg {
|
||||
/* 01 */ u8 bmgFileIndex; // index into sBMGFiles
|
||||
/* 02 */ u16 msgIndex; // index of INF1 entry
|
||||
/* 04 */ s16 nextIndex; // index of FLW1 entry, 0xFFFF stops the conversation
|
||||
/* 01 */ u8 bmgFileIndex; // index into sBMGFiles
|
||||
/* 02 */ u16 msgIndex; // index of INF1 entry
|
||||
/* 04 */ s16 nextIndex; // index of FLW1 entry, 0xFFFF stops the conversation
|
||||
/* 06 */ s16 nextBMGFileIndex; // index into sBMGFiles
|
||||
/* 08 */
|
||||
};
|
||||
@@ -122,15 +122,15 @@ struct InstrShowMsg {
|
||||
struct InstrBranch {
|
||||
/* 01 */ u8 mUnk_01;
|
||||
/* 02 */ u16 funcIndex; // index of the query function to run
|
||||
/* 04 */ u16 funcArg; // the argument to use in the function
|
||||
/* 06 */ u16 flwEntry; // the index of the second section table to be used next in the conversation.
|
||||
/* 04 */ u16 funcArg; // the argument to use in the function
|
||||
/* 06 */ u16 flwEntry; // the index of the second section table to be used next in the conversation.
|
||||
/* 08 */
|
||||
};
|
||||
|
||||
struct InstrEvent {
|
||||
/* 01 */ u8 funcIndex; // index of the query function to run
|
||||
/* 02 */ u16 flwEntry; // the index of the second section table to be used next in the conversation.
|
||||
/* 04 */ u32 funcArg; // the argument to use in the function
|
||||
/* 04 */ u32 funcArg; // the argument to use in the function
|
||||
/* 08 */
|
||||
};
|
||||
|
||||
@@ -188,8 +188,8 @@ struct BMGFileInfo {
|
||||
/* 0C */ SectionFLI1 *pFLI1; // pointer to the message flow index table (FLI -> flow index table)
|
||||
/* 10 */ SectionDAT1 *pDAT1; // pointer to the data (DAT -> data)
|
||||
/* 14 */ BMGHeader *mUnk_14; // same as pHeader (?)
|
||||
/* 18 */ s16 mUnk_18; // stores `func_020372F0`->param_3 value (currently undetermined purpose)
|
||||
/* 1A */ s16 groupId; // stores the group id
|
||||
/* 18 */ s16 mUnk_18; // stores `func_020372F0`->param_3 value (currently undetermined purpose)
|
||||
/* 1A */ s16 groupId; // stores the group id
|
||||
/* 1C */
|
||||
};
|
||||
|
||||
|
||||
@@ -165,8 +165,8 @@ public:
|
||||
/* 068 */ unk32 mUnk_68;
|
||||
/* 06C */ unk32 mUnk_6C; // scale
|
||||
/* 070 */ unk16 mUnk_70; // angle/rotation
|
||||
/* 070 */ u8 mUnk_72; // probably bools
|
||||
/* 070 */ u8 mUnk_73; // probably bools
|
||||
/* 070 */ u8 mUnk_72; // probably bools
|
||||
/* 070 */ u8 mUnk_73; // probably bools
|
||||
/* 074 */ UnkStruct_PlayerGet_74 mUnk_74;
|
||||
/* 08C */ UnkSystem4 mUnk_8C;
|
||||
/* 0EC */ UnkStruct_PlayerGet_ec mUnk_EC[4];
|
||||
|
||||
@@ -18,7 +18,7 @@ class TouchControl {
|
||||
public:
|
||||
/* 00 */ u16 mSpeed;
|
||||
/* 02 */ u16 mTimeBetweenTouches; // gets set to mTimeSinceTouch when touching the screen
|
||||
/* 04 */ u16 mTimeSinceTouch; // increases by mSpeed every frame
|
||||
/* 04 */ u16 mTimeSinceTouch; // increases by mSpeed every frame
|
||||
/* 06 */ u16 mRepeatStart;
|
||||
/* 08 */ u16 mRepeatLoop;
|
||||
// mRepeatTimer starts at mRepeatStart, decreases by mSpeed while touching the screen.
|
||||
|
||||
@@ -12,7 +12,7 @@ enum AdventureFlag_ {
|
||||
/* 0x002 */ AdventureFlag_ObtainedSpiritTrain = FLAG(0, 2),
|
||||
/* 0x003 */ AdventureFlag_ObtainedRecruitSword = FLAG(0, 3),
|
||||
/* 0x004 */ AdventureFlag_ObtainedForestSource = FLAG(0, 4),
|
||||
/* 0x005 */ AdventureFlag_ObtainedSnowSource = FLAG(0, 5), // gets rid of the blizzard
|
||||
/* 0x005 */ AdventureFlag_ObtainedSnowSource = FLAG(0, 5), // gets rid of the blizzard
|
||||
/* 0x006 */ AdventureFlag_ObtainedOceanSource = FLAG(0, 6),
|
||||
/* 0x007 */ AdventureFlag_ObtainedFireSource = FLAG(0, 7),
|
||||
/* 0x008 */ AdventureFlag_CompletedForestRestorationSong = FLAG(0, 8),
|
||||
@@ -22,31 +22,31 @@ enum AdventureFlag_ {
|
||||
/* 0x00C */ AdventureFlag_CompletedSandRestorationSong = FLAG(0, 12),
|
||||
/* 0x00D */ AdventureFlag_OpenedDarkRealmPortal = FLAG(0, 13),
|
||||
/* 0x00E */ AdventureFlag_TalkedToDovokLostWoods = FLAG(0, 14),
|
||||
/* 0x00F */ AdventureFlag_ObtainedForestGlyph = FLAG(0, 15), // unlocks track map
|
||||
/* 0x00F */ AdventureFlag_ObtainedForestGlyph = FLAG(0, 15), // unlocks track map
|
||||
/* 0x010 */ AdventureFlag_ObtainedSnowGlyph = FLAG(0, 16),
|
||||
/* 0x011 */ AdventureFlag_ObtainedOceanGlyph = FLAG(0, 17),
|
||||
/* 0x012 */ AdventureFlag_ObtainedFireGlyph = FLAG(0, 18),
|
||||
/* 0x013 */ AdventureFlag_Unk_013 = FLAG(0, 19),
|
||||
/* 0x014 */ AdventureFlag_CompletedSwordTutorial = FLAG(0, 20),
|
||||
/* 0x015 */ AdventureFlag_PlayedHyruleGuardGetLostText =
|
||||
FLAG(0, 21), // hyrule castle guard tells Link to get lost (before Cole shows up)
|
||||
FLAG(0, 21), // hyrule castle guard tells Link to get lost (before Cole shows up)
|
||||
/* 0x016 */ AdventureFlag_HyruleGuardMovesAfterCole =
|
||||
FLAG(0, 22), // hyrule castle guard moves out of the way of stairs leading to throne room
|
||||
FLAG(0, 22), // hyrule castle guard moves out of the way of stairs leading to throne room
|
||||
/* 0x017 */ AdventureFlag_WatchedHyruleGuardColeCS =
|
||||
FLAG(0, 23), // hyrule castle intro Cole walks into throne room cs over
|
||||
FLAG(0, 23), // hyrule castle intro Cole walks into throne room cs over
|
||||
/* 0x018 */ AdventureFlag_ObtainedEngineerCertificate = FLAG(0, 24),
|
||||
/* 0x019 */ AdventureFlag_WatchedZeldasBedroomFirstCS = FLAG(0, 25), // zelda bedroom conversation pre-spirit zelda
|
||||
/* 0x019 */ AdventureFlag_WatchedZeldasBedroomFirstCS = FLAG(0, 25), // zelda bedroom conversation pre-spirit zelda
|
||||
/* 0x01A */ AdventureFlag_WatchedSpiritTowerSplitCS = FLAG(0, 26),
|
||||
/* 0x01B */ AdventureFlag_MayscoreLostWoodsHintBranches = FLAG(0, 27),
|
||||
/* 0x01C */ AdventureFlag_MayscoreLostWoodsHint4thTree = FLAG(0, 28),
|
||||
/* 0x01D */ AdventureFlag_TalkedToYamahikoFirstTime =
|
||||
FLAG(0, 29), // talk to yellow guy (?) in Mayascore for the first time
|
||||
FLAG(0, 29), // talk to yellow guy (?) in Mayascore for the first time
|
||||
/* 0x01E */ AdventureFlag_EnteredForestTemple = FLAG(0, 30),
|
||||
/* 0x01F */ AdventureFlag_ObtainedTrainCannon = FLAG(0, 31), // set after alfonzo text, but before cannon exits garage
|
||||
/* 0x01F */ AdventureFlag_ObtainedTrainCannon = FLAG(0, 31), // set after alfonzo text, but before cannon exits garage
|
||||
|
||||
/* 0x020 */ AdventureFlag_Unk_020 = FLAG(1, 0),
|
||||
/* 0x020 */ AdventureFlag_ObtainedSpiritTrainCar = FLAG(1, 0),
|
||||
/* 0x021 */ AdventureFlag_ObtainedTrainWagon = FLAG(1, 1),
|
||||
/* 0x022 */ AdventureFlag_MetAnjeanFirstTime = FLAG(1, 2), // loads the train in ToS
|
||||
/* 0x022 */ AdventureFlag_MetAnjeanFirstTime = FLAG(1, 2), // loads the train in ToS
|
||||
/* 0x023 */ AdventureFlag_Unk_023 = FLAG(1, 3),
|
||||
/* 0x024 */ AdventureFlag_FleeFirstPhantomTOS = FLAG(1, 4), // zelda text after first phantom spawns
|
||||
/* 0x025 */ AdventureFlag_SpawnFirstPhantomTOS = FLAG(1, 5),
|
||||
|
||||
@@ -51,7 +51,7 @@ public:
|
||||
/* 00 (vtable) */
|
||||
/* 04 */ u16 mUnk_04;
|
||||
/* 04 */ u16 mUnk_06;
|
||||
/* 08 */ u16 mUnk_08; // 220
|
||||
/* 08 */ u16 mUnk_08; // 220
|
||||
/* 08 */ bool mUnk_0A; // 222
|
||||
/* 08 */ bool mUnk_0B; // 223
|
||||
/* 0C */ bool mUnk_0C; // 224
|
||||
|
||||
@@ -364,7 +364,7 @@ public:
|
||||
#define BTN_ID_RAIL_MAP_OCEAN_LOST_AT_SEA_STATION 0x77
|
||||
#define BTN_ID_RAIL_MAP_SNOW_SLIPPERY_STATION 0x78
|
||||
|
||||
#define BTN_ID_SHOP_QUIT 0x81 // quit shop
|
||||
#define BTN_ID_SHOP_QUIT 0x81 // quit shop
|
||||
#define BTN_ID_SHOP_RETURN 0x82 // quit item preview
|
||||
#define BTN_ID_SHOP_BUY 0x83
|
||||
#define BTN_ID_SHOP_ITEM_1 0x84
|
||||
@@ -478,9 +478,9 @@ public:
|
||||
/* 14 */ Vec2s mPos; // image position (among other things)
|
||||
/* 18 */ STRUCT_PAD(0x18, 0x24);
|
||||
/* 24 */ Vec2us mPosOffset; // used to shift the button when selected
|
||||
/* 28 */ bool mUnk_28; // selected highlight effect when set to true
|
||||
/* 29 */ bool mUnk_29; // related to having the button selected
|
||||
/* 2A */ bool mUnk_2A; // disables button action
|
||||
/* 28 */ bool mUnk_28; // selected highlight effect when set to true
|
||||
/* 29 */ bool mUnk_29; // related to having the button selected
|
||||
/* 2A */ bool mUnk_2A; // disables button action
|
||||
/* 2A */ bool mUnk_2B;
|
||||
/* 2C */ bool mUnk_2C;
|
||||
/* 2D */ unk8 mUnk_2D;
|
||||
@@ -524,9 +524,9 @@ public:
|
||||
class UnkSystem2_UnkSubSystem1_Derived2 : public UnkSystem2_UnkSubSystem1_Base {
|
||||
public:
|
||||
/* 00 (vtable) */
|
||||
/* 30 */ void *mUnk_30; // related to the background texture draw (idle)
|
||||
/* 30 */ void *mUnk_30; // related to the background texture draw (idle)
|
||||
/* 34 */ UnkSystem2_UnkSubSystem7 mUnk_34; // related to the texture draw
|
||||
/* 38 */ unk16 mUnk_38; // related to the texture draw
|
||||
/* 38 */ unk16 mUnk_38; // related to the texture draw
|
||||
/* 3C */ Vec2us mUnk_3A; // overlaid elements position (text, icons etc...), relative to background position
|
||||
/* 40 */ unk16 mUnk_3E;
|
||||
/* 40 */ unk32 mUnk_40;
|
||||
@@ -637,8 +637,8 @@ class UnkSystem2_UnkSubSystem5_Base {
|
||||
public:
|
||||
/* 000 (vtable) */
|
||||
/* 004 */ wchar_t *mpString; // in this context it points to the player's name
|
||||
/* 008 */ unk16 mUnk_008; // UnkSystem2_UnkSubSystem5()'s param1
|
||||
/* 00A */ unk16 mUnk_00A; // UnkSystem2_UnkSubSystem5()'s param2
|
||||
/* 008 */ unk16 mUnk_008; // UnkSystem2_UnkSubSystem5()'s param1
|
||||
/* 00A */ unk16 mUnk_00A; // UnkSystem2_UnkSubSystem5()'s param2
|
||||
/* 00C */ void *mUnk_00C;
|
||||
/* 010 */ UnkSystem2_UnkSubSystem5_Base_10 mUnk_010;
|
||||
/* 130 */ STRUCT_PAD(0x130, 0x140);
|
||||
@@ -823,7 +823,7 @@ public:
|
||||
/* 4C */ unk32 mUnk_4C;
|
||||
/* 50 */ unk32 mUnk_50;
|
||||
/* 54 */ unk32 mUnk_54;
|
||||
/* 58 */ unk32 mUnk_58; // another timer?
|
||||
/* 58 */ unk32 mUnk_58; // another timer?
|
||||
/* 5C */ Vec2us mUnk_5C; // position of the animated texture
|
||||
/* 60 */ unk32 mUnk_60;
|
||||
/* 64 */ unk32 mUnk_64;
|
||||
|
||||
@@ -22,7 +22,7 @@ public:
|
||||
// data_02043f78
|
||||
/* 00 */ virtual ~UnkFileSystem1(); // func_02015518 && func_0201551c && func_02015528
|
||||
/* 08 */ virtual void *vfunc_08(unk32 param1) = 0;
|
||||
/* 0C */ virtual void vfunc_0C(void); // func_0201552c
|
||||
/* 0C */ virtual void vfunc_0C(void); // func_0201552c
|
||||
/* 10 */ virtual size_t vfunc_10(unk32 param1); // func_02015534
|
||||
/* 14 */
|
||||
};
|
||||
@@ -49,7 +49,7 @@ class UnkFileSystem2_10 {
|
||||
public:
|
||||
/* 00 */ void *mpFile;
|
||||
|
||||
UnkFileSystem2_10(); // func_02015380
|
||||
UnkFileSystem2_10(); // func_02015380
|
||||
~UnkFileSystem2_10(); // func_020153c4
|
||||
};
|
||||
|
||||
@@ -64,7 +64,7 @@ public:
|
||||
UnkFileSystem4(const char *param1, unk32 param2, unk32 param3, unk32 param4); // func_02015628
|
||||
|
||||
// data_02043f24
|
||||
/* 00 */ virtual ~UnkFileSystem4() override; // func_02015644 && func_02015650
|
||||
/* 00 */ virtual ~UnkFileSystem4() override; // func_02015644 && func_02015650
|
||||
/* 08 */ virtual void *vfunc_08(unk32 param1) override; // func_02015664
|
||||
};
|
||||
|
||||
@@ -77,7 +77,7 @@ public:
|
||||
UnkFileSystem1(param1) {}
|
||||
|
||||
// data_02043f40
|
||||
/* 00 */ virtual ~UnkFileSystem3() override; // func_0201568c && func_02015698
|
||||
/* 00 */ virtual ~UnkFileSystem3() override; // func_0201568c && func_02015698
|
||||
/* 08 */ virtual void *vfunc_08(unk32 param1) override; // func_020156ac
|
||||
};
|
||||
|
||||
@@ -90,8 +90,8 @@ public:
|
||||
UnkFileSystem2(const char *param1, unk32 param2); // func_020156c8
|
||||
|
||||
// data_02043f5c
|
||||
/* 00 */ virtual ~UnkFileSystem2() override; // func_020156f4 && func_02015708
|
||||
/* 08 */ virtual void *vfunc_08(unk32 param1) override; // func_02015724
|
||||
/* 0C */ virtual void vfunc_0C(void) override; // func_02015750
|
||||
/* 00 */ virtual ~UnkFileSystem2() override; // func_020156f4 && func_02015708
|
||||
/* 08 */ virtual void *vfunc_08(unk32 param1) override; // func_02015724
|
||||
/* 0C */ virtual void vfunc_0C(void) override; // func_02015750
|
||||
/* 10 */ virtual size_t vfunc_10(unk32 param1) override; // func_02015758
|
||||
};
|
||||
|
||||
@@ -16,9 +16,9 @@ public:
|
||||
// members 00 04 and 08 are used in data_ov000_020b1d74 to figure out which overlay to load next in slot 1
|
||||
class UnkStruct_0204a088 : public UnkStruct_0204a088_Base {
|
||||
public:
|
||||
/* 000 */ unk32 mUnk_00; // current index
|
||||
/* 000 */ unk32 mUnk_04; // prev index
|
||||
/* 000 */ unk32 mUnk_08; // next index
|
||||
/* 000 */ unk32 mUnk_00; // current index
|
||||
/* 000 */ unk32 mUnk_04; // prev index
|
||||
/* 000 */ unk32 mUnk_08; // next index
|
||||
/* 00C */ FileSelectManager_UnkDrawBase mUnk_0C[23]; // 23 possible overlays
|
||||
/* 120 */ u16 mUnk_120;
|
||||
/* 122 */ unk16 mUnk_122;
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
#pragma once
|
||||
|
||||
#include "Item/Item.hpp"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_020d8698 {
|
||||
public:
|
||||
void func_ov024_020cd458(ItemFlag itemFlag, unk32 param2);
|
||||
void func_ov024_020cd368(bool param1, bool param2);
|
||||
void func_ov024_020cd3d0();
|
||||
void func_ov024_020cd3e0(unk32 param1);
|
||||
void func_ov024_020cd3f0(unk32 param1);
|
||||
void func_ov024_020cd410();
|
||||
};
|
||||
|
||||
extern UnkStruct_020d8698 *data_ov024_020d8698;
|
||||
|
||||
@@ -16,6 +16,7 @@ naming scheme:
|
||||
- f_xxx: "F" for "Field" -> normal gameplay area (also known as a "land" area)
|
||||
*/
|
||||
typedef u32 SceneIndex;
|
||||
typedef u16 SceneIndex_Half;
|
||||
enum SceneIndex_ {
|
||||
/* 0 */ SceneIndex_test_trn = 0x00, //
|
||||
/* 1 */ SceneIndex_test_trn2 = 0x01, //
|
||||
@@ -172,8 +173,8 @@ struct UnkStruct_SceneChange1 {
|
||||
this->mUnk_04 = 0;
|
||||
this->mUnk_08 = 0;
|
||||
this->mRoomIndex = 0xFF; // this changes when you enter a house, it's not clear if it has another purpose yet
|
||||
this->mSpawnIndex = 0; // changing this then saving will change your spawn location after opening the save again
|
||||
// (not the area)
|
||||
this->mSpawnIndex = 0; // changing this then saving will change your spawn location after opening the save again
|
||||
// (not the area)
|
||||
this->mNextIsCS = false;
|
||||
this->mUnk_0D = 0;
|
||||
this->mCutsceneIndex = CutsceneIndex_None;
|
||||
@@ -254,6 +255,7 @@ public:
|
||||
|
||||
~UnkStruct_027e09a4();
|
||||
|
||||
unk32 func_01ffd3d8();
|
||||
UnkStruct_func_01ffd400 *func_01ffd400();
|
||||
|
||||
unk8 func_ov000_02070bd0(unk32 csIndex, unk32 param2);
|
||||
|
||||
@@ -9,6 +9,11 @@
|
||||
|
||||
class MapObject_20;
|
||||
|
||||
class UnkStruct_027e0cd8_0c_160 {
|
||||
public:
|
||||
bool func_ov026_02106aa8();
|
||||
};
|
||||
|
||||
class UnkStruct_027e0cd8_0c {
|
||||
public:
|
||||
/* 000 (vtable) */
|
||||
@@ -69,7 +74,12 @@ public:
|
||||
/* 0DC */ ZeldaObjectList *mUnk_DC[8];
|
||||
/* 0FC */ STRUCT_PAD(0xFC, 0x128);
|
||||
/* 128 */ u16 mUnk_128;
|
||||
/* 12A */ STRUCT_PAD(0x12A, 0x160);
|
||||
/* 160 */ UnkStruct_027e0cd8_0c_160 *mUnk_160;
|
||||
/* 164 */ STRUCT_PAD(0x164, 0x1E0);
|
||||
/* 1E0 */
|
||||
|
||||
// data_ov031_02112a0c
|
||||
/* 00 */ virtual void vfunc_00();
|
||||
/* 04 */ virtual void vfunc_04();
|
||||
/* 08 */ virtual void vfunc_08();
|
||||
@@ -97,12 +107,32 @@ public:
|
||||
Vec3p *func_ov001_020b8a5c(unk32 spawnIndex, unk32 param1);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0cd8_04_0C {
|
||||
public:
|
||||
/* 00 */ STRUCT_PAD(0x00, 0x50);
|
||||
/* 50 */
|
||||
|
||||
UnkStruct_027e0cd8_04_0C();
|
||||
};
|
||||
|
||||
class UnkStruct_027e0cd8_04 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ UnkStruct_027e0cd8_04_0C *mUnk_0C;
|
||||
/* 10 */
|
||||
/* B4 */
|
||||
|
||||
UnkStruct_027e0cd8_04();
|
||||
};
|
||||
|
||||
class UnkStruct_027e0cd8 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 04 */ unk32 *mUnk_04;
|
||||
/* 04 */ UnkStruct_027e0cd8_04 *mUnk_04; // stage flags
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ UnkStruct_027e0cd8_0c *mUnk_0C;
|
||||
/* 0C */ UnkStruct_027e0cd8_0c *mUnk_0C; // related to train?
|
||||
/* 10 */ MapObjectManager *mUnk_10;
|
||||
/* 14 */ STRUCT_PAD(0x14, 0x4C);
|
||||
/* 4C */
|
||||
|
||||
@@ -24,6 +24,7 @@ public:
|
||||
|
||||
void func_ov024_020d3d98(unk32 param1, unk32 param2);
|
||||
void func_ov024_020d3ee8(unk32 param1, u16 param2, unk32 param3);
|
||||
unk32 func_ov024_020d3dcc();
|
||||
|
||||
void func_ov110_02185d3c(ItemId itemId);
|
||||
};
|
||||
@@ -46,7 +47,7 @@ public:
|
||||
/* 24 */ unk32 mUnk_24;
|
||||
/* 28 */ ItemManager *mUnk_28;
|
||||
/* 2C */ ItemManager *mUnk_2C; // same as above
|
||||
/* 30 */ unk32 *mUnk_30; // ?
|
||||
/* 30 */ unk32 *mUnk_30; // ?
|
||||
/* 34 */ UnkStruct_027e0ce0_34 *mUnk_34;
|
||||
/* 38 */ unk32 *mUnk_38; // pointer to data_027e0478 when on the train
|
||||
/* 3C */ unk32 mUnk_3C;
|
||||
@@ -60,6 +61,8 @@ public:
|
||||
void func_ov000_0208bbd4(unk32 param1, Vec3p *param2, u16 param3);
|
||||
|
||||
void func_ov000_0208bbd4(unk32 param1, Vec3p *param2, void *param3);
|
||||
|
||||
static UnkStruct_027e0ce0_34 *func_ov000_0205c904();
|
||||
};
|
||||
|
||||
extern UnkStruct_027e0ce0 *data_027e0ce0;
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_027e0d00 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
|
||||
UnkStruct_027e0d00();
|
||||
~UnkStruct_027e0d00();
|
||||
|
||||
void func_ov024_020d4cc0(unk32 type);
|
||||
void func_ov024_020d4d10();
|
||||
|
||||
static UnkStruct_027e0d00 *func_ov000_0205c944();
|
||||
};
|
||||
|
||||
extern UnkStruct_027e0d00 *data_027e0d00;
|
||||
@@ -27,14 +27,14 @@ public:
|
||||
void func_ov000_020669dc();
|
||||
unk32 func_ov000_02066a08(UnkStruct5 *param1);
|
||||
|
||||
/* 00 */ virtual void vfunc_00(unk32 param1); // func_ov000_020667d8
|
||||
/* 04 */ virtual void vfunc_04(); // func_ov000_020667f4
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1); // func_ov000_020669cc
|
||||
/* 0C */ virtual unk32 vfunc_0C(); // func_ov000_020669d0
|
||||
/* 10 */ virtual unk32 vfunc_10(u16 *param1); // func_ov000_02066a5c
|
||||
/* 14 */ virtual unk32 vfunc_14(void *param1); // func_ov000_02066dfc
|
||||
/* 18 */ virtual void vfunc_18(); // func_ov000_020669d8
|
||||
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3); // func_ov000_02067234
|
||||
/* 00 */ virtual void vfunc_00(unk32 param1); // func_ov000_020667d8
|
||||
/* 04 */ virtual void vfunc_04(); // func_ov000_020667f4
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1); // func_ov000_020669cc
|
||||
/* 0C */ virtual unk32 vfunc_0C(); // func_ov000_020669d0
|
||||
/* 10 */ virtual unk32 vfunc_10(u16 *param1); // func_ov000_02066a5c
|
||||
/* 14 */ virtual unk32 vfunc_14(void *param1); // func_ov000_02066dfc
|
||||
/* 18 */ virtual void vfunc_18(); // func_ov000_020669d8
|
||||
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3); // func_ov000_02067234
|
||||
/* 20 */ virtual unk32 vfunc_20(unk32 param1, unk32 param2, unk32 param3); // func_ov000_0206723c
|
||||
/* 24 */
|
||||
};
|
||||
@@ -54,9 +54,9 @@ public:
|
||||
void func_ov000_0206738c();
|
||||
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov000_020673c8
|
||||
/* 0C */ virtual unk32 vfunc_0C() override; // func_ov000_02067434
|
||||
/* 0C */ virtual unk32 vfunc_0C() override; // func_ov000_02067434
|
||||
/* 10 */ virtual unk32 vfunc_10(u16 *param1) override; // func_ov000_02067474
|
||||
/* 24 */ virtual ~UnkSystem1_ov000_Derived1(); // func_ov000_020672ac & func_ov000_020672f4
|
||||
/* 24 */ virtual ~UnkSystem1_ov000_Derived1(); // func_ov000_020672ac & func_ov000_020672f4
|
||||
};
|
||||
|
||||
// data_ov000_020b489c
|
||||
@@ -66,8 +66,8 @@ public:
|
||||
|
||||
UnkSystem1_ov000_Derived2(unk32 param1, unk32 param2);
|
||||
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov000_0209fbec
|
||||
/* 0C */ virtual unk32 vfunc_0C() override; // func_ov000_0209fcdc
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov000_0209fbec
|
||||
/* 0C */ virtual unk32 vfunc_0C() override; // func_ov000_0209fcdc
|
||||
/* 24 */ virtual ~UnkSystem1_ov000_Derived2() override; // func_ov000_0209fb18 & func_ov000_0209fb5c
|
||||
};
|
||||
|
||||
@@ -78,9 +78,9 @@ public:
|
||||
|
||||
UnkSystem1_ov010(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
||||
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov010_020b8844
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov010_020b8844
|
||||
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3) override; // func_ov010_020b8878
|
||||
/* 24 */ virtual ~UnkSystem1_ov010() override; // func_ov010_020b65f0
|
||||
/* 24 */ virtual ~UnkSystem1_ov010() override; // func_ov010_020b65f0
|
||||
};
|
||||
|
||||
class UnkSystem1_ov010_Derived1 : public UnkSystem1_ov010 {
|
||||
@@ -107,7 +107,7 @@ public:
|
||||
|
||||
UnkSystem1_ov016_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
||||
/* 24 */ virtual ~UnkSystem1_ov016_Derived1() override; // func_ov016_020b7664
|
||||
/* 2C */ virtual void vfunc_2C(); // func_ov016_020b776c
|
||||
/* 2C */ virtual void vfunc_2C(); // func_ov016_020b776c
|
||||
};
|
||||
|
||||
// data_ov019_020d1e00
|
||||
@@ -128,7 +128,7 @@ public:
|
||||
/* 14 */ SaveFile *mUnk_14;
|
||||
/* 18 */ unk16 mUnk_18;
|
||||
/* 1A */ unk8 mUnk_1A; // bool?
|
||||
/* 1B */ u8 mUnk_1B; // bool?
|
||||
/* 1B */ u8 mUnk_1B; // bool?
|
||||
/* 1C */
|
||||
|
||||
UnkSystem1_ov019_Derived1();
|
||||
@@ -138,10 +138,10 @@ public:
|
||||
unk32 func_ov019_020c5540(bool param1, unk16 param2);
|
||||
void func_ov019_020c5590(unk32 param1, unk32 param2, unk32 param3);
|
||||
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov019_020c523c
|
||||
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3) override; // func_ov019_020c5284
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov019_020c523c
|
||||
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3) override; // func_ov019_020c5284
|
||||
/* 20 */ virtual unk32 vfunc_20(unk32 param1, unk32 param2, unk32 param3) override; // func_ov019_020c5430
|
||||
/* 24 */ WEAK virtual ~UnkSystem1_ov019_Derived1() override {} // func_ov019_020c5614
|
||||
/* 24 */ WEAK virtual ~UnkSystem1_ov019_Derived1() override {} // func_ov019_020c5614
|
||||
};
|
||||
|
||||
class UnkSystem1_ov019_2 : public UnkSystem1_ov000_Derived1 {
|
||||
@@ -167,9 +167,9 @@ public:
|
||||
UnkSystem1_ov019_Derived2();
|
||||
|
||||
// data_ov019_020d2440 vtable
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov019_020d035c
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov019_020d035c
|
||||
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3) override; // func_ov019_020d03a4
|
||||
/* 24 */ WEAK virtual ~UnkSystem1_ov019_Derived2() override {} // func_ov019_020d0594
|
||||
/* 24 */ WEAK virtual ~UnkSystem1_ov019_Derived2() override {} // func_ov019_020d0594
|
||||
};
|
||||
|
||||
class UnkSystem1_ov019_3 : public UnkSystem1_ov000_Derived1 {
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@ enum FileType {
|
||||
// .zob
|
||||
typedef struct ZeldaObjectList {
|
||||
/* 00 */ FileType type; // always "ZOLB"
|
||||
/* 04 */ unk32 nSize; // file size?
|
||||
/* 04 */ unk32 nSize; // file size?
|
||||
/* 08 */ unk16 unk_08;
|
||||
/* 0A */ unk16 unk_0a;
|
||||
/* 0C */ u16 nEntries; // number of entries
|
||||
|
||||
@@ -11,6 +11,9 @@
|
||||
#define ARM _Pragma("thumb off")
|
||||
#define THUMB _Pragma("thumb on")
|
||||
|
||||
#define THUMB_BEGIN _Pragma("thumb on")
|
||||
#define THUMB_END _Pragma("thumb off")
|
||||
|
||||
// `override` was added in C++11 before the DS, so we only use the keyword to indicate overriden functions
|
||||
#define override
|
||||
|
||||
|
||||
@@ -67,6 +67,17 @@ typedef s32 unk32;
|
||||
|
||||
DECL_PTMF(PTMF);
|
||||
typedef void (*UnkCallback)(u16 param1);
|
||||
|
||||
template <typename T> class AutoInstance {
|
||||
public:
|
||||
AutoInstance() {
|
||||
T::SetInstance((T *) this);
|
||||
}
|
||||
|
||||
~AutoInstance() {
|
||||
T::ClearInstance();
|
||||
}
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user