Merge remote-tracking branch 'tc/3.3.5' into 4.3.4

Conflicts:
	.travis.yml
	CMakeLists.txt
	README.md
	dep/libmpq/CMakeLists.txt
	doc/UnixInstall.txt
	revision_data.h.in.cmake
	sql/base/auth_database.sql
	sql/base/characters_database.sql
	sql/base/dev/world_database.sql
	sql/old/3.3.5a/auth/59_2015_11_07/2015_08_21_00_auth.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_14_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_14_01_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_14_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_14_03_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_14_04_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_14_05_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_15_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_15_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_15_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_16_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_17_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_17_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_17_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_17_03_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_17_04_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_18_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_18_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_19_00_world_2015_07_18_04.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_19_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_19_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_19_03_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_19_04_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_19_05_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_20_02_world_2015_07_19_35.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_21_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_24_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_24_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_24_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_24_03_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_24_04_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_24_05_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_24_06_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_24_07_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_25_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_25_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_25_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_25_03_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_25_04_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_26_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_26_04_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_26_05_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_26_06_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_27_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_07_27_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_02_00_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_02_01_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_03_00_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_08_00_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_08_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_08_02_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_08_03_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_08_04_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_09_00_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_13_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_13_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_13_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_13_03_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_13_04_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_21_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_21_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_21_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_23_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_25_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_25_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_26_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_26_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_27_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_29_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_29_03_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_08_29_04_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_01_00_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_02_02_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_02_03_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_03_05_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_05_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_05_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_05_02_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_06_00_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_08_01_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_08_02_world.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_10_00_world_335.sql
	sql/old/3.3.5a/world/59_2015_11_07/2015_09_10_01_world_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_14_02_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_14_03_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_14_04_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_14_05_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_15_00_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_15_01_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_15_02_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_16_00_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_17_00_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_17_01_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_17_02_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_17_03_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_17_04_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_18_00_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_18_01_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_19_01_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_19_02_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_19_03_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_19_04_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_19_05_world_from_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_21_00_world_from_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_24_00_world_from_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_24_01_world_from_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_24_02_world_from_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_24_03_world_from_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_24_04_world_from_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_24_06_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_24_07_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_25_00_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_25_01_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_25_02_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_25_03_world_from_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_25_04_world_from_335.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_26_04_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_26_05_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_27_00_world.sql
	sql/old/4.3.4/TDB09_to_TDB10_updates/world/2015_07_27_01_world.sql
	sql/updates/world/2015_07_14_02_world.sql
	sql/updates/world/2015_07_14_03_world.sql
	sql/updates/world/2015_07_14_04_world.sql
	sql/updates/world/2015_07_14_05_world.sql
	sql/updates/world/2015_07_15_00_world.sql
	sql/updates/world/2015_07_15_01_world.sql
	sql/updates/world/2015_07_15_02_world.sql
	sql/updates/world/2015_07_16_00_world.sql
	sql/updates/world/2015_07_17_00_world.sql
	sql/updates/world/2015_07_17_01_world.sql
	sql/updates/world/2015_07_17_02_world.sql
	sql/updates/world/2015_07_17_03_world.sql
	sql/updates/world/2015_07_17_04_world.sql
	sql/updates/world/2015_07_18_00_world.sql
	sql/updates/world/2015_07_18_01_world.sql
	sql/updates/world/2015_07_19_01_world.sql
	sql/updates/world/2015_07_19_02_world.sql
	sql/updates/world/2015_07_19_03_world.sql
	sql/updates/world/2015_07_19_04_world.sql
	sql/updates/world/2015_07_19_05_world.sql
	sql/updates/world/2015_07_21_00_world.sql
	sql/updates/world/2015_07_24_00_world.sql
	sql/updates/world/2015_07_24_01_world.sql
	sql/updates/world/2015_07_24_02_world.sql
	sql/updates/world/2015_07_24_03_world.sql
	sql/updates/world/2015_07_24_04_world.sql
	sql/updates/world/2015_07_24_06_world.sql
	sql/updates/world/2015_07_24_07_world.sql
	sql/updates/world/2015_07_25_00_world.sql
	sql/updates/world/2015_07_25_01_world.sql
	sql/updates/world/2015_07_25_02_world.sql
	sql/updates/world/2015_07_25_03_world.sql
	sql/updates/world/2015_07_25_04_world.sql
	sql/updates/world/2015_07_26_00_world.sql
	sql/updates/world/2015_07_26_04_world.sql
	sql/updates/world/2015_07_26_05_world.sql
	sql/updates/world/2015_07_26_06_world.sql
	sql/updates/world/2015_07_27_00_world.sql
	sql/updates/world/2015_07_27_01_world.sql
	sql/updates/world/2015_07_28_02_world.sql
	sql/updates/world/2015_07_28_03_world.sql
	sql/updates/world/2015_08_13_00_world.sql
	sql/updates/world/2015_08_13_01_world.sql
	sql/updates/world/2015_08_13_02_world.sql
	sql/updates/world/2015_08_13_03_world.sql
	sql/updates/world/2015_08_13_04_world.sql
	sql/updates/world/2015_08_21_00_world.sql
	sql/updates/world/2015_08_21_01_world.sql
	sql/updates/world/2015_08_21_02_world.sql
	sql/updates/world/2015_08_23_00_world.sql
	sql/updates/world/2015_08_25_00_world.sql
	sql/updates/world/2015_08_25_01_world.sql
	sql/updates/world/2015_08_26_00_world.sql
	sql/updates/world/2015_08_26_01_world.sql
	sql/updates/world/2015_08_27_00_world.sql
	sql/updates/world/2015_08_29_02_world.sql
	sql/updates/world/2015_08_29_03_world.sql
	sql/updates/world/2015_08_29_04_world.sql
	sql/updates/world/2015_09_01_00_world_335.sql
	sql/updates/world/2015_09_05_00_world.sql
	sql/updates/world/2015_09_05_01_world.sql
	sql/updates/world/2015_09_06_00_world.sql
	sql/updates/world/2015_09_08_01_world.sql
	sql/updates/world/2015_09_08_02_world.sql
	sql/updates/world/2015_09_11_00_world_from_335.sql
	sql/updates/world/2015_09_11_01_world_from_335.sql
	sql/updates/world/2015_09_11_02_world_from_335.sql
	sql/updates/world/2015_09_11_03_world_from_335.sql
	sql/updates/world/2015_09_11_04_world_from_335.sql
	sql/updates/world/2015_09_11_05_world_from_335.sql
	sql/updates/world/2015_09_11_06_world_from_335.sql
	sql/updates/world/2015_09_11_07_world_from_335.sql
	sql/updates/world/2015_09_11_08_world_from_335.sql
	sql/updates/world/2015_09_11_09_world_from_335.sql
	sql/updates/world/2015_09_11_10_world_from_335.sql
	sql/updates/world/2015_09_11_11_world_from_335.sql
	sql/updates/world/2015_09_11_12_world_from_335.sql
	sql/updates/world/2015_09_11_13_world_from_335.sql
	sql/updates/world/2015_09_11_16_world_from_335.sql
	sql/updates/world/2015_09_11_17_world_from_335.sql
	sql/updates/world/2015_09_11_18_world_from_335.sql
	sql/updates/world/2015_09_11_21_world_from_335.sql
	sql/updates/world/2015_09_11_40_world_from_335.sql
	sql/updates/world/2015_09_11_41_world_from_335.sql
	sql/updates/world/2015_09_11_43_world_from_335.sql
	sql/updates/world/2015_09_11_51_world_from_335.sql
	sql/updates/world/2015_09_11_52_world_from_335.sql
	sql/updates/world/2015_12_14_00_world.sql
	sql/updates/world/2016_01_01_00_world.sql
	sql/updates/world/2016_01_01_01_world.sql
	src/common/Common.h
	src/common/Cryptography/Authentication/AuthCrypt.cpp
	src/common/Cryptography/Authentication/AuthCrypt.h
	src/common/Cryptography/HMACSHA1.cpp
	src/common/Cryptography/HMACSHA1.h
	src/server/database/Database/Implementation/CharacterDatabase.cpp
	src/server/database/Database/Implementation/CharacterDatabase.h
	src/server/database/Database/Implementation/LoginDatabase.cpp
	src/server/game/AI/SmartScripts/SmartScript.cpp
	src/server/game/AI/SmartScripts/SmartScript.h
	src/server/game/Achievements/AchievementMgr.cpp
	src/server/game/Battlefield/Battlefield.cpp
	src/server/game/Battlegrounds/ArenaTeam.cpp
	src/server/game/Battlegrounds/ArenaTeamMgr.cpp
	src/server/game/Battlegrounds/Battleground.cpp
	src/server/game/Battlegrounds/BattlegroundQueue.cpp
	src/server/game/Battlegrounds/Zones/BattlegroundAB.cpp
	src/server/game/Battlegrounds/Zones/BattlegroundAV.cpp
	src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp
	src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp
	src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp
	src/server/game/Battlegrounds/Zones/BattlegroundWS.cpp
	src/server/game/Chat/Chat.cpp
	src/server/game/Chat/Chat.h
	src/server/game/Conditions/ConditionMgr.cpp
	src/server/game/Conditions/ConditionMgr.h
	src/server/game/DataStores/DBCStores.cpp
	src/server/game/DataStores/DBCStructure.h
	src/server/game/DataStores/DBCfmt.h
	src/server/game/Entities/Corpse/Corpse.cpp
	src/server/game/Entities/Creature/Creature.cpp
	src/server/game/Entities/Creature/Creature.h
	src/server/game/Entities/Creature/GossipDef.cpp
	src/server/game/Entities/DynamicObject/DynamicObject.cpp
	src/server/game/Entities/DynamicObject/DynamicObject.h
	src/server/game/Entities/GameObject/GameObject.cpp
	src/server/game/Entities/Object/Object.cpp
	src/server/game/Entities/Object/ObjectGuid.cpp
	src/server/game/Entities/Object/ObjectGuid.h
	src/server/game/Entities/Pet/Pet.cpp
	src/server/game/Entities/Pet/Pet.h
	src/server/game/Entities/Player/Player.cpp
	src/server/game/Entities/Player/Player.h
	src/server/game/Entities/Transport/Transport.cpp
	src/server/game/Entities/Transport/Transport.h
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Events/GameEventMgr.cpp
	src/server/game/Globals/ObjectAccessor.cpp
	src/server/game/Globals/ObjectAccessor.h
	src/server/game/Globals/ObjectMgr.cpp
	src/server/game/Globals/ObjectMgr.h
	src/server/game/Grids/GridDefines.h
	src/server/game/Grids/ObjectGridLoader.cpp
	src/server/game/Groups/Group.cpp
	src/server/game/Guilds/Guild.cpp
	src/server/game/Guilds/Guild.h
	src/server/game/Guilds/GuildMgr.cpp
	src/server/game/Guilds/GuildMgr.h
	src/server/game/Handlers/AuctionHouseHandler.cpp
	src/server/game/Handlers/BattleGroundHandler.cpp
	src/server/game/Handlers/CharacterHandler.cpp
	src/server/game/Handlers/ChatHandler.cpp
	src/server/game/Handlers/GroupHandler.cpp
	src/server/game/Handlers/ItemHandler.cpp
	src/server/game/Handlers/MailHandler.cpp
	src/server/game/Handlers/MiscHandler.cpp
	src/server/game/Handlers/QueryHandler.cpp
	src/server/game/Handlers/QuestHandler.cpp
	src/server/game/Handlers/ReferAFriendHandler.cpp
	src/server/game/Handlers/TaxiHandler.cpp
	src/server/game/Handlers/TradeHandler.cpp
	src/server/game/Instances/InstanceScript.cpp
	src/server/game/Maps/Map.cpp
	src/server/game/Maps/Map.h
	src/server/game/Maps/MapInstanced.cpp
	src/server/game/Maps/MapManager.h
	src/server/game/Maps/TransportMgr.cpp
	src/server/game/Maps/TransportMgr.h
	src/server/game/Miscellaneous/Language.h
	src/server/game/Movement/Waypoints/Path.h
	src/server/game/OutdoorPvP/OutdoorPvP.cpp
	src/server/game/OutdoorPvP/OutdoorPvP.h
	src/server/game/Pools/PoolMgr.cpp
	src/server/game/Quests/QuestDef.cpp
	src/server/game/Quests/QuestDef.h
	src/server/game/Scripting/MapScripts.cpp
	src/server/game/Scripting/ScriptMgr.cpp
	src/server/game/Server/WorldSession.cpp
	src/server/game/Server/WorldSession.h
	src/server/game/Server/WorldSocket.cpp
	src/server/game/Server/WorldSocket.h
	src/server/game/Spells/Auras/SpellAuraEffects.cpp
	src/server/game/Spells/Auras/SpellAuras.cpp
	src/server/game/Spells/Spell.cpp
	src/server/game/Spells/SpellEffects.cpp
	src/server/game/Spells/SpellHistory.cpp
	src/server/game/Spells/SpellHistory.h
	src/server/game/Spells/SpellInfo.cpp
	src/server/game/Spells/SpellInfo.h
	src/server/game/Spells/SpellMgr.cpp
	src/server/game/Tickets/TicketMgr.cpp
	src/server/game/Tools/PlayerDump.cpp
	src/server/game/Tools/PlayerDump.h
	src/server/game/World/World.cpp
	src/server/scripts/Commands/cs_debug.cpp
	src/server/scripts/Commands/cs_gobject.cpp
	src/server/scripts/Commands/cs_misc.cpp
	src/server/scripts/Commands/cs_mmaps.cpp
	src/server/scripts/Commands/cs_modify.cpp
	src/server/scripts/Commands/cs_npc.cpp
	src/server/scripts/Commands/cs_reload.cpp
	src/server/scripts/Commands/cs_ticket.cpp
	src/server/scripts/Commands/cs_wp.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_anubshiah.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_gorosh_the_dervish.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_grizzle.cpp
	src/server/scripts/EasternKingdoms/Deadmines/deadmines.cpp
	src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp
	src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp
	src/server/scripts/EasternKingdoms/ZulAman/instance_zulaman.cpp
	src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp
	src/server/scripts/EasternKingdoms/ZulAman/zulaman.h
	src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
	src/server/scripts/EasternKingdoms/zone_burning_steppes.cpp
	src/server/scripts/EasternKingdoms/zone_stormwind_city.cpp
	src/server/scripts/EasternKingdoms/zone_tirisfal_glades.cpp
	src/server/scripts/Kalimdor/boss_azuregos.cpp
	src/server/scripts/Kalimdor/zone_azshara.cpp
	src/server/scripts/Kalimdor/zone_darkshore.cpp
	src/server/scripts/Kalimdor/zone_felwood.cpp
	src/server/scripts/Kalimdor/zone_moonglade.cpp
	src/server/scripts/Kalimdor/zone_orgrimmar.cpp
	src/server/scripts/Kalimdor/zone_stonetalon_mountains.cpp
	src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_herald_volazj.cpp
	src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp
	src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp
	src/server/scripts/OutdoorPvP/OutdoorPvPEP.cpp
	src/server/scripts/OutdoorPvP/OutdoorPvPEP.h
	src/server/scripts/OutdoorPvP/OutdoorPvPNA.cpp
	src/server/scripts/OutdoorPvP/OutdoorPvPZM.cpp
	src/server/scripts/Spells/spell_dk.cpp
	src/server/scripts/Spells/spell_druid.cpp
	src/server/scripts/World/duel_reset.cpp
	src/server/scripts/World/npc_taxi.cpp
	src/server/shared/Containers.h
	src/server/shared/Dynamic/TypeContainer.h
	src/server/shared/Dynamic/TypeContainerFunctions.h
	src/server/shared/Dynamic/TypeList.h
	src/server/shared/Packets/WorldPacket.h
	src/tools/map_extractor/CMakeLists.txt
	src/tools/map_extractor/System.cpp
	src/tools/map_extractor/loadlib.cpp
	src/tools/map_extractor/loadlib/loadlib.h
	src/tools/map_extractor/mpq_libmpq.cpp
	src/tools/map_extractor/mpq_libmpq04.h
	src/tools/vmap4_extractor/adtfile.cpp
	src/tools/vmap4_extractor/loadlib/loadlib.h
	src/tools/vmap4_extractor/mpq_libmpq.cpp
	src/tools/vmap4_extractor/mpq_libmpq04.h
	src/tools/vmap4_extractor/vmapexport.cpp
	src/tools/vmap4_extractor/wdtfile.cpp
	src/tools/vmap4_extractor/wdtfile.h
	src/tools/vmap4_extractor/wmo.cpp
