Commit Graph
363 Commits
Author SHA1 Message Date
Spp 408fce1de6 Core: Some optimizations
- Declare some functions const
- Fix some mem leak
- Fix some resource leak
- Remove unused variables and functions
- Remove duplicate functions
- Reduce the scope of some variables
- Remove unused file

--HG--
branch : trunk
2010-12-06 02:07:53 +01:00
Rat 3240a4ec33 Core/SmartScripts: Fix a typo in action 'set instance data'
--HG--
branch : trunk
2010-12-04 15:04:46 +01:00
_manuel_ ada9c4ae98 Core/CreatureAI: Implemented SummonedCreatureDies function for scripting, it is called when the summoner's summon dies.
--HG--
branch : trunk
2010-12-03 14:23:49 -03:00
Spp 25ac835507 Core/Groups: Move all function definition from .h to .cpp
Core/Groups: Remove Group.h dependency from any .h file

--HG--
branch : trunk
2010-11-29 07:50:31 +01:00
click b62f587c30 Core/UnitAI: Fix some warnings
--HG--
branch : trunk
2010-11-21 22:40:22 +01:00
Rat e1eae802e3 Core/SmartAI: ACTION_RANDOM_MOVE with distance = 0 should reset motion back to IDLE
--HG--
branch : trunk
2010-11-20 13:28:10 +01:00
Rat e3c6723a8d Core/SmartAI: added ACTION_RANDOM_MOVE
--HG--
branch : trunk
2010-11-20 13:23:29 +01:00
Rat c1ec8c80de Core/SmartAI: added TARGET_THREAT_LIST, uses all units from creature's threat list as targets
- modified ACTION_CALL_CASTEDCREATUREORGO to use simple targeting

--HG--
branch : trunk
2010-11-20 12:42:10 +01:00
Rat 67fa59fb68 Core/SmartAI: added ACTION_ACTIVATE_TAXI
--HG--
branch : trunk
2010-11-19 20:23:08 +01:00
Rat 3de2f6af01 Core/AI: added sOnDummyEffect() for all AIs
Core/SmartAI: added EVENT_DUMMY_EFFECT (66)

--HG--
branch : trunk
2010-11-17 23:24:21 +01:00
Rat c1614bc0f3 Core/SmartAI: use last invoker for all Talk actions, should fix $vars in texts
--HG--
branch : trunk
2010-11-16 23:03:04 +01:00
Rat f5edd6ef2a Core/AI: implemented Talk() for the 'new' textMgr
--HG--
branch : trunk
2010-11-16 19:21:48 +01:00
Spp addd762c4d Core: Fix warnings
--HG--
branch : trunk
2010-11-16 14:08:12 +01:00
linencloth 8fae0c176d Core/Units: Rename and change Get/SetVisibility to use a bool value instead of an unnecessary enum
Also replace some SetVisibility hacks to directly call UpdateObjectVisibility

--HG--
branch : trunk
2010-11-16 01:13:04 +01:00
Rat 8bb215d938 Core/SmartAI: removed depricated WP_LOAD, small fix to run-walk states when escorting, fix for escort invoker range check if no targets set
--HG--
branch : trunk
2010-11-16 00:13:47 +01:00
linencloth bf888285aa Core:
- Redesigned stealth and invisibility handling
  - Implemented the handling of multiple stealth types
- Implemented fake inebriation
- The message deliverer no longer sends packets from a non-visible source
  - The server won't send that much garbage which just takes bandwith
  - It won't be possible to use cheats to detect invisible objects
- Removed a lot of checks for the Z-coord
  - Fixes visibility problems happening while flying
- Limited the grid activation range of creatures to use less resources
- Implemented Shroud of Death
- Implemented increased visibility range for active objects
- Removed visibility check at spellhit (only sanctuary effects should prevent it)
(And a lot of other changes...)

Closes issue 4208
Closes issue 3049
Closes issue 2097
Closes issue 2198
Closes issue 2384
Closes issue 2197
Closes issue 2319

--HG--
branch : trunk
2010-11-13 17:18:09 +01:00
Shauren e3d4b36a6b Scripts/Icecrown Citadel: Fixed Vengeful Shade despawning after it casts Vengeful Blast (Lady Deathwhisper)
Core/Auras: Implemented SPELL_AURA_SET_VEHICLE_ID (296)
Core/Scripts: Moved DefaultTargetSelector class into header file

