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() { 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) /// @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) /// @param persistentDamageSource Whether a persistent damage source to shield exists (eg biri hover)
/// @return Whether hovering an be done or not /// @return Whether hovering an be done or not
bool Logic::CanHover(bool againstWall, bool persistentDamageSource) { bool Logic::CanHover(bool againstWall, bool persistentDamageSource) {
return return ctx->GetTrickOption(RT_HOVERING) && CanDoISG() &&
ctx->GetTrickOption(RT_HOVERING) && (persistentDamageSource || CanUse(RG_BOMB_BAG) || (!againstWall && CanUse(RG_PROGRESSIVE_BOMBCHUS))) &&
CanDoISG() && // if not against a wall, need either hover boots to shorten the backflips or an item to do a contorsion
( // hover
persistentDamageSource || (againstWall || CanUse(RG_HOVER_BOOTS) || CanUse(RG_FAIRY_SLINGSHOT) || CanUse(RG_FAIRY_BOW) ||
CanUse(RG_BOMB_BAG) || CanUse(RG_BOOMERANG));
(
!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) { bool Logic::CanHitSwitch(EnemyDistance distance, bool inWater) {

View file

@ -3537,11 +3537,11 @@ typedef enum {
RT_ISG, RT_ISG,
RT_HOVERING, RT_HOVERING,
// 3ds splits hovering into multiple tricks // 3ds splits hovering into multiple tricks
//RT_HOVERING_BOW_SLINGSHOT, // RT_HOVERING_BOW_SLINGSHOT,
//RT_HOVERING_CONTORTION, // RT_HOVERING_CONTORTION,
//RT_HOVERING_ENEMY, // RT_HOVERING_ENEMY,
//RT_HOVERING_HOVERBOOTS, // RT_HOVERING_HOVERBOOTS,
//RT_HOVERING_WALL, // RT_HOVERING_WALL,
RT_KF_ADULT_GS, // -- location tricks RT_KF_ADULT_GS, // -- location tricks
RT_LW_BRIDGE, RT_LW_BRIDGE,
RT_LW_MIDO_BACKFLIP, 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 " "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 " "\"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\"."); "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 }, OPT_TRICK(RT_ISG, RCQUEST_BOTH, RA_NONE, { Tricks::Tag::NOVICE, Tricks::Tag::GLITCH }, "Infinite Sword Glitch",
"Infinite Sword Glitch",
"By interrupting a crouchstab, the sword hitbox is never disabled."); "By interrupting a crouchstab, the sword hitbox is never disabled.");
OPT_TRICK(RT_HOVERING, RCQUEST_BOTH, RA_NONE, { Tricks::Tag::INTERMEDIATE, Tricks::Tag::GLITCH }, OPT_TRICK(RT_HOVERING, RCQUEST_BOTH, RA_NONE, { Tricks::Tag::INTERMEDIATE, Tricks::Tag::GLITCH }, "Hovering",
"Hovering",
"By shielding damage while midair and doing ISG, you can hover in place." "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." "\nIt is possible to the backflip (or sideflip) and shield another damage source to get higher."
"\n" "\n"