Commit Graph

591 Commits

Author SHA1 Message Date
Meji 2c56ee9ce1 Core/SAI: Added support for StringIds to creature and gameobject targets (#29910)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
(cherry picked from commit 2ce4068459)
2024-05-28 16:40:53 +02:00
Shauren 3bba97dd52 Fix codestyle
(cherry picked from commit f1b7ca1a91)
2024-05-28 16:33:10 +02:00
Shauren 3390bb8078 Core/SAI: Allow gameobjects to be targeted by spell casts
(cherry picked from commit 22e43917ab)
2024-05-28 16:33:06 +02:00
Shauren a748fddfa4 Core/Creatures: Implemented CREATURE_STATIC_FLAG_4_NO_MELEE_APPROACH and fixed CREATURE_STATIC_FLAG_NO_MELEE_FLEE implementation (should cause fleeing from melee range) 2024-02-22 15:47:11 +01:00
Shauren 888ccd1e44 Core/SAI: Fixed SMART_ACTION_MOVE_TO_POS and SMART_ACTION_JUMP_TO_POS using target coordinates as destination if requested WorldObject target was not found 2024-02-15 19:15:21 +01:00
ModoX 12186ef857 Core/Waypoints: Refactor to split data into path and node related info in db (#29506) 2024-01-05 17:56:19 +01:00
Meji 37eb2e64a6 Core/AreaTriggers: Refactor (#29500)
* Moved IsServerside to custom flags
* Flags moved from areatrigger_template to areatrigger_create_properties
* New field to create custom CreateProperties (IsCustom)
* New field to reference custom areatriggers (IsAreatriggerCustom)
* Moved fields for shape data to areatrigger_create_properties
2023-12-30 17:14:09 +01:00
Meji b8ce70d528 Core/SAI: Moved event_flags for difficulties to new field Difficulties (#29377) 2023-10-30 09:53:52 +01:00
Teleqraph 88ff97c1f9 Core/Units: Added helper functions to modify UNIT_FLAG_UNINTERACTIBLE (#29159)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2023-07-20 19:09:27 +02:00
Meji d015711fbb Core/SAI: Implemented new source type SMART_SCRIPT_TYPE_EVENT (3) (#28816) 2023-07-09 11:59:35 +02:00
Meji 76d2f29e4e Core/SAI: Fixed event SMART_EVENT_WAYPOINT_ENDED (#29025)
* also moved "any" pointid to 0xFFFFFFFF for waypoint sai events:
* SMART_EVENT_WAYPOINT_REACHED
* SMART_EVENT_WAYPOINT_RESUMED
* SMART_EVENT_WAYPOINT_PAUSED
* SMART_EVENT_WAYPOINT_STOPPED
* SMART_EVENT_WAYPOINT_ENDED
2023-06-24 19:21:37 +02:00
ModoX 356c98579b Core/SAI: Drop waypoints table and move existing rows to waypoint_data table (#28834) 2023-04-08 01:33:05 +02:00
Meji 81ea6f54d9 Core/Creatures: Compute CombatReach and BoundingRadius using DisplayScale (#28863) 2023-03-30 18:54:27 +02:00
Shauren d26d38075c Core/Creatures: Allow disabling melee attacks for all creatures, not just the ones using SAI 2023-03-13 20:22:47 +01:00
Meji 7b14b9ef22 Core/SAI: Set the trigger player as baseobject when the source type isn't a WorldObject (#28767) 2023-01-31 19:38:34 +01:00
Shauren d791afae1d Core/Logging: Switch from fmt::sprintf to fmt::format (c++20 standard compatible api) 2023-01-08 21:16:53 +01:00
Shauren d8a4668c77 Core/Misc: Add missing Containers.h include where neccessary 2023-01-06 16:44:11 +01:00
Meji f291ca9796 Core/SAI: Improved SMART_ACTION_JUMP_TO_POS to mirror behavior similar to SMART_ACTION_MOVE_TO_POS (#28547)
*  Support for targets other than positions
*  Added param3 Gravity, to use MoveJumpWithGravity (priority over SpeedZ)
*  Added param4 UseDefaultGravity (priority over Gravity): 19.29110527038574
*  Added param5 PointId, useful for linking the jump to the event SMART_EVENT_MOVEMENTINFORM (Type: 16)
*  Added param6 ContactDistance
*  If the target is different from a position, target params for coords allow to add offsets
2022-12-30 17:48:33 +01:00
Aqua Deus 09591fbdb0 Core/SAI: Add action param 7 (#28519)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2022-12-30 16:32:37 +01:00
Meji e218f27602 Core/SAI: Added param PointId to SMART_ACTION_MOVE_OFFSET (#28555) 2022-12-22 23:51:49 +01:00
ModoX 204cf030cc Core/SAI: Move (any) value for SMART_EVENT_MOVEMENTINFORM point to 0xFFFFFFFF (#28417) 2022-10-31 21:33:57 +01:00
Shauren 133334a902 Core/Loot: Implemented personal loot and tag sharing for non-boss loot 2022-10-17 23:11:46 +02:00
offl b0164fb2b9 Core/SAI: Rename LeavingWorld to OnDespawn & use it in SAI (#28059)
(cherry picked from commit b9450bcdd0)
2022-09-05 19:43:09 +02:00
Meji 9ca8cf66e6 Core/SAI: Allow using default npc_text from gossip_menu with SMART_ACTION_SEND_GOSSIP_MENU (#28097) 2022-07-07 16:08:04 +02:00
Antonio Martín Berti a4eafbd3f6 Core/SAI: Added Action SMART_ACTION_DO_ACTION for calling DoAction on target AI (#27964) 2022-06-08 15:50:44 +02:00
Shauren 51299ab886 Core/SAI: Corrected wrong useSaiTargetAsGameEventSource logic in previous commit 2022-04-24 16:21:29 +02:00
Shauren 9d0187dd56 Core/SAI: Implemented new action SMART_ACTION_TRIGGER_GAME_EVENT 2022-04-24 15:02:40 +02:00
Shauren b8246d1ba7 Core/SAI: Support gameobject targets for SMART_ACTION_PLAY_ANIMKIT 2022-04-24 14:35:38 +02:00
Shauren b47185cabf Core/Misc: Rename AddXXXFlag updatefield functions to SetXXXFlag 2022-03-27 18:14:47 +02:00
Shauren 4eba978670 Core/Misc: Rename SetXXXFlags updatefield functions to ReplaceAllXXXFlags 2022-03-26 18:59:44 +01:00
offl 050f55b62f Core/AI: OnSpellCast, OnSpellFailed, OnSpellStart hooks (#27704)
(cherry picked from commit 3dca705acc)
2022-03-26 15:15:46 +01:00
offl 8b7effa4cf Core/SAI: Remove SMART_ACTION_ADD_AURA & actions to change object flags (#27571)
(cherry picked from commit 5ba93a95de)
2022-03-24 23:52:32 +01:00
offl 52bb230e4c Core/SAI: Use GetBaseObject as second param of SMART_ACTION_ACTIVATE_GAMEOBJECT & reorder GameObjectActions (#27461)
(cherry picked from commit 87cb0a4212)
2022-03-24 21:55:46 +01:00
offl 9ea8cdb457 Core/SAI: Remove SMART_ACTION_SEND_GO_CUSTOM_ANIM, make SMART_ACTION_ADD_AURA & SMART_ACTION_SET_GO_FLAG deprecated (#27452)
(cherry picked from commit 7709837539)
2022-03-24 21:48:47 +01:00
offl e27724b362 Core/SAI: Remove deprecated events and actions (#27258)
(cherry picked from commit c508203895)
2022-03-21 23:26:47 +01:00
offl ebcd45b7e1 Core/SAI: Remove reactState param from SMART_ACTION_WP_START (#27255)
Ref #26728

(cherry picked from commit 04909bada8)
2022-03-21 23:02:31 +01:00
Giacomo Pozzoni 791b759332 Core/SAI: Add SMART_ACTION_ACTIVATE_GAMEOBJECT action (#27216)
Closes #27196

(cherry picked from commit 0817be8f76)
2022-03-21 22:59:21 +01:00
offl 29190e5642 Core/SAI: Remove deprecated events and actions (#27039)
(cherry picked from commit 887605d945)
2022-03-20 00:13:00 +01:00
offl e80777cb39 Core/SAI: Split set/remove unit_flags actions (#26954)
(cherry picked from commit 0a2fca1aed)
2022-03-18 00:04:03 +01:00
offl f55e86d907 Core/SAI: Remove possibility to set/remove unit_flags2
So far I see that only Cannot Turn flag can be changed by scripts and action to change it didn't existed in 3xx. If someone will need to change that flag, it should be implemented by action which will change only that flag and not any flag of that type.

(cherry picked from commit c8061d8ba6)
2022-03-15 23:59:35 +01:00
offl 7d9088e9cf Core/SAI: Remove SMART_ACTION_INSTALL_AI_TEMPLATE (#26797)
(cherry picked from commit ff8663ca15)
2022-03-12 16:19:47 +01:00
offl 842eb3bdd7 Core/SAI: Remove SMART_ACTION_SET_DYNAMIC_FLAG (#26783)
(cherry picked from commit b3449158b1)
2022-03-12 01:20:06 +01:00
jackpoz fc3e26fdfe Core/SAI: Temporarily allow SMART_ACTION_WP_START to specify parameter value 3 for reactState
(cherry picked from commit 60379cf2c1)
2022-03-11 19:03:36 +01:00
Giacomo Pozzoni c9e685bd9a Core/SAI: Warn when an unused parameter is set in the database (#26628)
* Core/SAI: Warn when an unused parameter is set in the database

* Warn when an unused parameter is set in the database as all unused parameters are supposed to be set to 0.

* Remove unused struct from union.

* Add a new struct simpleTalk for SMART_ACTION_SIMPLE_TALK instead of reusing only some fields of struct talk from SMART_ACTION_TALK

* Add addAura and flag structs to be used instead of generic ones to match the parameters used by actions

* Add randRangeTimedActionList struct to be used instead of generic ones to match the parameters used by actions.

* Remove unused action structs.

(cherry picked from commit aa7279df09)
2022-03-11 18:35:58 +01:00
Giacomo Pozzoni a85e77b47a Core/SAI: Add a warning when a boolean value is outside of [0,1] range (#26608)
* Core/SAI: Add a warning when a boolean value is outside of [0,1] range

*  Replace boolean fields in SAI with SAIBool (from uint32)

(cherry picked from commit 84c8d21ad3)
2022-03-11 13:30:59 +01:00
jackpoz 40416d62f3 Core/SAI: Allow SMART_ACTION_SUMMON_CREATURE to summon more than 1 creature
Add 6th parameter "count" to SMART_ACTION_SUMMON_CREATURE action to summon more than 1 creature. For backward compatibility, a value of 0 will be treated as 1.

(cherry picked from commit 5628ca7f7c)
2022-03-11 10:43:08 +01:00
Giacomo Pozzoni 76c470fb32 Core/SAI: Add support to friendly+hostile to SMART_EVENT_OOC_LOS and SMART_EVENT_IC_LOS (#26579)
Change SMART_EVENT_OOC_LOS and SMART_EVENT_IC_LOS first parameter to have 3 values:
- 0 : Hostile
- 1 : Not hostile (not that Friendly and Not hostile have different meanings)
- 2 : Any, as in both Hostile and Not hostile

Close #24789

* Add validation on startup for allowed values.
Code cleanup.

* Fix errors

(cherry picked from commit 9e7cdb02d2)
2022-03-11 01:04:48 +01:00
jackpoz 67541c58ba Core/SAI: Fix typo
(cherry picked from commit 483f24c5ed)
2022-03-10 23:57:14 +01:00
HelloKitty a67bb1f575 Core/Map: Added Map::SetZoneOverrideLight std::chrono overload (#26486)
* Core/Map: Added Map::SetZoneOverrideLight std::chrono overload

* Scripts: Replace Map::SetZoneOverrideLight usages with new std::chrono overload

* Core/Map: Remove non-chrono Map::SetZoneOverrideLight overload

(cherry picked from commit e33c4b8f7f)
2022-03-09 14:56:04 +01:00
Engilas 8a4d731d55 Core/SmartAI: AI change on charmed (#26065)
* Fix AI refresh on charmed

* Remove unnecessary refresh

* Check SMART_EVENT_FLAG_WHILE_CHARMED flag

(cherry picked from commit f6e52f6b3d)
2022-03-06 21:40:42 +01:00