--HG--
branch : trunk
2010-11-10 12:18:43 +01:00
Rat 2ee0fda94e Core/SmartAI:
added ACTION_CALL_RANDOM_RANGE_TIMED_ACTIONLIST
added ACTION_CALL_RANDOM_TIMED_ACTIONLIST
you can now call in random timed action lists (script type 9 aka Script9)

--HG--
branch : trunk
2010-11-07 22:10:11 +01:00
Rat 044c003bdd Core/SmartAI: added ACTION_CROSS_CAST
CasterTargets will cast spellID on all Targets
NOTE: use with caution if targeting multiple * multiple units!

--HG--
branch : trunk
2010-11-07 18:34:04 +01:00
Rat 205736ea84 Core/SmartAI: added TARGET_OWNER_OR_SUMMONER, useful if you have a creature summoned by a spell, you can use Summoner as target
--HG--
branch : trunk
2010-11-07 18:02:33 +01:00
Rat 13559bde9f Core/SmartAI/Typo
--HG--
branch : trunk
2010-11-07 17:13:48 +01:00
Rat 9781bba535 Core/SmartAI: added SMART_ACTION_INVOKER_CAST, spellID, castFlags,
-if avaliable, last used invoker will cast spellId with castFlags on targets

--HG--
branch : trunk
2010-11-06 23:18:04 +01:00
Rat 3809892987 Core/SmartAI: modified ACTION_EQUIP to use a bitmask to send slot updates (for more blzzlike packet handling)
--HG--
branch : trunk
2010-11-06 23:08:33 +01:00
Rat 9b3ce64f6e Core/SmartAI: added option to reset orientation (use ACTION_SET_ORIENTATION with TARGET_SELF to reset to spawn orientation)
--HG--
branch : trunk
2010-11-05 21:34:26 +01:00
Rat be25e38144 Core/SmartAI: added SMART_ACTION_SIMPLE_TALK, param1: textID, uses the 'Targets' to say the text,
NOTE: textID is relative to the current target's entry OR if target is a player, text is used with source creature's entry

--HG--
branch : trunk
2010-11-05 19:38:43 +01:00
Rat 57661c6d54 Core/SmartAI: swap menuid/actionid params in GOSSIP_SELECT event
- use proper sql ORDER to order script lines

--HG--
branch : trunk
2010-11-04 22:08:15 +01:00
Rat 54b11cce01 Core/SmartAI: store event invoker when available, and use it for Invoker target
note: dont forget to call script_reset when script is over!

--HG--
branch : trunk
2010-11-04 19:56:39 +01:00
Rat 2604250c3c Core/SmartAI: fixed Gossip Select event
--HG--
branch : trunk
2010-11-03 19:39:53 +01:00
Rat 4747c5f820 Core/SmartAI: fixed EVENT_RANGE handling, and limited it to only creature scripts
--HG--
branch : trunk
2010-11-03 17:25:46 +01:00
Shauren f2fdcdf8f3 Core/Scripts: Added enum for generic script texts, fixed one broken text
Scripts/Icecrown Citadel: Blood-Queen Lana'Thel will no longer spawn for Blood Princes intro if they were already killed

--HG--
branch : trunk
2010-11-03 16:44:34 +01:00
Rat 6f748a76a1 Core/SmartAI: use BaseObject for guid based targeting if available
--HG--
branch : trunk
2010-11-03 16:40:12 +01:00
Rat 9df4af80f4 Core/SmartAI: added script type 9 (TimedActionList)
- interrupt spells when entering combat
- fixed reset of timers
- added npc flag modify actions
- added action to call a TimedActionList, default options are: process only OOC and resume after combat

--HG--
branch : trunk
2010-11-03 14:10:16 +01:00
Rat 7ed5f93aed Core/SmartAI: use Target types where possible, instead of simple self target
- removed some obsolete comments
- added errorlog if a special action uses a non-smart scripted creature

--HG--
branch : trunk
2010-11-02 13:13:54 +01:00
Rat d568fcf273 Core/SmartAI: remade 'Say' handler, more simple, more usable, you can now script multiple npc conversations from one script
-also added 'entry' to text_over event

--HG--
branch : trunk
2010-11-01 11:00:53 +01:00
Rat 96df97c5ae Core/SmartAI: fix logic in HAS_AURA event
note: copy-paste from eai is bad idea ..

