Commit Graph

270 Commits

Author SHA1 Message Date
Keader
417b300afc Core/Spells: Fixed issues with School Immune vs SPELL_ATTR1_UNAFFECTED_BY_SCHOOL_IMMUNE (#20546) 2017-10-08 12:49:30 +02:00
Aokromes
2b068721e1 Revert Core/Spell: Magic Absorption Calculation
This reverts commit 28a7ce2007
2017-08-20 09:09:32 +02:00
Aokromes
449e95d4ce Core/Spells: Defined TARGET_GAMEOBJECT_CONE_109 2017-07-27 16:37:58 +02:00
Aokromes
be0da8201c Core/Spells: Renamed TARGET_DEST_UNK_110 to TARGET_UNIT_CONE_ENTRY_110 2017-07-18 17:07:52 +02:00
Aokromes
8b6261c809 Core/Misc: Fix static analysis issues 2017-07-16 19:05:26 +02:00
ariel-
85c9907b07 Core/Spell: fix some spells that shouldn't allow stealth or invisibility
- Touch of Zanzil
- Glowing Blood
- Lambent Blood
- Vibrant Blood
- Black Blood
- Perpetual Instability
2017-06-11 17:50:32 +02:00
Keader
bc1887c5df Core/Spells: Allows Dispersion under Freeze (stun by hunter trap) 2017-06-06 07:55:49 +02:00
Keader
1051412e50 Core/Spells: Allows Dispersion and Barkskin to be used under death coil 2017-06-06 07:53:19 +02:00
Ryan
a289acff81 Core/Spells: Fix SPELL_AURA_FIXATE 2017-05-28 20:14:31 +01:00
xinef1
b88200cd58 Core/Misc: Various crash fixes 2017-05-05 01:59:34 +01:00
roc13x
c2fd775e5d Add missing changes
Core compiles now
2017-05-04 05:24:21 +01:00
xinef1
ae4b91bcf6 Fixed setting and unsetting of m_spellModTakingSpell 2017-05-04 04:32:26 +01:00
ariel-
3ccdf57f4a Core/Spell: unified handling of SPELL_ATTR5_USABLE_WHILE_* attributes
Allowed mechanic mask is calculated on startup and auras checked against those mechanics
Closes #18798
2017-05-04 04:13:49 +01:00
ariel-
a15aaf68c3 Core/Spell: reverted changes for NO_TARGET handling
Partial revert of 584d347b70

Closes #18666
2017-05-04 03:59:55 +01:00
ariel-
71e3339636 Core/Spell: Prevent NO_TARGET auras from actually selecting target 2017-05-04 03:51:44 +01:00
ariel-
d7876762f0 Core/Spell: add an exception for Cyclone ignoring it's own immunity using dispel type
- Unsure of what is the correct check, most generic thing I could make

Closes #18479
2017-05-04 03:44:41 +01:00
ariel-
4f3f455de4 Core/Spell: partial revert of SPELL_ATTR1_UNAFFECTED_BY_SCHOOL_IMMUNE immunity handling
- Bonus: without breaking Banish... yay!

Closes #18370
2017-05-04 03:35:47 +01:00
ariel-
307b736768 Core/Spell: Undefined SPELL_ATTR7_USABLE_IN_STUN_FEAR_CONFUSION attr for now 2017-05-04 03:18:14 +01:00
ariel-
b7b69b88ba Core/Unit: damage immune improvements 2017-05-04 01:48:16 +01:00
ariel-
679f5c51c5 Core/Spell: fix typos 2017-05-04 01:44:25 +01:00
ariel-
6ef6047b00 Core/Spell: Fixed immunities for some spells (they were broken before rewrite too)
- Warlord's Presence, Uncontrollable Frenzy, Free Friend
- Overload, Lightning Tendrils
- Fervor, Berserk
- Determination
2017-05-04 01:42:43 +01:00
roc13x
d30237fb1e Core/Globals: compute aura diminishing return info at startup and cache it 2017-05-04 00:57:24 +01:00
ariel-
9b5c40a201 Mark Slice and Dice as positive 2017-05-04 00:25:18 +01:00
roc13x
da9de6de36 Add missing change 2017-05-04 00:13:26 +01:00
roc13x
0b2e5adeb1 Core/Globals: cache SpellSpecific and AuraState information instead of computing them each time they're needed 2017-05-04 00:12:11 +01:00
ariel-
51f26dfe51 Core/Spells: Implementation of QAston proc system 2017-05-03 20:08:08 +01:00
ariel-
8e16897073 Core/Spell: define channels without movement interrupt flags as allowed move
- Remove script hacks no longer needed
2017-04-25 13:30:58 +02:00
ariel-
469be111cd Core/Spell: implement pvp trinket immunity against Judgement of Justice
By Riztazz, closes #19484
2017-04-25 13:27:41 +02:00
ariel-
8b8bf5399d Revert "Core/Spell: don't set scaleAura for some special spells"
This reverts commit 1ca8434b36.

Closes #19472
2017-04-25 13:22:41 +02:00
ariel-
975ef8d8d9 Core/Spell: don't set scaleAura for some special spells
Closes #14541
2017-04-09 18:10:51 +02:00
sevi
a444460f84 Core/Spells: fix next.
i need really a big part of sleep xD
2017-03-19 02:16:16 +01:00
sevi
d4c703a2e2 Core/Instance: implement the combat resurrection limit.
Cherry Pick from 948146f3ee

I change this a bit, so that this is works right for 4.3.3 Patch. (Here isn't add charges after a specific time. Groups have from begin 1 or 3 Charges for Resurrection.)
2017-03-19 01:55:40 +01:00
xinef1
01b43b3da0 Core/Pets: Fixed flashing pet attack button (#18906) 2017-02-05 01:57:37 +01:00
Aokromes
efce128b66 Core/Party: Implement Raid Marker
By ArkCORE
2017-01-24 00:02:29 +01:00
Aokromes
b7432bc39a Compile fix try 2017-01-18 15:09:57 +01:00
Aokromes
719a317a67 Update copyright note for 2017 2017-01-02 07:26:38 +01:00
ariel-
21583f1cb9 Core/Spell: do not downscale certain auras 2016-12-16 19:21:17 +01:00
ariel-
331a88ef8f Core/Spell: Fixed Drain Soul incorrectly downscaling ranks when targetting lower level enemies 2016-11-27 01:41:58 +01:00
ariel-
de4aec3204 Core/Spell: fix a potential null dereference crash 2016-11-27 01:09:37 +01:00
ariel-
2f1910476e Core/Spell: fix warning 2016-11-19 07:40:32 +01:00
Aokromes
b1d4f802ef Core/Spell: move attribute helpers to spellInfo
- Renamed CheckEffectExecuteData to AssertEffectExecuteData and made const, better reflects its purpose
- Added missing attribute check to IsNextMeleeSwingSpell
- Reworked SPELL_ATTR4_CAST_ONLY_IN_OUTLAND attr check (researched behavior)
2016-11-19 06:23:06 +01:00
Aokromes
e4dd97765e Core/Spell: revamp of immunities system
- Spell attributes research
- Container optimization
- Do not skip damage immunity checks on SPELL_ATTR0_UNAFFECTED_BY_INVULNERABILITY present
- Added additonal arguments support to SendCastResult / CheckCast, spells can now send proper error messages
- Loads spell immune masks/states/effects at startup.
- This cached info is used whenever a spell cast requires immunities to be known beforehand (to see if an aura could be applied for example)
2016-11-19 06:10:14 +01:00
Aokromes
8a4bda8c9f Core/Spell: apply SPELLFAMILY_GENERIC mods to all spells by default 2016-11-05 02:29:56 +01:00
ariel-
657aea3d5b Core/Spells: mark Arcane Missiles aura as negative. Was downranking the spell when targetting low level mobs due to effect 1 flagged as possitive.
Closes #12152
2016-10-24 13:59:38 +02:00
Aokromes
57d0a5d16d Revert "Core/Spells: Implementation of QAston proc system"
This reverts commit a70e4e26b3.
2016-10-21 07:27:04 +02:00
Aokromes
a70e4e26b3 Core/Spells: Implementation of QAston proc system
- Move checks from Unit::IsTriggeredAtSpellProcEvent (old system) to Aura::IsProcTriggeredOnEvent (new system)
- Templatize SpellModOp param of Player::ApplySpellMod, also killed charge counter from SpellModifier and Player system for handling charges... no point in having 3 different systems doing the same thing
- Automatically add default entries to spellProcMap, based on spellinfo (else auras won't proc without an entry) Based on old Unit::ProcDamageAndSpellFor
- Old Unit::ProcDamageAndSpellFor renamed to Unit::ProcSkillsAndReactives and made private, will no longer handle auras.
- Start making use of HealInfo::AbsorbHeal in unit calculations, add effective healing info to HealInfo struct
- Changes in spell reflection system, emulates old behaviour, delaying aura drop
- Removed old charge count hacks in SpellMgr::LoadSpellInfoCorrections
- Removed bogus error log when procChance is 0: Some auras have initial 0 procChance but modified by SPELLMOD_CHANCE_OF_SUCCESS
- Fixed TriggerAurasProcOnEvent logic that tried to trigger twice from actor.
- Allow non damaging spells with DamageClass Melee or Ranged to proc character enchants. Ref issue #17034:

  * http://web.archive.org/web/20110309092008/http://elitistjerks.com/f47/t49865-paladin_retribution_pve/
  * When an auto-attack lands (does not dodge/parry/miss) that can proc a seal the of the following things happen independently of each other (see 2 roll system).

  * 1) A "hidden strike" which uses melee combat mechanics occurs. If it lands it refreshes/stacks SoV DoT. Only white swings can trigger a refresh or stack. (This hidden strike mechanic can also proc things like berserking..)
  * 2) A weapon damage based proc will occur if you used a special (CS/DS/judge) or if you have a 5 stack (from auto attacks). This attack can not be avoided.

  * Holy Vengeance is the "hidden strike" it has an apply aura effect and damage class melee.
- Fixed Blood Tap interaction with Death Runes (btw, don't know what was going on with those MiscValueB, spell 45529 doesn't have any MiscValueB in SPELL_EFFECT_ACTIVATE_RUNE)
- Ported some AuraEffect checks from old Unit.cpp function. added new AuraScript hook to check procs of an specific effect
- Allow only AuraEffects that passed the check to proc, this won't block whole aura from proccing (and lose charges) if at least one of the effects procs, though
- Changes in spell mod system (for SPELLMOD_CASTING_TIME). fixes #17558.
- Added an exception for SPELLMOD_CRITICAL_CHANCE too, fixes #15193
2016-10-05 13:19:51 +02:00
joschiwald
4ed2cd9500 Core/Spells: use spellinfo helper methods
(cherry picked from commit 12a52595ed)
2016-10-03 14:42:37 +02:00
ariel-
dcb823bc4a Core/Spell: Updated SpellInfo::GetMaxTicks with all effects capable of periodics 2016-09-14 14:33:12 +02:00
Aokromes
dc4657218e Core/Scripts: Implement Flag of Ownership
Core/Spells: Implemented TARGET_CORPSE_SRC_AREA_ENEMY.
2016-09-10 03:53:34 +02:00
Aokromes
df2c6972c4 Whitespace clean-up 2016-08-29 01:20:31 +02:00