Fixed antipoison not working in some scenarios

Added new ::timers admin command
This commit is contained in:
Avi Weinstock
2023-09-01 12:29:12 +00:00
committed by Ryan
parent 3b0360eb01
commit 12eaa1e05a
5 changed files with 17 additions and 5 deletions
@@ -279,5 +279,16 @@ class DevelopmentCommandSet : CommandSet(Privilege.ADMIN) {
val id = args[1].toIntOrNull() ?: 9804
player.dialogueInterpreter.sendDialogues(player, id, "Expression ID: $id")
}
define("timers", Privilege.ADMIN, "::timers", "Print out timers") { player, args ->
player.sendMessage("Active timers:")
for(timer in player.timers.activeTimers) {
player.sendMessage(" ${timer.identifier} ${timer.nextExecution}")
}
player.sendMessage("New timers:")
for(timer in player.timers.newTimers) {
player.sendMessage(" ${timer.identifier}")
}
}
}
}
@@ -40,10 +40,6 @@ class Poison : PersistTimer (30, "poison", flags = arrayOf(TimerFlag.ClearOnDeat
}
override fun onRegister (entity: Entity) {
if (hasTimerActive<PoisonImmunity>(entity)) {
removeTimer<Poison>(entity)
return
}
if (entity is Player) {
sendMessage(entity, "You have been poisoned.")
entity.debug ("[Poison] -> Received for $severity severity.")