*Merge with r2465.
--HG-- branch : trunk
This commit is contained in:
+1
-1
@@ -15862,7 +15862,7 @@ void Player::_SaveAuras()
|
|||||||
CharacterDatabase.PExecute("INSERT INTO character_aura (guid,caster_guid,spell,effect_mask,stackcount,amount0, amount1, amount2,maxduration,remaintime,remaincharges) "
|
CharacterDatabase.PExecute("INSERT INTO character_aura (guid,caster_guid,spell,effect_mask,stackcount,amount0, amount1, amount2,maxduration,remaintime,remaincharges) "
|
||||||
"VALUES ('%u', '" I64FMTD "', '%u', '%u', '%d', '%d', '%d', '%d', '%d', '%d', '%d')",
|
"VALUES ('%u', '" I64FMTD "', '%u', '%u', '%d', '%d', '%d', '%d', '%d', '%d', '%d')",
|
||||||
GetGUIDLow(), itr->second->GetCasterGUID(),(uint32)itr->second->GetId(), (uint32)itr->second->GetEffectMask(),
|
GetGUIDLow(), itr->second->GetCasterGUID(),(uint32)itr->second->GetId(), (uint32)itr->second->GetEffectMask(),
|
||||||
(uint32)itr->second->GetStackAmount(), (int32)amounts[0], (int32)amounts[1], (int32)amounts[2]
|
(int32)itr->second->GetStackAmount(), (int32)amounts[0], (int32)amounts[1], (int32)amounts[2]
|
||||||
,int(itr->second->GetAuraMaxDuration()),int(itr->second->GetAuraDuration()),int(itr->second->GetAuraCharges()));
|
,int(itr->second->GetAuraMaxDuration()),int(itr->second->GetAuraDuration()),int(itr->second->GetAuraCharges()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1310,7 +1310,7 @@ void Aura::SetLoadedState(uint64 caster_guid,int32 maxduration,int32 duration,in
|
|||||||
m_stackAmount = stackamount;
|
m_stackAmount = stackamount;
|
||||||
for (uint8 i=0; i<MAX_SPELL_EFFECTS;++i)
|
for (uint8 i=0; i<MAX_SPELL_EFFECTS;++i)
|
||||||
if (m_partAuras[i])
|
if (m_partAuras[i])
|
||||||
m_partAuras[i]->SetAmount(amount[0]+i);
|
m_partAuras[i]->SetAmount(amount[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AuraEffect::HandleShapeshiftBoosts(bool apply)
|
void AuraEffect::HandleShapeshiftBoosts(bool apply)
|
||||||
|
|||||||
@@ -2050,7 +2050,7 @@ void Spell::EffectTriggerSpell(uint32 i)
|
|||||||
{
|
{
|
||||||
uint32 dispelMask = GetDispellMask(DISPEL_ALL);
|
uint32 dispelMask = GetDispellMask(DISPEL_ALL);
|
||||||
Unit::AuraMap& Auras = m_caster->GetAuras();
|
Unit::AuraMap& Auras = m_caster->GetAuras();
|
||||||
for(Unit::AuraMap::iterator iter = Auras.begin(); iter != Auras.end(); ++iter)
|
for(Unit::AuraMap::iterator iter = Auras.begin(); iter != Auras.end();)
|
||||||
{
|
{
|
||||||
// remove all harmful spells on you...
|
// remove all harmful spells on you...
|
||||||
SpellEntry const* spell = iter->second->GetSpellProto();
|
SpellEntry const* spell = iter->second->GetSpellProto();
|
||||||
@@ -2059,8 +2059,10 @@ void Spell::EffectTriggerSpell(uint32 i)
|
|||||||
// ignore positive and passive auras
|
// ignore positive and passive auras
|
||||||
&& !iter->second->IsPositive() && !iter->second->IsPassive())
|
&& !iter->second->IsPositive() && !iter->second->IsPassive())
|
||||||
{
|
{
|
||||||
m_caster->RemoveAura(iter->second);
|
m_caster->RemoveAura(iter);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
iter++;
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user