This commit is contained in:
Pepe20129 2025-07-13 18:32:32 +02:00
commit 564a130b72
3 changed files with 15 additions and 23 deletions

View file

@ -1081,7 +1081,8 @@ bool Logic::CanJumpslash() {
}
bool Logic::CanCrouchStab() {
return (CanUse(RG_DEKU_SHIELD) || CanUse(RG_MIRROR_SHIELD) || (IsAdult && HasItem(RG_HYLIAN_SHIELD))) && (CanUseSword() || CanUse(RG_STICKS) || CanUse(RG_MEGATON_HAMMER));
return (CanUse(RG_DEKU_SHIELD) || CanUse(RG_MIRROR_SHIELD) || (IsAdult && HasItem(RG_HYLIAN_SHIELD))) &&
(CanUseSword() || CanUse(RG_STICKS) || CanUse(RG_MEGATON_HAMMER));
}
/// @brief Checks if the player can do ISG (does not check for being able to interrupt the crouchstab)
@ -1100,19 +1101,12 @@ bool Logic::CanDoISG() {
/// @param persistentDamageSource Whether a persistent damage source to shield exists (eg biri hover)
/// @return Whether hovering an be done or not
bool Logic::CanHover(bool againstWall, bool persistentDamageSource) {
return
ctx->GetTrickOption(RT_HOVERING) &&
CanDoISG() &&
(
persistentDamageSource ||
CanUse(RG_BOMB_BAG) ||
(
!againstWall &&
CanUse(RG_PROGRESSIVE_BOMBCHUS)
)
) &&
// if not against a wall, need either hover boots to shorten the backflips or an item to do a contorsion hover
(againstWall || CanUse(RG_HOVER_BOOTS) || CanUse(RG_FAIRY_SLINGSHOT) || CanUse(RG_FAIRY_BOW) || CanUse(RG_BOOMERANG));
return ctx->GetTrickOption(RT_HOVERING) && CanDoISG() &&
(persistentDamageSource || CanUse(RG_BOMB_BAG) || (!againstWall && CanUse(RG_PROGRESSIVE_BOMBCHUS))) &&
// if not against a wall, need either hover boots to shorten the backflips or an item to do a contorsion
// hover
(againstWall || CanUse(RG_HOVER_BOOTS) || CanUse(RG_FAIRY_SLINGSHOT) || CanUse(RG_FAIRY_BOW) ||
CanUse(RG_BOOMERANG));
}
bool Logic::CanHitSwitch(EnemyDistance distance, bool inWater) {

View file

@ -3537,11 +3537,11 @@ typedef enum {
RT_ISG,
RT_HOVERING,
// 3ds splits hovering into multiple tricks
//RT_HOVERING_BOW_SLINGSHOT,
//RT_HOVERING_CONTORTION,
//RT_HOVERING_ENEMY,
//RT_HOVERING_HOVERBOOTS,
//RT_HOVERING_WALL,
// RT_HOVERING_BOW_SLINGSHOT,
// RT_HOVERING_CONTORTION,
// RT_HOVERING_ENEMY,
// RT_HOVERING_HOVERBOOTS,
// RT_HOVERING_WALL,
RT_KF_ADULT_GS, // -- location tricks
RT_LW_BRIDGE,
RT_LW_MIDO_BACKFLIP,

View file

@ -427,11 +427,9 @@ void Settings::CreateOptions() {
"apply to MQ Dead Hand bomb flowers.\nUsing blue fire on bombflower to stop rolling goron also requires "
"\"Stop Link the Goron with Din's Fire\".\nUsing blue fire arrows to break floor in King Dodongo's "
"chamber also requires \"Dodongo\'s Cavern Smash the Boss Lobby Floor\".");
OPT_TRICK(RT_ISG, RCQUEST_BOTH, RA_NONE, { Tricks::Tag::NOVICE, Tricks::Tag::GLITCH },
"Infinite Sword Glitch",
OPT_TRICK(RT_ISG, RCQUEST_BOTH, RA_NONE, { Tricks::Tag::NOVICE, Tricks::Tag::GLITCH }, "Infinite Sword Glitch",
"By interrupting a crouchstab, the sword hitbox is never disabled.");
OPT_TRICK(RT_HOVERING, RCQUEST_BOTH, RA_NONE, { Tricks::Tag::INTERMEDIATE, Tricks::Tag::GLITCH },
"Hovering",
OPT_TRICK(RT_HOVERING, RCQUEST_BOTH, RA_NONE, { Tricks::Tag::INTERMEDIATE, Tricks::Tag::GLITCH }, "Hovering",
"By shielding damage while midair and doing ISG, you can hover in place."
"\nIt is possible to the backflip (or sideflip) and shield another damage source to get higher."
"\n"