Commit Graph

81 Commits

Author SHA1 Message Date
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
1b7d3708a6 fix(Core/Loot): (#7452)
- Players that did not participate in killing dungeon boss are not eligible to get loot.
- Players that are too far away from the looted object are not eligible to get loot.
- Players that released spirit and were outside the dungeon when the loot has been released are eligible to get loot.
- Players that have pending bind are not eligible to get loot.
- Properly get loot recipient for some chests in dungeons.
- All above fixes should work in any loot mode (group loot, master loot, etc.)
- Closes #2104.
2021-08-24 23:48:22 +02:00
UltraNix
3487973c0e fix(Core/Professions): properly unlearn skill dependent spells (#7290)
- Closes #7165
2021-08-13 17:47:16 +02:00
UltraNix
d3d6d0be12 fix(Core/Spells): always select correct item on weapon skill update (#7135)
- Closes #6158
2021-08-07 14:17:14 +02:00
UltraNix
e37dba8df6 fix(Core/Spells): Far Sight auras are supposed to extend view distance and allows seeing objects from further distance (#7068)
- Closes #5793.
2021-07-26 10:23:08 +02:00
Francesco Borzì
19869e65ff refactor(Core/Player): extract methods based on existing categories (#6838) 2021-07-10 12:49:33 +02:00
Francesco Borzì
439a9403ac fix: forgot to push addition to previous commit (#6836) 2021-07-08 23:38:25 +02:00
Francesco Borzì
dcb66138bf refactor(Core/Player): extract KillRewarder, TradeData and PlayerTaxi (#6804) 2021-07-08 23:34:22 +02:00
UltraNix
a9b2ddba7a fix(Core/Mail): cleanup pending auction sale mail (#6022) 2021-06-23 12:46:48 +02:00
Kargatum
9ac6fddcae feat(Core/Database): port TrinityCore database API (#5611) 2021-06-22 06:21:07 +02:00
Kitzunu
1be561e03b fix(Core/Player): Use SkillLineAbility.dbc to determine player initia… (#6015)
* fix(Core/Player): Use SkillLineAbility.dbc to determine player initial spells - skill assignment done in a new table `playercreateinfo_skills`

* Cherry-pick 2a3546ca36

* Cherry-Pick d28b66bca8

* Cherry-Pick 193408f335

- Closes https://github.com/azerothcore/azerothcore-wotlk/issues/1659
- Closes https://github.com/azerothcore/azerothcore-wotlk/issues/6036
- Closes https://github.com/chromiecraft/chromiecraft/issues/693

Co-Authored-By: Shauren shauren.trinity@gmail.com
Co-Authored-By: Rothend 67004168+Rothend@users.noreply.github.com
Co-Authored-By: claudiodfc claudio.daniel.f.c@gmail.com
2021-06-21 21:23:18 +02:00
UltraNix
107658ebbc fix(Core/Spells): triggering potion cooldowns (from TC) (#6016) 2021-05-30 11:53:16 +02:00
Axel Cocat
a355b4d27c fix(Core): fix instance portal not resurrecting when corpse is not spawned (#6106) 2021-05-29 15:37:34 +02:00
Kitzunu
f1b43a8976 fix(Core/Player): Weapon skill gain (#5961) 2021-05-28 00:49:24 +02:00
Axel Cocat
127a3dd65d fix(Core): Reputation gain rate when nearby party members are dead (#5605) 2021-05-08 15:43:17 -06: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
Chaouki Dhib
2d21bfc915 feat(Core/Movement): time synchronisation to better interpret client timestamps (#5300) 2021-04-23 15:53:09 +02:00
Kargatum
b2861be1cd feat(Core/Threading): replace ace threading (#4821) 2021-04-16 19:45:29 +02:00
KiK0
92668be4f3 feat(Core/Player): detect Spanish clients (#5186) 2021-04-13 17:57:34 +02:00
Kargatum
2b3d46bd4f feat(Core/Hooks): added collection of hooks to extends AC (#3047)
This collection of hooks comes from the Maelstrom project. It allows to release modules such as :
- 3v3-soloqueue
- 1v1 arena
- pvestats

and many others
2021-04-13 13:26:39 +02:00
UltraNix
3de7d14620 fix(Core/Spells): Spells learned from skills should be visibile immediately in the spellbook and chat. (#5106) 2021-04-08 23:09:17 -04:00
AbraKabastard
a2c034dc48 fix(Core/Player): Allow sharing completed in log quests. Send push to party on failed reason seasonal (#4880) 2021-04-08 23:07:55 +02:00
UltraNix
54e371e0e7 feat(Core/PvP): Set 30 sec timer before turn off FFA PvP flag. (#5090) 2021-04-08 13:00:45 +02:00
Kargatum
c053e111d3 fix(Scripts/Commands): correct reloading creature_template table (#5020) 2021-03-30 09:55:05 +07:00
Petric
f11d3a5402 feat(CORE/Instance): access_requirement db refactor and improved output (#3696) 2021-03-29 10:24:52 -06:00
Kitzunu
fb5d2fa2e5 fix(Core/Spell): Make use of SPELL_ATTR7_IGNORE_COLD_WEATHER_FLYING (#4933) 2021-03-24 18:19:57 -06:00
Cláudio Costa
990dbfe297 fix(Core): Removing auras from spells that trigger taxi (#4820) 2021-03-18 16:51:36 +01:00
Francesco Borzì
f6a17164be fix(Core/License): issue with old files license (#4762) 2021-03-17 09:46:01 -06:00
Kitzunu
dbc0ff6554 refactor(Core): sort #includes alphabetically (#4579) 2021-02-24 22:34:42 +01:00
Kitzunu
05a8217270 refactor(Core/Player): add helper method for PLAYER_FLAGS_DEVELOPER (#4395)
Co-Authored-By: ForesterDev <11771800+ForesterDev@users.noreply.github.com>
2021-02-08 16:55:04 -05: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
Silker
0a8a7ef149 fix(Core): Activate creatures and objects during opening cinematics (#4045)
Co-authored-by: Si1ker <55638679+Sombranator@users.noreply.github.com>
Co-authored-by: Stefano Borzì <stefanoborzi32@gmail.com>
2021-01-22 01:03:30 +01:00
Kitzunu
43f59c4c82 feat(Core/Player): implement GetFreeInventorySpace() (#4297) 2021-01-16 17:33:30 +01:00
Stefano Borzì
df600f9946 fix(Core/CreatureAI): revert NPC repositioning and path system (temporarily) (#4274) 2021-01-14 19:17:34 +01:00
Kitzunu
da4edd547d chore(core): remove malformed whitespaces (#4244)
* from https://www.codefactor.io/repository/github/azerothcore/azerothcore-wotlk/issues?category=Style&groupId=838&lang=5&page=75
2021-01-10 14:27:55 +01:00
Stefano Borzì
b2761626fe feat(Core/CreatureAI): improve npc position during the combat (#3369)
+ tangent equation to find correct angle and distance when moving

+ implemented proper backward

* Improved performance + random angle margin

* chore: add tollerance calculation in instance

* improved LOS checks with movements

* implemented collisions using raycast (imported by TC)

+ improved collision detection for CanReachPositionAndGetCoords

+ improved collision check

+ set correct flags for the backward movement

+ first implementation of slope angle (to improve)

Co-authored-by: Yehonal <yehonal.azeroth@gmail.com>
2021-01-04 20:23:08 +01:00
IntelligentQuantum
d6abb82055 refactor(Core): Remove player title defines (#2781) 2020-12-23 13:13:37 -06:00
zxdhe121
ab8967c638 feat(Core): Another way to get talent points (#3773) 2020-12-20 19:26:00 -06:00
Meltie2013
af53598fa2 fix(Core/Game): Rest & Inn Improvements (#3780) 2020-12-11 08:23:09 -06:00
Francesco Borzì
c5a35efd7b refactor(Core): apply clang-tidy modernize-use-default-member-init (#3827) 2020-12-07 13:34:06 -06:00
Francesco Borzì
1cf39b3d22 refactor(Core): apply clang-tidy modernize-use-equals-default (#3834) 2020-12-07 19:21:55 +01:00
Francesco Borzì
0b8ec1f6ee refactor(Core): apply clang-tidy modernize-loop-convert (#3822) 2020-12-07 19:04:19 +01:00
Francesco Borzì
a7faf4a16f refactor(Core): apply clang-tidy modernize-redundant-void-arg (#3825) 2020-12-06 21:38:52 +01:00
Francesco Borzì
cba126fa84 refactor(Core): apply clang-tidy modernize-use-nullptr (#3819) 2020-12-06 20:55:11 +01:00
Francesco Borzì
161302252e refactor(Core): apply clang-tidy modernize-use-nodiscard (#3835) 2020-12-06 19:39:48 +01:00
Francesco Borzì
d4a58700d4 refactor(Core): apply clang-tidy modernize-use-override (#3817) 2020-12-06 18:04:55 +01:00
Petric
5984e82f22 feat(Core/Script): Hooks for custom arena teams/types (#3508) 2020-11-29 15:04:38 -06:00
Kitzunu
2788d495f9 fix(Core/Conditions): Implement CONDITION_DAILY_QUEST_DONE (#3050) 2020-11-14 06:08:00 +01:00
Petric
b3a967db60 fix(Core): fixed crash happening when clearing old mail (#3604) 2020-10-24 10:42:35 +02:00