mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-08-21 13:53:49 -07:00
Enable MQ Dungeons in Randomizer (#1828)
* Refactor GetCheckFromActor, WIP currently broken * Fixes build errors via forward declarations and emplace vs insert. * Removes some unnecessary code. * Fixes non-windows build errors. * Fixes Deku Scrubs outside of grottos. * Fixes DMC Deku Scrub Grotto Center * Fixes Ruto Blue Warp * Fix issue identifying blue warp rando checks * Move identifyCow to randomizer.cpp * Various updates to vanilla check objects * Identify MQ checks in check object table * Adjustments to how multimap is used and initialized * Convert u16 in check object table to s16 * Fix a few issues with MQ checks * Fix issue with TWO_ACTOR_PARAMS macro * Fixes some scrubs and cows appearing as identical. * Fixes known gossip stone issues (ToT, DC) * Fixes Dampe's Gravedigging tour rcObject * Fix crash on locations tab * Enable master quest dungeons in rando Co-authored-by: Christopher Leggett <chris@leggett.dev>
This commit is contained in:
parent
ef73aa4f8d
commit
1db4e9303e
16 changed files with 1197 additions and 2583 deletions
|
@ -266,7 +266,7 @@ extern GraphicsContext* __gfxCtx;
|
|||
|
||||
#define NUM_TRIALS 6
|
||||
#define NUM_SHOP_ITEMS 64
|
||||
#define NUM_SCRUBS 35
|
||||
#define NUM_SCRUBS 46
|
||||
#define FOREST_TEMPLE_SMALL_KEY_MAX (ResourceMgr_IsSceneMasterQuest(SCENE_BMORI1) ? 6 : 5)
|
||||
#define FIRE_TEMPLE_SMALL_KEY_MAX (ResourceMgr_IsSceneMasterQuest(SCENE_HIDAN) ? 5 : 8)
|
||||
#define WATER_TEMPLE_SMALL_KEY_MAX (ResourceMgr_IsSceneMasterQuest(SCENE_MIZUSIN) ? 2 : 6)
|
||||
|
|
|
@ -350,10 +350,14 @@ typedef enum {
|
|||
#define DEFINE_ACTOR_UNSET(enum) enum,
|
||||
#define DEFINE_ACTOR(_0, enum, _2) DEFINE_ACTOR_INTERNAL(_0, enum, _2)
|
||||
|
||||
typedef enum {
|
||||
#ifdef __cplusplus
|
||||
enum ActorID : int {
|
||||
#else
|
||||
enum ActorID {
|
||||
#endif
|
||||
#include "tables/actor_table.h"
|
||||
/* 0x0192 */ ACTOR_ID_MAX // originally "ACTOR_DLF_MAX"
|
||||
} ActorID;
|
||||
};
|
||||
|
||||
#undef DEFINE_ACTOR
|
||||
#undef DEFINE_ACTOR_INTERNAL
|
||||
|
|
|
@ -184,7 +184,7 @@ typedef struct {
|
|||
char ganonHintText[150];
|
||||
char ganonText[250];
|
||||
u8 seedIcons[5];
|
||||
u16 randomizerInf[8];
|
||||
u16 randomizerInf[9];
|
||||
u8 temporaryWeapon;
|
||||
u16 adultTradeItems;
|
||||
u8 pendingIceTrapCount;
|
||||
|
|
|
@ -303,7 +303,11 @@ typedef union {
|
|||
SCmdAltHeaders altHeaders;
|
||||
} SceneCmd; // size = 0x8
|
||||
|
||||
typedef enum {
|
||||
#ifdef __cplusplus
|
||||
enum SceneID : int {
|
||||
#else
|
||||
enum SceneID {
|
||||
#endif
|
||||
/* 0x00 */ SCENE_YDAN,
|
||||
/* 0x01 */ SCENE_DDAN,
|
||||
/* 0x02 */ SCENE_BDAN,
|
||||
|
@ -416,7 +420,7 @@ typedef enum {
|
|||
/* 0x6C */ SCENE_SASATEST,
|
||||
/* 0x6D */ SCENE_TESTROOM,
|
||||
/* 0x6E */ SCENE_ID_MAX
|
||||
} SceneID;
|
||||
};
|
||||
|
||||
// Scene commands
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue