MODIFIED: Minor cleanup, thanks Sunthan.
MODIFIED: Some cleanup.
MODIFIED: Fourth try to fix why assertions added in r3516 are triggered. Assertion on IsInWorld() after Pet::PushToWorld() in Pet::InitializeMe(). We MUST be sure that Pet IS in world, otherwise Owner will have a reference to a Pet not yet in world.
FIXED: Looking up spells with name containing the character '%' will not crash the server anymore.
MODIFIED: Fifth try to fix why assertions added in r3516 are triggered. When relocating to a new map, Player was dismounted after being removed from world, trying to spawn a Pet with NULL MapMgr, without removing the Pet reference after the PushToWorld() failed. Now Players are dismounted BEFORE being removed from world.
REMOVED: Player was dismounted twice when relocating if collisions were disabled.
* Finished moving the majority of friend/ignore stuff over to the new cache system.
MODIFIED: Sixth try to fix why assertions added in r3516 are triggered. Players can spawn the active Pet only if in world.
FIXED: SMSG_CROSSED_INEBRIATION_THRESHOLD packet
FIXED: Creature::Load(CreatureSpawn *cs) was ignoring "movetype" set in DataBase.
MODIFIED: Little comments cleanup
MODIFIED: Little cleanup. Note: these useless checks were there since Ascent r1.
FIXED: crashed due to an infinite loop added by r3425 when spell 31785 is used in combination with spell 43742
FIXED: [mage] Water Elemental and Glyph of Eternal Water
FIXED: [priest] Pain and Suffering
CHANGED: AVNode class is now nested in AlteracValley and reference to it is passed by pointer, fixes some compile warnings
* CHANGED: Erase event from list before executing its callback - may change nothing, but can avoid modifying event by itself...
MODIFIED: Creature::TotemExpire() now accepts a uint32 as optional parameter that delays ONLY the Despawn(). Reference from the Owner is removed when TotemExpire() is called. This fixes an issue dealing with Fire Elemental Totem (spell id 2894) and Living Bomb (spell id 44457).
MODIFIED: Little cleanup.
FIXED: Issue that appeared when the world server was unresponsive for a while (for example due to being paused during a debug session) and then tried to reconnect to the logon. In certain cases this caused them to keep losing the connection.
Also added some debug messages to help keep tracking down other similar issues.
ADDED: .debug spawnwar [npcid] [count] ([health]) - spawns number of npcs with different factions so they attack each other, thanks to Burlex and Andy for the idea
MODIFIED: More GUIDs compares instead of pointers compares in AIInterface.
MODIFIED: Some cleanup.
REMOVED: Some bad hacky crashfixes.