Commit Graph

337 Commits

Author SHA1 Message Date
Angelo Venturini
9487b30ad7 refactor(Core/Misc): Use emplace_back instead of push_back to avoid extra copy/m… (#20114)
refactor: Use emplace_back instead of push_back to avoid extra copy/move operations
2024-10-10 21:55:58 +02:00
Andrew
31cb7579e0 fix(Core/Scripts): Further improve the ScheduleHealthCheck() function (#20163) 2024-10-09 08:08:37 -03:00
Francesco Borzì
d8c56392fb refactor(src/server/game/AI): remove unused imports (#20095) 2024-10-01 08:04:00 +02:00
Anton Popovichenko
804769400b fix(Core/GuardAI): crash when killer is null (#20100) 2024-09-30 13:19:44 +02: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
Kitzunu
386aea03ee chore(Core/Misc): Some cleanup (#19970)
* remove weird blanks

* update if

* ) ) to ))

* missed some ) )

* now switch

* .
2024-09-21 19:34:31 +02:00
Benjamin Jackson
bf18b9bdfb fix(Core/AI): Improve creature leashing behavior. (#19751)
* Init.

https: //github.com/vmangos/core/commit/7d2f1e2923734ea1b983eeaa0208cfd158d4af02
Co-Authored-By: ratkosrb <35845488+ratkosrb@users.noreply.github.com>

* Hackfix for pets.

* Whoops.

* Correct evade uses.

* Conflict.

* Actually fix grace timer.

* Add visibility distance check.

Creatures should always fail combat checks in the open world if they're outside of visibility distance, might not be the case for worldbosses.

---------

Co-authored-by: ratkosrb <35845488+ratkosrb@users.noreply.github.com>
2024-09-03 21:08:56 +02:00
Benjamin Jackson
1edac37ac3 refactor(Core): Make more use of helpers. (#19835)
* Init.

* Reword.

* Update codestyle script.

Co-Authored-By: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Add gameobject type ID check, reorder checks.

* Add helper/codestyle check for unit type.

* `IsUnit()` -> `IsCreature()`

* Add `IsUnit()` method.

* Use type mask.

https: //github.com/TrinityCore/TrinityCore/commit/cc71da35b5dc74abf71f8691161525a23d870bb5
Co-Authored-By: Giacomo Pozzoni <giacomopoz@gmail.com>
Co-Authored-By: Ovahlord <18347559+Ovahlord@users.noreply.github.com>

* Replace instances of `isType` with `IsUnit`.

---------

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
Co-authored-by: Ovahlord <18347559+Ovahlord@users.noreply.github.com>
2024-09-03 14:41:31 -03:00
Andrew
0954e314a0 fix(Scripts/BlackTemple): Fix Zerevor not casting Dampen Magic OOC (#19768)
* fix(Scripts/BlackTemple): Fix Zerevor not casting Dampen Magic OOC

* Update boss_illidari_council.cpp

* recast every 1min

* implement the recast checks

* Update CreatureAI.h

* Update boss_illidari_council.cpp

* Update boss_illidari_council.cpp

* fix ooc cast

* Update boss_illidari_council.cpp

* always respect the 60s lock

* Update boss_illidari_council.cpp

* Update boss_illidari_council.cpp
2024-09-02 20:44:34 -03:00
Grimdhex
5ab142af93 fix(Core/AI): remove an unused variable in ScriptedAI (#19816)
fix(Core/AI): remove an unused variable
2024-08-31 11:05:18 -03:00
Gultask
8852f0c74c feat(Core/SmartScripts): Implement Scripted Spawn System (#19499)
* prespawn2

* pfta

* Update rev_1717715555182000500.sql

* Update rev_1717715555182000500.sql

* Update rev_1717715555182000500.sql

* Update rev_1717715555182000500.sql

* Update rev_1717715555182000500.sql

* Update rev_1717715555182000500.sql
2024-08-28 08:18:02 -03: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
Andrew
83f8871c31 refactor(Core/BossAI): Improve the ScheduleHealthCheck() code (#19743)
* refactor(Core/BossAI): Improve the ScheduleHealthCheck() code

* Update ScriptedCreature.cpp

---------

Co-authored-by: sudlud <sudlud@users.noreply.github.com>
2024-08-26 14:44:05 -03:00
Andrew
c5399509e6 refactor(Scripts/TempleOfAhnQiraj): Clean up Cthun script (#19736)
* refactor(Scripts/TempleOfAhnQiraj): Clean up Cthun script

* Update boss_cthun.cpp

* Update boss_cthun.cpp
2024-08-25 16:46:24 -03:00
Grimdhex
643362d697 refactor(Core/Object): adds consistency in the use of type object check (#19671) 2024-08-25 09:57:37 -03:00
Grimdhex
61f3a631c3 fix(Server): remove double blank lines at the end of several files (#19735) 2024-08-25 07:21:14 -03: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
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
Francesco Borzì
02a05fbd4c refactor(src/common): remove unused imports (#19506)
* refactor(src/common): remove unused imports

* fix: build

* chore: fix build

* chore: size_t -> std::size_t

* chore: fix fuckup from previous commit

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build with std::size_t

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build

* chore: fix build
2024-07-30 20:06:46 -03:00
Kitzunu
5da3e2e688 refactor(Core/SmartScripts): Change invoker to be WorldObject (#19408)
* refactor(Core/SmartScripts): Change invoker to be WorldObject

* avoid dangling else

* womp womp

* check for null

* null check

* Update SmartScript.cpp

* Avarishd broke it for sure

* remove redundant check

* reduce more redundant code

* who doesnt love redundancy
2024-07-27 07:32:55 -03:00
sudlud
37e3d89f91 fix(CI): linux-build: add -Werror parameter (#19240)
* fix(CI): linux-build: add -Werror parameter

* add KI

tzunu

* Revert "feat(CI): enable fail-fast for pch/nopch (#19058)"

This reverts commit 564cbca7d3.

* Update midsummer.cpp - drop unused variable

* initialize variable

* Update core-build-nopch.yml - drop gcc12

* fix(Core/CalendarMgr): do not use element after delete, but before

* attempt to fix Socket.h error

* Revert "attempt to fix Socket.h error"

This reverts commit c1a59145ed3c49d0f76be2f81925434ea969db97.

* fix Socket.h error - attempt 2

* Update Socket.h

* Update Socket.h

* npc_shattrath_daily_quest: init variable templateID

* fix(Scripts/Karazhan): use size_t within loop in boss_shade_of_aran:Reset()

* boss_archimonde: drop unused variable

* Revert "fix(Scripts/Karazhan): use size_t within loop in boss_shade_of_aran:Reset()"

This reverts commit 1f71aaef256990c5cdc16561676be302c954ea9d.

* SmartScripts: SMART_TARGET_RANDOM_POINT: fix unintended fallthrough

* Revert "Revert "feat(CI): enable fail-fast for pch/nopch (#19058)""

This reverts commit d13df293624e0f50d9374272bfd05ab56242511d.

---------

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-07-07 22:00:24 +02:00
Kitzunu
f42ed2efa5 feat(Core/SAI): SetData now has invoker (#19296)
* cherry-pick commit (cfc77fd843)

* cherry-pick commit (beb333738d)

* Move IsSmart function from headerfile

Co-authored-by: Treeston <14020072+Treeston@users.noreply.github.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2024-07-06 13:46:10 +02:00
Gultask
89a6996628 fix(Scripts/SmartAI): Rewrite ACTION_MOVE_TO_POS (#19190)
* init

* Update SmartScript.cpp

* combatReach

* Update SmartScript.cpp
2024-07-05 15:07:56 -03:00
Kitzunu
e878cedb7f feat(Core/SAI): implement new removeObjectFromWorld param for SMART_A… (#19275)
feat(Core/SAI): implement new removeObjectFromWorld param for SMART_ACTION_FORCE_DESPAWN
2024-07-04 14:20:41 -03:00
Andrew
c9725dd4b2 fix(Core/AI): Don't set boss state to none if already complete (#19139) 2024-06-26 22:40:04 +02:00
Andrew
9e122a0cad fix(Core/AI): Fix bosses being stuck IN_PROGRESS if despawnonevade fl… (#19070)
fix(Core/AI): Fix bosses being stuck IN_PROGRESS if despawnonevade flag is used
2024-06-16 18:57:51 +02: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
Walter Pagani
03f6dde549 fix(Core/SmartAI) fatal error: unused parameter pathId (#18795)
fix. fatal error: unused parameter pathId
2024-04-24 08:22:24 -03:00
Gultask
6f154d0a6b feat(Core/SmartAI): Add support for waypoint_data in SAI (#18706)
* Create rev_1712670662273633900.sql

* eol?

* doesn't like a comment at the end, ok, ok

* init

* mack

* Update SmartScript.cpp

* kurzel

* random paths and garg

* Update rev_1712889530436412200.sql

* brend & marge

* Update rev_1712889530436412200.sql

* movement actions

* Update SmartScriptMgr.h
2024-04-18 10:31:41 -03:00
Andrew
a8471d0f87 fix(Scripts/Hyjal): Azgalor Doom should not be cast on the MT (#18738) 2024-04-14 08:30:27 -03:00
Dan
a870173558 fix(Scripts/BossAI): add optional variable to BossAI class to make sure the boss calls for help (#18630)
init
2024-03-30 11:31:41 -03:00
skelUA
0c964dadae fix (Core/Scripting): SMART_EVENT_NEAR_PLAYERS (#18514)
* FIX SMART_EVENT_NEAR_PLAYERS

* FIX SMART_EVENT_NEAR_PLAYERS (fix build)
2024-03-20 01:38:57 -03:00
skelUA
da453b2a8d fix(Core/SmartScripts): LOS check spell for SmartScipts (#18501)
* Fix spell 35329 (Vibrant Blood)

* [PATCH] Flight of the Wintergarde Defender fix (https://forums.wow.sumy.ua/viewtopic.php?p=35#p35)

* Revert "[PATCH] Flight of the Wintergarde Defender fix (https://forums.wow.sumy.ua/viewtopic.php?p=35#p35)"

This reverts commit 2eaeb78bdee5b09f1ea5685a9b039f9221df4abe.

* Revert "Fix spell 35329 (Vibrant Blood)"

This reverts commit 0e7ee59588709050e2af9cc15e8ff1ed358936b2.

* Revert "Revert "Fix spell 35329 (Vibrant Blood)""

This reverts commit 5e4424b4d81ec3c1de1d6f73e48d848e63e92b79.

* Revert "Revert "[PATCH] Flight of the Wintergarde Defender fix (https://forums.wow.sumy.ua/viewtopic.php?p=35#p35)""

This reverts commit b3a9553a45e81f65b2eb15f127c5ca9eb99b6d1e.

* Revert "Revert "Revert "[PATCH] Flight of the Wintergarde Defender fix (https://forums.wow.sumy.ua/viewtopic.php?p=35#p35)"""

This reverts commit 0ced477c767b9087eefdf516d0e0fccf1567e6e3.

* Revert "Revert "Revert "Fix spell 35329 (Vibrant Blood)"""

This reverts commit a8da732cfb4369f218e96175fc8f33eafc1e69c9.

* Revert "Revert "Fix spell 35329 (Vibrant Blood)""

This reverts commit 5e4424b4d81ec3c1de1d6f73e48d848e63e92b79.

* Revert "Revert "[PATCH] Flight of the Wintergarde Defender fix (https://forums.wow.sumy.ua/viewtopic.php?p=35#p35)""

This reverts commit b3a9553a45e81f65b2eb15f127c5ca9eb99b6d1e.

* Revert "[PATCH] Flight of the Wintergarde Defender fix (https://forums.wow.sumy.ua/viewtopic.php?p=35#p35)"

This reverts commit 2eaeb78bdee5b09f1ea5685a9b039f9221df4abe.

* Revert "Fix spell 35329 (Vibrant Blood)"

This reverts commit 0e7ee59588709050e2af9cc15e8ff1ed358936b2.

* FIX LOS SAI
2024-03-08 11:15:45 -03:00
Andrew
6df652a8dd fix(Core/Creature): Prevent combat movement disabled creatures from r… (#18428)
* fix(Core/Creature): Prevent combat movement disabled creatures from repositioning if target moves within model boundary

* fixbuild

* Apply suggestions from code review
2024-02-27 10:11:39 -03:00
Dan
4fcd3402ca fix(Core/SmartAI): implement param maxCount for SMART_TARGET_PLAYER_RANGE (#18394)
* init

* conditional
2024-02-25 11:50:07 -03:00
AG
8f127f9e21 Fix combat movement (#18026)
* Improve combat movement

 - Removed a bunch of logic related to another attempt at fixing combat movement.
- Removed SMART_ACTION_SET_CASTER_COMBAT_DIST and updated smarts scripts accordingly.
- Cherry-picked 7fb7432620
- Cherry-picked 63a6e1e048

Co-Authored-By: Ludovic Barbier <ludovic.barbier03@gmail.com>
Co-Authored-By: Giacomo Pozzoni <giacomopoz@gmail.com>

* Some more cleanup + fix sql

* More fixes to caster chase/combat movement + some cherry picks because why not

- Fix casters always trying to chase to melee range
- Fix casters another case of casters sometimes walking back instead of stopping
- Cleaned up some code
- Cherry picked ca25e8d019
- Cherry picked 96b289cadb

Co-Authored-By: Giacomo Pozzoni <giacomopoz@gmail.com>

* Added parentheses

* Fixed caster combat movement when target is rooted

- Made a few adjustments to chase range and stuff, but nothing set in stone.

* convert uint to int

---------

Co-authored-by: Ludovic Barbier <ludovic.barbier03@gmail.com>
Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
2024-01-03 09:56:24 +01:00
avarishd
03d06da87b feat(Core/SmartScripts): SMART_EVENT_SUMMONED_UNIT_EVADE (#18018)
* feat(Core/SmartScripts): SMART_EVENT_SUMMONED_UNIT_EVADE

* .
2023-12-15 09:43:24 -03:00
Angelo Venturini
10c9a2729b fix(Core/SAI/SSC): Allow Farthest target to set a min distance (#17992) 2023-12-11 19:57:44 -03:00
Winfidonarleyan
eb1ecc38a5 feat(Core/Scripting): move all script objects to separated files (#17860)
* feat(Core/Scripts): move all script objects to separated files

* Apply 5bfeabde81

* try gcc build

* again
2023-12-02 21:13:20 +01:00
Andrew
daec8345e0 refactor(Scripts/BlackTemple): Modernize Najentus boss script (#17871)
* refactor(Scripts/BlackTemple): Modernize Najentus boss script

* fix build

* Update ScriptedCreature.h
2023-11-26 23:47:15 +01:00
Andrew
59e9451c3c feat(Core/AI): Implement ScheduleTimedEvent() helper (#17813) 2023-11-20 20:36:15 -03:00
Andrew
d55b6753c9 feat(Core/Scripting): Implement Unit hooks to modify damage before ca… (#17785) 2023-11-18 23:36:59 -03:00
Winfidonarleyan
e90d7a2f92 chore(Core/Misc): sort includes (#17776)
* chore(Cleanup): sort includes

* fix build

* fix build again
2023-11-18 17:51:26 +01:00
KJack
2e4ad36d20 feat(Core/AI): Add built-in TaskScheduler to CreatureAI (#17700)
* Add TaskScheduler to CreatureAI

* Code style, because of course.
2023-11-14 07:32:47 -03:00
Andrew
975a6fccab feat(Core/Scripts): Prevent the inherited TaskScheduler from updating… (#17689) 2023-11-12 20:30:23 -03:00
Kitzunu
f757e93da5 refactor(Core/Misc): Make DeathState enum class (#17607) 2023-10-28 10:54:03 +02:00
Andrew
9935e72341 feat(Core/Unit): Implement OnPowerUpdate() unit script hook (#17560) 2023-10-22 09:14:41 -03:00
avarishd
894732f11e fix(Scripts/EscortAI): Do not remove auras on evade (#17542) 2023-10-20 20:49:17 -03:00
Kitzunu
fbf7ba2191 chore(Core/enumutils): regenerate enumutils (#17087)
* chore(misc/enumutils): update enumutils

* fix build

* latest update
2023-09-16 14:26:08 +02:00
Gultask
e422583132 feat(Core/SmartAI): Implement a few more stuff (#17090)
* init

* init2

* attempt to fix WP delays

* init3

* init4

* buildfix

* Create rev_1693093120417899200.sql

* workflow

* Underbat

* castflag power mana

* did not work

* Update SmartScriptMgr.cpp

* ugly

* port range to new system

* attempt

* simplify cast

simplify cast
add iteration for aura_not_present
recalc timer if already castig spell

* Update SmartScript.cpp

* attempt

* attempts

* HP PCT

* missing aura to targetselector

* Update rev_1693093120417899200.sql

* Update SmartScriptMgr.h

* Update SmartScriptMgr.h

* Update SmartScript.cpp

* remove not_attacking, fix behind_me

* revert is_behind_me

* Update SmartScriptMgr.h

* Update underbog.cpp

* Update underbog.cpp
2023-09-10 13:12:55 +02:00