mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-01-07 03:48:10 -05:00
Check Tracker - Fixes Dampe's Gravedigging Tour
This commit is contained in:
parent
2cbeeaf817
commit
bf96ee3130
@ -132,7 +132,7 @@ void LocationTable_Init() {
|
||||
locationTable[GRAVEYARD_HOOKSHOT_CHEST] = ItemLocation::Chest (RC_GRAVEYARD_HOOKSHOT_CHEST, 0x48, 0x00, "GY Hookshot Chest", GRAVEYARD_HOOKSHOT_CHEST, PROGRESSIVE_HOOKSHOT, {Category::cGraveyard, Category::cKakariko,}, SpoilerCollectionCheckGroup::GROUP_KAKARIKO);
|
||||
locationTable[GRAVEYARD_DAMPE_RACE_FREESTANDING_POH] = ItemLocation::Collectable(RC_GRAVEYARD_DAMPE_RACE_FREESTANDING_POH, 0x48, 0x07, "GY Dampe Race Freestanding PoH", GRAVEYARD_DAMPE_RACE_FREESTANDING_POH, PIECE_OF_HEART, {Category::cGraveyard, Category::cKakariko, Category::cMinigame}, SpoilerCollectionCheckGroup::GROUP_KAKARIKO);
|
||||
locationTable[GRAVEYARD_FREESTANDING_POH] = ItemLocation::Collectable(RC_GRAVEYARD_FREESTANDING_POH, 0x53, 0x04, "GY Freestanding PoH", GRAVEYARD_FREESTANDING_POH, PIECE_OF_HEART, {Category::cGraveyard, Category::cKakariko,}, SpoilerCollectionCheckGroup::GROUP_KAKARIKO);
|
||||
locationTable[GRAVEYARD_DAMPE_GRAVEDIGGING_TOUR] = ItemLocation::Collectable(RC_GRAVEYARD_DAMPE_GRAVEDIGGING_TOUR, 0x53, 0x08, "GY Dampe Gravedigging Tour", GRAVEYARD_DAMPE_GRAVEDIGGING_TOUR, PIECE_OF_HEART, {Category::cGraveyard, Category::cKakariko,}, SpoilerCollectionCheck::ItemGetInf(20), SpoilerCollectionCheckGroup::GROUP_KAKARIKO);
|
||||
locationTable[GRAVEYARD_DAMPE_GRAVEDIGGING_TOUR] = ItemLocation::Collectable(RC_GRAVEYARD_DAMPE_GRAVEDIGGING_TOUR, 0x53, 0x08, "GY Dampe Gravedigging Tour", GRAVEYARD_DAMPE_GRAVEDIGGING_TOUR, PIECE_OF_HEART, {Category::cGraveyard, Category::cKakariko,}, SpoilerCollectionCheck::Gravedigger(0x53, 0x1F), SpoilerCollectionCheckGroup::GROUP_KAKARIKO);
|
||||
|
||||
//Death Mountain
|
||||
locationTable[DMT_CHEST] = ItemLocation::Chest (RC_DMT_CHEST, 0x60, 0x01, "DMT Chest", DMT_CHEST, PURPLE_RUPEE, {Category::cDeathMountainTrail, Category::cDeathMountain,}, SpoilerCollectionCheckGroup::GROUP_DEATH_MOUNTAIN);
|
||||
|
@ -142,6 +142,10 @@ class SpoilerCollectionCheck {
|
||||
static auto BigPoePoints() {
|
||||
return SpoilerCollectionCheck(SpoilerCollectionCheckType::SPOILER_CHK_POE_POINTS, 0x00, 0x00);
|
||||
}
|
||||
|
||||
static auto Gravedigger(uint8_t scene, uint8_t flag) {
|
||||
return SpoilerCollectionCheck(SpoilerCollectionCheckType::SPOILER_CHK_GRAVEDIGGER, scene, flag);
|
||||
}
|
||||
|
||||
static auto ShopItem(uint8_t scene, uint8_t itemSlot) {
|
||||
return SpoilerCollectionCheck(SpoilerCollectionCheckType::SPOILER_CHK_SHOP_ITEM, scene, itemSlot);
|
||||
|
@ -25,6 +25,7 @@ typedef enum {
|
||||
SPOILER_CHK_SHOP_ITEM,
|
||||
SPOILER_CHK_MAGIC_BEANS,
|
||||
SPOILER_CHK_MERCHANT,
|
||||
SPOILER_CHK_GRAVEDIGGER,
|
||||
} SpoilerCollectionCheckType;
|
||||
|
||||
// Location groups for checks, used to group the checks by logical location
|
||||
|
@ -695,6 +695,10 @@ bool HasItemBeenCollected(RandomizerCheckObject obj) {
|
||||
return false;
|
||||
case SpoilerCollectionCheckType::SPOILER_CHK_POE_POINTS:
|
||||
return gSaveContext.highScores[HS_POE_POINTS] >= 1000;
|
||||
case SpoilerCollectionCheckType::SPOILER_CHK_GRAVEDIGGER:
|
||||
//Gravedigger has a fix in place that means one of two save locations. Check both.
|
||||
return (gSaveContext.itemGetInf[1] & 0x1000) ||
|
||||
CVar_GetS32("gGravediggingTourFix", 0) && gSaveContext.sceneFlags[scene].collect & (1 << flag);
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user