Commit Graph

22165 Commits

Author SHA1 Message Date
Shauren f06ac0fedb Build: Work around internal compiler errors in VS 2019 with dynamic build and PCH 2020-03-06 19:09:29 +01:00
Shauren e10313b380 Core/Maps: Citizens of Dalaran! Raise your eyes to the skies and observe! Any non-map-default light can now be overriden!
Closes #24250
2020-03-06 17:44:10 +01:00
Shauren c5226aec41 Core/SAI: Allow resetting light overrides with SMART_ACTION_OVERRIDE_LIGHT 2020-03-05 21:14:32 +01:00
Giacomo Pozzoni 0752584856 Core/Database: Fix build with Maria DB on some distros (#24248) 2020-03-05 20:16:49 +01:00
Giacomo Pozzoni d1080af8db Core/Objects: MovePositonToFirstCollision will now use detour raycasts to determine terrain obstacles (#24232)
* Core/Objects: MovePositonToFirstCollision will now use detour raycasts to determine terrain obstacles

* Added missing includes

* Update Object.cpp

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
2020-03-04 20:59:04 +01:00
jackpoz 16ccc17621 Core/PathFinding: Fix mmaps raycast without hit
Update Z coordinate of end position when casting a mmap raycast that doesn't hit the target
2020-03-03 21:39:01 +01:00
Shauren 3048203855 Core/DBLayer: Use std::variant's stored type instead of relying on our own separate enum for prepared statement parameters 2020-03-02 22:51:18 +01:00
jackpoz 69809d1203 Core/AI: Fix remaining charming issue
Make creatures evade when a charming expires and they cannot attack the charmer (i.e. charmer with .gm on)
2020-03-02 20:43:52 +01:00
Giacomo Pozzoni 817ae5bca6 Core/AI: Allow creatures to evade (#24221)
* Core/AI: Allow creatures to evade

Revert changes that didn't allow creatures to evade anymore no matter how hard a script would try

* PArtially revert 163f44c1b0
2020-03-02 20:17:47 +01:00
Shauren 5b0a32d164 Core/DBLayer: Refactor PreparedStatement class to not depend on MySQLPreparedStatement 2020-03-02 19:40:59 +01:00
daMaex ce449f6b53 Core: build on aarch64 with gcc (#24216)
* build on aarch64 with gcc

* Core/aarch64: readability on preprocessor macro

* Core/aarch64: TC C++ codestyle adjustment
2020-03-01 20:16:57 +01:00
NoName 6067a99632 Core/Spell: Proper SPELL_EFFECT_PULL_TOWARDS_DEST implementation for players (#24178)
* Core/Spell: Proper SPELL_EFFECT_PULL_TOWARDS_DEST implementation for players
Closes ##23203 and also reverts 9a1282a

thnx to xvwyh

* Make it optional
2020-03-01 20:15:54 +01:00
jackpoz 9ba4694ff2 Core/Misc: Fix build 2020-03-01 19:23:48 +01:00
Giacomo Pozzoni ddf2f60c13 Core/AI: Make charmed creatures follow their owner (#24195)
* Core/AI: Make charmed creatures follow their owner

* Follow the charmer only when applying the charm

* Make SmartAI follow the charmer
2020-03-01 13:31:13 +01:00
Ujp8LfXBJ6wCPR 3ebcb71c3d Replace MySQL prepared statement union with std::variant (#24158) 2020-02-29 17:14:15 +01:00
Ujp8LfXBJ6wCPR a933ba6015 Modernize codebase with Clang-Tidy range based loops (#24165)
Manual expansion of auto types into "typed types"
2020-02-29 13:22:51 +01:00
Ujp8LfXBJ6wCPR fb75a958f0 Part1: Modernize codebase with Clang-Tidy range based loops (#24164) 2020-02-29 13:20:05 +01:00
Sorikoff 2b14b720da Scripts/Ebon Hold: Bloody Breakout (#24126)
* Scripts/Ebon Hold: Bloody Breakout

* Scripts/Ebon Hold: Bloody Breakout (part 2)

* Improvements

* Fail quest

* Spacing

* Update 9999_99_99_99_world.sql

* Update 9999_99_99_99_world.sql

* Rename 9999_99_99_99_world.sql to 2020_02_28_04_world.sql

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
2020-02-28 20:29:08 +01:00
ForesterDev ffede34ba9 Core/Misc: Moved CanSpeak() method to WorldSession class (#24209)
* Core/Misc: Moved CanSpeak() method to WorldSession class

(cherry picked from commit 93aa30f447)

# Conflicts:
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Handlers/ChatHandler.cpp
#	src/server/game/Server/WorldSession.cpp

* fix merge conflicts
2020-02-28 19:53:35 +01:00
Giacomo Pozzoni c0676a48f7 Core/PathFinding: Add support to WorldObject pathfinding (#24207)
* Core/PathFinding: Add support to WorldObject pathfinding

* Handle Unit* specific code

* Fix some wrong const

* Fix no-pch build
2020-02-28 19:31:55 +01:00
Giacomo Pozzoni 6443e518cf Core/PathFinding: Return raycast hitpoint when specifying straightLine (#24206) 2020-02-28 19:29:58 +01:00
ForesterDev f6e6baa293 Core/PacketIO: update SMSG_EMOTE / CMSG_EMOTE packets to new system (#24200)
* Core/PacketIO: update SMSG_EMOTE / CMSG_EMOTE packets to new system

* Change int32 to uint32
2020-02-28 19:29:05 +01:00
ForesterDev 71a01c75ca Core/Server: improve timestamp format output for large time values (#24193) 2020-02-28 19:24:33 +01:00
ForesterDev 5cfce94619 Core/DynamicInfo: rename some parameters according packet definitions (#24192) 2020-02-28 19:23:20 +01:00
Ovah 6cbfda2fce Core/Units: UNIT_FLAG_PACIFIED will no longer block victim updates (#24190)
* Core/Units: UNIT_FLAG_PACIFIED will no longer block victim updates

* pacified units should only have their melee attacks blocked as counterpart to silence mechanics

* Core/Spells: removed unnecessary attack stop call from pacify aura effect handler
2020-02-28 19:22:25 +01:00
Rushor 0583445c05 Scripts/Gameobject: Move Orb of Command script to SAI. (#24189)
* Scripts/Gameobject: Move Orb of Command script to SAI.

* Scripts/Gameobject: Move Orb of Command script to SAI.

* Rename 2020_12_23_00_world.sql to 2020_02_28_03_world.sql

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
2020-02-28 19:21:50 +01:00
NoName 40542f01e3 Core/Movement: Implement MoveSplineFlag::Enter_Cycle (#24049)
by xvwyh
#22448
2020-02-28 19:03:52 +01:00
jackpoz 3b0a89a2ea Tools/MMaps: Fix strange paths in Blackfathom Deeps
Increase the agent height by x2 to reduce the chance of having underground mmap layers wrongly picked by recast.
2020-02-26 21:06:39 +01:00
daMaex cbe765df7a Core: Build on ARM64 - Raspberry Pi (preferable 4) (#23885)
* build again on aarch64

* include mm_malloc header instead of defining self
2020-02-23 22:37:02 +01:00
jackpoz 7a57029d8f Core/Movement: Add support to cyclic splines to GenericMovementGenerator
GenericMovementGenerator sets the _duration to the return value of spline.Launch(). For cyclic splines, this is the duration of 1 single cycle, while the spline itself never ends.
To support this edge case in GenericMovementGenerator we just never update the _duration timer for cyclic splines.
2020-02-23 22:07:40 +01:00
ForesterDev 69231581e4 Core/Server: correct timestamp format for shutdown/restart notification broadcasts (#24181)
* Core/SmartScripts: implement SMART_ACTION_OVERRIDE_LIGHT and SMART_ACTION_OVERRIDE_WEATHER

* Core/Server: correct timestamp format for shutdown/restart notification broadcasts

* remove unexpected changes

* move enum from Common to Util

* Use enum class instead of enum

* Fix width for seconds 0 to 9
2020-02-22 21:31:37 +01:00
ForesterDev c65ba35269 Core/SmartAI: implement SMART_ACTION_OVERRIDE_LIGHT and SMART_ACTION_OVERRIDE_WEATHER (#24146)
* Core\SmartAI: implement SMART_ACTION_OVERRIDE_LIGHT and SMART_ACTION_OVERRIDE_WEATHER

* Change the invoker of action to any worldobject

* Revert "Change the invoker of action to any worldobject"

This reverts commit 2e15f7258553b7057c3e8f67c54efc77fb6d75b8.

* Add dbc-validations for new actions

* Use GetBaseObject() instead of Creature* for new actions. Add debug-logging
2020-02-22 21:11:14 +01:00
Sorikoff 0f265b4af6 Scripts/Ebon Hold: Massacre At Light's Point (#24106)
* Scripts/Ebon Hold: Massacre At Light's Point

* Update 9999_99_99_99_world.sql

* Final stuff

* Rename 9999_99_99_99_world.sql to 2020_02_22_00_world.sql

Co-authored-by: Eridium <6587064+Killyana@users.noreply.github.com>
Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
2020-02-22 21:05:50 +01:00
Killyana 828987a46a Core/GameObject: Fix wrong calculation of the spellfous distance
Closes #24177
2020-02-19 17:44:45 +01:00
Ovahlord 6f31784979 Core/SAI: SMART_ACTION_PAUSE_MOVEMENT
Closes #22346
2020-02-18 22:52:35 +01:00
Killyana 3181a1c87f Boss/Script: Add Crazed Apothecary to Apothecary Hummel encounter
Closes #19520
Closes #24176
2020-02-18 20:22:02 +01:00
dr-j 92ac6ca0fe DB/Quest: Reconnaissance Flight
Closes #23792
2020-02-17 00:25:23 +01:00
Sorikoff 5f20715e2f [WIP] Core/AI: Pets musn't attack civilian NPC in aggressive mode (#24121)
* Core/AI: Pets musn't attack civilian NPC in aggressive mode

* Move decision to ignore civilians to PetAI, keeping the check in GridNotifiers

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
2020-02-16 16:00:54 +01:00
ratkosrb 6176ce92ea Core/Creature: Use proper name for wander distance. (#24133)
* Use proper name for wander distance.

* Rename db field.

* Fix query.

* Remove underscore from chat command.

* Rename the handler too.

* Update chat command description.

* Fix remaining issues.

* Rename 2020_99_99_99_world_335.sql to 2020_02_16_01_world.sql

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
2020-02-16 13:36:56 +01:00
schell244 baa87c43ba Scripts/World: Hourly Bell sound, further improvements (#24147)
* Improvements for hourly bell sound

* TC codestyle

* added missing breaks and improve codestyle
2020-02-16 13:27:36 +01:00
Ujp8LfXBJ6wCPR b089ed3b75 Remove dependency on undefined behaviour (#24159)
See https://stackoverflow.com/a/4328396
Previous method works but is technically illegal.
2020-02-16 13:22:36 +01:00
Killyana 854419becb Boss/Script: Fix an error in a previous commit
Closes #24160
Closes #24161
2020-02-16 00:50:36 +01:00
Giacomo Pozzoni 127455ed4c Scripts/Misc: Attempt to fix the build 2020-02-15 22:13:46 +01:00
Rushor f0bf447cd1 Scripts/Gameobject: Journal of Jandice Barov- Convert script to SAI. (#24157)
* Scripts/Gameobject: Journal of Jandice Barov- Convert script to SAI. (Thanks to Sunwell)

* Scripts/Gameobject: Journal of Jandice Barov - Update script and move go spawn to bossscript

* Update boss_jandice_barov.cpp

Co-authored-by: Eridium <6587064+Killyana@users.noreply.github.com>
2020-02-15 20:18:58 +01:00
Rushor 596b2d1ed7 Scripts/Gameobject: Remove deprecated script for Cat Figurine (#24150)
Scripts/Gameobject: Remove deprecated script for Cat Figurine
2020-02-14 23:28:14 +01:00
Shauren 89d8180916 Core/Guilds: Don't rely on implicit guid->uint64 conversion for member lookup 2020-02-14 17:37:22 +01:00
Ujp8LfXBJ6wCPR 9264e5b6f0 Core/Misc: Remove redundant null pointer checks before delete (#24140)
* Identified by clang-tidy readability-delete-null-pointer
2020-02-14 12:45:34 +01:00
Ujp8LfXBJ6wCPR b92e4af460 Core/Misc: Remove redundant copy constructor for Position and WorldLocation (#24151)
* Default compiler generated ones do the same
2020-02-14 10:21:51 +01:00
Rushor a67dd6ab60 Scripts/Kalimdor: Move script of Hand of Iruxos Crystal to database. (#24141)
* Scripts/Kalimdor: Move script of Hand of Iruxos Crystal to database.

* Scripts/Kalimdor: Hand of Iruxos Crystal - Add despawn for gameobject.

* Scripts/Kalimdor: Hand of Iruxos Crystal - Add despawn for gameobject.

* Remove unneeded commentline

* Rename 9999_99_99_99_world.sql to 2020_02_11_00_world.sql

Co-authored-by: Aokromes <Aokromes@users.noreply.github.com>
2020-02-11 18:16:11 +01:00
Killyana 7450be4cfd DB/Text: Fix and remove some npc_text 2020-02-10 22:33:38 +01:00