diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Entities/Player/Player.cpp | 17 | ||||
-rwxr-xr-x | src/server/shared/Database/Implementation/CharacterDatabase.cpp | 4 |
2 files changed, 11 insertions, 10 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index d441a73f7fd..25508e747dc 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -18120,18 +18120,18 @@ void Player::_SaveAuras(SQLTransaction& trans) uint8 recalculateMask = 0; for (uint8 i = 0; i < MAX_SPELL_EFFECTS; ++i) { - if (aura->GetEffect(i)) + if (AuraEffect const* effect = aura->GetEffect(i)) { - baseDamage[i] = aura->GetEffect(i)->GetBaseAmount(); - damage[i] = aura->GetEffect(i)->GetAmount(); - effMask |= (1<<i); - if (aura->GetEffect(i)->CanBeRecalculated()) - recalculateMask |= (1<<i); + baseDamage[i] = effect->GetBaseAmount(); + damage[i] = effect->GetAmount(); + effMask |= 1 << i; + if (effect->CanBeRecalculated()) + recalculateMask |= 1 << i; } else { - baseDamage[i] = NULL; - damage[i] = NULL; + baseDamage[i] = 0; + damage[i] = 0; } } @@ -18139,6 +18139,7 @@ void Player::_SaveAuras(SQLTransaction& trans) stmt = CharacterDatabase.GetPreparedStatement(CHAR_ADD_AURA); stmt->setUInt32(index++, GetGUIDLow()); stmt->setUInt64(index++, itr->second->GetCasterGUID()); + stmt->setUInt64(index++, itr->second->GetCastItemGUID()); stmt->setUInt32(index++, itr->second->GetId()); stmt->setUInt8(index++, effMask); stmt->setUInt8(index++, recalculateMask); diff --git a/src/server/shared/Database/Implementation/CharacterDatabase.cpp b/src/server/shared/Database/Implementation/CharacterDatabase.cpp index af7d7201d4f..63cbac6ead0 100755 --- a/src/server/shared/Database/Implementation/CharacterDatabase.cpp +++ b/src/server/shared/Database/Implementation/CharacterDatabase.cpp @@ -255,8 +255,8 @@ bool CharacterDatabaseConnection::Open() // Auras PrepareStatement(CHAR_DEL_AURA, "DELETE FROM character_aura WHERE guid = ?", true); - PrepareStatement(CHAR_ADD_AURA, "INSERT INTO character_aura (guid,caster_guid,spell,effect_mask,recalculate_mask,stackcount,amount0,amount1,amount2,base_amount0,base_amount1,base_amount2,maxduration,remaintime,remaincharges) " - "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", true); + PrepareStatement(CHAR_ADD_AURA, "INSERT INTO character_aura (guid,caster_guid,item_guid,spell,effect_mask,recalculate_mask,stackcount,amount0,amount1,amount2,base_amount0,base_amount1,base_amount2,maxduration,remaintime,remaincharges) " + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", true); return true; } |