Commit Graph

131 Commits

Author SHA1 Message Date
linencloth
59da698189 Core: Rename spell attributes, use more general names
--HG--
branch : trunk
2010-12-19 05:15:47 +01:00
silinoron
41a9d3216c Core/Auras: Fix Cold Blood handling on misses and parries.
Patch by dr.tenma.
Fixes issue #2291

--HG--
branch : trunk
2010-12-18 13:06:38 -08:00
Shauren
82f45966fc Core/Unit: Renamed addUnitState/hasUnitState/clearUnitState to AddUnitState/HasUnitState/ClearUnitState
Core/Vehicles: Allow the vehicle to always damage the passenger (removed unneded dbc hacks from scripts)

--HG--
branch : trunk
2010-12-17 13:43:24 +01:00
azazel
d2d62eab50 Cleanup: implemented helper methods for manipulating percentage calculation and used it where appropriate (plus fixed some other warnings).
NOTE: Initially I just wanted to fix some warnings, but noticed that there is no common method for percentage calculation and various formulas are used many time in the code making it difficult to read and understand what the code actually does. So, I introduced several template methods for calculating percent values and adding those values to the original base. I replaced all the raw calculations throughout the code where found, but I could have missed something or could have made a mistake. So, please report any strange behaviour after this commit.
If you ask me why I did it: for the sake of consistency and exact understanding what code means. If you see CalculatePct method, you clearly understand, that it find the value of x percent of y. And you can easily express, for example, spell behviour "reduces smth by x%" by the means of a method instead of recalling school maths.

--HG--
branch : trunk
2010-12-11 20:37:38 +06:00
leak
855b8bcd20 Core/Spells: Prevent Mind Sear from damaging the target itself. Patch by PrinceCreed.
Fixes issue 2534

--HG--
branch : trunk
2010-12-09 21:45:04 +01:00
azazel
e7eb4e22e2 Core/Mechanics: cleanup shapeshift form code (by VladimirMangos)
--HG--
branch : trunk
2010-12-09 17:03:42 +06:00
QAston
7db1b39224 Core/Auras: backout r2bf34fd7ac and add alternative - not spell specific sollution for the problem.
--HG--
branch : trunk
2010-12-05 20:43:09 +01:00
silinoron
1b5ff62314 Core/Auras: Replenishment should stack duration, not several instances.
Patch by dr.tenma.
Fixes issue #4370.

--HG--
branch : trunk
2010-12-04 10:59:06 -08:00
Machiavelli
bbf619c20d Core/Spells: Fix spell damage/healing multipliers for spells that affect multiple targets (ie. Heart Strike, Chain Lightning, Chain Healing)
Author: dr.tenma
Closes issue #4506
Closes issue #1874

--HG--
branch : trunk
2010-12-04 10:31:14 +01:00
Shauren
e0c992a8ba Scripts/Icecrown Citadel: Added script for Blood Queen Lana'Thel
Scripts/Icecrown Citadel: Fixed Invocation of Blood announcement emote for Blood Prince Council
Scripts/Icecrown Citadel: Fixed intro for Lady Deathwhisper
Scripts/Icecrown Citadel: Fixed Bone Spike for Lord Marrowgar

--HG--
branch : trunk
2010-12-03 17:47:33 +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
Shocker
a3ade4a49a Core/Spells: Partially implement SPELL_ATTR_EX_USE_RADIUS_AS_MAX_DISTANCE. Currently used for correctly setting destination, still needs handling for shared sight removal/controlled unit despawn when max distance is reached
--HG--
branch : trunk
2010-11-14 23:31:32 +02:00
linencloth
7811c89a93 Core/MovementGenerators: Don't remove evade state when clearing unit states.
Core/Spells: Don't start combat when the target is evading.
Closes issue 1861

--HG--
branch : trunk
2010-11-13 23:51:23 +01:00
linencloth
880ef0c398 Core/Spells: Fix spelleffect sanctuary
- No longer removes every attacker, but updates the visibility
  - Using that effect won't remove attackers that can still see through the stealth of the caster based on distance
- Ignores spells that were casted before or at the same time of that effect
- Trigger other needed spells when casting Shadowmeld

