Commit Graph

159 Commits

Author SHA1 Message Date
Subv2112 8362e21b2a Merge branch 'master' of https://github.com/TrinityCore/TrinityCore 2012-01-22 08:04:39 -05:00
Subv2112 a3f595ee10 Core/SAI: Implemented SMART_ACTION_SEND_TARGET_TO_TARGET, it can be used to send targets previously stored with SMART_ACTION_STORE_TARGET, to another npc, the other npc can then access them as if it was its own stored list
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-22 07:54:32 -05:00
Vincent-Core c37afafbbf Core/SmartAI: Fix target type SMART_TARGET_INVOKER_PARTY 2012-01-22 01:49:53 +01:00
Subv2112 07b1101a63 Core/SAI: Run mode should be disabled by default in creatures with SAI
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-21 18:54:05 -05:00
Machiavelli dbbac0bdaa Core/Movement: Implement spline movement subsystem.
Spline movement controls movements of server-side controlled units (monster movement, taxi movement, etc).
Proper implementation of effects such as charge, jump, cyclic movement will rely on it.
However, need improve our states system before.

Technical changes:

* Added linear, catmullrom and bezier3 splines which based on client's algorthims. They can be reused for proper transport position interpolation.
* Precission increased. There are no more position desync issues since client's position calculation formulas used.
* Now possible to move by paths with multiple points, send whole path to client.

