Fix blitzcrank fishing rod
This commit is contained in:
@@ -34,6 +34,7 @@ import org.bukkit.event.entity.EntityExplodeEvent
|
||||
import org.bukkit.event.entity.PlayerDeathEvent
|
||||
import org.bukkit.event.entity.ProjectileHitEvent
|
||||
import org.bukkit.event.entity.ProjectileLaunchEvent
|
||||
import org.bukkit.event.player.PlayerFishEvent
|
||||
import org.bukkit.event.player.PlayerInteractEvent
|
||||
import org.bukkit.event.player.PlayerItemBreakEvent
|
||||
import org.bukkit.event.player.PlayerMoveEvent
|
||||
@@ -172,7 +173,10 @@ class KitEventDispatcher(
|
||||
|
||||
if ( itemInHand.type != active.triggerMaterial ) return
|
||||
|
||||
event.isCancelled = true // prevent vanilla block interaction on ability item
|
||||
// Cancel immediately — before any further logic — so that items with
|
||||
// a vanilla right-click action (e.g. FISHING_ROD casting a bobber)
|
||||
// are suppressed on the same tick and no animation reaches other clients.
|
||||
event.isCancelled = true
|
||||
|
||||
val chargeData = kitManager.getChargeData( player ) ?: return
|
||||
|
||||
@@ -278,6 +282,26 @@ class KitEventDispatcher(
|
||||
event.isCancelled = true
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = false)
|
||||
fun onFishingRodCast(
|
||||
event: PlayerFishEvent
|
||||
) {
|
||||
if ( !isIngame() ) return
|
||||
if ( event.state != PlayerFishEvent.State.IN_GROUND &&
|
||||
event.state != PlayerFishEvent.State.FISHING ) return
|
||||
|
||||
val player = event.player
|
||||
val kit = kitManager.getSelectedKit( player ) ?: return
|
||||
val playstyle = kitManager.getSelectedPlaystyle( player )
|
||||
val active = kit.getActiveAbility( playstyle )
|
||||
|
||||
if ( active.triggerMaterial != Material.FISHING_ROD ) return
|
||||
|
||||
// Angel ist Ability-Trigger → Bobber-Wurf unterdrücken
|
||||
event.isCancelled = true
|
||||
event.hook.remove()
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
fun onSnowballHit(
|
||||
event: ProjectileHitEvent
|
||||
|
||||
Reference in New Issue
Block a user