Commit Graph
190 Commits
Author SHA1 Message Date
Machiavelli f8c04b1bc5 Core/Movement: Fix players still able to fly on SPELL_AURA_FLY and SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED unapply.
Closes #5731
2012-03-16 17:10:01 +01:00
kaelima dce0a7d184 Core/Misc: Random cleanup 2012-03-16 08:57:42 +01:00
Kandera 01bc6c483b Core/Spells: add correct checking for dispeling errors. Fixes spammable cleanse. 2012-03-15 10:56:56 -04:00
thomas33 0532afed90 more cleanup 2012-03-13 14:53:36 +01:00
Machiavelli 03a24a84e4 Core/Units:
- Implement UNIT_FIELD_HOVERHEIGHT (requires DB data). This field, sent in update object packet, will determine the height at which a creature hovers if it has movementflag_hover applied. Note that hovering will now update the server-sided z-coordinate by the value of this field, and that all subsequent positional updates to the client will need to send z coordinate MINUS the hover height offset, or the hoverheight will be visually doubled client side.
- Correct our usage of movementflag_flying, movementflag_can_fly, movementflag_hover and movementflag_disable_gravity (previously levitate), and how they relate to InhabitType in the database. This fixes "flying creatures on steroids" bug (wings flapping too fast), and potentially a lot of visual issues in AI scripts. Note that a lot of scripts still set wrong movementflags, these need to be fixed on a case by case basis.
- Send correct packets for SPELL_AURA_FEATHER_FALL, SPELL_AURA_WATER_WALK and SPELL_AURA_HOVER apply/unapply.
- Send correct packet contents for movement update in Unit::SetSpeed.
- Misc. cleanup in affected scripts.
2012-03-12 00:53:45 +01:00
Machiavelli 6bb689b494 Core/Units: Properly update passenger position if vehicle uses waypoint movement. Fixes e.g. Icefang path 2012-03-01 17:06:41 +01:00
Shauren dc28b92415 Core: Random cleanup + compile fix 2012-02-23 13:01:16 +01:00
Venugh 1cac01b3df Core/Movement: Use SetWalk(true/false) instead of AddUnit/RemoveUnit. 2012-02-23 11:50:58 +01:00
QAston f09b5a6bea Core/Db/Conditions:
-Drop condition CONDITION_SPELL_SCRIPT_TARGET, use other condition types instead
-Change CONDITION_SOURCE_TYPE_SPELL_SCRIPT_TARGET to CONDITION_SOURCE_TYPE_SPELL_IMPLICIT_TARGET:
--allow using this condition for more spell implicit target types (not just ENTRY)
--SourceGroup value for this src type is now effMask and it's now required

Core/Spells: Unify the way implicit targets are handled, fully implement some partially implemented target types, fix some minor bugs found on the way, general improvements and cleanup.
2012-02-21 20:17:45 +01:00
QAston 9abc47736f Core/Spells: Changes in code related to spell explicit target redirection (cleanups, added target validation, prevent unexpected behaviour in some cases) 2012-02-19 00:40:55 +01:00
Giuseppe Montesanto 9a3a6c7641 Fix a bug introdouced in recent commit. 2012-02-05 21:22:01 +01:00
QAston 7be73a0667 Merge pull request #5075 from devilcoredev/fix_004
Core/AI: Fix pet and other types of minion pet attack on targets with Crowd Controls.
2012-02-05 00:13:56 -08:00
Subv2112 31615bdc86 Core/Spells: Add a new parameter to Unit::SelectNearbyTarget to allow excluding a certain unit.
closes #4989
2012-02-04 21:21:51 -05:00
QAston 6b12f39b35 Merge pull request #4821 from devilcoredev/fix_001
Core/AuraScript: Add OnDispel and AfterDispel hook to AuraScript
2012-02-04 06:09:57 -08:00
Giuseppe Montesanto 14bc551862 Fix pet/guardian and other types of minion pet attack on targets with Crowd Controls. 2012-02-04 14:59:17 +01:00
Giuseppe Montesanto 271feb587f Add hook on AuraScript called when an aura is dispelled 2012-02-04 13:32:40 +01:00
QAston 92ad375864 Core/Entities: clarify comment added in c7ea952a47 2012-02-03 22:56:42 +01:00
QAston c7ea952a47 Core/Entities: Rename UNIT_FLAG_OOC_NOT_ATTACKABLE and UNIT_FLAG_PASSIVE to UNIT_FLAG_IMMUNE_TO_PC and UNIT_FLAG_IMMUNE_TO_NPC respectively. New names tell much more about what those flags do. 2012-02-03 18:46:05 +01:00
Shocker 08be716ef8 Core/Misc: Rename UNIT_STAT_* enums to UNIT_STATE_* 2012-02-03 19:02:17 +02: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
kiper 8299627ed9 Update headers for 2012. HAPPY NEW YEAR!!! 2012-01-01 00:32:13 +01:00
megamage 8cf2062c1f Update grid system. Try to fix some crashes and transport passengers (now they are despawned after a while). 2011-12-20 17:07:09 -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
kaelima 9b7e9a1ee3 Core/Movement:
- Lower movement radius and speed when confused/disoriented.
- Force attackstop when confused or feared. Should fix issue with creatures "teleporting" after fear.