--HG--
branch : trunk
2010-11-13 18:04:56 +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
2da116a417 Reverted revision d8e919eb3a7b
--HG--
branch : trunk
2010-11-09 15:39:52 +01:00
Xanadu
87b77b0ca4 Core/Items: Added a forgotten break in item enchant checks.
--HG--
branch : trunk
2010-11-08 23:43:50 +01:00
Shauren
f658176df8 Core/Spells: Enchanting items using a vellum is no longer possible in trade
Closes issue #2990.

--HG--
branch : trunk
2010-11-04 21:59:27 +01:00
Rat
e68c149e69 Core/ConditionMgr: use chamer/owner player for spell condition check where avaliable
--HG--
branch : trunk
2010-10-31 22:37:54 +01:00
Rat
9a02ae79c9 Core/Conditions: fixed a typo in logging
--HG--
branch : trunk
2010-10-31 15:39:09 +01: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
_manuel_
3ee05b26ce Core/Spells: Now you can cast the Water Elemental's Freeze without cancelling its Waterbolt.
Author: dr.tenma

Fixes issue #4215

--HG--
branch : trunk
2010-10-22 17:22:38 -03:00
Shauren
09260ee6c1 Scripts/Forge of Souls: Revisited Bronjahm script, removed ugly hacks and fixed spells properly
--HG--
branch : trunk
2010-10-18 13:19:04 +02:00
Shocker
e38e590ec8 Core/Spells: Really move spec changing InBattleground check to its correct location
--HG--
branch : trunk
2010-10-16 17:53:33 +03:00
Shauren
8a17d95647 Scripts/Icecrown Citadel: Added Professor Putricide script
Scripts/Icecrown Citadel: Fixed Professor Putricide gate opening when both Rotface and Festergut are dead
Scripts/Icecrown Citadel: Added script updating entries of NPCs at Light's Hammer depending on faction
Scripts/Icecrown Citadel: Rotface should not pick main tank as target for Slime Spray (removed debugging code)
Core/Spells/Conditions : Spell script target condition now accepts ConditionValue3 as affecting effect mask (only search targets with matching mask)

--HG--
branch : trunk
extra : rebase_source : 943e3bac5d9063974d7f7132f144e91946f825d4
2010-10-16 16:34:21 +02:00
Shauren
9a47bc96a1 Scripts/Icecrown Citadel: Added Rotface script
Scripts/Icecrown Citadel: Corrected death speech for Stinky and Festergut
Scripts/Icecrown Citadel: Fixed Boned! achievement conditions

--HG--
branch : trunk
2010-10-09 16:50:03 +02:00
QAston
1760e42e2c Core/ScriptSystem: Add compile time type check of function assigned to hooks - prevents incorrect function calls. Since this rev you have to put PrepareSpellScript(<yourscriptclassnamehere>) at the beginning of every spell script. Yes, i know it's unhandy, but unfortunately C++ preprocessor is very limited, so you have to do that extra work each time you write a script:(.
--HG--
branch : trunk
2010-10-08 21:33:44 +02:00
QAston
e5e53498ce Core/Spells:
- Add more descriptive enumerator of procflags - now clearly pointing out that proc flags are dependant to the spell dmg class of the spells causing procs.
 - Define and implement PROC_FLAG_DONE_MAINHAND_ATTACK.

--HG--
branch : trunk
2010-10-08 19:17:49 +02:00
click
f0c4241ea4 Remove the accidental additions of CRLF-crap from the header updates
--HG--
branch : trunk
2010-10-07 15:35:36 +02:00
click
8ea4b32fab Update copyright headers (following the same standard in all files = good)
--HG--
branch : trunk
2010-10-07 12:41:56 +02:00
QAston
cac4cfda42 Core/ScriptSystem: Add missing script call preparation for SpellScripts - fixes issues with core false alarms after recent changes
--HG--
branch : trunk
2010-10-05 08:17:10 +02:00
QAston
69057dcaeb Core/ScriptSystem/SpellScripts: Runtime checks for functions working only during spell hit phase
--HG--
branch : trunk
2010-10-04 19:12:20 +02:00
QAston
caaa77deb2 Core/ScriptSystem:
Add basic code for runtime checks of function calls in AuraScripts
 Make AuraScript::PreventDefaultAction() do not take parameters and add description for the function
 Remove PreventDefaultEffect() from aura script, use PreventDefaultAction() instead
 Unload aura scripts memory on aura delete

