diff options
author | Myran2 <alternative@masschaos-gm.com> | 2012-09-01 00:36:26 +0100 |
---|---|---|
committer | Nay <dnpd.dd@gmail.com> | 2012-09-01 00:36:26 +0100 |
commit | 4bc983d7b756d235477eef8b7529cacfb7a1f247 (patch) | |
tree | a0b0ed3e1109864d1ee8f38e06a4796faba3029b /src | |
parent | 107bd5f5a379e370b12f7cc33a5aadb8c80bffc5 (diff) |
Core/Commands: Fix .cheat kill and add instakill immunity to it
Closes #7586
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 4 | ||||
-rwxr-xr-x | src/server/game/Spells/SpellEffects.cpp | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index c3fafa873bc..5118b5810b6 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -541,6 +541,10 @@ uint32 Unit::DealDamage(Unit* victim, uint32 damage, CleanDamage const* cleanDam if (IsAIEnabled) GetAI()->DamageDealt(victim, damage, damagetype); + if (victim->GetTypeId() == TYPEID_PLAYER) + if (victim->ToPlayer()->GetCommandStatus(CHEAT_GOD)) + return 0; + // Signal to pets that their owner was attacked if (victim->GetTypeId() == TYPEID_PLAYER) { diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 119e828680d..3637bb18049 100755 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -277,6 +277,10 @@ void Spell::EffectInstaKill(SpellEffIndex /*effIndex*/) if (!unitTarget || !unitTarget->isAlive()) return; + if (unitTarget->GetTypeId() == TYPEID_PLAYER) + if (unitTarget->ToPlayer()->GetCommandStatus(CHEAT_GOD)) + return; + if (m_caster == unitTarget) // prevent interrupt message finish(); |