aboutsummaryrefslogtreecommitdiff
path: root/src/server/game
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game')
-rwxr-xr-xsrc/server/game/AI/EventAI/CreatureEventAI.cpp4
-rw-r--r--src/server/game/AI/ScriptedAI/ScriptedCreature.h16
-rwxr-xr-xsrc/server/game/Chat/Commands/Level3.cpp2
-rwxr-xr-xsrc/server/game/Entities/Player/Player.cpp6
-rwxr-xr-xsrc/server/game/Entities/Transport/Transport.cpp7
-rwxr-xr-xsrc/server/game/Globals/ObjectAccessor.cpp14
-rwxr-xr-xsrc/server/game/Globals/ObjectAccessor.h5
-rwxr-xr-xsrc/server/game/Guilds/Guild.cpp2
-rwxr-xr-xsrc/server/game/Maps/Map.cpp4
-rwxr-xr-xsrc/server/game/Maps/Map.h4
-rwxr-xr-xsrc/server/game/Maps/MapManager.cpp26
-rwxr-xr-xsrc/server/game/Spells/Auras/SpellAuraEffects.cpp6
-rwxr-xr-xsrc/server/game/Spells/Spell.h8
-rwxr-xr-xsrc/server/game/Texts/CreatureTextMgr.cpp4
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;