--HG--
branch : trunk
2010-10-04 17:44:49 +02:00
Xanadu
eb1b037611 Core/Spell: * Removed proc overrides for some AoE spells that really shouldn't be there on WotLK. Fixes all Improved Blizzard procs and breaking stealth by Blizzard, Volley, Hurricane, RoF.
* Closes issue #3100. Closes issue #3711. Makes dr.tenma smile.

--HG--
branch : trunk
2010-09-29 01:50:07 +02:00
Shauren
fe84720720 Core/Spells: Fixed compile warnings added in previous revision
--HG--
branch : trunk
2010-09-28 18:57:19 +02:00
Shauren
956f9115dc Core/Spells: Moved checking if item has USE: effect to Spell::CheckItems (from effect handler), also generates blizzlike error message now
--HG--
branch : trunk
2010-09-28 18:50:38 +02:00
Shocker
f106db551b Forgotten file from previous commit regarding magic numbers cleanup
--HG--
branch : trunk
2010-09-28 08:41:24 +03:00
linencloth
a582ab9d9d Core/Spells: Allow AoE spells to target dead units.
Also removes some unneeded checks from ally targeting.

--HG--
branch : trunk
2010-09-15 06:33:38 +02:00
Shocker
cdd8f446fa Core/Spells: combo points requirement should be changed before CheckCast
--HG--
branch : trunk
2010-09-14 13:28:25 +03:00
Shocker
5e7bec0268 Core/Spells: Triggered spells should ignore combo points check, fixes issue 4006
--HG--
branch : trunk
2010-09-14 12:56:32 +03:00
Shocker
cbe95da41a Core/Spells: Correct meaning & usage of SPELL_ATTR_EX2_NOT_RESET_AUTOSHOOT (now SPELL_ATTR_EX2_NOT_RESET_AUTO_ACTIONS) to ignore timer reset for both melee swings and ranged autoshoots, fixes issue 2639
--HG--
branch : trunk
2010-09-12 23:52:37 +03:00
click
bf664b7a44 Cleanup/Core: Remove whitespace and tabs
--HG--
branch : trunk
2010-09-12 01:40:27 +02:00
Shocker
61075d5101 Core/Spells: Correct check for starting cast while moving, thanks havenard for pointing out, fixes issue 3913
--HG--
branch : trunk
2010-09-10 15:51:31 +03:00
Shocker
a0ffc6ab86 Core/Spells: Triggered spells should be ignored when checking death state at spell cast, fixes issue 3914
--HG--
branch : trunk
2010-09-09 15:44:24 +03:00
Shauren
5c13a08d87 Core/Spells: Fixed The Art of War procing only on melee attacks, by tassader1000
Core/Spells: Added missing change in previous revision

Closes issue #2386.

--HG--
branch : trunk
2010-09-08 11:22:51 +02:00
Shauren
e5d612d339 Core/Spells: Fixed Taste for Blood and Glyph of Overpower after recent combo point changes
--HG--
branch : trunk
2010-09-08 10:59:10 +02:00
Shocker
01c2a6d87c Core/Spells: Don't allow most spells to be casted while dead
--HG--
branch : trunk
2010-09-08 07:01:55 +03:00
Shocker
96812cfa27 Core/Spells: Fix ammo depletion handling
--HG--
branch : trunk
2010-09-08 05:39:24 +03:00
Shocker
948c1f0fd6 Core/Spells: Add server-side check for not allowing non-instant spells with movement interrupt flag to be casted while moving
--HG--
branch : trunk
2010-09-08 04:15:41 +03:00
Shocker
5f3ec4366d Core/Spells: Add server-side check for spells that require combo points to prevent exploits
--HG--
branch : trunk
2010-09-08 01:35:36 +03:00