Commit Graph
2134 Commits
Author SHA1 Message Date
Ovahlord 1b91ed5424 Core/Spells: no longer round PPM chance calculation results and stay more faithful to the original formula 2021-09-11 17:13:03 +02:00
Ovahlord 60c68dacca Core/Spells: moved avoidance bonus handling to Unit::SpellDamageBonusTaken as it does affect all area attacks instead of periodic auras only 2021-09-01 21:26:12 +02:00
Ovahlord 3506dae653 Core/Spells: ported PROC_FLAG_ENTER_COMBAT implementation from master branch and handle the Worgen transformation via its proc aura 2021-08-30 19:24:36 +02:00
Ovahlord 7ac3d6fca9 Core/Players: Worgen will now transform into their altered form at engage instead of at dealing or taking damage 2021-08-29 18:36:33 +02:00
Ovahlord a5caf1af95 Core/Units: removed now unused attacker argument from Unit::GetUnitCriticalChanceTaken 2021-08-29 02:13:16 +02:00
Ovahlord fd815dfe33 Core/Units: remove an incorrect check for SPELL_AURA_MOD_CRIT_CHANCE_FOR_CASTER from Unit::GetUnitCriticalChanceTaken as that aura is only being involved for increasing crit chance values for spells with a class mask value 2021-08-29 01:52:39 +02:00
Ovahlord 4c6cfee2dd Core/Units: normalize melee damage while in bear or cat form 2021-08-29 00:19:06 +02:00
Ovahlord 0dfa919f09 Core/Creatures: optimized sparring checks by handling them via variable instead of map lookups and expose its value to helpers to allow manipulation during runtime 2021-07-26 15:48:16 +02:00
Ovahlord 7bd1afe406 Core/Units: corrected check for SPELL_ATTR7_CANT_MISS in Unit::MagicSpellHitResult
thx to @Jildor for the headsup
2021-07-23 19:44:14 +02:00
Ovahlord 8011d2de29 Core/Spells: ported resistance and immunity updates from 3.3.5 branch 2021-06-12 14:10:44 +02:00
Ovahlord 6617ce0ffd Core/Spells: fixed an UI visual glitch that was showing a spell as still being processed when it has been queued up and replaced by a 2nd request 2021-05-24 17:55:41 +02:00
Ovahlord 4430863a1e Core/Spells: Implement spell queue
As of patch 4.1 spell casts can now be queued up 400ms before a ongoing cast finishes or the global cooldown expires to deliver a smooth transitions between casts though emulators do not really benefit from it.

