diff options
Diffstat (limited to 'src/server/game')
| -rwxr-xr-x | src/server/game/AI/EventAI/CreatureEventAI.cpp | 4 | ||||
| -rw-r--r-- | src/server/game/AI/ScriptedAI/ScriptedCreature.h | 16 | ||||
| -rwxr-xr-x | src/server/game/Chat/Commands/Level3.cpp | 2 | ||||
| -rwxr-xr-x | src/server/game/Entities/Player/Player.cpp | 6 | ||||
| -rwxr-xr-x | src/server/game/Entities/Transport/Transport.cpp | 7 | ||||
| -rwxr-xr-x | src/server/game/Globals/ObjectAccessor.cpp | 14 | ||||
| -rwxr-xr-x | src/server/game/Globals/ObjectAccessor.h | 5 | ||||
| -rwxr-xr-x | src/server/game/Guilds/Guild.cpp | 2 | ||||
| -rwxr-xr-x | src/server/game/Maps/Map.cpp | 4 | ||||
| -rwxr-xr-x | src/server/game/Maps/Map.h | 4 | ||||
| -rwxr-xr-x | src/server/game/Maps/MapManager.cpp | 26 | ||||
| -rwxr-xr-x | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 6 | ||||
| -rwxr-xr-x | src/server/game/Spells/Spell.h | 8 | ||||
| -rwxr-xr-x | src/server/game/Texts/CreatureTextMgr.cpp | 4 |
14 files changed, 58 insertions, 50 deletions
diff --git a/src/server/game/AI/EventAI/CreatureEventAI.cpp b/src/server/game/AI/EventAI/CreatureEventAI.cpp index fefd89a16a5..ba7ed560589 100755 --- a/src/server/game/AI/EventAI/CreatureEventAI.cpp +++ b/src/server/game/AI/EventAI/CreatureEventAI.cpp @@ -1231,8 +1231,8 @@ void CreatureEventAI::DoFindFriendlyMissingBuff(std::list<Creature*>& _list, flo cell.Visit(p, grid_creature_searcher, *me->GetMap()); } -//********************************* -//*** Functions used globally *** +// ********************************* +// *** Functions used globally *** void CreatureEventAI::DoScriptText(int32 textEntry, WorldObject* pSource, Unit* target) { diff --git a/src/server/game/AI/ScriptedAI/ScriptedCreature.h b/src/server/game/AI/ScriptedAI/ScriptedCreature.h index 36f31c52e8e..f94a41dfb10 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedCreature.h +++ b/src/server/game/AI/ScriptedAI/ScriptedCreature.h @@ -45,9 +45,9 @@ struct ScriptedAI : public CreatureAI explicit ScriptedAI(Creature* pCreature); virtual ~ScriptedAI() {} - //************* + // ************* //CreatureAI Functions - //************* + // ************* void AttackStartNoMove(Unit *pTarget); @@ -81,9 +81,9 @@ struct ScriptedAI : public CreatureAI // Called when AI is temporarily replaced or put back when possess is applied or removed void OnPossess(bool /*apply*/) {} - //************* + // ************* // Variables - //************* + // ************* //Pointer to creature we are manipulating Creature* me; @@ -91,9 +91,9 @@ struct ScriptedAI : public CreatureAI //For fleeing bool IsFleeing; - //************* + // ************* //Pure virtual functions - //************* + // ************* //Called at creature reset either by death or evade void Reset() {} @@ -101,9 +101,9 @@ struct ScriptedAI : public CreatureAI //Called at creature aggro either by MoveInLOS or Attack Start void EnterCombat(Unit* /*who*/) {} - //************* + // ************* //AI Helper Functions - //************* + // ************* //Start movement toward victim void DoStartMovement(Unit* pVictim, float fDistance = 0, float fAngle = 0); diff --git a/src/server/game/Chat/Commands/Level3.cpp b/src/server/game/Chat/Commands/Level3.cpp index 4043aa9e966..a10f8090927 100755 --- a/src/server/game/Chat/Commands/Level3.cpp +++ b/src/server/game/Chat/Commands/Level3.cpp @@ -2374,7 +2374,7 @@ bool ChatHandler::HandleChangeWeather(const char *args) return false; } - //*Change the weather of a cell + // *Change the weather of a cell char* px = strtok((char*)args, " "); char* py = strtok(NULL, " "); diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 404b3d91b8c..d8dfecdb70c 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -22492,9 +22492,9 @@ bool ItemPosCount::isContainedIn(ItemPosCountVec const& vec) const return false; } -//*********************************** -//-------------TRINITY--------------- -//*********************************** +// *********************************** +// -------------TRINITY--------------- +// *********************************** void Player::StopCastingBindSight() { diff --git a/src/server/game/Entities/Transport/Transport.cpp b/src/server/game/Entities/Transport/Transport.cpp index 2687f1ea233..7381f059940 100755 --- a/src/server/game/Entities/Transport/Transport.cpp +++ b/src/server/game/Entities/Transport/Transport.cpp @@ -180,8 +180,11 @@ Transport::Transport(uint32 period, uint32 script) : GameObject(), m_period(peri Transport::~Transport() { - for (CreatureSet::iterator itr = m_NPCPassengerSet.begin(); itr != m_NPCPassengerSet.end();) - (*(itr++))->ForcedDespawn(); + for (CreatureSet::iterator itr = m_NPCPassengerSet.begin(); itr != m_NPCPassengerSet.end(); ++itr) + { + (*itr)->SetTransport(NULL); + GetMap()->AddObjectToRemoveList(*itr); + } m_NPCPassengerSet.clear(); diff --git a/src/server/game/Globals/ObjectAccessor.cpp b/src/server/game/Globals/ObjectAccessor.cpp index af04b6c7f65..2405d6c2b40 100755 --- a/src/server/game/Globals/ObjectAccessor.cpp +++ b/src/server/game/Globals/ObjectAccessor.cpp @@ -45,11 +45,6 @@ ObjectAccessor::ObjectAccessor() ObjectAccessor::~ObjectAccessor() { - for (Player2CorpsesMapType::const_iterator itr = i_player2corpse.begin(); itr != i_player2corpse.end(); ++itr) - { - itr->second->RemoveFromWorld(); - delete itr->second; - } } WorldObject* ObjectAccessor::GetWorldObject(WorldObject const& p, uint64 guid) @@ -385,6 +380,15 @@ void ObjectAccessor::Update(uint32 /*diff*/) } } +void ObjectAccessor::UnloadAll() +{ + for (Player2CorpsesMapType::const_iterator itr = i_player2corpse.begin(); itr != i_player2corpse.end(); ++itr) + { + itr->second->RemoveFromWorld(); + delete itr->second; + } +} + /// Define the static members of HashMapHolder template <class T> UNORDERED_MAP< uint64, T* > HashMapHolder<T>::m_objectMap; diff --git a/src/server/game/Globals/ObjectAccessor.h b/src/server/game/Globals/ObjectAccessor.h index b8087a84f1e..c8be042ef8d 100755 --- a/src/server/game/Globals/ObjectAccessor.h +++ b/src/server/game/Globals/ObjectAccessor.h @@ -40,6 +40,7 @@ class DynamicObject; class WorldObject; class Vehicle; class Map; +class WorldRunnable; template <class T> class HashMapHolder @@ -84,6 +85,7 @@ class HashMapHolder class ObjectAccessor { friend class ACE_Singleton<ObjectAccessor, ACE_Thread_Mutex>; + friend class WorldRunnable; ObjectAccessor(); ~ObjectAccessor(); ObjectAccessor(const ObjectAccessor&); @@ -254,6 +256,9 @@ class ObjectAccessor typedef ACE_Thread_Mutex LockType; + protected: + void UnloadAll(); + private: Player2CorpsesMapType i_player2corpse; diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp index 3f0dedda06e..a18c67384fe 100755 --- a/src/server/game/Guilds/Guild.cpp +++ b/src/server/game/Guilds/Guild.cpp @@ -2542,7 +2542,7 @@ void Guild::_MoveItems(MoveItemData* pSrc, MoveItemData* pDest, uint32 splitedAm 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!! } - //*/ + // */ // 3. Check destination rights if (!pDest->HasStoreRights(pSrc)) diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index b754c87ccb1..cf26daed48a 100755 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -1020,9 +1020,9 @@ void Map::UnloadAll() } } -//***************************** +// ***************************** // Grid function -//***************************** +// ***************************** GridMap::GridMap() { m_flags = 0; diff --git a/src/server/game/Maps/Map.h b/src/server/game/Maps/Map.h index 8da8a184aef..c98bdce473b 100755 --- a/src/server/game/Maps/Map.h +++ b/src/server/game/Maps/Map.h @@ -60,9 +60,9 @@ struct ScriptAction ScriptInfo const* script; // pointer to static script data }; -//****************************************** +// ****************************************** // Map file format defines -//****************************************** +// ****************************************** #define MAP_MAGIC 'SPAM' #define MAP_VERSION_MAGIC '1.1v' #define MAP_AREA_MAGIC 'AERA' diff --git a/src/server/game/Maps/MapManager.cpp b/src/server/game/Maps/MapManager.cpp index d829c8e30d3..7b6d0a64460 100755 --- a/src/server/game/Maps/MapManager.cpp +++ b/src/server/game/Maps/MapManager.cpp @@ -45,16 +45,6 @@ MapManager::MapManager() MapManager::~MapManager() { - for (MapMapType::iterator iter=i_maps.begin(); iter != i_maps.end(); ++iter) - delete iter->second; - - for (TransportSet::iterator i = m_Transports.begin(); i != m_Transports.end(); ++i) - { - (*i)->RemoveFromWorld(); - delete *i; - } - - Map::DeleteStateMachine(); } void MapManager::Initialize() @@ -305,17 +295,23 @@ bool MapManager::IsValidMAP(uint32 mapid) void MapManager::UnloadAll() { - for (MapMapType::iterator iter=i_maps.begin(); iter != i_maps.end(); ++iter) - iter->second->UnloadAll(); + for (TransportSet::iterator i = m_Transports.begin(); i != m_Transports.end(); ++i) + { + (*i)->RemoveFromWorld(); + delete *i; + } - while (!i_maps.empty()) + for (MapMapType::iterator iter = i_maps.begin(); iter != i_maps.end();) { - delete i_maps.begin()->second; - i_maps.erase(i_maps.begin()); + iter->second->UnloadAll(); + delete iter->second; + i_maps.erase(iter++); } if (m_updater.activated()) m_updater.deactivate(); + + Map::DeleteStateMachine(); } void MapManager::InitMaxInstanceId() diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index f811b20d9d8..125203dfdeb 100755 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -1142,9 +1142,9 @@ void AuraEffect::UpdatePeriodic(Unit * caster) } else { - //********************************************** + // ********************************************** // This feature uses only in arenas - //********************************************** + // ********************************************** // Here need increase mana regen per tick (6 second rule) // on 0 tick - 0 (handled in 2 second) // on 1 tick - 166% (handled in 4 second) @@ -1931,7 +1931,7 @@ void AuraEffect::PeriodicDummyTick(Unit * target, Unit * caster) const } case 54798: // FLAMING Arrow Triggered Effect { - if (!target->ToCreature() || !caster->ToCreature()->IsVehicle()) + if (!target || !target->ToCreature() || !caster->ToCreature()->IsVehicle()) return; Unit *rider = caster->GetVehicleKit()->GetPassenger(0); diff --git a/src/server/game/Spells/Spell.h b/src/server/game/Spells/Spell.h index 1d775c9c825..0d7f163c0ea 100755 --- a/src/server/game/Spells/Spell.h +++ b/src/server/game/Spells/Spell.h @@ -606,17 +606,17 @@ class Spell int32 m_damage; // Damge in effects count here int32 m_healing; // Healing in effects count here - //****************************************** + // ****************************************** // Spell trigger system - //****************************************** + // ****************************************** uint32 m_procAttacker; // Attacker trigger flags uint32 m_procVictim; // Victim trigger flags uint32 m_procEx; void prepareDataForTriggerSystem(AuraEffect const * triggeredByAura); - //***************************************** + // ***************************************** // Spell target subsystem - //***************************************** + // ***************************************** // Targets store structures and data struct TargetInfo { diff --git a/src/server/game/Texts/CreatureTextMgr.cpp b/src/server/game/Texts/CreatureTextMgr.cpp index 3f8edaab09a..29a58d79165 100755 --- a/src/server/game/Texts/CreatureTextMgr.cpp +++ b/src/server/game/Texts/CreatureTextMgr.cpp @@ -306,8 +306,8 @@ void CreatureTextMgr::BuildMonsterChat(WorldPacket *data, WorldObject* source, C { sLog->outError("CreatureTextMgr: WorldObject(%s) TypeId %u GuidLow %u sent WHISPER msg to Non-Player target. Ignoring.",source->GetName(), uint32(source->GetTypeId()), source->GetGUIDLow()); return; - //*data << (uint32)1; // target name length - //*data << (uint8)0; // target name + // *data << (uint32)1; // target name length + // *data << (uint8)0; // target name } *data << (uint32)(strlen(text)+1); *data << text; |
