Corrected high alch delay from 3 ticks to 5 ticks

Made high alch correctly interrupt any actions other than movement
This commit is contained in:
Ceikry 2022-08-27 15:52:27 +00:00 committed by Ryan
parent df236d29c9
commit dff8bf5c14
2 changed files with 11 additions and 3 deletions

View file

@ -5,6 +5,7 @@ import api.events.TeleportEvent
import api.getAttribute import api.getAttribute
import core.game.content.activity.mta.impl.GraveyardZone import core.game.content.activity.mta.impl.GraveyardZone
import core.game.content.global.Bones import core.game.content.global.Bones
import core.game.interaction.MovementPulse
import core.game.node.entity.Entity import core.game.node.entity.Entity
import core.game.node.entity.impl.Animator.Priority import core.game.node.entity.impl.Animator.Priority
import core.game.node.entity.impl.Projectile import core.game.node.entity.impl.Projectile
@ -226,7 +227,9 @@ class ModernListeners : SpellListener("modern"){
return return
} }
player.lock(3) if (player.pulseManager.current !is MovementPulse) {
player.pulseManager.clear()
}
if(player.inventory.remove(Item(item.id,1))) { if(player.inventory.remove(Item(item.id,1))) {
removeRunes(player) removeRunes(player)
@ -243,7 +246,7 @@ class ModernListeners : SpellListener("modern"){
addXP(player,if(high) 65.0 else 31.0) addXP(player,if(high) 65.0 else 31.0)
showMagicTab(player) showMagicTab(player)
setDelay(player,false) setDelay(player,5)
} }
} }

View file

@ -1,5 +1,6 @@
package rs09.game.node.entity.skill.magic package rs09.game.node.entity.skill.magic
import api.setAttribute
import core.cache.def.impl.ItemDefinition import core.cache.def.impl.ItemDefinition
import core.game.node.Node import core.game.node.Node
import core.game.node.entity.player.Player import core.game.node.entity.player.Player
@ -83,6 +84,10 @@ abstract class SpellListener(val bookName: String) : Listener {
if(!isTeleport) player.setAttribute("magic-delay",GameWorld.ticks + 3) else player.setAttribute("magic-delay",GameWorld.ticks + 5) if(!isTeleport) player.setAttribute("magic-delay",GameWorld.ticks + 3) else player.setAttribute("magic-delay",GameWorld.ticks + 5)
} }
fun setDelay(player: Player, delay: Int) {
setAttribute(player, "magic-delay", GameWorld.ticks + delay)
}
fun interrupt(player: Player){ fun interrupt(player: Player){
player.pulseManager.clear() player.pulseManager.clear()
} }