mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-08-20 05:13:39 -07:00
trick: ledge clip into gtg (#5618)
Some checks are pending
Some checks are pending
* trick: ledge clip into gtg * fix
This commit is contained in:
parent
9924ebbd05
commit
112fbc5a4b
5 changed files with 27 additions and 9 deletions
|
@ -276,8 +276,8 @@ void SetAllEntrancesData() {
|
|||
{ EntranceType::Dungeon, RR_BOTTOM_OF_THE_WELL_ENTRYWAY, RR_KAK_WELL, ENTR_KAKARIKO_VILLAGE_OUTSIDE_BOTTOM_OF_THE_WELL } },
|
||||
{ { EntranceType::Dungeon, RR_ZF_LEDGE, RR_ICE_CAVERN_ENTRYWAY, ENTR_ICE_CAVERN_ENTRANCE },
|
||||
{ EntranceType::Dungeon, RR_ICE_CAVERN_ENTRYWAY, RR_ZF_LEDGE, ENTR_ZORAS_FOUNTAIN_OUTSIDE_ICE_CAVERN } },
|
||||
{ { EntranceType::Dungeon, RR_GF_OUTSIDE_GTG, RR_GERUDO_TRAINING_GROUND_ENTRYWAY, ENTR_GERUDO_TRAINING_GROUND_ENTRANCE },
|
||||
{ EntranceType::Dungeon, RR_GERUDO_TRAINING_GROUND_ENTRYWAY, RR_GF_OUTSIDE_GTG, ENTR_GERUDOS_FORTRESS_OUTSIDE_GERUDO_TRAINING_GROUND } },
|
||||
{ { EntranceType::Dungeon, RR_GF_TO_GTG, RR_GERUDO_TRAINING_GROUND_ENTRYWAY, ENTR_GERUDO_TRAINING_GROUND_ENTRANCE },
|
||||
{ EntranceType::Dungeon, RR_GERUDO_TRAINING_GROUND_ENTRYWAY, RR_GF_EXITING_GTG, ENTR_GERUDOS_FORTRESS_OUTSIDE_GERUDO_TRAINING_GROUND } },
|
||||
{ { EntranceType::GanonDungeon, RR_GANONS_CASTLE_LEDGE, RR_GANONS_CASTLE_ENTRYWAY, ENTR_INSIDE_GANONS_CASTLE_ENTRANCE },
|
||||
{ EntranceType::GanonDungeon, RR_GANONS_CASTLE_ENTRYWAY, RR_CASTLE_GROUNDS_FROM_GANONS_CASTLE, ENTR_CASTLE_GROUNDS_RAINBOW_BRIDGE_EXIT } },
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ void RegionTable_Init_GerudoTrainingGround() {
|
|||
//Exits
|
||||
Entrance(RR_GERUDO_TRAINING_GROUND_LOBBY, []{return ctx->GetDungeon(GERUDO_TRAINING_GROUND)->IsVanilla();}),
|
||||
Entrance(RR_GERUDO_TRAINING_GROUND_MQ_LOBBY, []{return ctx->GetDungeon(GERUDO_TRAINING_GROUND)->IsMQ();}),
|
||||
Entrance(RR_GF_OUTSIDE_GTG, []{return true;}),
|
||||
Entrance(RR_GF_EXITING_GTG, []{return true;}),
|
||||
});
|
||||
|
||||
#pragma region Vanilla
|
||||
|
|
|
@ -49,15 +49,26 @@ void RegionTable_Init_GerudoFortress() {
|
|||
EventAccess(&logic->GtG_GateOpen, []{return (logic->IsAdult && logic->HasItem(RG_GERUDO_MEMBERSHIP_CARD) && logic->HasItem(RG_CHILD_WALLET));}),
|
||||
}, {}, {
|
||||
//Exits
|
||||
Entrance(RR_GERUDO_TRAINING_GROUND_ENTRYWAY, []{return logic->GtG_GateOpen && (logic->IsAdult || ctx->GetOption(RSK_SHUFFLE_DUNGEON_ENTRANCES));}),
|
||||
Entrance(RR_GF_TO_GTG, []{return logic->GtG_GateOpen && (logic->IsAdult || ctx->GetOption(RSK_SHUFFLE_DUNGEON_ENTRANCES));}),
|
||||
//Jail
|
||||
Entrance(RR_GF_JAIL_WINDOW, []{return logic->CanUse(RG_HOOKSHOT);}),
|
||||
Entrance(RR_GF_OUTSKIRTS, []{return true;}),
|
||||
Entrance(RR_GF_NEAR_GROTTO, []{return logic->IsChild || logic->CanPassEnemy(RE_GERUDO_GUARD);}),
|
||||
// RANDTODO: Add tricks for getting past the gerudo guarding the hba range
|
||||
Entrance(RR_GF_ABOVE_GTG, []{return logic->IsChild || logic->CanPassEnemy(RE_GERUDO_GUARD);}),
|
||||
Entrance(RR_GF_TOP_OF_UPPER_VINES, []{return logic->HasItem(RG_GERUDO_MEMBERSHIP_CARD) && logic->CanUse(RG_LONGSHOT);}),
|
||||
Entrance(RR_GF_HBA_RANGE, []{return logic->IsChild || logic->HasItem(RG_GERUDO_MEMBERSHIP_CARD);}),
|
||||
});
|
||||
|
||||
areaTable[RR_GF_TO_GTG] = Region("GF to GTG", SCENE_GERUDOS_FORTRESS, {}, {}, {
|
||||
Entrance(RR_GERUDO_TRAINING_GROUND_ENTRYWAY, []{return true;}),
|
||||
});
|
||||
|
||||
// Split out to handle adult being immediately captured without card
|
||||
areaTable[RR_GF_EXITING_GTG] = Region("GF Exiting GTG", SCENE_GERUDOS_FORTRESS, {}, {}, {
|
||||
Entrance(RR_GF_OUTSIDE_GTG, []{return logic->IsChild || logic->HasItem(RG_GERUDO_MEMBERSHIP_CARD);}),
|
||||
Entrance(RR_GF_JAIL_WINDOW, []{return logic->CanUse(RG_HOOKSHOT);}),
|
||||
Entrance(RR_GF_OUTSKIRTS, []{return true;}),
|
||||
Entrance(RR_GF_NEAR_GROTTO, []{return logic->IsChild || logic->CanPassEnemy(RE_GERUDO_GUARD);}),
|
||||
// RANDTODO: Add tricks for getting past the gerudo guarding the hba range
|
||||
Entrance(RR_GF_ABOVE_GTG, []{return logic->IsChild || logic->CanPassEnemy(RE_GERUDO_GUARD);}),
|
||||
Entrance(RR_GF_TOP_OF_UPPER_VINES, []{return logic->HasItem(RG_GERUDO_MEMBERSHIP_CARD) && logic->CanUse(RG_LONGSHOT);}),
|
||||
Entrance(RR_GF_HBA_RANGE, []{return logic->IsChild || logic->HasItem(RG_GERUDO_MEMBERSHIP_CARD);}),
|
||||
});
|
||||
|
||||
#pragma endregion
|
||||
|
@ -123,6 +134,7 @@ void RegionTable_Init_GerudoFortress() {
|
|||
Entrance(RR_GF_TOP_OF_LOWER_VINES, []{return true;}),
|
||||
Entrance(RR_GF_SLOPED_ROOF, []{return logic->IsAdult && logic->CanUse(RG_HOVER_BOOTS);}),
|
||||
Entrance(RR_GF_TOP_OF_UPPER_VINES, []{return true /* logic->CanClimb() */;}),
|
||||
Entrance(RR_GF_TO_GTG, []{return logic->IsAdult && ctx->GetTrickOption(RT_GF_LEDGE_CLIP_INTO_GTG).Get();}),
|
||||
});
|
||||
|
||||
areaTable[RR_GF_TOP_OF_UPPER_VINES] = Region("GF Top of Upper Vines", SCENE_GERUDOS_FORTRESS, {}, {
|
||||
|
|
|
@ -421,6 +421,8 @@ typedef enum {
|
|||
RR_GF_OUTSKIRTS,
|
||||
RR_GF_NEAR_GROTTO,
|
||||
RR_GF_OUTSIDE_GTG,
|
||||
RR_GF_TO_GTG,
|
||||
RR_GF_EXITING_GTG,
|
||||
RR_GF_ABOVE_GTG,
|
||||
RR_GF_BOTTOM_OF_LOWER_VINES,
|
||||
RR_GF_TOP_OF_LOWER_VINES,
|
||||
|
@ -3579,6 +3581,7 @@ typedef enum {
|
|||
RT_PASS_GUARDS_WITH_NOTHING,
|
||||
RT_GF_JUMP,
|
||||
RT_GF_WARRIOR_WITH_DIFFICULT_WEAPON,
|
||||
RT_GF_LEDGE_CLIP_INTO_GTG,
|
||||
RT_HW_BUNNY_CROSSING,
|
||||
RT_HW_CROSSING,
|
||||
RT_LENS_HW,
|
||||
|
|
|
@ -590,6 +590,9 @@ void Settings::CreateOptions() {
|
|||
OPT_TRICK(RT_GF_WARRIOR_WITH_DIFFICULT_WEAPON, RCQUEST_BOTH, RA_GERUDO_FORTRESS, { Tricks::Tag::NOVICE },
|
||||
"Gerudo\'s Fortress Warriors with Difficult Weapons",
|
||||
"Warriors can be defeated with Slingshot or Bombchus.");
|
||||
OPT_TRICK(RT_GF_LEDGE_CLIP_INTO_GTG, RCQUEST_BOTH, RA_GERUDO_FORTRESS, { Tricks::Tag::NOVICE, Tricks::Tag::GLITCH },
|
||||
"Ledge Clip into Training Ground",
|
||||
"Adult Link can use a ledge clip to enter Gerudo Training Ground without Gerudo Card.");
|
||||
// disabled for now, can't check for being able to use bunny hood & bunny hood speedup is currently completely
|
||||
// decoupled from rando OPT_TRICK(RT_HW_BUNNY_CROSSING, RCQUEST_BOTH, RA_HAUNTED_WASTELAND, {Tricks::Tag::NOVICE},
|
||||
// "Wasteland Crossing with Bunny Hood", "You can beat the quicksand by using the increased speed of the Bunny Hood.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue