From 2ef549b50f8d596e7ed91a70d81f96089d8ef3ed Mon Sep 17 00:00:00 2001 From: ceikry Date: Mon, 5 Jul 2021 17:10:54 -0500 Subject: [PATCH] Award combat xp on calculation instead of on impact --- .../main/java/core/game/node/entity/combat/ImpactHandler.java | 3 --- .../rs09/game/node/entity/combat/handlers/MagicSwingHandler.kt | 1 + .../rs09/game/node/entity/combat/handlers/MeleeSwingHandler.kt | 1 + 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/Server/src/main/java/core/game/node/entity/combat/ImpactHandler.java b/Server/src/main/java/core/game/node/entity/combat/ImpactHandler.java index 1ad6d326b..f173c4ed7 100644 --- a/Server/src/main/java/core/game/node/entity/combat/ImpactHandler.java +++ b/Server/src/main/java/core/game/node/entity/combat/ImpactHandler.java @@ -171,9 +171,6 @@ public final class ImpactHandler { if (fam && player.getFamiliarManager().hasFamiliar() && !(player.getFamiliarManager().getFamiliar() instanceof Pet)) { source.setAttribute("fam-exp", true); } - if(style != CombatStyle.RANGE) { - style.getSwingHandler().addExperience(source, entity, state); - } source.removeAttribute("fam-exp"); } boolean dead = false; diff --git a/Server/src/main/kotlin/rs09/game/node/entity/combat/handlers/MagicSwingHandler.kt b/Server/src/main/kotlin/rs09/game/node/entity/combat/handlers/MagicSwingHandler.kt index bf743c2e4..99862dc15 100644 --- a/Server/src/main/kotlin/rs09/game/node/entity/combat/handlers/MagicSwingHandler.kt +++ b/Server/src/main/kotlin/rs09/game/node/entity/combat/handlers/MagicSwingHandler.kt @@ -86,6 +86,7 @@ open class MagicSwingHandler if (spell!!.type === SpellType.BLITZ) { ticks++ } + addExperience(entity, victim, state) return ticks } diff --git a/Server/src/main/kotlin/rs09/game/node/entity/combat/handlers/MeleeSwingHandler.kt b/Server/src/main/kotlin/rs09/game/node/entity/combat/handlers/MeleeSwingHandler.kt index edbc81127..ec435e6c6 100644 --- a/Server/src/main/kotlin/rs09/game/node/entity/combat/handlers/MeleeSwingHandler.kt +++ b/Server/src/main/kotlin/rs09/game/node/entity/combat/handlers/MeleeSwingHandler.kt @@ -75,6 +75,7 @@ open class MeleeSwingHandler hit = RandomFunction.random(max) } state.estimatedHit = hit + addExperience(entity, victim, state) return 1 }