aboutsummaryrefslogtreecommitdiff
path: root/src/game/World.cpp
diff options
context:
space:
mode:
authorBlaymoira <none@none>2009-03-05 17:25:29 +0100
committerBlaymoira <none@none>2009-03-05 17:25:29 +0100
commitc5175e5e470f6c630b4c8659f0e0e6a1094891cc (patch)
treeb8e71ea53376f32a4c6e4a57d2927674483a7a38 /src/game/World.cpp
parent465b10fc60a1f135ec26f09fc88d673a1e73a95d (diff)
*Implement SCRIPT_COMMAND_KILL for database scripting
--HG-- branch : trunk
Diffstat (limited to 'src/game/World.cpp')
-rw-r--r--src/game/World.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/game/World.cpp b/src/game/World.cpp
index 7adb9f4d24f..b722f67f827 100644
--- a/src/game/World.cpp
+++ b/src/game/World.cpp
@@ -2426,6 +2426,21 @@ void World::ScriptsProcess()
break;
}
+ case SCRIPT_COMMAND_KILL:
+ {
+ if(!source || ((Creature*)source)->isDead())
+ break;
+
+ ((Creature*)source)->DealDamage(((Creature*)source), ((Creature*)source)->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false);
+
+ switch(step.script->dataint)
+ {
+ case 0: break; //return false not remove corpse
+ case 1: ((Creature*)source)->RemoveCorpse(); break;
+ }
+ break;
+ }
+
default:
sLog.outError("Unknown script command %u called.",step.script->command);
break;