From 719726dc509faf2a815230f5cdfe9958684ecb9b Mon Sep 17 00:00:00 2001 From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54> Date: Mon, 8 Nov 2010 08:55:34 +0000 Subject: [PATCH] When a boss dies the player gets experience even if he did not kill it directly or through summons git-svn-id: http://svn.net-core.org/repos/t-engine4@1816 51575b47-30f0-44d4-a5cc-537603b46e54 --- game/modules/tome/class/Actor.lua | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/game/modules/tome/class/Actor.lua b/game/modules/tome/class/Actor.lua index c8c8a1a79a..310cb5e3ce 100644 --- a/game/modules/tome/class/Actor.lua +++ b/game/modules/tome/class/Actor.lua @@ -747,7 +747,14 @@ function _M:die(src) -- Gives the killer some exp for the kill if src and src.resolveSource and src:resolveSource().gainExp then - src:resolveSource():gainExp(self:worthExp(src:resolveSource())) + local killer = src:resolveSource() + killer:gainExp(self:worthExp(killer)) + -- Hack: even if the boss dies from something else, give the player exp + if not killer.player and self.rank > 3 then + game.logPlayer(game.player, "You feel a surge of power as a powerful creature falls nearby.") + killer = game.player:resolveSource() + killer:gainExp(self:worthExp(killer)) + end end -- Do we get a blooooooody death ? if rng.percent(33) then self:bloodyDeath() end -- GitLab