* Mostly aimed at removing Log/DatabaseEnv includes from other headers
* Fix most packet headers including other packet headers - moved common structures such as ItemInstance to their own files
* Moved SAI function definitions to source files (massive or requiring many different dependencies)
(cherry picked from commit 6d00d3f28380dd0811a18913450b1dc4f07fef48)
Merge remote-tracking branch 'Treeston/3.3.5-splinechains' into 3.3.5 (PR #17946)
(cherry picked from commit 20f483967fb3a430fbd54148c08b6d8e8937daac)
Core/Movement: Add a convenience default ctor to SplineChainResumeInfo, and fix PCH build in some configurations (zzz why do we even keep Appveyor and Travis around).
(cherry picked from commit 4fa646c0b2ae3261e7fab249f4177900d4c8d013)
PCH build fix. Again.
(( Alright, you made me waste 20 minutes of my life on a full nonPCH rebuild of the core now. ))
(( I hope you're happy. ))
(cherry picked from commit 4a1a460241acf511467decd92d2a30e19927d74d)
SMART_TARGET_INVOKER_PARTY or SMART_ACTION_CALL_GROUPEVENTHAPPENS should instead be used to achieve this functionality.
(cherry picked from commit 6586885bcaf062c5f0fd6d6c7652b93c08e7c20c)
This allows us to fix quest 12261 (No Place to Run). Closes#16291.
(cherry picked from commit e69a483aa942c1c6c4bd9b5fa47139f89643b8d5)
Derp. Build fix.
(cherry picked from commit 9180bcd404ff0a89144bbe834a2efe189bd0eb86)
Core/SmartAI: allow SMART_TARGET_OWNER_OR_SUMMONER to target a temporary summon's summoner, too
(cherry picked from commit 1fcd03b60a17db5fddef13feb6fe6b8d7178d0f5)
A value of 0 (default) forces the creature to keep its current level between entry updates.
Fixes#16371
(cherry picked from commit a6ef9d45395be0f4551a55439c7790a288c40df8)
Use this new target type to fix The Rider of Blood, The Rider of Frost, The Rider of the Unholy. Closes#17817.
(cherry picked from commit e2c915fb43ae27d695c0ab410fb1b14222745e27)
- NULL -> nullptr
- Rename "AssistPlayerInCombat(who)" to "AssistPlayerInCombatAgainst(who)" to reflect what the method actually does
- Code style
No functionality was changed.
(cherry picked from commit 152b3ad5b997f4be06c5bb55ddb15c57a8e28c3b)
# Conflicts:
# src/server/game/AI/SmartScripts/SmartAI.cpp
# src/server/game/AI/SmartScripts/SmartScript.cpp
- There's still an overload allowing for x, y, z, o to be passed directly
- Fixed default animstate for GameObject creation in many places, it should be 255, not 100 (checked in sniffs)
(cherry picked from commit 62bfee37cb21584cef631dda428feaf5eb829cda)
# Conflicts:
# src/server/game/Battlefield/Battlefield.cpp
# src/server/game/Battlegrounds/Battleground.cpp
# src/server/game/Entities/GameObject/GameObject.cpp
# src/server/game/Entities/GameObject/GameObject.h
# src/server/game/Entities/Object/Object.cpp
# src/server/game/Entities/Object/Object.h
# src/server/game/Spells/SpellEffects.cpp
# src/server/scripts/Commands/cs_gobject.cpp
# src/server/scripts/EasternKingdoms/SunkenTemple/instance_sunken_temple.cpp
# src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp
# src/server/scripts/Kalimdor/zone_feralas.cpp
# src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
# src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp
# src/server/scripts/OutdoorPvP/OutdoorPvPSI.cpp
(cherry picked from commit ba0cb53b0214ab3625830f7dac3c68d08a97e084)
Rename 9999_99_99_99_world.sql to 2016_07_15_07_world.sql
(cherry picked from commit 2fd124f9a3cbbd81f2ce6c7154d640175ed71452)
Scripts/Dire Maul: Initialize boss states array so it may be called from SmartAI. (Ref #6429)
(cherry picked from commit d1d0c64ad11cb3faf986a5332fec6b704fb8026c)
# Conflicts:
# src/server/game/AI/SmartScripts/SmartScriptMgr.cpp
Gameobjects do not need to use SmartAI in order to be targeted by other entities' scripts.
(cherry picked from commit 9803e58392eea0828aac96cd79a794a77323d9d0)
- When a creature cannot find a path to its victim, it begins evading all attacks and regenerating health.
- If this persists for 5 seconds, it evades back to spawn position with new EvadeReason value EVADE_REASON_NO_PATH.
- Also some SmartAI cleanup (why oh why does it have so much duplicated code) and getting rid of #defines in favor of type-checked compile-time constants.
(cherry picked from commit 7b1560fccba77ecbdfecd7b33af740aea41b7087)