Commit Graph

366 Commits

Author SHA1 Message Date
Benjamin Jackson
b73bdb3adc chore(Core): Remove unused and inaccurate comment headers for various script-related files. (#22263) 2025-06-05 15:49:20 -03:00
Benjamin Jackson
2a93e7d410 chore(Core/Unit): Correct typo of Controlled. (#22260) 2025-06-03 08:56:44 +02:00
Jelle Meeus
b15507eb06 feat(Scripts/Commands): .debug boundary to visualize CreatureBoundary (#22099)
Co-authored-by: avarishd <46330494+avarishd@users.noreply.github.com>
Co-authored-by: treeston <treeston.mmoc@gmail.com>
2025-05-30 11:42:11 -03:00
Tereneckla
a8b982dca8 refactor(Core/AI) don't add currentTarget to the front of the SelectTargetList for MaxThreat/Random (#21965) 2025-05-05 20:17:10 +01:00
blinkysc
d23e61b721 fix(SmartAI): Ensure immediate combat engagement (#21854)
NPCs will stop their current waypoint and start combat.
2025-04-26 19:24:35 +01:00
Benjamin Jackson
9ced420849 fix(Core/AI): Ignore PvP flagged players for aggressive pets if owner is not PvP flagged. (#21922) 2025-04-21 09:40:56 +02:00
sudlud
4459afc98d fix(Core/Movement): Allow MoveFollow to not inherit speed of the target (#21711) 2025-03-15 21:47:11 +01:00
Andrew
835283bf26 feat(Core/Scripting): Implement ScheduleEnrageTimer() helper (#21597) 2025-02-24 09:59:18 +01:00
Andrew
b17d69b33c feat(Core/Unit): Add SpellSchoolMask info to the DamageDealt() hook (#21411) 2025-02-12 12:16:02 +01:00
Kitzunu
17412174be feat(Core/SAI): implement SMART_ACTION_DISABLE_REWARD (#21105) 2025-02-01 22:49:41 +01:00
Kitzunu
9e9a2fe5e3 refactor(Core/ObjectMgr): Change GetAcoreString from char const* to s… (#21213)
...ring
2025-02-01 22:46:42 +01:00
Kitzunu
2aa8c8aa80 refactor(Core/SmartScripts): Clean up validation logic by replacing A… (#21184) 2025-01-16 20:49:26 +01:00
Andrew
d94dda9d93 feat(Core/SAI): Implement SMART_ACTION_DISMOUNT (206) (#20899) 2024-12-12 06:11:42 +01:00
Andrew
0f1618faf5 feat(Core/Scripting): Implement SetAutoAttackAllowed() to disable aut… (#20805)
* feat(Core/Scripting): Implement SetAutoAttackAllowed() to disable autoattacks

* Update ScriptedCreature.cpp
2024-12-02 08:11:18 -03:00
Kitzunu
490c90bdd7 feat(Core/SAI): Add pet variable to SMART_TARGET_INVOKER_PARTY (#20804)
* feat(Core/SAI): Add pet variable to SMART_TARGET_INVOKER_PARTY

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

* mb
2024-12-01 13:57:39 -03:00
Kitzunu
ed008a8780 refactor(Core/Spells): Add helpers for HasAuraType (#20802) 2024-12-01 08:50:59 -03:00
sudlud
b2c04603f7 feat(Core/SmartAI): add startup error for non existent SmartAI entries (#20694) 2024-11-24 21:25:02 +01:00
Andrew
c5876bff6f fix(Scripts/ZulAman): Fix Amani Hatcher behaviour (#20687) 2024-11-24 07:56:18 -03:00
Andrew
0b771cbc92 fix(Core/Creature): Don't call reset if still in combat (#20675) 2024-11-23 10:57:26 +01:00
Jelle Meeus
640f84e280 feat(Core/SmartAI): introduce new SMART_EVENT_IS_IN_MELEE_RANGE (#20575) 2024-11-20 06:36:17 -03:00
Francesco Borzì
a9f0f371e5 refactor(src/server/game): optimise imports (#20541) 2024-11-13 11:37:20 +01:00
Jelle Meeus
3565e4a9eb feat(Core/WorldState): improved WorldState scripting (#20141)
* implement world state script

based on
0b87ca9d9e

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

* refactor to use onleave and onenter instead of spell_area

allows players to right click remove adal's buff

* add MapMgr.h

* refactor: use condition enum instead of uint32, prefix WORLD_STATE where needed

* remove lock from WorldState::Update

sWorldState->Update() is only called from World::Update

* remove unsafe SmartAI action of setWorldState

---------

Co-authored-by: killerwife <killerwife@gmail.com>
2024-11-12 12:15:27 -03:00
Andrew
e741a9a87f feat(Core/Scripting): Implement SetInvincibility() to prevent creatur… (#20508) 2024-11-11 00:22:03 -03:00
Andrew
734bcb5d10 chore(Core/Creature): Fix typo (#20510) 2024-11-10 15:21:58 +01:00
Andrew
d73ebe2e38 fix(Core/SAI): Don't try to reposition Rooted inhabit type creatures (#20504) 2024-11-10 04:54:01 -03:00
Francesco Borzì
2ce2c8cf3a refactor(src/server/game/*): remove unused imports (big part 3) (#20315) 2024-10-27 13:10:28 +01:00
Francesco Borzì
cb7e28df05 refactor(src/server/game/*): remove unused imports (big part 1) (#20310) 2024-10-27 10:25:40 +01:00
@cgrahamseven
1c1a281eda fix(Core/SAI): rooted check blocks vehicles from casting quest credit (#20283)
spell

The quest SteamTank Surprise has a SmartAI entry in the db that causes
the tank to cast the kill credit spell on the player when they
successfully destroy a plague wagon. Currently, this spell cast is being
blocked by the rooted check handler for SMART_ACTION_CAST. The change
proposes that this rooted check should not apply to vehicles.

Closes AzerothCore issue #20237

Co-authored-by: cgrahamseven <chris.graham@protonmail.com>
2024-10-24 06:57:52 -03:00
Dan Costinas
87aeaf10fd fix(Core/SmartAI) : use explicit stack DS for ProcessAction instead of recursion (#16739)
* Use dequeue instead of recursion

* Remove to do comments

* Fix formatting

* Fix more formatting :(

* Use references instead of copies in the stack to correctly update event state

* formatting

* Revert FindLinkedEvent parameter name change and check for event type

* Fix event processing in SmartScript::UpdateTimer

* Use struct for defining SmartScriptFrame instead of tuple

* Fix emplace_back not working on default constructor on clang 15

* Fix const placement
2024-10-22 17:31:45 +02:00
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 c1a59145ed.

* 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 1f71aaef25.

* SmartScripts: SMART_TARGET_RANDOM_POINT: fix unintended fallthrough

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

This reverts commit d13df29362.

---------

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-07-07 22:00:24 +02:00