aboutsummaryrefslogtreecommitdiff
path: root/src/game/GameObject.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2009-08-19 16:52:51 -0500
committermegamage <none@none>2009-08-19 16:52:51 -0500
commit012d6fa865fb8083dcbeae9b04926527b3c19f4e (patch)
tree46b2b2c30d751888d2dd91fc31c9bd0457790b7f /src/game/GameObject.cpp
parent618162052007b3e9003db858ea33eed11f5af4df (diff)
[8381] Some refactoring work in Unit::m_currentSpells code. Author: VladimirMangos
* Restrict access, use enum args, move some repeated code parts to function. * Make m_selfContainer set only part of Unit::SetCurrentCastedSpell --HG-- branch : trunk
Diffstat (limited to 'src/game/GameObject.cpp')
-rw-r--r--src/game/GameObject.cpp17
1 files changed, 4 insertions, 13 deletions
diff --git a/src/game/GameObject.cpp b/src/game/GameObject.cpp
index a7443d67e6b..e9f91fdb645 100644
--- a/src/game/GameObject.cpp
+++ b/src/game/GameObject.cpp
@@ -268,11 +268,7 @@ void GameObject::Update(uint32 /*p_time*/)
Unit* caster = GetOwner();
if(caster && caster->GetTypeId()==TYPEID_PLAYER)
{
- if(caster->m_currentSpells[CURRENT_CHANNELED_SPELL])
- {
- caster->m_currentSpells[CURRENT_CHANNELED_SPELL]->SendChannelUpdate(0);
- caster->m_currentSpells[CURRENT_CHANNELED_SPELL]->finish(false);
- }
+ caster->FinishSpell(CURRENT_CHANNELED_SPELL);
WorldPacket data(SMSG_FISH_NOT_HOOKED,0);
((Player*)caster)->GetSession()->SendPacket(&data);
@@ -1150,11 +1146,7 @@ void GameObject::Use(Unit* user)
}
}
- if(player->m_currentSpells[CURRENT_CHANNELED_SPELL])
- {
- player->m_currentSpells[CURRENT_CHANNELED_SPELL]->SendChannelUpdate(0);
- player->m_currentSpells[CURRENT_CHANNELED_SPELL]->finish();
- }
+ player->FinishSpell(CURRENT_CHANNELED_SPELL);
return;
}
@@ -1185,7 +1177,7 @@ void GameObject::Use(Unit* user)
// in case summoning ritual caster is GO creator
spellCaster = caster;
- if(!caster->m_currentSpells[CURRENT_CHANNELED_SPELL])
+ if(!caster->GetCurrentSpell(CURRENT_CHANNELED_SPELL))
return;
spellId = info->summoningRitual.spellId;
@@ -1198,8 +1190,7 @@ void GameObject::Use(Unit* user)
}
// finish spell
- caster->m_currentSpells[CURRENT_CHANNELED_SPELL]->SendChannelUpdate(0);
- caster->m_currentSpells[CURRENT_CHANNELED_SPELL]->finish();
+ player->FinishSpell(CURRENT_CHANNELED_SPELL);
// can be deleted now
SetLootState(GO_JUST_DEACTIVATED);