This commit is contained in:
ariel- committed 2016-01-15 00:15:35 -03:00
commit e34e3f379f
466 files changed
+8606 -5868

No files matched your search

+41 -9
View File
@@ -40,6 +40,7 @@ enum DruidSpells
SPELL_DRUID_SOLAR_ECLIPSE = 48517,
SPELL_DRUID_LUNAR_ECLIPSE = 48518,
SPELL_DRUID_ENRAGE_MOD_DAMAGE = 51185,
SPELL_DRUID_ENRAGED_DEFENSE = 70725,
SPELL_DRUID_FERAL_CHARGE_BEAR = 16979,
SPELL_DRUID_FERAL_CHARGE_CAT = 49376,
SPELL_DRUID_GLYPH_OF_INNERVATE = 54833,
@@ -49,6 +50,7 @@ enum DruidSpells
SPELL_DRUID_IDOL_OF_WORSHIP = 60774,
SPELL_DRUID_INCREASED_MOONFIRE_DURATION = 38414,
SPELL_DRUID_ITEM_T8_BALANCE_RELIC = 64950,
SPELL_DRUID_ITEM_T10_FERAL_4P_BONUS = 70726,
SPELL_DRUID_KING_OF_THE_JUNGLE = 48492,
SPELL_DRUID_LIFEBLOOM_ENERGIZE = 64372,
SPELL_DRUID_LIFEBLOOM_FINAL_HEAL = 33778,
@@ -255,33 +257,63 @@ class spell_dru_enrage : public SpellScriptLoader
public:
spell_dru_enrage() : SpellScriptLoader("spell_dru_enrage") { }
class spell_dru_enrage_SpellScript : public SpellScript
class spell_dru_enrage_AuraScript : public AuraScript
{
PrepareSpellScript(spell_dru_enrage_SpellScript);
PrepareAuraScript(spell_dru_enrage_AuraScript);
bool Validate(SpellInfo const* /*spellInfo*/) override
{
if (!sSpellMgr->GetSpellInfo(SPELL_DRUID_KING_OF_THE_JUNGLE)
|| !sSpellMgr->GetSpellInfo(SPELL_DRUID_ENRAGE_MOD_DAMAGE))
|| !sSpellMgr->GetSpellInfo(SPELL_DRUID_ENRAGE_MOD_DAMAGE)
|| !sSpellMgr->GetSpellInfo(SPELL_DRUID_ENRAGED_DEFENSE)
|| !sSpellMgr->GetSpellInfo(SPELL_DRUID_ITEM_T10_FERAL_4P_BONUS))
return false;
return true;
}
void OnHit()
void RecalculateBaseArmor()
{
if (AuraEffect const* aurEff = GetHitUnit()->GetAuraEffectOfRankedSpell(SPELL_DRUID_KING_OF_THE_JUNGLE, EFFECT_0))
GetHitUnit()->CastCustomSpell(SPELL_DRUID_ENRAGE_MOD_DAMAGE, SPELLVALUE_BASE_POINT0, aurEff->GetAmount(), GetHitUnit(), true);
Unit::AuraEffectList const& auras = GetTarget()->GetAuraEffectsByType(SPELL_AURA_MOD_BASE_RESISTANCE_PCT);
for (Unit::AuraEffectList::const_iterator i = auras.begin(); i != auras.end(); ++i)
{
SpellInfo const* spellInfo = (*i)->GetSpellInfo();
// Dire- / Bear Form (Passive)
if (spellInfo->SpellFamilyName == SPELLFAMILY_DRUID && spellInfo->SpellFamilyFlags.HasFlag(0x0, 0x0, 0x2))
(*i)->RecalculateAmount();
}
}
void HandleApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
{
Unit* target = GetTarget();
if (AuraEffect const* aurEff = target->GetAuraEffectOfRankedSpell(SPELL_DRUID_KING_OF_THE_JUNGLE, EFFECT_0))
target->CastCustomSpell(SPELL_DRUID_ENRAGE_MOD_DAMAGE, SPELLVALUE_BASE_POINT0, aurEff->GetAmount(), target, true);
// Item - Druid T10 Feral 4P Bonus
if (target->HasAura(SPELL_DRUID_ITEM_T10_FERAL_4P_BONUS))
target->CastSpell(target, SPELL_DRUID_ENRAGED_DEFENSE, true);
RecalculateBaseArmor();
}
void HandleRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
{
GetTarget()->RemoveAurasDueToSpell(SPELL_DRUID_ENRAGE_MOD_DAMAGE);
GetTarget()->RemoveAurasDueToSpell(SPELL_DRUID_ENRAGED_DEFENSE);
RecalculateBaseArmor();
}
void Register() override
{
AfterHit += SpellHitFn(spell_dru_enrage_SpellScript::OnHit);
AfterEffectApply += AuraEffectApplyFn(spell_dru_enrage_AuraScript::HandleApply, EFFECT_0, SPELL_AURA_PERIODIC_ENERGIZE, AURA_EFFECT_HANDLE_REAL);
AfterEffectRemove += AuraEffectRemoveFn(spell_dru_enrage_AuraScript::HandleRemove, EFFECT_0, SPELL_AURA_PERIODIC_ENERGIZE, AURA_EFFECT_HANDLE_REAL);
}
};
SpellScript* GetSpellScript() const override
AuraScript* GetAuraScript() const override
{
return new spell_dru_enrage_SpellScript();
return new spell_dru_enrage_AuraScript();
}
};