Commit graph

64 commits

Author SHA1 Message Date
Grimdhex
643362d697
refactor(Core/Object): adds consistency in the use of type object check (#19671) 2024-08-25 09:57:37 -03:00
Saqra1
087acc58bf
fix(Core/PetHandler): Allow PetAI to handle flags (#19446)
When a pet ability was cast, PetHandler reset all CharmInfo flags before
calling PetAI methods, setting the attack flag to true every time.
This commands the pet to go and chase the target which is not correct
when the state is COMMAND_STAY.

PetAI already handles the scenario, it just wasn't getting the actual
pet attack state.
2024-08-19 13:15:39 -03:00
Grimdhex
7457aef78d
refactor(Core/Entities): Cleanup Unit header file (#19622)
* move several enum definitions in a new files

* move more things

* remove the include comment

* move the related code to CharmInfo in this own file

*original idea of Ovahlord

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

* fix clang build errors and few blank lines

* missing forward declaration

* new tentative to fix gcc/clang build

* add several include could be necessary for gcc/clang compilation

* .

* revert some include since the last AC update

* fix some loop inconsistencies

* align all enums in UnitDefine.h

---------

Co-authored-by: Ovahlord <18347559+Ovahlord@users.noreply.github.com>
2024-08-15 05:12:44 -03:00
Kitzunu
0a8175ef03
refactor(Core/ObjectMgr): Handle Profanity & Reserved Names in load (#19259)
* refactor(Core/ObjectMgr): Handle Profanity & Reserved Names in load

* closes https://github.com/azerothcore/azerothcore-wotlk/issues/18556

* Update ObjectMgr.cpp

* Update ObjectMgr.cpp

* I swear I am not drunk

* We already check all of these

* fix build

* Forgot we dont send the responsecode in senderrormessage

* last commit I swear
2024-07-03 00:23:32 +02:00
Jelle Meeus
a6425c3630
fix(Core/PetHandler): when dismissing a charmed unit owned by another unit; stop the charm instead of despawning (#18989)
2cdea49d81
2024-06-03 00:42:06 -03:00
Kitzunu
f757e93da5
refactor(Core/Misc): Make DeathState enum class (#17607) 2023-10-28 10:54:03 +02:00
Anton Popovichenko
f6b77f9d64
fix(Core/Pets): Fix crash when pet tries to attack deleted object (#17034)
This situation occurs when, during a fight, a pet receives a command to apply a positive spell to an ally and then resume attacking its previous target.
2023-08-19 22:27:51 +02:00
天鹿
ab7c12fe41
chore(core): Cleanup code p2 (#16041)
* Update AchievementMgr.cpp

* Update M2Stores.cpp

* Update LFGHandler.cpp

* Update PetHandler.cpp

* Update WaypointMovementGenerator.cpp

* Update ScriptMgr.cpp

* Update SpellAuras.cpp

* Update Spell.cpp

* Update SecretMgr.cpp

* Update SpellScript.cpp

* Update SecretMgr.cpp

* Update Spell.cpp

* Update SpellAuras.cpp

* Add files via upload

* Update PetHandler.cpp

* Update PetHandler.cpp

* Update CalendarMgr.cpp

* Update LFG.h

* Update WaypointMovementGenerator.cpp

* Update MapScripts.cpp

* Update Unit.cpp

* Update SmartScript.cpp
2023-05-13 15:00:29 -03:00
天鹿
d75bcf0f67
chore(core): Cleanup code (#16012)
* Update SmartScript.cpp

* Update M2Stores.cpp

* Update PetHandler.cpp

* Update WaypointMovementGenerator.cpp

* Update WorldSession.cpp

* Update spell_item.cpp

* Update LoginDatabase.cpp
2023-04-19 21:34:48 -03:00
M'Dic
8aa2a2ac0f
chore (core): Clean up (#15977)
* chore (core): Clean up

* Update SmartScript.cpp

* more clean up

* Update boss_xt002.cpp
2023-04-16 21:04:56 -04:00
Kitzunu
9eb4b3a336
feat(Core/Character): Implement profanity_name (#15156) 2023-03-04 17:43:14 -03:00
Kitzunu
f039836a2f
chore(Core/Misc): Change all TODO to doxygen comment (#14966) 2023-02-12 10:05:34 -03:00
IntelligentQuantum
b275499de4
refactor(Core/Packet): Pet (#9473)
Co-authored-by: temperrr <temperrr@users.noreply.github.com>
2022-03-01 13:50:50 +01:00
Kargatum
de13bf426e
feat(Core/DBLayer): replace char const* to std::string_view (#10211)
* feat(Core/DBLayer): replace `char const*` to `std::string_view`

* CString

* 1

* chore(Core/Misc): code cleanup

* cl

* db fix

* fmt style sql

* to fmt

* py

* del old

* 1

* 2

* 3

* 1

* 1
2022-02-05 00:37:11 +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ì
abc56842c4
refactor(Core): remove unused imports (#10296) 2022-01-22 11:21:35 +01:00
UltraNix
19b68ffb57
fix(Core/Pets): Manual using pet spell should not reset attack command. (#9635)
Fixes #9632
2022-01-16 14:44:21 -05:00
Kargatum
c1ebda66ba
fix(Core/Pets): fixed crash happening when current pet is forcibly removed (#10025) 2022-01-10 09:19:43 -03:00
Kargatum
e12494d993
feat(Core/Pets): Management refactoring (#9712)
* feat(Core/Pets): rework managment

* 1

* 2

* 3

* 4

* 5

* cs pet

* check before ressurect

* pet DECLINED_NAMES

* display

- https://github.com/azerothcore/azerothcore-wotlk/issues/9297

* ArenaSpectator

* 1
2021-12-30 18:45:13 -03:00
Kitzunu
89a1b5c9f4
fix(Core/Spells): Implement SPELL_AURA_PERIODIC_TRIGGER_SPELL_FROM_CL… (#9615)
* fix(Core/Spells): Implement SPELL_AURA_PERIODIC_TRIGGER_SPELL_FROM_CLIENT

* cherry-pick commit (b3b7f0761d)

* fix build
2021-12-16 20:29:33 -03:00
UltraNix
d87d0a2ae8
fix(Core/Pets): Improved Revive Pet should affect dead despawned pet. (#9625)
* fix(Core/Pets): Improved Revive Pet should affect dead despawned pet.

Fixes #9589
2021-12-15 05:32:16 -03:00
UltraNix
4e70e60427
fix(Core/Spells): Properly handle pet spell auras with infinity cooldown. (#9576)
Fixes #9339
2021-12-12 11:43:22 -03:00
UltraNix
4e93671b3c
fix(Core/Pets): Properly cast spells on friendly target if not in LoS… (#9570)
* fix(Core/Pets): Properly cast spells on friendly target if not in LoS or out of range.

Fixes #7790
2021-12-12 09:25:10 -03:00
patou01
801a20fce2
refactor(Core): Clean-up after FD (#8586) 2021-11-28 03:04:14 -03:00
Kargatum
f62664c987
refactor(Core/Misc): headers cleanup (#9259) 2021-11-22 17:24:39 +07:00
Malcrom
f106de8788
refactor(Core): update getFaction to GetFaction and setFaction to SetFaction (#8708) 2021-11-01 17:04:32 +01:00
UltraNix
bc451d2eca
fix(Core/Pets): Disable /petfollow command while using vehicle. (#8304)
Fixes #8156
2021-10-11 16:19:56 -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
UltraNix
7406a01ac3
fix(Core/Spells): several improvements to cooldowns (#7559)
- Reworked spell category cooldowns.
- Implemented category cooldowns for pets.
- Properly shows pet spell cooldowns in player's UI.
- Corrected pet spell cooldowns with infinity duration.
- Do not add/remove infinity spell cooldown on aura apply/remove if casted by item.
- Closes #5263
2021-09-13 20:57:48 +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
435761b284
fix(Core/Pets): do not summon pet if owner is being teleported (#7275)
- Closes #7159
2021-08-13 12:02:21 +02:00
UltraNix
cf104e01c6
fix(Core/Pets): spells disappearing while pet being offline (#7046)
- Closes #5320
2021-07-23 11:54:01 +02:00
UltraNix
e450fd6f68
fix(Core/Units): charmed creatures do not need to check hostility to attacked creature (#7043)
Properly remove channelled charm auras on demand.
- Closes #5447
2021-07-23 09:31:04 +02:00
UltraNix
0f4a942825
fix(Core/PetHandler): prevent crash (#6805) 2021-07-10 00:21:26 +02:00
Kitzunu
5d66e57181
chore(Core/Spell): SpellId's should always be uint32 (#6466)
* chore(Core/Spell): SpellId's should always be uint32

* Update spell_item.cpp
2021-06-25 02:11:36 +02:00
Kargatum
9ac6fddcae
feat(Core/Database): port TrinityCore database API (#5611) 2021-06-22 06:21:07 +02:00
Kargatum
5787d00d54
chore(Core/Logging): replace most server loggers (#5726)
* chore(Core/Logging): replace most server loggers

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2021-06-21 03:07:12 +02:00
Francesco Borzì
466cdb68d6
refactor(Core): code cleanup (part 2) (#6374) 2021-06-16 20:40:42 +02:00
UltraNix
8dd58ebb5b
fix(Core): Memleaks fixes - Part II. (#5760) 2021-05-14 10:15:45 +02:00
Kargatum
db7d754f3f
feat(Core/Common): delete lib game-interface inherited (#5333)
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2021-05-07 02:16:44 +07:00
Kitzunu
5954d9c739
refactor(Core/Misc): Define & Rename Attributes (#5311) 2021-04-28 14:55:24 +02:00
UltraNix
f4c226423d
feat(Core/Misc): implement ObjectGuid class (port from TC) (#4885) 2021-04-25 22:18:03 +02:00
Kargatum
4af4cbd3d9
feat(Core/Logging): rework logging (#4692)
* feat(Core/Logging): rework logging

* correct level for sql.sql

* del unused config options

* Correct build

* correct after merge

* whitespace

20:29:37 1. 'Player.cpp'. Replace (1)
20:29:37 2. 'ObjectMgr.cpp'. Replace (3)

* 1

* correct logging

* correct affter merge

* 1

* 2

* LOG_LEVEL_WARN

* #include "AppenderDB.h"

* 3

* 4

* 5

* 1. 'WorldSocket.cpp'. Replace (1)

* 6

* 1
2021-04-17 11:20:07 +02:00
Kitzunu
33aeadf8b6
refactor(Core/Misc): Define & Rename Attributes and flags (#5193) 2021-04-15 14:16:39 +02:00
Francesco Borzì
f6a17164be
fix(Core/License): issue with old files license (#4762) 2021-03-17 09:46:01 -06:00
Kitzunu
28f1dc5c0c
refactor(Core): replace NULL with nullptr (#4593) 2021-03-02 01:34:20 +01:00
Kitzunu
dbc0ff6554
refactor(Core): sort #includes alphabetically (#4579) 2021-02-24 22:34:42 +01:00
Yehonal
c8f43d8584
feat(Core/Movement): Improved pathfinding, collisions and movements (#4220)
Npc positioning
Implemented slope check to avoid unwanted climbing for some kind of movements (backwards, repositioning etc.)
Implemented backwards movement
Re-implemented circle repositioning algorithm (smartest than retail, but with the same feeling)
Fixed random position of summoned minions
Improved pet following movement. Also, they attack NPC from behind now. Thanks to @Footman

Swimming creatures
Fixed max_z coordinate for swimming creatures. Now only part of their body is allowed to be out of the water level
Fixed pathfinder for swimming creatures creating shortcuts for specific segments, now they swim underwater to reach the seashore instead of flying above the water level.
Creatures with water InhabitType but no swimming flag now, when not in combat, will walk on water depth instead of swimming. Thanks @jackpoz for the original code
UNIT_FLAG_SWIMMING in UpdateEnvironmentIfNeeded to show the swimming animation correctly when underwater
Implemented HasEnoughWater check to avoid swimming creatures to go where the water level is too low but also to properly enable swimming animation only when a creature has enough water to swim.

Walking creatures
Extended the DetourNavMeshQuery adding area cost based on walkability (slope angle + source height) to find better paths at runtime instead of completely remove them from mmaps
improve Z height in certain conditions (see #4205, #4203, #4247 )

Flying creatures
Rewriting of the hover system
Removed hacks and improved the UpdateEnvironmentIfNeeded. Now creatures can properly switch from flying to walk etc.
Spells
LOS on spell effect must be calculated on CollisionHeight and HitSpherePoint instead of position coords.
Improved position for object/creature spawned via spells
Improved checks for Fleeing movements (fear spells)

Other improvements
Implemented method to calculate the CollisionWidth from dbc (used by repositioning algorithm etc.)
Improved raycast and collision checks

Co-authored-by: Footman <p.alexej@freenet.de>
Co-authored-by: Helias <stefanoborzi32@gmail.com>
Co-authored-by: Francesco Borzì <borzifrancesco@gmail.com>
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2021-02-01 01:34:27 +01:00
Kargatum
ea93a5c1a1
feat(CI/Codestyle): added codestyle check (#3668) 2021-01-09 11:59:50 +01:00