diff options
author | Spp <spp@jorge.gr> | 2012-09-18 11:33:09 +0200 |
---|---|---|
committer | Spp <spp@jorge.gr> | 2012-09-18 11:35:18 +0200 |
commit | c4d4beff3b26bfa4a34b7d520b0b96899fc5dd69 (patch) | |
tree | eb249959b4d3061283bcd9b084cd8df0ac6c6bc8 | |
parent | b5af7c5c2e8331d310205cf5741d4d9ecce02a4a (diff) |
Warning fixes and some minor changes here and there
- Added GetAchievementPoints to AchievementMgr
-rw-r--r-- | src/server/game/Achievements/AchievementMgr.cpp | 50 | ||||
-rwxr-xr-x | src/server/game/Achievements/AchievementMgr.h | 2 | ||||
-rwxr-xr-x | src/server/game/Battlegrounds/BattlegroundMgr.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 8 | ||||
-rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 6 | ||||
-rw-r--r-- | src/server/game/Guilds/Guild.cpp | 76 | ||||
-rwxr-xr-x | src/server/game/Guilds/Guild.h | 13 | ||||
-rw-r--r-- | src/server/game/Guilds/GuildFinderMgr.h | 20 | ||||
-rwxr-xr-x | src/server/game/Handlers/GuildHandler.cpp | 2 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp | 2 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_warrior.cpp | 2 |
11 files changed, 79 insertions, 104 deletions
diff --git a/src/server/game/Achievements/AchievementMgr.cpp b/src/server/game/Achievements/AchievementMgr.cpp index 5bb9b4a0a11..39dc169b11d 100644 --- a/src/server/game/Achievements/AchievementMgr.cpp +++ b/src/server/game/Achievements/AchievementMgr.cpp @@ -16,6 +16,7 @@ * with this program. If not, see <http://www.gnu.org/licenses/>. */ +#include "AchievementMgr.h" #include "Common.h" #include "DBCEnums.h" #include "ObjectMgr.h" @@ -24,7 +25,6 @@ #include "World.h" #include "WorldPacket.h" #include "DatabaseEnv.h" -#include "AchievementMgr.h" #include "ArenaTeam.h" #include "CellImpl.h" #include "GameEventMgr.h" @@ -37,7 +37,6 @@ #include "ScriptMgr.h" #include "MapManager.h" #include "Battleground.h" -#include "BattlegroundAB.h" #include "Map.h" #include "InstanceScript.h" #include "Group.h" @@ -378,10 +377,7 @@ bool AchievementCriteriaDataSet::Meets(Player const* source, Unit const* target, } template<class T> -AchievementMgr<T>::AchievementMgr(T* owner) -{ - _owner = owner; -} +AchievementMgr<T>::AchievementMgr(T* owner): _owner(owner), _achievementPoints(0) {} template<class T> AchievementMgr<T>::~AchievementMgr() @@ -456,7 +452,7 @@ void AchievementMgr<Guild>::RemoveCriteriaProgress(const AchievementCriteriaEntr template<class T> void AchievementMgr<T>::ResetAchievementCriteria(AchievementCriteriaTypes type, uint32 miscValue1, uint32 miscValue2, bool evenIfCriteriaComplete) { - sLog->outDebug(LOG_FILTER_ACHIEVEMENTSYS, "AchievementMgr::ResetAchievementCriteria(%u, %u, %u)", type, miscValue1, miscValue2); + sLog->outDebug(LOG_FILTER_ACHIEVEMENTSYS, "ResetAchievementCriteria(%u, %u, %u)", type, miscValue1, miscValue2); // disable for gamemasters with GM-mode enabled if (GetOwner()->isGameMaster()) @@ -711,6 +707,8 @@ void AchievementMgr<Player>::LoadFromDB(PreparedQueryResult achievementResult, P ca.date = time_t(fields[1].GetUInt32()); ca.changed = false; + _achievementPoints += achievement->points; + // title achievement rewards are retroactive if (AchievementReward const* reward = sAchievementMgr->GetAchievementReward(achievement)) if (uint32 titleId = reward->titleId[Player::TeamForRace(GetOwner()->getRace()) == ALLIANCE ? 0 : 1]) @@ -778,6 +776,8 @@ void AchievementMgr<Guild>::LoadFromDB(PreparedQueryResult achievementResult, Pr ca.guids.insert(MAKE_NEW_GUID(atol(guids[i]), 0, HIGHGUID_PLAYER)); ca.changed = false; + + _achievementPoints += achievement->points; } while (achievementResult->NextRow()); } @@ -840,6 +840,7 @@ void AchievementMgr<Player>::Reset() } m_completedAchievements.clear(); + _achievementPoints = 0; m_criteriaProgress.clear(); DeleteFromDB(GetOwner()->GetGUIDLow()); @@ -879,6 +880,7 @@ void AchievementMgr<Guild>::Reset() if (AchievementCriteriaEntry const* criteria = sAchievementMgr->GetAchievementCriteria(m_criteriaProgress.begin()->first)) RemoveCriteriaProgress(criteria); + _achievementPoints = 0; m_completedAchievements.clear(); DeleteFromDB(GetOwner()->GetId()); } @@ -1310,19 +1312,11 @@ void AchievementMgr<T>::UpdateAchievementCriteria(AchievementCriteriaTypes type, SetCriteriaProgress(achievementCriteria, referencePlayer->GetMoney(), referencePlayer, PROGRESS_HIGHEST); break; case ACHIEVEMENT_CRITERIA_TYPE_EARN_ACHIEVEMENT_POINTS: - { if (!miscValue1) - { - uint32 points = 0; - for (CompletedAchievementMap::iterator itr = m_completedAchievements.begin(); itr != m_completedAchievements.end(); ++itr) - if (AchievementEntry const* pAchievement = sAchievementMgr->GetAchievement(itr->first)) - points += pAchievement->points; - SetCriteriaProgress(achievementCriteria, points, referencePlayer, PROGRESS_SET); - } + SetCriteriaProgress(achievementCriteria, _achievementPoints, referencePlayer, PROGRESS_SET); else SetCriteriaProgress(achievementCriteria, miscValue1, referencePlayer, PROGRESS_ACCUMULATE); break; - } case ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_TEAM_RATING: { uint32 reqTeamType = achievementCriteria->highest_team_rating.teamtype; @@ -1387,10 +1381,8 @@ void AchievementMgr<T>::UpdateAchievementCriteria(AchievementCriteriaTypes type, break; } case ACHIEVEMENT_CRITERIA_TYPE_REACH_GUILD_LEVEL: - { - SetCriteriaProgress(achievementCriteria, referencePlayer->GetGuildLevel(), referencePlayer, PROGRESS_SET); + SetCriteriaProgress(achievementCriteria, miscValue1, referencePlayer); break; - } // FIXME: not triggered in code as result, need to implement case ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_RAID: case ACHIEVEMENT_CRITERIA_TYPE_WIN_ARENA: @@ -1466,7 +1458,7 @@ bool AchievementMgr<T>::IsCompletedCriteria(AchievementCriteriaEntry const* achi if (!progress) return false; - switch (achievementCriteria->type) + switch (AchievementCriteriaTypes(achievementCriteria->type)) { case ACHIEVEMENT_CRITERIA_TYPE_WIN_BG: return progress->counter >= achievementCriteria->win_bg.winCount; @@ -1604,6 +1596,7 @@ bool AchievementMgr<T>::IsCompletedCriteria(AchievementCriteriaEntry const* achi default: break; } + return false; } @@ -1704,7 +1697,8 @@ void AchievementMgr<T>::SetCriteriaProgress(AchievementCriteriaEntry const* entr if (entry->timeLimit && timedIter == m_timedAchievements.end()) return; - sLog->outDebug(LOG_FILTER_ACHIEVEMENTSYS, "AchievementMgr::SetCriteriaProgress(%u, %u) for (%s GUID: "UI64FMTD")", entry->ID, changeValue, GetLogNameForGuid(GetOwner()->GetGUID()), GetOwner()->GetGUID()); + sLog->outDebug(LOG_FILTER_ACHIEVEMENTSYS, "SetCriteriaProgress(%u, %u) for (%s GUID: %u)", + entry->ID, changeValue, GetLogNameForGuid(GetOwner()->GetGUID()), GUID_LOPART(GetOwner()->GetGUID())); CriteriaProgress* progress = GetCriteriaProgress(entry); if (!progress) @@ -1841,8 +1835,8 @@ void AchievementMgr<T>::RemoveTimedAchievement(AchievementCriteriaTimedTypes typ } } -template<class T> -void AchievementMgr<T>::CompletedAchievement(AchievementEntry const* achievement, Player* referencePlayer) +template<> +void AchievementMgr<Player>::CompletedAchievement(AchievementEntry const* achievement, Player* referencePlayer) { sLog->outInfo(LOG_FILTER_ACHIEVEMENTSYS, "AchievementMgr::CompletedAchievement(%u)", achievement->ID); @@ -1869,6 +1863,8 @@ void AchievementMgr<T>::CompletedAchievement(AchievementEntry const* achievement if (!(achievement->flags & ACHIEVEMENT_FLAG_REALM_FIRST_KILL)) sAchievementMgr->SetRealmCompleted(achievement); + _achievementPoints += achievement->points; + UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_ACHIEVEMENT, 0, 0, NULL, referencePlayer); UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_EARN_ACHIEVEMENT_POINTS, achievement->points, 0, NULL, referencePlayer); @@ -1955,6 +1951,8 @@ void AchievementMgr<Guild>::CompletedAchievement(AchievementEntry const* achieve sAchievementMgr->SetRealmCompleted(achievement); + _achievementPoints += achievement->points; + UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_ACHIEVEMENT, 0, 0, NULL, referencePlayer); UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_EARN_ACHIEVEMENT_POINTS, achievement->points, 0, NULL, referencePlayer); } @@ -2054,11 +2052,6 @@ void AchievementMgr<Guild>::SendAllAchievementData(Player* receiver) const receiver->GetSession()->SendPacket(&data); } -template<class T> -void AchievementMgr<T>::SendAchievementInfo(Player* receiver, uint32 achievementId /*= 0*/) const -{ -} - template<> void AchievementMgr<Player>::SendAchievementInfo(Player* receiver, uint32 /*achievementId = 0 */) const { @@ -2355,6 +2348,7 @@ bool AchievementMgr<T>::RequirementsSatisfied(AchievementCriteriaEntry const *ac case ACHIEVEMENT_CRITERIA_TYPE_MONEY_FROM_VENDORS: case ACHIEVEMENT_CRITERIA_TYPE_NUMBER_OF_TALENT_RESETS: case ACHIEVEMENT_CRITERIA_TYPE_QUEST_ABANDONED: + case ACHIEVEMENT_CRITERIA_TYPE_REACH_GUILD_LEVEL: case ACHIEVEMENT_CRITERIA_TYPE_ROLL_GREED: case ACHIEVEMENT_CRITERIA_TYPE_ROLL_NEED: case ACHIEVEMENT_CRITERIA_TYPE_SPECIAL_PVP_KILL: diff --git a/src/server/game/Achievements/AchievementMgr.h b/src/server/game/Achievements/AchievementMgr.h index 38d76c247a9..efb9fcba1b6 100755 --- a/src/server/game/Achievements/AchievementMgr.h +++ b/src/server/game/Achievements/AchievementMgr.h @@ -243,6 +243,7 @@ class AchievementMgr void StartTimedAchievement(AchievementCriteriaTimedTypes type, uint32 entry, uint32 timeLost = 0); void RemoveTimedAchievement(AchievementCriteriaTimedTypes type, uint32 entry); // used for quest and scripted timed achievements + uint32 GetAchievementPoints() const { return _achievementPoints; } private: enum ProgressType { PROGRESS_SET, PROGRESS_ACCUMULATE, PROGRESS_HIGHEST }; void SendAchievementEarned(AchievementEntry const* achievement) const; @@ -265,6 +266,7 @@ class AchievementMgr CompletedAchievementMap m_completedAchievements; typedef std::map<uint32, uint32> TimedAchievementMap; TimedAchievementMap m_timedAchievements; // Criteria id/time left in MS + uint32 _achievementPoints; }; class AchievementGlobalMgr diff --git a/src/server/game/Battlegrounds/BattlegroundMgr.cpp b/src/server/game/Battlegrounds/BattlegroundMgr.cpp index becfc70fce8..2842a825e87 100755 --- a/src/server/game/Battlegrounds/BattlegroundMgr.cpp +++ b/src/server/game/Battlegrounds/BattlegroundMgr.cpp @@ -180,7 +180,7 @@ void BattlegroundMgr::Update(uint32 diff) } } -void BattlegroundMgr::BuildBattlegroundStatusPacket(WorldPacket *data, Battleground *bg, Player * pPlayer, uint8 QueueSlot, uint8 StatusID, uint32 Time1, uint32 Time2, uint8 arenatype, uint8 uiFrame) +void BattlegroundMgr::BuildBattlegroundStatusPacket(WorldPacket *data, Battleground *bg, Player * pPlayer, uint8 QueueSlot, uint8 StatusID, uint32 Time1, uint32 Time2, uint8 /*arenatype*/, uint8 /*uiFrame*/) { if (!bg) StatusID = STATUS_NONE; diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 3384c7a30d7..6ddbe2d037d 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -849,8 +849,8 @@ Player::Player(WorldSession* session): Unit(true), m_achievementMgr(this), m_rep _activeCheats = CHEAT_NONE; - memset(_voidStorageItems, NULL, VOID_STORAGE_MAX_SLOT * sizeof(VoidStorageItem*)); - memset(_CUFProfiles, NULL, MAX_CUF_PROFILES * sizeof(CUFProfile*)); + memset(_voidStorageItems, 0, VOID_STORAGE_MAX_SLOT * sizeof(VoidStorageItem*)); + memset(_CUFProfiles, 0, MAX_CUF_PROFILES * sizeof(CUFProfile*)); } Player::~Player() @@ -6261,7 +6261,7 @@ void Player::UpdateSkillsForLevel() uint16 field = itr->second.pos / 2; uint8 offset = itr->second.pos & 1; // itr->second.pos % 2 - uint16 val = GetUInt16Value(PLAYER_SKILL_RANK_0 + field, offset); + //uint16 val = GetUInt16Value(PLAYER_SKILL_RANK_0 + field, offset); uint16 max = GetUInt16Value(PLAYER_SKILL_MAX_RANK_0 + field, offset); /// update only level dependent max skill values @@ -7219,7 +7219,7 @@ void Player::_LoadCurrency(PreparedQueryResult result) uint16 currencyID = fields[0].GetUInt16(); CurrencyTypesEntry const* currency = sCurrencyTypesStore.LookupEntry(currencyID); - if (!currencyID) + if (!currency) continue; PlayerCurrency cur; diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 2cd395a1877..a96a829b91f 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -9900,7 +9900,7 @@ bool Unit::isSpellCrit(Unit* victim, SpellInfo const* spellProto, SpellSchoolMas return false; } -uint32 Unit::SpellCriticalDamageBonus(SpellInfo const* spellProto, uint32 damage, Unit* victim) +uint32 Unit::SpellCriticalDamageBonus(SpellInfo const* spellProto, uint32 damage, Unit* /*victim*/) { // Calculate critical bonus int32 crit_bonus = damage; @@ -9937,7 +9937,7 @@ uint32 Unit::SpellCriticalDamageBonus(SpellInfo const* spellProto, uint32 damage return crit_bonus; } -uint32 Unit::SpellCriticalHealingBonus(SpellInfo const* /*spellProto*/, uint32 damage, Unit* victim) +uint32 Unit::SpellCriticalHealingBonus(SpellInfo const* /*spellProto*/, uint32 damage, Unit* /*victim*/) { // Calculate critical bonus int32 crit_bonus = damage; @@ -10459,7 +10459,7 @@ uint32 Unit::MeleeDamageBonusDone(Unit* victim, uint32 pdamage, WeaponAttackType AddPctN(DoneTotalMod, GetTotalAuraModifierByMiscValue(SPELL_AURA_MOD_DAMAGE_DONE_FOR_MECHANIC, spellProto->Mechanic)); // done scripted mod (take it from owner) - Unit* owner = GetOwner() ? GetOwner() : this; + // Unit* owner = GetOwner() ? GetOwner() : this; // AuraEffectList const& mOverrideClassScript = owner->GetAuraEffectsByType(SPELL_AURA_OVERRIDE_CLASS_SCRIPTS); float tmpDamage = float(int32(pdamage) + DoneFlatBenefit) * DoneTotalMod; diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp index a7ff2c75309..12455784cc8 100644 --- a/src/server/game/Guilds/Guild.cpp +++ b/src/server/game/Guilds/Guild.cpp @@ -120,13 +120,10 @@ inline uint32 Guild::LogHolder::GetNextGUID() return m_nextGUID; } -/////////////////////////////////////////////////////////////////////////////// // EventLogEntry void Guild::EventLogEntry::SaveToDB(SQLTransaction& trans) const { - PreparedStatement* stmt = NULL; - - stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_GUILD_EVENTLOG); + PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_GUILD_EVENTLOG); stmt->setUInt32(0, m_guildId); stmt->setUInt32(1, m_guid); CharacterDatabase.ExecuteOrAppend(trans, stmt); @@ -195,14 +192,12 @@ void Guild::EventLogEntry::WritePacket(WorldPacket& data, ByteBuffer& content) c content.WriteByteSeq(guid1[1]); } -/////////////////////////////////////////////////////////////////////////////// // BankEventLogEntry void Guild::BankEventLogEntry::SaveToDB(SQLTransaction& trans) const { - PreparedStatement* stmt = NULL; uint8 index = 0; - stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_GUILD_BANK_EVENTLOG); + PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_GUILD_BANK_EVENTLOG); stmt->setUInt32( index, m_guildId); stmt->setUInt32(++index, m_guid); stmt->setUInt8 (++index, m_bankTabId); @@ -270,7 +265,6 @@ void Guild::BankEventLogEntry::WritePacket(WorldPacket& data, ByteBuffer& conten content << uint8(m_destTabId); } -/////////////////////////////////////////////////////////////////////////////// // RankInfo void Guild::RankInfo::LoadFromDB(Field* fields) { @@ -351,16 +345,15 @@ void Guild::RankInfo::SetBankTabSlotsAndRights(uint8 tabId, GuildBankRightsAndSl if (m_rankId == GR_GUILDMASTER) // Prevent loss of leader rights rightsAndSlots.SetGuildMasterValues(); - if (m_bankTabRightsAndSlots[tabId].IsEqual(rightsAndSlots)) + GuildBankRightsAndSlots& guildBR = m_bankTabRightsAndSlots[tabId]; + if (guildBR.IsEqual(rightsAndSlots)) return; - m_bankTabRightsAndSlots[tabId] = rightsAndSlots; + guildBR = rightsAndSlots; if (saveToDB) { - PreparedStatement* stmt = NULL; - - stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_GUILD_BANK_RIGHT); + PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_GUILD_BANK_RIGHT); stmt->setUInt32(0, m_guildId); stmt->setUInt8 (1, tabId); stmt->setUInt8 (2, m_rankId); @@ -370,8 +363,8 @@ void Guild::RankInfo::SetBankTabSlotsAndRights(uint8 tabId, GuildBankRightsAndSl stmt->setUInt32(0, m_guildId); stmt->setUInt8 (1, tabId); stmt->setUInt8 (2, m_rankId); - stmt->setUInt8 (3, m_bankTabRightsAndSlots[tabId].rights); - stmt->setUInt32(4, m_bankTabRightsAndSlots[tabId].slots); + stmt->setUInt8 (3, guildBR.rights); + stmt->setUInt32(4, guildBR.slots); CharacterDatabase.Execute(stmt); stmt = CharacterDatabase.GetPreparedStatement(CHAR_UPD_GUILD_RANK_BANK_TIME0 + tabId); @@ -381,7 +374,6 @@ void Guild::RankInfo::SetBankTabSlotsAndRights(uint8 tabId, GuildBankRightsAndSl } } -/////////////////////////////////////////////////////////////////////////////// // BankTab bool Guild::BankTab::LoadFromDB(Field* fields) { @@ -414,7 +406,7 @@ bool Guild::BankTab::LoadItemFromDB(Field* fields) { sLog->outError(LOG_FILTER_GUILD, "Item (GUID %u, id: %u) not found in item_instance, deleting from guild bank!", itemGuid, itemEntry); - PreparedStatement *stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_NONEXISTENT_GUILD_BANK_ITEM); + PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_NONEXISTENT_GUILD_BANK_ITEM); stmt->setUInt32(0, m_guildId); stmt->setUInt8 (1, m_tabId); stmt->setUInt8 (2, slotId); @@ -483,9 +475,7 @@ bool Guild::BankTab::SetItem(SQLTransaction& trans, uint8 slotId, Item* item) m_items[slotId] = item; - PreparedStatement* stmt = NULL; - - stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_GUILD_BANK_ITEM); + PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_GUILD_BANK_ITEM); stmt->setUInt32(0, m_guildId); stmt->setUInt8 (1, m_tabId); stmt->setUInt8 (2, slotId); @@ -521,7 +511,6 @@ void Guild::BankTab::SendText(Guild const* guild, WorldSession* session) const guild->BroadcastPacket(&data); } -/////////////////////////////////////////////////////////////////////////////// // Member void Guild::Member::SetStats(Player* player) { @@ -633,6 +622,7 @@ bool Guild::Member::CheckStats() const sLog->outError(LOG_FILTER_GUILD, "Player (GUID: %u) has a broken data in field `characters`.`level`, deleting him from guild!", GUID_LOPART(m_guid)); return false; } + if (m_class < CLASS_WARRIOR || m_class >= MAX_CLASSES) { sLog->outError(LOG_FILTER_GUILD, "Player (GUID: %u) has a broken data in field `characters`.`class`, deleting him from guild!", GUID_LOPART(m_guid)); @@ -706,8 +696,12 @@ inline void Guild::Member::ResetMoneyTime() m_bankRemaining[GUILD_BANK_MAX_TABS].resetTime = 0; } -/////////////////////////////////////////////////////////////////////////////// // EmblemInfo +void EmblemInfo::ReadPacket(WorldPacket& recv) +{ + recv >> m_style >> m_color >> m_borderStyle >> m_borderColor >> m_backgroundColor; +} + void EmblemInfo::LoadFromDB(Field* fields) { m_style = fields[3].GetUInt8(); @@ -738,7 +732,6 @@ void EmblemInfo::SaveToDB(uint32 guildId) const CharacterDatabase.Execute(stmt); } -/////////////////////////////////////////////////////////////////////////////// // MoveItemData bool Guild::MoveItemData::CheckItem(uint32& splitedAmount) { @@ -786,7 +779,6 @@ inline void Guild::MoveItemData::CopySlots(SlotIds& ids) const ids.insert(uint8(itr->pos)); } -/////////////////////////////////////////////////////////////////////////////// // PlayerMoveItemData bool Guild::PlayerMoveItemData::InitItem() { @@ -846,7 +838,6 @@ inline InventoryResult Guild::PlayerMoveItemData::CanStore(Item* pItem, bool swa return m_pPlayer->CanStoreItem(m_container, m_slotId, m_vec, pItem, swap); } -/////////////////////////////////////////////////////////////////////////////// // BankMoveItemData bool Guild::BankMoveItemData::InitItem() { @@ -1059,10 +1050,9 @@ InventoryResult Guild::BankMoveItemData::CanStore(Item* pItem, bool swap) return EQUIP_ERR_BANK_FULL; } -/////////////////////////////////////////////////////////////////////////////// // Guild Guild::Guild() : m_id(0), m_leaderGuid(0), m_createdDate(0), m_accountsNumber(0), m_bankMoney(0), m_eventLog(NULL), - m_achievementMgr(this), _level(1), _experience(0), _todayExperience(0), _newsLog(this) + m_achievementMgr(this), _newsLog(this), _level(1), _experience(0), _todayExperience(0) { memset(&m_bankEventLog, 0, (GUILD_BANK_MAX_TABS + 1) * sizeof(LogHolder*)); } @@ -1213,8 +1203,6 @@ void Guild::SaveToDB() CharacterDatabase.CommitTransaction(trans); } -/////////////////////////////////////////////////////////////////////////////// -// HANDLE CLIENT COMMANDS void Guild::HandleRoster(WorldSession* session /*= NULL*/) { ByteBuffer memberData(100); @@ -1565,6 +1553,7 @@ void Guild::HandleInviteMember(WorldSession* session, const std::string& name) // Do not show invitations from ignored players if (pInvitee->GetSocial()->HasIgnore(player->GetGUIDLow())) return; + if (!sWorld->getBoolConfig(CONFIG_ALLOW_TWO_SIDE_INTERACTION_GUILD) && pInvitee->GetTeam() != player->GetTeam()) { SendCommandResult(session, GUILD_INVITE_S, ERR_GUILD_NOT_ALLIED, name); @@ -1695,7 +1684,7 @@ void Guild::HandleLeaveMember(WorldSession* session) _LogEvent(GUILD_EVENT_LOG_LEAVE_GUILD, player->GetGUIDLow()); _BroadcastEvent(GE_LEFT, player->GetGUID(), player->GetName()); - SendCommandResult(session, GUILD_QUIT_S, ERR_PLAYER_NO_MORE_IN_GUILD, m_name); + SendCommandResult(session, GUILD_QUIT_S, ERR_GUILD_COMMAND_SUCCESS, m_name); } } @@ -1726,7 +1715,7 @@ void Guild::HandleRemoveMember(WorldSession* session, uint64 guid) } } else if (removedPlayer) - SendCommandResult(session, GUILD_QUIT_S, ERR_PLAYER_NO_MORE_IN_GUILD, removedPlayer->GetName()); + SendCommandResult(session, GUILD_QUIT_S, ERR_GUILD_COMMAND_SUCCESS, removedPlayer->GetName()); } void Guild::HandleUpdateMemberRank(WorldSession* session, uint64 targetGuid, bool demote) @@ -1969,8 +1958,6 @@ void Guild::HandleGuildPartyRequest(WorldSession* session) sLog->outDebug(LOG_FILTER_NETWORKIO, "WORLD: Sent (SMSG_GUILD_PARTY_STATE_RESPONSE)"); } -/////////////////////////////////////////////////////////////////////////////// -// Send data to client void Guild::SendEventLog(WorldSession* session) const { WorldPacket data(SMSG_GUILD_EVENT_LOG_QUERY_RESULT, 1 + m_eventLog->GetSize() * (1 + 8 + 4)); @@ -2005,7 +1992,7 @@ void Guild::SendBankList(WorldSession* session, uint8 tabId, bool withContent, b if (withContent && _MemberHasTabRights(session->GetPlayer()->GetGUID(), tabId, GUILD_BANK_RIGHT_VIEW_TAB)) if (BankTab const* tab = GetBankTab(tabId)) for (uint8 slotId = 0; slotId < GUILD_BANK_MAX_SLOTS; ++slotId) - if (Item* tabItem = tab->GetItem(slotId)) + if (tab->GetItem(slotId)) ++itemCount; data.WriteBits(itemCount, 20); @@ -2173,7 +2160,6 @@ void Guild::SendGuildReputationWeeklyCap(WorldSession* session) const } } -/////////////////////////////////////////////////////////////////////////////// // Loading methods bool Guild::LoadFromDB(Field* fields) { @@ -2377,7 +2363,6 @@ bool Guild::Validate() return true; } -/////////////////////////////////////////////////////////////////////////////// // Broadcasts void Guild::BroadcastToGuild(WorldSession* session, bool officerOnly, const std::string& msg, uint32 language) const { @@ -2423,7 +2408,6 @@ void Guild::BroadcastPacket(WorldPacket* packet) const player->GetSession()->SendPacket(packet); } -/////////////////////////////////////////////////////////////////////////////// // Members handling bool Guild::AddMember(uint64 guid, uint8 rankId) { @@ -2521,6 +2505,7 @@ void Guild::DeleteMember(uint64 guid, bool isDisbanding, bool isKicked) else if (!newLeader || newLeader->GetRankId() > i->second->GetRankId()) newLeader = i->second; } + if (!newLeader) { Disband(); @@ -2540,7 +2525,7 @@ void Guild::DeleteMember(uint64 guid, bool isDisbanding, bool isKicked) _BroadcastEvent(GE_LEFT, guid, oldLeader->GetName().c_str()); } } - // Call script on remove before member is acutally removed from guild (and database) + // Call script on remove before member is actually removed from guild (and database) sScriptMgr->OnGuildRemoveMember(this, player, isDisbanding, isKicked); if (Member* member = GetMember(guid)) @@ -2581,7 +2566,6 @@ bool Guild::IsMember(uint64 guid) return itr != m_members.end(); } -/////////////////////////////////////////////////////////////////////////////// // Bank (items move) void Guild::SwapItems(Player* player, uint8 tabId, uint8 slotId, uint8 destTabId, uint8 destSlotId, uint32 splitedAmount) { @@ -2610,7 +2594,6 @@ void Guild::SwapItemsWithInventory(Player* player, bool toChar, uint8 tabId, uin _MoveItems(&charData, &bankData, splitedAmount); } -/////////////////////////////////////////////////////////////////////////////// // Bank tabs void Guild::SetBankTabText(uint8 tabId, const std::string& text) { @@ -2621,7 +2604,6 @@ void Guild::SetBankTabText(uint8 tabId, const std::string& text) } } -/////////////////////////////////////////////////////////////////////////////// // Private methods void Guild::_CreateLogHolders() { @@ -2676,12 +2658,11 @@ void Guild::_CreateDefaultGuildRanks(LocaleConstant loc) void Guild::_CreateRank(const std::string& name, uint32 rights) { - if (_GetRanksSize() >= GUILD_RANKS_MAX_COUNT) + uint32 newRankId = _GetRanksSize(); + if (newRankId >= GUILD_RANKS_MAX_COUNT) return; // Ranks represent sequence 0, 1, 2, ... where 0 means guildmaster - uint32 newRankId = _GetRanksSize(); - RankInfo info(m_id, newRankId, name, rights, 0); m_ranks.push_back(info); @@ -2923,7 +2904,7 @@ void Guild::_MoveItems(MoveItemData* pSrc, MoveItemData* pDest, uint32 splitedAm /* if (pItemSrc->GetCount() == 0) { - sLog->outFatal(LOG_FILTER_GENERAL, "Guild::SwapItems: Player %s(GUIDLow: %u) tried to move item %u from tab %u slot %u to tab %u slot %u, but item %u has a stack of zero!", + sLog->outFatal(LOG_FILTER_GUILD, "Guild::SwapItems: Player %s(GUIDLow: %u) tried to move item %u from tab %u slot %u to tab %u slot %u, but item %u has a stack of zero!", player->GetName(), player->GetGUIDLow(), pItemSrc->GetEntry(), tabId, slotId, destTabId, destSlotId, pItemSrc->GetEntry()); //return; // Commented out for now, uncomment when it's verified that this causes a crash!! } @@ -3133,8 +3114,7 @@ void Guild::_BroadcastEvent(GuildEvents guildEvent, uint64 guid, const char* par data << uint64(guid); BroadcastPacket(&data); - - sLog->outDebug(LOG_FILTER_GUILD, "WORLD: Sent SMSG_GUILD_EVENT"); + sLog->outDebug(LOG_FILTER_GUILD, "SMSG_GUILD_EVENT [Broadcast] Event: %u", guildEvent); } void Guild::SendGuildRanksUpdate(uint64 setterGuid, uint64 targetGuid, uint32 rank) @@ -3246,7 +3226,7 @@ void Guild::GiveXP(uint32 xp, Player* source) void Guild::SendGuildXP(WorldSession* session) const { - Member const* member = GetMember(session->GetGuidLow()); + //Member const* member = GetMember(session->GetGuidLow()); WorldPacket data(SMSG_GUILD_XP, 40); data << uint64(/*member ? member->GetTotalActivity() :*/ 0); diff --git a/src/server/game/Guilds/Guild.h b/src/server/game/Guilds/Guild.h index 58dedf0137a..f39cd386a96 100755 --- a/src/server/game/Guilds/Guild.h +++ b/src/server/game/Guilds/Guild.h @@ -38,7 +38,8 @@ enum GuildMisc GUILD_RANK_NONE = 0xFF, GUILD_WITHDRAW_MONEY_UNLIMITED = 0xFFFFFFFF, GUILD_WITHDRAW_SLOT_UNLIMITED = 0xFFFFFFFF, - GUILD_EVENT_LOG_GUID_UNDEFINED = 0xFFFFFFFF + GUILD_EVENT_LOG_GUID_UNDEFINED = 0xFFFFFFFF, + GUILD_EXPERIENCE_UNCAPPED_LEVEL = 20 ///> Hardcoded in client, starting from this level, guild daily experience gain is unlimited. }; enum GuildDefaultRanks @@ -88,7 +89,7 @@ enum GuildCommandType enum GuildCommandError { - ERR_PLAYER_NO_MORE_IN_GUILD = 0x00, + ERR_GUILD_COMMAND_SUCCESS = 0x00, ERR_GUILD_INTERNAL = 0x01, ERR_ALREADY_IN_GUILD = 0x02, ERR_ALREADY_IN_GUILD_S = 0x03, @@ -138,7 +139,7 @@ enum GuildEvents GE_RANK_CREATED = 12, GE_RANK_DELETED = 13, GE_RANK_ORDER_CHANGED = 14, - GE_FOUNDER = 15, // At guild creation - Set founder + GE_FOUNDER = 15, GE_SIGNED_ON = 16, GE_SIGNED_OFF = 17, GE_GUILDBANKBAGSLOTS_CHANGED = 18, @@ -259,9 +260,6 @@ uint32 const MinNewsItemLevel[MAX_CONTENT] = { 61, 90, 200, 353 }; typedef std::map<uint32, GuildNewsEntry> GuildNewsLogMap; -#define GUILD_EXPERIENCE_UNCAPPED_LEVEL 20 ///> Hardcoded in client, starting from this level, guild daily experience gain is unlimited. - -//////////////////////////////////////////////////////////////////////////////////////////// // Emblem info class EmblemInfo { @@ -270,7 +268,7 @@ public: void LoadFromDB(Field* fields); void SaveToDB(uint32 guildId) const; - void ReadPacket(WorldPacket& recv) { recv >> m_style >> m_color >> m_borderStyle >> m_borderColor >> m_backgroundColor; } + void ReadPacket(WorldPacket& recv); void WritePacket(WorldPacket& data) const; uint32 GetStyle() const { return m_style; } @@ -623,6 +621,7 @@ private: Item* GetItem(bool isCloned = false) const { return isCloned ? m_pClonedItem : m_pItem; } uint8 GetContainer() const { return m_container; } uint8 GetSlotId() const { return m_slotId; } + protected: virtual InventoryResult CanStore(Item* pItem, bool swap) = 0; diff --git a/src/server/game/Guilds/GuildFinderMgr.h b/src/server/game/Guilds/GuildFinderMgr.h index 54faa83a002..930d538ebca 100644 --- a/src/server/game/Guilds/GuildFinderMgr.h +++ b/src/server/game/Guilds/GuildFinderMgr.h @@ -70,10 +70,10 @@ struct MembershipRequest } MembershipRequest(uint32 playerGUID, uint32 guildId, uint32 availability, uint32 classRoles, uint32 interests, std::string& comment, time_t submitTime) : - _playerGUID(playerGUID), _guildId(guildId), _availability(availability), _classRoles(classRoles), - _interests(interests), _time(submitTime), _comment(comment) {} + _comment(comment), _guildId(guildId), _playerGUID(playerGUID), _availability(availability), + _classRoles(classRoles), _interests(interests), _time(submitTime) {} - MembershipRequest() : _playerGUID(0), _guildId(0), _availability(0), _classRoles(0), + MembershipRequest() : _guildId(0), _playerGUID(0), _availability(0), _classRoles(0), _interests(0), _time(time(NULL)) {} uint32 GetGuildId() const { return _guildId; } @@ -164,14 +164,14 @@ struct LFGuildSettings : public LFGuildPlayer LFGuildSettings(bool listed, TeamId team) : LFGuildPlayer(), _listed(listed), _team(team) {} - LFGuildSettings(bool listed, TeamId team, uint32 guid, uint8 role, uint8 availability, uint8 interests, uint8 level) : _listed(listed), - LFGuildPlayer(guid, role, availability, interests, level), _team(team) {} + LFGuildSettings(bool listed, TeamId team, uint32 guid, uint8 role, uint8 availability, uint8 interests, uint8 level) : + LFGuildPlayer(guid, role, availability, interests, level), _listed(listed), _team(team) {} - LFGuildSettings(bool listed, TeamId team, uint32 guid, uint8 role, uint8 availability, uint8 interests, uint8 level, std::string& comment) : _listed(listed), - LFGuildPlayer(guid, role, availability, interests, level, comment), _team(team) {} + LFGuildSettings(bool listed, TeamId team, uint32 guid, uint8 role, uint8 availability, uint8 interests, uint8 level, std::string& comment) : + LFGuildPlayer(guid, role, availability, interests, level, comment), _listed(listed), _team(team) {} - LFGuildSettings(LFGuildSettings const& settings) : _listed(settings.IsListed()), _team(settings.GetTeam()), - LFGuildPlayer(settings) {} + LFGuildSettings(LFGuildSettings const& settings) : + LFGuildPlayer(settings), _listed(settings.IsListed()), _team(settings.GetTeam()) {} bool IsListed() const { return _listed; } @@ -179,8 +179,8 @@ struct LFGuildSettings : public LFGuildPlayer TeamId GetTeam() const { return _team; } private: - TeamId _team; bool _listed; + TeamId _team; }; typedef std::map<uint32 /* guildGuid */, LFGuildSettings> LFGuildStore; diff --git a/src/server/game/Handlers/GuildHandler.cpp b/src/server/game/Handlers/GuildHandler.cpp index fa3147ca175..d6f61b45ccf 100755 --- a/src/server/game/Handlers/GuildHandler.cpp +++ b/src/server/game/Handlers/GuildHandler.cpp @@ -787,7 +787,7 @@ void WorldSession::HandleGuildRewardsQueryOpcode(WorldPacket& recvPacket) { recvPacket.read_skip<uint32>(); // Unk - if (Guild* guild = sGuildMgr->GetGuildById(_player->GetGuildId())) + if (sGuildMgr->GetGuildById(_player->GetGuildId())) { std::vector<GuildReward> const& rewards = sGuildMgr->GetGuildRewards(); diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp index 108d2118a25..55f257e5ecc 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp @@ -46,7 +46,7 @@ class boss_mandokir : public CreatureScript { } - void KilledUnit(Unit* victim) + void KilledUnit(Unit* /*victim*/) { } diff --git a/src/server/scripts/Spells/spell_warrior.cpp b/src/server/scripts/Spells/spell_warrior.cpp index 7b0952dac7b..891505f1ec8 100644 --- a/src/server/scripts/Spells/spell_warrior.cpp +++ b/src/server/scripts/Spells/spell_warrior.cpp @@ -222,7 +222,7 @@ class spell_warr_execute : public SpellScriptLoader void HandleEffect(SpellEffIndex /*effIndex*/) { Unit* caster = GetCaster(); - if (Unit* target = GetHitUnit()) + if (GetHitUnit()) { SpellInfo const* spellInfo = GetSpellInfo(); int32 rageUsed = std::min<int32>(200 - spellInfo->CalcPowerCost(caster, SpellSchoolMask(spellInfo->SchoolMask)), caster->GetPower(POWER_RAGE)); |