--
Original author of research and implementation: SilverIce. Massive kudos.
Original port for Trinity (ref #4629) Chaplain and Venugh
With the following incremental fixes during my review:

- Restore flightmaster end grid pre-loading
- Fix uninitialized Creature::m_path_id
- Add missing trinity_string entries for .movegens command
- Fix a bug in WaypointMovementGenerator that would trigger unexpected pausing at waypoints for various amounts of time

Known issues:
- Errors like WaypointMovementGenerator::LoadPath creature XXX (Entry: YYYYY GUID: ZZZZZZ) doesn't have waypoint path id: 0.
This is caused by bad DB data. This commit didn't "break" it.

Do not forget to re-run CMake before compiling.
2012-01-14 15:36:07 +01:00
Machiavelli 5a504f94f7 Merge pull request #4700 from Subv/fix001
Core/SAI: Implement SMART_EVENT_GO_STATE_CHANGED and SMART_ACTION_GO_SET_LOOT_STATE
2012-01-07 11:24:53 -08:00
Subv2112 ddb4f0ce5b Core/Build: Fixed compile 2012-01-07 13:20:59 -05:00
Subv2112 3c4678085c Core/SAI: Removed unused variable: mResumeActionList
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-06 22:31:38 -05:00
Subv2112 a40839fd7b Core/SAI: Changed SMART_ACTION_CALL_TIMED_ACTIONLIST params, now it has only 2, id and timerType
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-06 22:29:26 -05:00
Subv2112 15d8763478 Core/SAI: Fixed the crash with using SMART_ACTION_ATTACK_START inside a TimedActionList, closes #4650
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-06 22:24:11 -05:00
Subv2112 7f977c28b6 Core/SAI: Fixed the behaviour of SmartAI::RemoveAuras, it should only remove the auras that are applied on the unit by casters other than the unit
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-06 20:50:05 -05:00
Subv2112 aaa255b83d Core/SAI: Implemented SMART_EVENT_GO_STATE_CHANGED and SMART_ACTION_GO_SET_LOOT_STATE
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-06 11:09:01 -05:00
Subv2112 235b941964 Fixed a typo
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-05 19:46:46 -05:00
Subv2112 d889edb436 Core/SAI: Self-casted auras should not be removed when the NPC resets
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-05 15:09:55 -05:00
Subv2112 8197c37a92 Vehicles with SAI should not kick their passengers when resetting
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-05 12:11:58 -05:00
Subv2112 7b094faa85 Core/SAI: SMART_ACTION_MOVE_TO_POS should not overwrite the effects of SMART_ACTION_SET_RUN
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2012-01-03 16:13:34 -05:00
kiper 8299627ed9 Update headers for 2012. HAPPY NEW YEAR!!! 2012-01-01 00:32:13 +01:00
leak 73cf793e56 Core/DBLayer: Refactor prepared statement defines Note:
The new format for the middle section is a 3-letter upper case abbreviation of the sql command being executed (select -> SEL, update -> UPD, etc.)
{DB}_{SEL/INS/UPD/DEL/REP}_{Summary of data changed}
2011-12-31 20:14:38 +01:00
leak ded31adfa1 Core/SAI: Restore build 2011-12-30 19:01:22 +01:00
Subv2112 bbfb21022f Fixed compile, thanks Lopin for pointing out 2011-12-28 07:10:59 -05:00
Subv2112 d7266c3cae Core/SAI: Added also SMART_TARGET_OWNER_OR_SUMMONER to SMART_ACTION_MOVE_TO_POS.
Codestyle

Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2011-12-27 20:37:42 -05:00
Subv2112 645a10d76f Core/SAI: Added support for SMART_TARGET_CREATURE_RANGE, SMART_TARGET_CREATURE_GUID, SMART_TARGET_CREATURE_DISTANCE, SMART_TARGET_GAMEOBJECT_RANGE, SMART_TARGET_GAMEOBJECT_GUID, SMART_TARGET_GAMEOBJECT_DISTANCE, SMART_TARGET_CLOSEST_CREATURE and SMART_TARGET_CLOSEST_GAMEOBJECT in SMART_ACTION_MOVE_TO_POS
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2011-12-27 20:25:50 -05:00
Subv2112 c145c67331 Core/SAI: Enabled SMART_TARGET_STORED
Signed-off-by: Subv2112 <s.v.h21@hotmail.com>
2011-12-27 20:23:55 -05:00
Machiavelli 6c03bf9535 Core/Misc: Some random meaningless Engrish to English conversion in a method name because Discovered is too lazy to do it himself. 2011-12-19 22:06:29 +01:00
Machiavelli aefbc5701c Core/SAI: Remove an improper value in case switch.. no idea when/how/why that got there, but it's conflicting with recent changes. 2011-12-11 19:04:21 +01:00
Machiavelli 1b2c413933 Core/SAI: Preliminary implementation of SMART_EVENT_GAME_EVENT_START and SMART_EVENT_GAME_EVENT_END {param1: game_event.entry} 2011-12-11 16:23:43 +01:00
kaelima b10477a166 Core/SmartAI: Fixed crashes when using timed actionlist for gameobjects. 2011-12-10 13:44:06 +01:00
Machiavelli f5b3553bb3 Core/SAI: Typo in second param of SMART_ACTION_SEND_GOSSIP_MENU. This is npc_text_id, not gossip_option_id. Wiki needs to be updated accordingly.
Thanks to Prodigy for pointing out.
2011-12-06 12:37:05 +01:00
kaelima a919265623 Core/DB: Fix character creation in Player::SaveToDB.
And some misc comments/whitespaces
2011-11-26 01:53:44 +01:00
Shauren 638693e78f Core: Fixed more warnings (C6246: Local declaration of 'x' hides declaration of the same name in outer scope.) 2011-11-23 17:55:16 +01:00
kaelima 17e1f8a0d5 Core/SmartAI: Remove the requirement for only players to trigger SMART_ACTION_SOUND.
Closes #517
2011-11-13 06:40:14 +01:00
kaelima bfdceaf07e Core/SmartAI: Initialized player pointer before use
Should fix #3757
2011-10-31 13:35:06 +01:00
kaelima 3d4d147196 Core/SmartAI:
- Drop useless actions SMART_ACTION_ENTER_VEHICLE, SMART_ACTION_LEAVE_VEHICLE and SMART_ACTION_REMOVE_PASSENGERS.
(Vehicles are aura-driven, just remove or add the proper aura to achieve the same as these actions did)
- Fixed possible crash in SMART_ACTION_SEND_GOSSIP_MENU
- Areatriggers should not be triggered by dead players
2011-10-31 02:01:17 +01:00
Nay 0b51b4ef0a Core/SAI: SMART_ACTION_TALK, if our action target is a player, use its guid as whisperGuid (used in whispers and in text $vars) 2011-10-30 14:26:49 +00:00
Nay f17879d423 Core/SAI: Add input validation (params) to certain target types and update target comments 2011-10-30 13:12:39 +00:00
kaelima f958fdf246 Core/SmartAI: Add actions SMART_ACTION_LEAVE_VEHICLE and SMART_ACTION_REMOVE_PASSENGERS.
Fix maxdist for SMART_TARGET_CLOSEST_PLAYER.
2011-10-25 23:50:00 +01:00
kaelima 6ca1487c48 Core/SmartAI: Fix target type SMART_TARGET_CLOSEST_PLAYER 2011-10-25 21:43:24 +01:00
kaelima 199bcf1a88 Core/SmartAI: Allow SMART_ACTION_FOLLOW to take 0 values for dist and angle - will set them to their "default" following values. 2011-10-25 19:08:21 +01:00
kaelima f2000f3fb5 Core/Misc: Some minor cleanups
Fixed SQL added in prev commit.
2011-10-24 23:33:17 +01:00
kaelima 3a3af64f68 Core/SmartAI:
- Fixed some issues with SMART_ACTION_SET_FLY (#1073)
- Fixed allowing 0 as input for  SMART_EVENT_ACCEPTED_QUEST and SMART_EVENT_REWARD_QUEST (#2680)
- Some cleanup
2011-10-24 23:21:34 +01:00
Shocker ce034bd544 Core/SmartAI: Delay spell cast events (SMART_ACTION_CAST) when another spell is already being casted.
Idea by ET
2011-10-23 21:34:50 +03:00
Nay fec3db6e5d Core/SAI: Fix event phases when phase > 2
Again, phase ids != phase masks
2011-10-23 17:50:31 +01:00
Nay 5f58965fad Tiny typo on previous commit. 2011-10-23 13:01:04 +01:00
Geekotron c2125ece3b Core/SAI: Add SMART_ACTION_SEND_GOSSIP_MENU.
It allows the scripter to change the gossip (and gossip menu option) of a creature with SAI
Param1 = `gossip_menu`.`entry`
Param2 = `gossip_menu_option`.`id`
2011-10-23 12:59:08 +01:00
kaelima be0b2fcf97 Core/Grid:
- Simplified CellArea calculation (Original author: SilverIce)

- Removed unused code in Cell class (Original author: SilverIce)

- Improve some Visit functions.
2011-10-19 17:40:44 +01:00
megamage c29ff41001 Rename some classes in grid system.
Note: The naming of classes is still confusing. "cell" usually refers to class "Grid", and "grid" usually refers to class "NGrid". But it requires a lot of changes to clean this up.
2011-10-18 10:53:34 -04:00
Rat e23fe1845f Core/SmartAI: Updated SMART_ACTION_RESPAWN_TARGET, should work for GOs as intented. Param1 is to set GO respawn time. 2011-10-07 14:12:09 +02:00
Nay 8373e6c32e Core/Creature: Do not attack non-combat pets.
Fixes an issue where non-combat pets were aggroing other creatures
2011-10-01 16:57:10 +01:00
Nay 0f7d9e4837 Core/SAI: Fix an issue where SAI was ignoring civilian and passive unit flags
Closes #2526
Disclaimer: This was not thoroughly tested; report any issue caused by this change.
2011-10-01 16:29:23 +01:00
Spp b16d2245bb Cosmetic: Multiple cosmetic changes
- Added missing space to 'if', 'for', 'while' and 'switch' when it's followed by '('
- Added missing space after a comma and remove space before comma (with some exceptions)
- Remove trailing spaces
- Convert tab to spaces

Note: Only affects files with extension "cpp" and "h" under /src/server
2011-09-29 12:43:05 +02:00