Close #2689
Close #466
Close #3743
2011-11-13 02:36:51 +01:00
tobmaps 3569f01adc Core/Spells: Fixed resist calculations for spells with multiple schools. Thx to Shauren for tips
Closes #3875
2011-11-12 04:40:44 +07:00
Bootz f75ec5ba2b Core: Codestyle clean-up
"plr"->player

Note: codestyle methods needs maintained, Player* player.
2011-11-07 11:06:39 -06:00
tobmaps 935527eebe Core/Spells: Use dbc flag to check if channeled spell can be interrupted
Closes #2292
2011-11-05 05:21:37 +07:00
tobmaps 68601bb286 Core/Spells: Use correct dbc flag to check if spell can be interrupted 2011-11-03 16:53:29 +07:00
megamage 1b8d9ec7b4 Clean up summon/remove gameobject code. 2011-10-31 10:46:39 -04:00
kaelima e16e18da23 Core/Spells: Added safe-checks for places where caster/victim can be null.
And some random cleanup
2011-10-31 01:54:44 +01:00
ille 5514523a7c use effectMask to calculate mechanicMask in ModSpellDuration 2011-10-20 18:28:37 +02:00
Liberate b268b51d0e Core/Spells: Add Block Value cap to Shield Slam and Shield of Righteousness.
Fixes #599
Fixes #2119
2011-10-19 13:00:22 +02:00
megamage bcc55489f8 More cleanup of CanSeeOrDetect 2011-10-13 14:02:07 -04:00
megamage 5912e2444d Some cleanup of CanSeeOrDetect code. 2011-10-13 13:26:27 -04:00
Chaplain 3e9611578c Core/Spells: SPELL_AURA_MOD_INCREASE_ENERGY_PERCENT improvement
*Now it'll correctly increase\decrease % of power
*Added helper function for modify power with percent ammount
2011-10-12 01:11:52 +03:00
megamage 3569121d80 Remove/Add creature from/to map when it changes map.
Note: creatures was never supposed to change map, but now the core allows them to move with transports...
2011-10-10 17:59:52 -04:00
megamage d156e066cf Rename "SetPosition" to "UpdatePosition".
Replace CreatureRelocation in scripts with new Creature::SetPosition.
2011-10-10 17:08:01 -04:00
Shauren 72fc756bff Scripts/Icecrown Citadel
* Minor corrections to Sister Svalna event
* Removed unneeded workarounds for Deathbringer Saurfang procs
* Changed GM check to use account level (makes no sense to check isGameMaster as that does not allow entering combat at all)
2011-10-08 17:39:03 +02:00
Bootz 5b4c7783c2 REPO: Code-style clean-ups
* Fixed pMap->map
* Fixed pInstance->instance
* Fixed pInsta->instance
* Fixed pQuest->quest
* Fixed pWho->who
* Fixed pTarget->target
* Fixed pGo->go

~DEVNOTES: Handlers/QuestHandler.cpp still needs to be cleaned...
2011-10-07 19:45:43 -05: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
QAston 7fa2a64290 Merge branch 'master' of https://github.com/Chaplain/TrinityCore 2011-09-27 19:19:25 +02:00
Chaplain 224bb96deb Core/Spells: Fix talent Sword Specialization. 2011-09-25 16:42:12 +03:00
Shauren da0229da8f Core/Scripts: Implemented 2 new target selectors, one specialized for spells, checking auras, range and attributes; and the other is a very simple non-tank selection what is sufficient for most cases 2011-09-24 19:40:57 +02:00
QAston cd7060c65a Core/Spells: Add more generic overload for Unit::CastSpell function and make all cast functions use it as a base. 2011-09-24 16:41:50 +02:00
QAston 580264b5a5 Core/Entities: Remove obsolete function Unit::canAttack. 2011-09-16 23:51:01 +02:00
QAston 31e755c291 Core/Entities: Add Unit::IsValidAssistTarget and Unit::IsValidAttackTarget functions for proper serverside checks of related entity flags. 2011-09-16 22:17:48 +02:00
QAston e07535c3e3 Core/Entities: Add new functions: Unit::GetReactionTo and Unit::GetFactionReactionTo for more direct reaction checks than Unit::IsFriendly/HostileTo (those functions have many duplicated code and have many checks unrelated to unit reaction). 2011-09-15 17:44:03 +02:00
Spp af05915b9e [Cosmetic] Apply codestyle "XXX * " and "XXX *" changed to "XXX* " (with some exceptions) 2011-09-15 14:12:57 +02:00
QAston 06b9ae6e11 Core/Unit: Define UNIT_FLAG_UNK_0 as UNIT_FLAG_SERVER_CONTROLLED and remove related redundant creature_template data. 2011-09-11 11:41:55 +02:00
Chaplain c190326de4 Core/Mechanic: Implement Diminishing Returns for miss\parry\dodge. Original author for parry\dodge case Lynx3d.
fixes: #2339, #2536, #887, #687 etc.
2011-09-06 18:43:55 +03:00