--HG--
branch : trunk
2010-10-31 22:11:56 +01:00
Rat 75c065637c Core/SmartAI: added new target type (invoker's vehicle)
-added new action: ENTER_VEHICLE (79), param1: seatID

--HG--
branch : trunk
2010-10-31 14:21:35 +01:00
silinoron f1f1823901 Core/SmartScript: Fix a compile error.
Thanks Aokromes for telling me it existed.

--HG--
branch : trunk
2010-10-27 20:03:42 -07:00
Rat afe683aff4 Core/AI: fix debug / nix build
--HG--
branch : trunk
2010-10-27 23:19:35 +02:00
Rat 5cb119e617 Core/AI: implemented SmartScripts System (still beta) not 100% complete
WARNING: Use scripts at own risk. You were warned.
NOTE0: creature, gameobject, areatrigger type scripts should be fully functional
NOTE1: has no effect on any core related stuff if not using any SmartScript
NOTE2: all event/action/etc descriptions can be found in SmartScriptMgr.h

SmartScripts is a reloadable DB-Sript system, with full control for special scripting,
like escorting, following, complex combat handling, pre-stored AI templates(caster, turret, etc) and much more
with a total of 66 events, 78 actions, 22 target types, and can be easily extended

--HG--
branch : trunk
2010-10-27 21:01:47 +02:00
Spp 0b4abbb48e Core: Fix some warnings added in recent commits
--HG--
branch : trunk
2010-10-26 11:40:13 +02:00
Rat a792e3d67c Core/AI: added Gossip* and Quest* virtual functions to UnitAI, will be used in future system (not all functions hooked yet)
--HG--
branch : trunk
2010-10-25 18:23:45 +02:00
Rat 064b3fd2b3 Core/AI: use NullGameObjectAI for gameobjects with ScriptName
- use GameObjectAI with Transports too

--HG--
branch : trunk
2010-10-25 18:11:52 +02:00
Spp 739f336618 Core: Fix warnings
--HG--
branch : trunk
2010-10-25 11:25:42 +02:00
Shauren 42065a236e Core/Scripts: Moved HealReceived from CreatureAI to UnitAI and added HealDone and removed creature-only restriction
--HG--
branch : trunk
2010-10-25 11:12:47 +02:00
Shauren 4f5a60c487 Core/Scripts: Moved DamageDealt and DamageTaken down from CreatureAI to UnitAI
--HG--
branch : trunk
2010-10-24 22:12:35 +02:00
Shauren ae58481c21 Core/Entities: Remove circular dependencies from GameObject headers, fixes *nix compile
--HG--
branch : trunk
extra : rebase_source : bcedd4aed81ad6fb72a13607cf954c11356bbfcc
2010-10-24 22:03:53 +02:00
Shauren d03aeab9ad Scripts/Icecrown Citadel: Added Blood Prince Council script
Scripts/Icecrown Citadel: Festergut will not cast Vile Gas on melee targets if there are at least 3 (25 man: 8) ranged targets
Scripts/Icecrown Citadel: Festergut and Rotface gates will close with delay (when Putricide reaches the balcony)
Scripts/Icecrown Citadel: Replaced ASSERT(instance) with code disabling the AI if not inside instance
Core/Spells: Fixed TARGET_DEST_TARGET_RANDOM usage
Core/Scripts: Extended DamageDealt in AI to accept damage type as 3rd parameter
Scripts/Quests: Fixed quest "Unholy Infusion" (24749)

--HG--
branch : trunk
2010-10-24 21:27:02 +02:00
Rat 62739ed26f Core/AI: implemented basic class for GameObjectAI
--HG--
branch : trunk
2010-10-23 23:31:37 +02:00
Rat ee32b4b39a Core/Objects: added ToUnit(), ToGameObject() (will be used in future)
Core/Unit:
- added SetFacing() function, using proper packet implementetion (spline type)
- added GetAuraCount() function (will be used in future)
Core/Creature: renamed one unknown type_flag

--HG--
branch : trunk
2010-10-17 21:14:08 +02:00
Shauren 909897657f Core/Scripts: Fixed DefaultTargetSelector aura check, patch by bytewarrior
Closes issue #4375.

--HG--
branch : trunk
2010-10-09 20:14:22 +02:00