closes #224
2021-05-24 17:14:55 +02:00
Ovahlord 1325c8cb97 fixed a warning 2021-05-23 13:49:54 +02:00
Ovahlord 254b4eb011 Core/Spells: Drain Life's healing effect will no longer benefit from Soul Siphon and updated Soul Siphon's bonus check to Cataclysm 2021-05-23 12:59:39 +02:00
Ovahlord b5994ec6c5 Core/Units: improved logic for determining when a power update shall happen 2021-04-30 16:48:26 +02:00
Shauren 22eaf31bfa Core/Spells: Only interrupt spells with interrupt flag Combat when spell also has SPELL_ATTR0_CANT_USED_IN_COMBAT attribute 2021-04-29 20:37:18 +02:00
Shauren f3e0650886 Core/PacketIO: Reduce size of SMSG_UPDATE_OBJECT by trimming trailing zeros in values updatemask 2021-04-25 17:22:58 +02:00
Ovahlord 9ff4bbd085 Core/Spells: ported implementations of SPELL_AURA_DISABLE_CASTING_EXCEPT_ABILITIES and SPELL_AURA_DISABLE_ATTACKING_EXCEPT_ABILITIES from master branch
closes #93
2021-04-21 18:51:34 +02:00
ariel- 5c882e8788 Core/Unit: fixed Global cooldown cancelation on spell interrupt 2021-04-16 20:41:20 +02:00
Ovahlord b82943eab0 Core/Spells: renamed SPELL_ATTR5_HASTE_AFFECT_DURATION to SPELL_ATTR5_SPELL_HASTE_AFFECTS_PERIODIC and renamed SPELL_ATTR8_UNK17 to SPELL_ATTR8_HASTE_AFFECTS_DURATION 2021-04-16 16:12:58 +02:00
Ovahlord eca1b5bcaa Core/Units: fixed comma based calculations for rewarding rage 2021-04-09 19:27:44 +02:00
Ovahlord 4faabd8e18 Core/Units: refactor MeleeSpellMissChance to use a SpellInfo argument instead of using spell IDs 2021-04-07 14:20:35 +02:00
Ovahlord 2165580350 Core/Units: fixed a inversed logic mistake when determining when to remove auras with SpellAuraInterruptFlags::UnderWater 2021-04-07 13:58:41 +02:00
Ovahlord c13c2ec421 Core/Spells: renamed SPELL_ATTR3_BLOCKABLE_SPELL to SPELL_ATTR3_COMPLETELY_BLOCKED and corrected its implementation 2021-04-07 13:22:19 +02:00
Ovahlord 51d5ad93cf Fixed build 2021-04-07 12:41:15 +02:00
Ovahlord 71356d7971 Core/Spells: added missing SPELL_ATTR10_IGNORE_POSITIVE_DAMAGE_TAKEN_MODS check to SpellBaseDamageBonusTaken 2021-04-07 12:40:05 +02:00
Ovahlord eb22ea3af3 Core/Units: added a missing check for SPELL_ATTR10_IGNORE_POSITIVE_DAMAGE_TAKEN_MODS when checking for SPELL_AURA_MOD_DAMAGE_PERCENT_TAKEN 2021-04-07 12:31:52 +02:00
Ovahlord 47ad0286b1 Core/Units: added a missing spell id check in MeleeSpellMissChance 2021-04-07 12:26:29 +02:00
Ovahlord c927bb7924 Core/Units: fixed a typo in MeleeDamageBonusTaken 2021-04-07 12:21:11 +02:00
Ovahlord 6052573c87 Core/Spells: defined and implemented SPELL_ATTR7_CANT_DODGE, SPELL_ATTR7_CANT_PARRY, SPELL_ATTR7_CANT_MISS, SPELL_ATTR8_CANT_BLOCK, SPELL_ATTR10_ALLOW_DEFENSE_WHILE_CASTING and SPELL_ATTR10_ALLOW_DEFENSE_WHILE_CHANNELING 2021-04-07 12:17:48 +02:00
Ovahlord 3fd333cff9 Core/Spells: defined and implemented SPELL_ATTR10_IGNORE_POSITIVE_DAMAGE_TAKEN_MODS 2021-04-07 11:38:23 +02:00
Ovahlord 83298b52a2 Core/Spells: ported SpellInterruptFlags updates from master branch and corrected some own implementations based on these new results 2021-03-25 15:53:26 +01:00
Ovahlord ca13843290 fixed build 2021-03-24 15:24:39 +01:00
Shauren fed82c1002 Core/Auras: Defined and implemented many new interrupt flags 2021-03-24 14:53:30 +01:00
Shauren 45df49c826 Core/Spells: Updated spell shapeshift form flags enum 2021-03-24 13:16:17 +01:00
Ovahlord c1cb11c19f Core/PacketIO: implement and enable SMSG_PLAY_SPELL_VISUAL 2021-03-12 21:56:15 +01:00
Ovahlord bc0703e55c Core/Units: fixed more static analysis issues 2021-03-11 19:53:48 +01:00
Ovahlord 218dff6847 Core/Units: further improvements for 7a08639397
Fixed an edge case in which units with SPELL_AURA_MOD_DAMAGE_FROM_MANA would deal zero damage when their total bonus or scaling coefficient would be zero
2021-02-28 17:24:04 +01:00
Ovahlord 7a08639397 Core/Units: fixed a typo that was causing units without mana to deal no spell damage anymore 2021-02-28 16:59:12 +01:00
Ovahlord 2711267480 Core/Spells:
* handle PLAYER_FIELD_MOD_HEALING_DONE_PCT in SPELL_AURA_MOD_HEALING_DONE_PERCENT
* handle PLAYER_FIELD_MOD_HEALING_PCT in SPELL_AURA_MOD_HEALING_PCT
2021-02-27 19:07:39 +01:00
Ovahlord cd1de5078d Core/Spells: improve implementation of SPELL_AURA_MOD_DAMAGE_FROM_MANA 2021-02-27 16:05:38 +01:00
Ovahlord ba26ff03ba fixed another warning 2021-02-27 13:49:28 +01:00
Ovahlord 6e3539df30 Core/Spells:
* corrected implementation of SPELL_AURA_MOD_SPELL_POWER_PCT
* ported implementation of SPELL_AURA_OVERRIDE_SPELL_POWER_BY_AP_PCT from master branch
* dropped some deprecated class script handlings and moved Nourish 20% healing bonus to spell script
2021-02-27 12:37:14 +01:00
Ovahlord 14cf32da88 Core/Spells: minor cleanup for ad175f11f6 2021-02-27 00:17:01 +01:00
Ovahlord ad175f11f6 Core/Spells: renamed SPELL_AURA_MOD_HEALING_FROM_TARGET_HEALTH to SPELL_AURA_MOD_HEALING_DONE_PCT_VERSUS_TARGET_HEALTH and make its implementation look a bit prettier 2021-02-26 23:33:56 +01:00
Metalaka 4343dd6d55 Core/Unit: Improve Glancing Blow calculation 2021-02-21 20:22:03 +01:00
Ovahlord 43d76be2fd fixed a warning 2021-02-20 23:30:46 +01:00
Ovahlord ca288aaab3 Core/Units: updated crit healing bonus calculation with patch 4.2.0 change 2021-02-20 23:13:45 +01:00
Ovahlord c288745598 Revert "Core/Unit: Improve Glancing Blow calculation"
This reverts commit 3d2013e168.
2021-02-20 19:11:30 +01:00
Metalaka 3d2013e168 Core/Unit: Improve Glancing Blow calculation 2021-02-19 18:47:47 +01:00