Commit Graph

102 Commits

Author SHA1 Message Date
UltraNix
7f7a2f5a92 fix(Core/Creatures): Critters should start fleeing upon entering comb… (#14253) 2023-01-28 11:01:43 +01:00
UltraNix
7d65250414 fix(Core): Crashfix. (#14667) 2023-01-28 10:58:58 +01:00
Mickaël Mauger
24fa3ba828 fix(MMAP/core/PathGenerator): Try to fix more water creatures (#13705)
Co-authored-by: jackpoz <giacomopoz@gmail.com>
2023-01-02 22:26:12 +01:00
UltraNix
0f4e8f07ff fix(Core/Movement): Falling/Jumping/Knockback effects should not make… (#14044)
fix(Core/Movement): Falling/Jumping/Knockback effects should not make mobs to evade.
2022-12-11 03:55:20 +01:00
Skjalf
19fa22ba92 Revert "refactor(Core/Movement): Naming convention" (#14100)
Revert "refactor(Core/Movement): Naming convention (#13989)"

This reverts commit d2f440c3e8.
2022-12-11 03:53:09 +01:00
Maelthyr
d2f440c3e8 refactor(Core/Movement): Naming convention (#13989)
update codestyle

Co-authored-by: Maelthyrr <lynethris@protonmail.ch>
2022-12-02 05:52:01 -03:00
UltraNix
5338117e0d fix(Core/Movement): Fixed mobs evading attacks in case of incompleted… (#13519)
fix(Core/Movement): Fixed mobs evading attacks in case of incompleted movement paths.

Fixes #12339
Fixes #13156
2022-10-27 05:23:05 -03:00
UltraNix
1c6eab5856 fix(Core): Crashfix. (#12643) 2022-08-07 18:22:12 -03:00
UltraNix
572a680c16 fix(Core/Movement): Improvements to taxi flight movement generator: (#12347)
Changed multi-segment taxi paths to fly nearby flight masters along the way, not directly through them.
Taxi cost on multi-segment paths is now charged per segment when it is started.
Properly send taxi node status on login, as well as if the taxi master is out of range.
Apply reputation discount to all points in multi-segment paths.
Properly clean up list of taxi destinations upon arrival at final node.
Teleport players to the destination taxi node location instead of their current ground position.
Don't start a spline with just 1 point in FlightPathMovementGenerator
Source: TrinityCore.
2022-08-01 23:21:11 -03:00
UltraNix
801e68b1dd fix(Core/Creatures): Added new AI function OnTeleportUnreacheablePlayer to teleport all unreachable players. (#12193)
* fix(Core/Creatures): Implemented CREATURE_FLAG_EXTRA_TELEPORT_UNREACHABLE_PLAYERS.

Fixed #11750

* Update.

* Update.

* Update.
2022-07-24 13:10:41 -03:00
UltraNix
1066bc76b1 fix(Core/Spells): Upon using charge warrior should start auto attacki… (#12408)
...ng the targeted enemy once you reach them.
2022-07-19 18:02:45 -03:00
IntelligentQuantum
cc52712ac1 refactor(Core/AI): factory functions cleanup (#11779) 2022-07-15 16:11:49 +02:00
UltraNix
113bdacb5f fix(Core/Tools): Revert "Handle different slopes in mmaps and Add so… (#12111)
...me more input parameters to improve"

This reverts commit b544eb420e.
Fixes #12079
2022-06-21 16:07:53 -03:00
UltraNix
228b2f6f6b fix(Core/Movement): Improved fleeing movement generator. (#11896)
* fix(Core/Movement): Improved fleeing movement generator.

Fixes #11850

* Update.
2022-06-06 09:19:27 -03:00
Kitzunu
90fccacad5 feat(Core/Movement): Allow waypoints to use 0 as valid facing value (#11681)
* feat(Core/Movement): Allow waypoints to use 0 as valid facing value

* cherry-pick commit (4747515872)

Co-Authored-By: Ovah <18347559+Ovahlord@users.noreply.github.com>

* Update SmartScriptMgr.h

* a

* Update SmartAI.cpp

* Update SmartAI.cpp

* Update SmartAI.cpp

* typo

* Update SmartAI.cpp

* Update SmartAI.cpp

* Compile fix

* compile #2

* Update WaypointMgr.h

* Update SmartScriptMgr.h

* compile fix again

Co-authored-by: Ovah <18347559+Ovahlord@users.noreply.github.com>
Co-authored-by: MDIC <joshua.lee.betts@gmail.com>
2022-05-21 23:42:41 +02:00
UltraNix
933bf7b633 refactor(Core/Movement): Rewritten fleeing movement generator. Source: TrinityCore. (#11586)
* fix(Core/Movement: Rewritten fleeing movement generator.

Fixes #5980
Fixes #9314

* Update.
2022-05-08 23:35:40 +02:00
UltraNix
43db8a6d13 fix(Core/Movement): Improved pet's follow movement. (#11585)
Fixes #9254
2022-05-01 07:01:10 +02:00
IntelligentQuantum
59e45c251e fix(Core/Spell): Improvements to path generation for Charge mechanic (#11534)
It has its flaws but it can be improved and it's actually a lot better than what we currently have.
2022-04-27 20:18:44 -03:00
IntelligentQuantum
b544eb420e feat(Core/Mmaps): Handle different slopes in mmaps and Add some more input parameters to improve (#10974) 2022-04-24 16:44:50 -03:00
UltraNix
47790c9714 fix(Core/Vmaps): Stop M2s from occluding for spellcast LoS. Original autho… (#11341)
* Core/Vmaps: Stop M2s from occluding for spellcast LoS. Original authors: @Shauren & @HelloKitty

Fixes #11293

* buildfix.

Co-Authored-By: HelloKitty <5829095+HelloKitty@users.noreply.github.com>
2022-04-10 09:24:35 -03:00
Kitzunu
b709a22ddc feat(Core/Players): PlayerFlag helpers (#11294)
* feat(Core/Players): PlayerFlag helpers

* Update Player.h

* fix build
2022-04-05 18:53:50 +02:00
Kitzunu
856aed6fc6 feat(Core/Unit): New helpers for UnitFlag and UnitFlag2 (#11227) 2022-03-30 07:59:42 -03:00
Skjalf
7377c96cc8 fix(Scripts/BlackwingLair): Razorgore improvements (#10971)
- Rewrite reset events
- Use proper healing spell on phase transition
- Now uses abilities during phase 1
- Phase transition scripted - mobs now run away
2022-03-23 15:42:34 -03:00
UltraNix
a980bd38a9 fix(Core/Spells): auto attack only selected target when charge is over (#10541)
Fixes #10353
2022-02-24 15:54:43 +01:00
Kitzunu
9d166722c4 refactor(Core/Creature): More functions capitalized (#10012)
* GetLeader

* IsFormed

* build
2022-02-10 18:40:00 +01:00
Kitzunu
cf65cd6baf refactor(Core/Misc): sqrt/log/exp() to std::sqrt/log/exp() (#9792) 2022-02-09 11:59:30 +01:00
WORISX
6a08c9cbdb fix(Core/Pathfinding): Remove unnecesary LiquidData Z check (#10251)
* Core/Pathfinding: Remove unnecesary LiquidData Z check

*Remove an unnecessary LiquidData status check for Z correcing points count added probably for SunwellCore before the Movement Rewritte done last year , this fixes global pathfinding problems on all Movement Generators including all pathfinding problems that make creatures and players go through textures.

* Update PathGenerator.cpp

Typo on last commit
2022-01-29 02:38:34 +01:00
Kargatum
5969df4e30 refactor(Core/Logging): switch to fmt style for LOG_ (#10366)
* feat(Core/Common): add support fmt style for ASSERT and ABORT

* correct CheckCompactArrayMaskOverflow

* 1

* Update src/server/game/Spells/Spell.cpp

* rework logging

* add fmt replace logs

* logging

* FMT_LOG_

* settings

* fix startup

* 1

* 2

* 3

* 4

* 5

* fmt::print

* to fmt
2022-01-27 16:44:41 +01:00
Kargatum
8b7df23f06 feat(Core/Time): Implement saparated manager for game time (#8630) 2022-01-24 17:55:00 +07:00
Francesco Borzì
9dc88def35 refactor(Core): apply clang-tidy modernize-* (#9975)
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2022-01-17 14:35:07 +01:00
UltraNix
d3956f3142 fix(Core/Spells): Charging unit should always reach its target even if stunned/rooted. (#10192)
Fixes #9454
2022-01-16 14:58:34 -03:00
acidmanifesto
b42deca6d1 Fix (Core): add missing default,break. (#10114)
Added missing default break in case switch.
2022-01-10 18:16:28 -05:00
Kitzunu
cb7e355291 refactor(Core/Misc): sin() to std::sin() (#9795) 2022-01-06 19:29:40 +01:00
acidmanifesto
2d4e17fd16 refactor(Core/Creature): Remove Inhabit Type (#9272)
This is in reference to issue: https://github.com/azerothcore/azerothcore-wotlk/issues/4361
This is comprised of a cherry pick and partial tc cherry pick:
592516ae69
dbadb6369c
34cfa69efd
12de860b4a
a22bc236eb
2022-01-06 10:33:22 -03:00
Malcrom
911e8b4d12 feat(Core/Pathing): Add path_id to PathEndReached (#10021) 2022-01-05 09:59:33 -04:00
Malcrom
86f1b87fe6 NewFunction(Core/Pathing) Path End Reached (#10017) 2022-01-05 00:22:51 -04:00
UltraNix
d90e368166 Fix (Core/Movement): During escort movement, do not stop moving if unit is casting channeled spells. (#9815)
Fixes #9286
2022-01-03 15:06:41 -05:00
Kitzunu
913e65f97f refactor(Core/Misc): fabs() to std::fabs() (#9790)
- prefer std functions over C functions
2021-12-31 20:41:00 -03:00
Kitzunu
ac99eb48e1 refactor(Core/Misc): abs() to std::abs() (#9789) 2021-12-31 19:29:39 -03:00
UltraNix
6a88b48f98 fix(Core/Movement): Always stop moving on new chase movement generator init. (#9622)
Fixes #9421
2021-12-24 05:00:11 -03:00
Kargatum
f62664c987 refactor(Core/Misc): headers cleanup (#9259) 2021-11-22 17:24:39 +07:00
UltraNix
70fbaefa8e fix(Core/Movement): creatures should not cast while moving (#9141)
- Closes #8843
2021-11-15 14:39:36 +01:00
Kargatum
a650fd495c feat(Core/Metrics): implement real time statistic visualization (#8663) 2021-10-28 14:47:29 +02:00
UltraNix
69243c4e5d fix(Core/Movement): Improved player's pet follow movement. (#8217)
Fixes #8127
2021-10-08 10:13:00 -03:00
Kargatum
52aa0e9966 feat(License): add new headers information about license (#7941)
Co-authored-by: Francesco Borzì <borzifrancesco@gmail.com>
2021-09-30 13:40:52 +07:00
Kitzunu
2f449326e0 refactor(Core): Rename ...Manager to ...Mgr (#6910)
* Rename MapManager.h to MapMgr.h

* Rename BanManager.h to BanMgr.h

* Rename MapManager.cpp to MapMgr.cpp

* Rename BanManager.cpp to BanMgr.cpp

* Rename MapRefManager.h to MapRefMgr.h

* Rename ThreatManager.h to ThreatMgr.h

* Rename GridRefManager.h to GridRefMgr.h

* Rename ThreatManager.cpp to ThreatMgr.cpp

* Rename GroupRefManager.h to GroupRefMgr.h

* Rename HostileRefManager.h to HostileRefMgr.h

* Rename HostileRefManager.cpp to HostileRefMgr.cpp

* Rename MMapManager.h to MMapMgr.h

* Rename FollowerRefManager.h to FollowerRefMgr.h

* Rename VMapManager2.h to VMapMgr2.h

* Rename IVMapManager.h to IVMapMgr.h

* Rename MMapManager.cpp to MMapMgr.cpp

* Rename VMapManager2.cpp to VMapMgr2.cpp

* Rename RefManager.h to RefMgr.h

* Rename WaypointManager.h to WaypointMgr.h

* Rename WaypointManager.cpp to WaypointMgr.cpp

* Rename MPQManager.h to MPQMgr.h

* Rename MPQManager.cpp to MPQMgr.cpp

* Rename IMMAPManager.h to IMMAPMgr.h

* fix build

* Update Main.cpp

* chore(Core/Misc): Remove toxic language

* Revert "chore(Core/Misc): Remove toxic language"

* fix build

* build
2021-09-15 17:50:28 +02:00
Srđan Panić
0ef71e7aa3 fix(Core/pathing): incorrect pathing of caster mobs when their casts fail due to LOS (#7472)
* Fix incorrect pathing of caster mobs when their casts fail due to LOS

The original problem was that the casters, when their casts were blocked
by a los of line of sight, would not run directly towards the player, but
would rather run around within the spell range until a clear line of
sight was found. This made it near impossible to make casters stop their
casts and force them into melee range by using an obstacle.

This fix makes caster mobs run directly into melee until a clear line of
sight is reached whenever a player hides behind an obstacle regardless of
whether the mob is within spell range or not.

* Cleaning up whitespace

* Tidying up
2021-09-05 12:00:39 +02:00
UltraNix
a8c0a2cc89 fix(Core/Movement): (#7008)
- Get zone/area IDs from vmap data in the liquid update
- Add new method Map::getFullVMapDataForPosition to get area info and liquid info in a single vmap lookup
- Adjust GetZoneId/GetAreaId on WorldObject to always return these cached fields.
- Clean up liquid state handling on Unit and Player
- Implemented getting area id from gameobject spawns.
- Removed old core related to getting movement flags dependent on environment.
- Movement flags are now processed more precisely and dynamically.

Original source: TrinityCore.

- Closes #5086
- Updates #2208.
2021-08-25 12:41:20 +02:00
UltraNix
1becd73f09 fix(Core/Movement): Rewritten follow movement generator for pets (#7324)
- Closes #7296
2021-08-24 11:08:50 +02:00
UltraNix
6b5c3ed04f fix(Core/Spells): Always melee attack target when charge is over. (#7316)
* fix(Core/Spells): Always melee attack target when charge is over.

Fixed #7266

* Update src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp
2021-08-17 20:36:30 +02:00