diff --git a/src/main/java/noppes/npcs/AbstractDataAbilities.java b/src/main/java/noppes/npcs/AbstractDataAbilities.java index 3f44394f3..3f041ecdc 100644 --- a/src/main/java/noppes/npcs/AbstractDataAbilities.java +++ b/src/main/java/noppes/npcs/AbstractDataAbilities.java @@ -1113,11 +1113,8 @@ public abstract class AbstractDataAbilities { if (hasExecutingAbility) { AbilityPhase phase = currentAbility.getPhase(); - // Cannot cancel during DAZED (already interrupted) - if (phase == AbilityPhase.DAZED) return; - // Only allow cancel during active phases - if (phase != AbilityPhase.WINDUP && phase != AbilityPhase.ACTIVE - && phase != AbilityPhase.BURST_DELAY) return; + // Only allow cancel during WINDUP phase + if (phase != AbilityPhase.WINDUP) return; // Remove telegraph removeTelegraph(currentAbility); diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerAbilityData.java b/src/main/java/noppes/npcs/controllers/data/PlayerAbilityData.java index 600926785..8cfaaa721 100644 --- a/src/main/java/noppes/npcs/controllers/data/PlayerAbilityData.java +++ b/src/main/java/noppes/npcs/controllers/data/PlayerAbilityData.java @@ -610,12 +610,10 @@ public class PlayerAbilityData extends AbstractDataAbilities implements IPlayerA if (!hasExecutingAbility && !isInChainDelay) return false; - // Don't allow cancel during DAZED + // Only allow cancel during WINDUP phase if (hasExecutingAbility) { AbilityPhase phase = currentAbility.getPhase(); - if (phase == AbilityPhase.DAZED) return false; - if (phase != AbilityPhase.WINDUP && phase != AbilityPhase.ACTIVE - && phase != AbilityPhase.BURST_DELAY) return false; + if (phase != AbilityPhase.WINDUP) return false; } long worldTime = getWorldTime();