Commit Graph

376 Commits

Author SHA1 Message Date
Takenbacon
73317b2706 feat(Core/Grids): Remove WorldObject separation in grid containers (#22595) 2025-08-09 06:36:24 +02:00
Jelle Meeus
a88c058ef0 fix(Core/AI): prevent PetAI autocast leap to self and allies (#22472)
Co-authored-by: xomachine <xomachiner@gmail.com>
Co-authored-by: jackpoz <giacomopoz@gmail.com>
2025-07-14 10:23:55 +02:00
Rocco Silipo
d6cf473882 fix (Core/SmartScript) Improve SMART_ACTION_START_CLOSEST_WAYPOINT. (#22364)
Co-authored-by: Yehonal <yehonal.azeroth@gmail.com>
2025-06-27 20:07:54 +02:00
Vanna White
36c4de6590 fix(CORE/SAI): Properly Implement START_CLOSEST_WAYPOINT (#22256)
Co-authored-by: wetbrownsauce <you@example.com>
2025-06-26 13:12:13 +02:00
Tereneckla
0810fa076a refactor(Core/AI): rename FarthestTargetSelector to RangeSelector (#22026) 2025-06-24 23:09:38 +02:00
Tereneckla
e77f5d63da fix(Core/AI): crashfix(#22352) (#22353) 2025-06-24 17:03:45 -03:00
Tereneckla
92094eec01 fix(Core/Spell): implement SPELL_ATTR5_NOT_ON_PLAYER and SPELL_ATTR5_NOT_ON_PLAYER_CONTROLLED_NPC (#22332) 2025-06-22 22:51:58 -03:00
Kitzunu
8200f3729e fix(Core/SAI): Exclude GMs for player target/event (#22345) 2025-06-22 21:47:32 -03:00
Ryan Turner
84533758f9 fix(core/SMART_EVENT_LINK) - Seperation and clarification of "not found or invalid, skipped" (#22240) 2025-06-17 20:14:45 +01:00
Andrew
9279b1248f fix(Core/SAI): Don't try to reposition SMC creatures while moving (fi… (#22280) 2025-06-07 15:43:53 -03:00
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