diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/game/Player.cpp | 2 | ||||
| -rw-r--r-- | src/game/SpellAuras.cpp | 2 | ||||
| -rw-r--r-- | src/game/SpellEffects.cpp | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/src/game/Player.cpp b/src/game/Player.cpp index fb784afca2d..f29b81c11f4 100644 --- a/src/game/Player.cpp +++ b/src/game/Player.cpp @@ -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) " "VALUES ('%u', '" I64FMTD "', '%u', '%u', '%d', '%d', '%d', '%d', '%d', '%d', '%d')", 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())); } } diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 11e8abb2d08..f2721efb485 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -1310,7 +1310,7 @@ void Aura::SetLoadedState(uint64 caster_guid,int32 maxduration,int32 duration,in m_stackAmount = stackamount; for (uint8 i=0; i<MAX_SPELL_EFFECTS;++i) if (m_partAuras[i]) - m_partAuras[i]->SetAmount(amount[0]+i); + m_partAuras[i]->SetAmount(amount[i]); } void AuraEffect::HandleShapeshiftBoosts(bool apply) diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index f27cf4bf0c6..eb3ff67c243 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -2061,6 +2061,8 @@ void Spell::EffectTriggerSpell(uint32 i) { m_caster->RemoveAura(iter->second); } + else + iter++; } return; } |
