Commit Graph

229 Commits

Author SHA1 Message Date
Yunfan Li
13edac562c Merge branch 'master' into Playerbot 2025-06-01 14:55:09 +08:00
Benjamin Jackson
db18d5b035 refactor(Core): Use database tables for Shaman totems and Druid shapeshift forms. (#22104)
Co-authored-by: DoctorKraft <25483209+doctorkraft@users.noreply.github.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Co-authored-by: ForesterDev <11771800+ForesterDev@users.noreply.github.com>
2025-05-27 14:40:57 +01:00
Yunfan Li
ce9343d916 Merge branch 'master' into Playerbot 2025-05-02 16:50:45 +08:00
Benjamin Jackson
5686f1e87a fix(Core/Creature): Implement respond to call for help faction flag. (#21959) 2025-04-30 02:19:58 +01:00
Yunfan Li
95fc3f0932 Merge branch 'master' into Playerbot 2025-03-29 17:25:52 +08:00
Jelle Meeus
094c15a323 fix(Core/Spells): implement SPELL_ATTR7_TREAT_AS_NPC_AOE (#21787)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2025-03-28 11:18:40 +01:00
Yunfan Li
de3c2b553e Merge branch 'master' into Playerbot 2025-02-04 23:40:06 +08:00
iThorgrim
054018232c feat(Core/Scripting): Add new hook OnUnitSetShapeshiftForm (#21235) 2025-02-04 07:41:29 +01:00
Yunfan Li
e5c67bd47d Merge branch 'master' into Playerbot 2025-01-31 18:29:34 +08:00
Andrew
8f16de2084 feat(Core/Unit): Implement SetEmoteState() and ClearEmoteState() helpers (#21279) 2025-01-27 06:35:12 -03:00
Grimdhex
edf2959a26 feat(Core/Creatures): implement a sparring system (#19824) 2025-01-26 09:40:37 +01:00
Yunfan Li
36ac083814 Merge branch 'master' into Playerbot 2024-12-31 17:18:40 +08:00
Kitzunu
bff594c4f5 feat(Unit/Misc): HasAnyAuras() HasAllAuras() HasAuras() (#21040) 2024-12-26 05:51:54 -03:00
Yunfan Li
7347f64938 Merge branch 'master' into Playerbot 2024-12-13 18:51:37 +08:00
Grimdhex
a4e2b1d743 feat(Core/WorldObjects): implement Heartbeat timers (#20872) 2024-12-13 08:50:45 +01:00
Yunfan Li
889b509313 Merge branch 'master' into Playerbot 2024-12-05 00:08:25 +08:00
Andrew
02cacd2341 feat(Core/Unit): Implement GetCompanionPet() helper (#20819) 2024-12-02 16:34:24 -03:00
Kitzunu
ed008a8780 refactor(Core/Spells): Add helpers for HasAuraType (#20802) 2024-12-01 08:50:59 -03:00
Yunfan Li
abd9b4ebb8 Merge branch 'master' into Playerbot 2024-10-30 21:43:42 +08:00
Grimdhex
261ca4408f refactor(Core/Unit): cleanup header file - part 3 (#20072)
* refactor: cleanup unit header file - part3

* Update Unit.h

* Update Unit.h

* fnish to reorder the header file

* Update Unit.h
2024-10-23 12:54:03 -03:00
Yunfan Li
418afce6d7 Merge branch 'master' into Playerbot 2024-10-10 23:13:20 +08:00
Jelle Meeus
01b86ec7a6 fix(Core/Unit): update death state before handling RemoveAllAurasOnDeath() (#20124)
fix setDeathState

[PATCH] Don't allow units to enter combat upon death
91ebea4a77.patch
Co-authored-by: trickerer <onlysuffering@gmail.com>
2024-10-04 11:01:36 -03:00
Yunfan Li
9ebdbd8459 Merge branch 'master' into Playerbot 2024-09-29 23:22:47 +08:00
Jelle Meeus
8a0604479a fix(Core/Unit): fix Dual Wield for more creatures... (#20047)
* non-weapons should return true

* remove shapeshift check
2024-09-26 07:13:47 -03:00
Jelle Meeus
6e4a9bbb14 fix(Core/Unit): fix Dual Wield for more creatures, CREATURE_FLAG_EXTRA_USE_OFFHAND_ATTACK, creature disarm damage (#20015)
* enable CREATURE_FLAG_EXTRA_USE_OFFHAND_ATTACK

* sql set CREATURE_FLAG_EXTRA_USE_OFFHAND

* use new HasOffHandWeaponForAttack instead of haveOffhandWeapon

no longer requires m_CanDualwield set to use Offhand attack
requires non-disarmed weapon in Offhand OR creature_flag_extra enabled

Co-authored-by: Ovah <dreadkiller@gmx.de>
Co-authored-by: Warlockbugs <warlockbugs@outlook.com>

* Make shapeshift forms which dont override attack speed use weapon damage

Co-authored-by: killerwife <killerwife@gmail.com>

* SetEquipmentSlots turning off damage update when using template default

Co-authored-by: killerwife <killerwife@gmail.com>

* Setup DualWield & Damage On Equipment Updates, implement Set and GetVirtualItem

Co-authored-by: Yatzii <47720837+Yatzii93@users.noreply.github.com>

* creature disarm damage

set disarm to reduce minmax damage by 50% instead of setting to 0

Co-authored-by: Warlockbugs <warlockbugs@outlook.com>

---------

Co-authored-by: Ovah <dreadkiller@gmx.de>
Co-authored-by: Warlockbugs <warlockbugs@outlook.com>
Co-authored-by: killerwife <killerwife@gmail.com>
Co-authored-by: Yatzii <47720837+Yatzii93@users.noreply.github.com>
2024-09-25 16:53:39 +02:00
Yunfan Li
910848c51b Revert "Revert "Merge branch 'master' into Playerbot""
This reverts commit 2358b256f2.
2024-09-17 23:14:42 +08:00
Yunfan Li
2358b256f2 Revert "Merge branch 'master' into Playerbot"
This reverts commit 9973151927, reversing
changes made to 6f5b504e4c.
2024-09-13 17:13:32 +08:00
Yunfan Li
9973151927 Merge branch 'master' into Playerbot 2024-09-12 22:49:08 +08:00
Grimdhex
56d2cc7b4c refactor(Cote/Unit): cleanup - part2 (#19821)
* fix(Core/AI): remove an unused variable

* Move variables at the end of each sections

* reorder several methods

* remove few inline defintions

* few codestyle fixes
2024-09-11 11:50:24 -03:00
Yunfan Li
f8a28b6883 Merge branch 'master' into Playerbot 2024-08-30 22:38:08 +08:00
Grimdhex
2f85097413 docs(Core): improve several functions documentation (#19677)
* initial release

* fix reviews

* fix some typo and add new documetations for MotionMaster

* new update and fix the cli-codestyle

* fix typo

* fix reviews
2024-08-28 08:17:24 -03:00
Yunfan Li
1bf88ad3a3 Merge branch 'master' into Playerbot 2024-08-19 18:59:50 +08:00
Kitzunu
337135bf9e refactor(Core/Misc): Use NpcFlag helpers (#19676)
* chore(Core/Misc): Use HasNpcFlag instead of HasFlag

* extend to all npcflag helpers
2024-08-19 10:17:02 +02:00
Yunfan Li
27b243e7b2 Merge branch 'master' into Playerbot 2024-08-18 23:02:22 +08:00
Grimdhex
9dc20bc261 fix(Core/Entities): crash fix cause by a pointer change in #19622 (#19633)
* fix(Core/Entities): crash fix cause by a pointer change in #19622

* fix blank space for codestyle check
2024-08-15 16:28:50 -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
Yunfan Li
172f54b49a Merge branch 'master' into Playerbot 2024-07-29 15:40:17 +08:00
Francesco Borzì
54fadbda67 refactor(src/server/game/Entities): remove unused imports (#19507) 2024-07-28 16:39:39 -03:00
Yunfan Li
c72188467a Merge branch 'master' into Playerbot 2024-07-23 18:23:10 +08:00
Kitzunu
21f86d1c3c chore(Core/Misc): Remove deprecated code (#19413)
* Config - Deprecated for 3 years
* ChatCommand - Deprecated for 2 years
* getLevel() - Deprecated for 2 years
* SendGlobalText - Deprecated for 8 years +
2024-07-20 09:11:01 +03:30
Yunfan Li
1f54cb14fa Merge branch 'master' into Playerbot 2024-07-07 13:33:14 +08:00
Anton Popovichenko
04acfd96a0 fix(Core/Unit): Invalidate update object cache when changing health in the same world update tick. (#19287)
* fix(Core/Unit): Invalidate update object cache when changing health in the same world update tick.

Should fix an issue when the client sees dead NPCs when they are not.

* Fix styling

* Another codestyle fix
2024-07-05 15:42:22 -03:00
Yunfan Li
72725635ba Merge branch 'master' into Playerbot 2024-06-19 14:32:16 +08:00
Benjamin Jackson
d6d49a9e45 refactor(Core/ObjectMgr): Implement display probabilities. (#19068)
* Init.

Cherry-picked from TC commits 9d210476e5 and c488fb219a

Co-Authored-By: Traesh <9392905+traesh@users.noreply.github.com>
Co-Authored-By: Shauren <shauren.trinity@gmail.com>

* Add brute data.

Needs validation against what existed before, i.e. Classic change prevention.

* Add validation info for brute data.

* Remove incomplete data queries.

* Requested changes.

* Whitespace.

* Requested change.

Table name.

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Requested change.

Table name.

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Resolve the funny merge conflicts.

I wonder why git blame doesn't work on a file with 20k lines in it that's odd huh champ.

* Remove unused parameter.

* Remove uses of unused parameter.

* Use unused parameter.

Hopefully?

* I will cry.

* Sobbing endlessly.

* Remove comment.

* Adjust table structure query.

Remove length parameters and allow null for build value.

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Adjust column datatype and add check constraint.

---------

Co-authored-by: Traesh <9392905+traesh@users.noreply.github.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-06-16 18:12:16 +02:00
Yunfan Li
f0be01a5d7 Merge branch 'master' into Playerbot 2024-04-07 21:49:34 +08:00
Anton Popovichenko
1f640c9872 feat(Core/Optimization): Optimize build of units update object by leveraging cache (#18637)
* feat(Core/Optimization): Optimize build of units update object by leveraging cache.

* Remove whitespaces.

* Add alternative hooks to handle transmog and other similar things.

* Fix build on some compilers.

* Fix codestyle

* Fix build again.

* Take into account updateType.
2024-04-05 08:03:11 +02:00
Yunfan Li
5699c97d8c Merge branch 'master' into Playerbot 2024-02-11 23:45:22 +08:00
Nathan Handley
df33a57b78 feat(Core/Unit): New helper IsClass and script hook OnPlayerIsClass (#18243)
* Class Comparison Logic Encapsulation - Parity

* Add Context to IsClass

* Add Unit IsClass script hook

* Replace additional getClass with IsClass

* Update CanUseItem to replace getClass with IsClass

* Add separate context for pet vs ability

* Change Create to Init since not all referenced contexts are creation

* Align spacing in ClassContext

* Drop context on LFGManager max power

* Update IsClass context that wraps around Missle Barrage

* Rename context for swapping weapons

* Be more specific than CLASS_CONTEXT_TALENT

* Remove duplicate context

* Moved IsClass Hook to Player

* Removed unused parameter in virtual base function

* Added maybe_unused to IsClass virtual in order to compile

To match the override signature, the virtual base needs to include the parameter in question, so using [maybe_unused] to signal to the compiler to allow it

* Remove extra blank line

* Add ABILITY_REACTIVE context

* Add context for PET_CHARM

* Remove explicit nullopt check per review

* Code Readability - Change if to if else in pet

Due to the return pattern, this doesn't change functionality in any way

* Add OnPlayer to disambiguate

---------

Co-authored-by: NathanHandley <nathanhandley@protonmail.com>
2024-02-10 12:25:00 -03:00
Nathan Handley
425a490a7b feat(Core/Unit): New helper HasActivePowerType and script hook OnPlayerHasActivePowerType (#18293)
* Create HasActivePower for script intercept

* Replace relevant player-related getPowerType() comparators with HasActivePowerType

* Change OnPlayerHasActivePowerType to regular bool instead of optional

---------

Co-authored-by: NathanHandley <nathanhandley@protonmail.com>
2024-02-09 06:27:02 -03:00
Yunfan Li
ccf92f481d Merge branch 'master' into Playerbot 2024-01-04 19:22:20 +08:00