Commit Graph

684 Commits

Author SHA1 Message Date
ariel-
d7c85d7193 Core/SmartScripts: fixup SMART_EVENT_FLAG_WHILE_CHARMED behaviour to only mean charmed creatures (#17738 follow-up)
Unit::IsControlledByPlayer is a expected value for TempSummons (like some triggers used in quests, summoned by spells).
Previous logic broke a lot of quests which use triggers to do stuff.

Allow JustSummoned and events linked from other events with flag set also in charmed (prevents breaking event chains)
Allow vehicles (needed for vehicles with SmartAI, eg Iron Rune Constructs and You: Rocket Jumping)

(cherry picked from commit 3e596376a7)
2017-09-06 15:35:04 +02:00
ariel-
f65897f3be Core/SmartAI: There's a function for that
(cherry picked from commit e2a8cf6809)
2017-09-05 19:19:21 +02:00
SnapperRy
8cb5368062 Core/SAI: don't reset event phase when npc evades/resets.
The scripts themselves should take care of that.

(cherry picked from commit 5267381e39)
2017-09-05 12:14:15 +02:00
Malcrom
acbc3f5a68 Core/Smartscripts: Add respawn timer to smartscript despawn (#20070) 2017-07-22 22:34:23 +02:00
Shauren
b453e12423 Core/Game: Include cleanup part 5
* ObjectMgr.h
* Player.h
* Unit.h
* G3D should no longer propagate everywhere from Spline/MotionMaster
2017-06-04 01:00:45 +02:00
Shauren
a0a158b5b8 Core/Scripts: Include cleanup 2017-05-28 16:34:44 +02:00
Shauren
3d7c2ef88f Core/Game: Include cleanup, part 4 - packets and largest headers (after preprocessing, except player/objectmgr) 2017-05-21 23:18:43 +02:00
Gacko
506de19495 Game/SAI: Negate p instead of using abs. 2017-05-19 17:44:43 +02:00
Gacko
82d93f7712 Fix non-PCH build. 2017-05-19 17:38:45 +02:00
Shauren
c5d3dd90be Core/Game: Include cleanup
* Mostly aimed at removing Log/DatabaseEnv includes from other headers
* Fix most packet headers including other packet headers - moved common structures such as ItemInstance to their own files
* Moved SAI function definitions to source files (massive or requiring many different dependencies)
2017-05-18 23:53:25 +02:00
Shauren
9299e9bde0 Core/Grids: Ported cmangos/mangos-wotlk@ea99457e50 2017-05-13 19:37:33 +02:00
joschiwald
2abfaecf0c Core/SAI: Fixed memory leak 2017-05-06 12:27:45 +02:00
Aokromes
abc8fe123b Core/SmartAI: Missing parts on previous commit
By Malcrom
2017-03-26 01:07:09 +01:00
Aokromes
7b7c90d4fb Core/SmartAI: Implement SMART_TARGET_VEHICLE_ACCESSORY
By Malcrom
2017-03-23 04:12:56 +01:00
Aokromes
464ba05dd4 Core/SmartAI: Add check to SMART_ACTION_PLAY_ANIMKIT to allow zero value to remove animKit.
By Malcrom
2017-03-21 23:27:07 +01:00
Traesh
01ded93a42 Core/AI: enable SmartScripts on Scenes + add scene related actions/events
Closes #19194
2017-03-17 21:21:35 +01:00
Lopfest
61547cab59 Core/SAI: added new action SMART_ACTION_PLAY_ANIMKIT (#19170) 2017-03-11 13:39:38 +01:00
treeston
59d48ce7e4 Core/Movement: Add new SplineChainMovementGenerator that allows accurate replication of sniffed waypoints in static sequences, along with DB facilities that allow loading of waypoints from DB.
(cherry picked from commit 6d00d3f283)

Merge remote-tracking branch 'Treeston/3.3.5-splinechains' into 3.3.5 (PR #17946)
(cherry picked from commit 20f483967f)

Core/Movement: Add a convenience default ctor to SplineChainResumeInfo, and fix PCH build in some configurations (zzz why do we even keep Appveyor and Travis around).
(cherry picked from commit 4fa646c0b2)

PCH build fix. Again.

(( Alright, you made me waste 20 minutes of my life on a full nonPCH rebuild of the core now. ))
(( I hope you're happy. ))
(cherry picked from commit 4a1a460241)
2017-03-01 22:03:35 +01:00
SnapperRy
1b288ebbdd Core/SmartAI: do not target player's group for SMART_ACTION_CALL_AREAEXPLOREDOREVENTHAPPENS.
SMART_TARGET_INVOKER_PARTY or SMART_ACTION_CALL_GROUPEVENTHAPPENS should instead be used to achieve this functionality.

(cherry picked from commit 6586885bca)
2017-02-26 21:31:16 +01:00
treeston
9c36dd7e94 AI/SmartAI: Fix an issue where SmartAI creatures would not properly follow their owner on evade. Also fix a bug where creatures with INHABIT_ROOT would get stuck in evade under certain conditions.
This allows us to fix quest 12261 (No Place to Run). Closes #16291.

(cherry picked from commit e69a483aa9)

Derp. Build fix.
(cherry picked from commit 9180bcd404)
2017-02-26 15:30:15 +01:00
ariel-
b239afb0ef Core/Misc: calculate rotation fields from orientation in some places it's impossible to get:
- SmartScripts: SMART_ACTION_SUMMON_GO
- Spell Effects:
  * SPELL_EFFECT_DUEL
  * SPELL_EFFECT_SUMMON_OBJECT_WILD
  * SPELL_EFFECT_SUMMON_OBJECT_SLOT1
  * SPELL_EFFECT_SUMMON_OBJECT_SLOT2
  * SPELL_EFFECT_SUMMON_OBJECT_SLOT3
  * SPELL_EFFECT_SUMMON_OBJECT_SLOT4
- Command Scripts: .gobject add

Closes #17891

(cherry picked from commit 14445d2202)
2017-02-19 15:34:57 +01:00
treeston
5654fb9343 Merge branch '3.3.5-goshdangitsmartai' into 3.3.5 (PR #17738)
(cherry picked from commit e9eacae7b2)

Core/SmartScripts: Add missing break, 5f43e7b follow-up.
(cherry picked from commit a4623efaa6)
2017-02-19 15:07:42 +01:00
Shauren
5dbe9e7890 Core/Creatures: Implemented all creature equipment modifiers
* It is now possible to give creatures a mythic/heroic weapon

Closes #19160
2017-02-19 10:58:08 +01:00
treeston
bbbf8df8e5 Entities/Gossip: The Big One™ that gets rid of all uses of The Bad™ and The Ugly™, e.g. gossip preprocessor macros, and replaces them with the new-and-shiny gossip functions.
(cherry picked from commit d55426f5b4)
2017-02-18 17:50:00 +01:00
ariel-
c04384b691 Core/SmartAI: fix warning reported by VS2015
(cherry picked from commit 83c032c2a8)
2017-02-18 15:49:06 +01:00
SnapperRy
8220496be1 Core/SmartAI: allow SMART_TARGET_OWNER_OR_SUMMONER to target a temporary summon's summoner, too (#17851)
Core/SmartAI: allow SMART_TARGET_OWNER_OR_SUMMONER to target a temporary summon's summoner, too
(cherry picked from commit 1fcd03b60a)
2017-02-18 14:47:01 +01:00
SnapperRy
6ea973adec Core/SmartAI: add param2 to SMART_ACTION_UPDATE_TEMPLATE, allowing to specify if creature's level should remain the same between entry updates.
A value of 0 (default) forces the creature to keep its current level between entry updates.

Fixes #16371

(cherry picked from commit a6ef9d4539)
2017-02-18 14:47:01 +01:00
treeston
573cb9d20f AI/SmartScripts: SMART_ACTION_ADD_QUEST -> SMART_ACTION_OFFER_QUEST. Open quest offer instead of adding straight to log - old behavior can be requested using action_param2. Closes #17735.
(cherry picked from commit ba4d6f6393)
2017-02-12 16:07:27 +01:00
treeston
7b13e98327 AI/SmartScripts: Add param3 to SMART_ACTION_CAST and SMART_ACTION_INVOKER_CAST that allows specific triggered flags to be set (rather than all-or-nothing). Ignored if SMARTCAST_TRIGGERED is not set.
(cherry picked from commit 9072e0221b)
2017-02-12 15:50:43 +01:00
treeston
b18b05ee4a AI/SmartScripts: Add SMART_ACTION_DISABLE_EVADE (117).
(cherry picked from commit 14b44af38d)
2017-02-12 15:46:58 +01:00
treeston
d0f4588652 Core/SmartScripts: Add SMART_TARGET_LOOT_RECIPIENTS. Does what it says on the tin.
Use this new target type to fix The Rider of Blood, The Rider of Frost, The Rider of the Unholy. Closes #17817.

(cherry picked from commit e2c915fb43)
2017-02-12 15:46:19 +01:00
treeston
8d7ab10efa Scripts/SmartAI: Some clean-up work:
- NULL -> nullptr
- Rename "AssistPlayerInCombat(who)" to "AssistPlayerInCombatAgainst(who)" to reflect what the method actually does
- Code style

No functionality was changed.

(cherry picked from commit 152b3ad5b9)

# Conflicts:
#	src/server/game/AI/SmartScripts/SmartAI.cpp
#	src/server/game/AI/SmartScripts/SmartScript.cpp
2017-02-11 22:34:59 +01:00
ariel-
c429e7d489 Core/Entities: debloat SummonGameObject parameter list using proper wrappers and enable GO rotation in scripts
- There's still an overload allowing for x, y, z, o to be passed directly
- Fixed default animstate for GameObject creation in many places, it should be 255, not 100 (checked in sniffs)

(cherry picked from commit 62bfee37cb)

# Conflicts:
#	src/server/game/Battlefield/Battlefield.cpp
#	src/server/game/Battlegrounds/Battleground.cpp
#	src/server/game/Entities/GameObject/GameObject.cpp
#	src/server/game/Entities/GameObject/GameObject.h
#	src/server/game/Entities/Object/Object.cpp
#	src/server/game/Entities/Object/Object.h
#	src/server/game/Spells/SpellEffects.cpp
#	src/server/scripts/Commands/cs_gobject.cpp
#	src/server/scripts/EasternKingdoms/SunkenTemple/instance_sunken_temple.cpp
#	src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp
#	src/server/scripts/Kalimdor/zone_feralas.cpp
#	src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
#	src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp
#	src/server/scripts/OutdoorPvP/OutdoorPvPSI.cpp
2017-02-11 20:50:29 +01:00
SnapperRy
3e74109857 Core/SmartAI: change SMART_ACTION_RISE_UP (114) to SMART_ACTION_MOVE_OFFSET and implement offset movement via target fields. (#17362)
(cherry picked from commit ba0cb53b02)

Rename 9999_99_99_99_world.sql to 2016_07_15_07_world.sql
(cherry picked from commit 2fd124f9a3)
2017-02-05 17:45:07 +01:00
Aokromes
927561c4cf DB/Quest: fix availability for some quests
Closes #17371 by SnapperRy
(cherry picked from commit a307157dac)
2017-01-29 20:45:47 +01:00
ariel-
d40c151cc8 Core/Scripts: Extended SMART_ACTION_SET_INST_DATA to also set BossStates. (#16739)
Scripts/Dire Maul: Initialize boss states array so it may be called from SmartAI. (Ref #6429)
(cherry picked from commit d1d0c64ad1)

# Conflicts:
#	src/server/game/AI/SmartScripts/SmartScriptMgr.cpp
2017-01-29 18:04:10 +01:00
Snapper
36a896e28a Core/SmartAI: delay SMART_ACTION_FLEE_FOR_ASSIST if creature is rooted/stunned.
Prevents creatures from teleporting around when fleeing while stunned/rooted.

(cherry picked from commit aaf10dccb0)
2017-01-12 23:17:37 +01:00
treeston
1a7b4fbe4d AI/SmartScripts: Add action_param3 "disablePathfinding" to SMART_ACTION_MOVE_TO_POS (69).
(cherry picked from commit 123e45c119)
2017-01-12 00:07:29 +01:00
Snapper
fbb9fc0228 Core/SmartAI: remove unneeded check for SMART_ACTION_FORCE_DESPAWN.
Gameobjects do not need to use SmartAI in order to be targeted by other entities' scripts.

(cherry picked from commit 9803e58392)
2017-01-12 00:02:29 +01:00
ForesterDev
5c2705fadc Core: updated creature type flags enum (#17128)
Core/Misc: Update CreatureTypeFlags enum according to TrinityCoreWiki
(cherry picked from commit fb0881398a)

# Conflicts:
#	src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp
#	src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp
#	src/server/game/AI/SmartScripts/SmartAI.cpp
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Miscellaneous/SharedDefines.h
2017-01-09 02:00:17 +01:00
treeston
489027703e Entities/Unit: Finally fix no-path evasion.
- When a creature cannot find a path to its victim, it begins evading all attacks and regenerating health.
- If this persists for 5 seconds, it evades back to spawn position with new EvadeReason value EVADE_REASON_NO_PATH.
- Also some SmartAI cleanup (why oh why does it have so much duplicated code) and getting rid of #defines in favor of type-checked compile-time constants.

(cherry picked from commit 7b1560fccb)
2017-01-07 21:33:28 +01:00
treeston
f93730b160 CreatureAI: Adjust AI behavior when a charm ends. OnCharmed will be invoked on the creature's base (non-charmed) AI, allowing the AI to react to the creature no longer being charmed.
(cherry picked from commit 26b084a90f)

align fix
(cherry picked from commit 58486fc19a)
2017-01-07 21:05:34 +01:00
vincent-michael
86b98686a9 Update copyright note for 2017
Happy new year
2017-01-01 16:23:13 +01:00
Shauren
d2733eb6f1 Merge branch '6.x' of https://github.com/TrinityCore/TrinityCore into legion 2016-06-13 21:00:25 +02:00
Shocker
b539ac6afa Core/GameObjects: Add isUse parameter to GossipHello for distinction between CMSG_GAMEOBJECT_USE and CMSG_GAMEOBJECT_REPORT_USE 2016-05-26 13:09:56 +03:00
Shauren
885d9b53c3 Core/DataStores: Updated dbc/db2 to 7.0.1.20994 2016-05-20 23:48:48 +02:00
Shauren
5c2c9a684f Core/DataStores: Updated dbc/db2 to 7.0.1.20810 2016-05-20 23:46:17 +02:00
Rushor
2265e33cc2 Merge pull request #16503 from Rushor/evading
[3.3.5][6.x]Core/Unit: Do not remove auras from Pets and Guardians after evading
(cherry picked from commit e869ccb297)
2016-04-28 17:20:40 +01:00
lafoniz
b4778cefce Core/SmartScripts: Improve SMART_EVENT_DISTANCE_CREATURE so it can be used with SMART_TARGET_ACTION_INVOKER
Closes #16752

(cherry picked from commit a05a871d7c)
2016-04-23 16:55:14 +02:00
MitchesD
92b74d6bdc Merge pull request #16523 from tkrokli/smart_action_set_corpse_delay
[3.3.5][6.x]Core/SmartScript: create SMART_ACTION_SET_CORPSE_DELAY
(cherry picked from commit 8e152e0d4a)
2016-04-08 23:51:18 +02:00