Commit Graph

167 Commits

Author SHA1 Message Date
Aqua Deus
47d4fa0985 Scripts/Spells: Implemented Flurry (#29145) 2023-07-24 21:11:06 +02:00
Shauren
2e7e49b749 Scripts/Spells: Removed unneccessary PrepareSpellScript and PrepareAuraScript uses 2023-07-24 10:48:50 +02:00
Meji
889e88ab80 Core/Spells: Fixed target radius logic in spell effects for TargetB (#29158) 2023-07-20 10:10:18 +02:00
Aqua Deus
17252534a1 Scripts/Spells: Update prismatic barrier script (#29147) 2023-07-16 13:42:03 +02:00
ModoX
55e31c656b Misc: Fix codestyle 2023-06-27 23:28:33 +02:00
Shauren
07d6eb3a57 Scripts/Spells: Fixed remaining spells with SPELL_ATTR3_CAN_PROC_FROM_PROCS attribute 2023-06-27 22:22:16 +02:00
Shauren
622eed752b Scripts/Spells: Converted remaining spell scripts to use ValidateSpellEffect 2023-06-03 23:17:28 +02:00
Shauren
f8a6a9b017 Scripts/Spells: Added spell effect validation helper 2023-05-30 19:34:19 +02:00
Teleqraph
1b3f93aa0f Core/Spells: Unify Bloodlust spells for all classes (#28927)
Co-authored-by: ModoX <moardox@gmail.com>
2023-04-17 06:51:37 +02:00
Aqua Deus
2358e51182 Scripts/Spells: Fix mage spell Ray of Frost (#28090) 2022-07-16 16:04:06 +02:00
Aqua Deus
19a627b23e Scripts/Spells: Fix damage on primart target of mage talent Supernova (#28061) 2022-07-03 18:01:29 +02:00
Teleqraph
a6dd3a1946 Scripts/Spells: Fixed Cold Snap (#27734) 2022-02-14 12:02:29 +01:00
Shauren
ad4f4bfab7 Core/Misc: Minor game include cleanup 2022-02-13 00:49:10 +01:00
Teleqraph
5b02c53fc5 Scripts/Spells: Fixed mage Blizzard (#27722)
* we do not have a dummy periodic aura to obtain our period, so we're setting 1s as it always ticks once per second.
* haste doesn't affect Blizzard: https://us.forums.blizzard.com/en/wow/t/starfall-damage-doesn%E2%80%99t-scale-with-haste-why/854619
2022-02-11 00:12:40 +01:00
Aqua Deus
7192da410d Scripts/Spells: Fix mage Comet Storm (#27710) 2022-02-07 16:49:18 +01:00
Shauren
0a1acb9c05 Scripts/Spells: Replace RegisterAuraScript with RegisterSpellScript and remove it
(cherry picked from commit 7d4fbf706a)
2022-02-04 00:27:10 +01:00
Aqua Deus
d8efda4ff3 Scripts/Spells: Fix mage Flame On talent (#27622) 2022-01-17 23:36:12 +01:00
Shauren
c5727921b9 Warning fix 2022-01-13 00:07:08 +01:00
My name is Mud
d6c43b3d63 Scripts/Spells: Fixed mage talent Firestarter (#27576)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2022-01-12 23:49:14 +01:00
aquadeus
da8d6b5180 Scripts/Spells: Fix Incanters Flow (#27395) 2021-12-18 11:24:10 +01:00
Shauren
f832a96c4e Warning fix 2021-09-05 16:30:13 +02:00
Shauren
7e09deea3a Scripts/Spells: Fixed mage ice block to not heal without aura 320913 2021-09-05 15:58:30 +02:00
ariel-
9fa95b4b57 Core/Spells: Fix periodic rolling adding bonuses twice
Calculation is now done in CalculateAmount

(cherry picked from commit 93eda20d5c)
2021-09-04 22:52:31 +02:00
Shauren
8a4e1119ac Core/Spells: Unify spell effect access api in both branches 2021-09-04 15:13:15 +02:00
ariel-
5fbddef85f Core/Spell: SpellValueOverrides encapsulation
- No sense to let scripts use SpellValueOverrides, we already have modifiers in CastSpellExtraArgs struct

(cherry picked from commit 3b01cccd7e)
2021-06-14 00:19:50 +02:00
sueastward
28c075765b Scripts/Spells: Implement mage Alter Time 2021-05-27 12:56:10 +02:00
Shauren
12ed21e690 Scripts/Spells: Clear arcane charge damage/cost/cast time modifier aura when reaching 0 arcane charges (power) 2021-05-15 17:44:31 +02:00
Shauren
331c7ec7c2 Scripts/Spells: Remove manual damage adjustment from Arcane Barrage for scaling with arcane charges and use spell cast for mana energize 2021-05-15 17:44:31 +02:00
Shauren
fd7f854995 Scripts/Spells: Properly utilize all Arcane Explosion energize effects 2021-05-15 17:44:31 +02:00
Matan Shukry
be8cbab4b3 Scripts/Spells: Fixed arcane barrage + explosion 2021-05-15 17:44:31 +02:00
Treeston
9b141207d1 [3.3.5] CastSpell unclusterfucking (that's a word now) (#21123)
Core/Spell: The giant CastSpell unclusterfucking (that's a word now) of this generation.

- CastSpell now always takes three arguments - target, spellId, and a struct containing extra arguments
- This struct (CastSpellExtraArgs, see SpellDefines.h) serves as a conglomerate of every previous combination of the 20 billion different CastSpell overloads, all merged into one
  - It has some great utility constructors - check them out! All of these can be used to implicitly construct the ExtraArgs object.
- A gajillion refactors to make everything behave the way it always has

(cherry picked from commit d507a7e338)
2021-04-16 15:22:42 +02:00
ariel-
794a3e4388 Core/Auras: fixed off by one error in counting SPELL_ATTR5_START_PERIODIC_AT_APPLY ticks
- Made SpellInfo::GetMaxTicks and AuraEffect::GetTotalTicks return the same number without mods (dumped arbitrary default return value of 6 and arbitrary 30 sec limit)
- They should be streamlined whenever SPELL_AURA_48 is implemented

(cherry picked from commit 7dff0e3246)
2021-03-15 20:17:31 +01:00
Shauren
b94851b824 Scripts/Spells: Fixed Fingers of Frost proc passive
Closes #19589
2021-03-13 01:02:48 +01:00
Shauren
a680e247ec Scripts/Spells: Convert Mage Fingers of Frost stack dropping script to use new proc attribute 2021-02-18 23:29:04 +01:00
Matan Shukry
bb0194aede Scripts/Spells: Touch of the Magi - accumulate damage and DoT duration 2021-02-13 14:08:16 +01:00
Matan Shukry
7159de62b6 Scripts/Spells: Remove const from AuraEffect argument for AuraEffectProcFn 2021-02-13 14:08:16 +01:00
Shauren
041ceeed1a Core/Spells: Ice Lance
* fixed secondary target damage with Splitting Ice talent
* fixed dropping 2 charges of Fingers of Frost with Splitting Ice
2020-12-24 15:55:30 +01:00
Ryzen
cafa00b5d0 Scripts/Spells: Mage Ice Lance (draft)
Missing/todo the following:

- x3 damage on frozen target
- lower damage of second lance triggered by Splitting Ice to 80% (now it deals 100%)
- Chain Reaction.
2020-12-24 15:55:30 +01:00
Shauren
1c52d5fff7 Core/Misc: Replace NULL with nullptr 2020-08-14 17:06:03 +02:00
Shauren
c7306439e7 Core/Spells: Implement using different difficulty data from all spell related db2s, not just SpellEffect and SpellPower 2020-06-12 01:29:18 +02:00
Aokromes
b0bf1275ee New Year 2020-01-02 06:44:10 +01:00
vincent-michael
5620eb9463 Update copyright note for 2019
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00
vincent-michael
7d00ae4045 Update copyright note for 2018
auto happy = new year(2018);
2018-01-01 00:40:17 +01:00
Shauren
bf892de95c Warning fix 2017-08-27 14:52:15 +02:00
Shauren
5774e926d9 Core/Spells: Fixed mage Cauterize
* No more immortal fire mages
2017-08-27 11:28:08 +02:00
Shauren
ee0e9c8578 Core/Spells: Updated mage spell scripts 2017-08-26 23:04:57 +02:00
joschiwald
1f8fc55ac9 Core/Spells: Implementation of QAston proc system (#20131)
* Core/Spells: Implementation of QAston proc system

- Move checks from Unit::IsTriggeredAtSpellProcEvent (old system) to Aura::IsProcTriggeredOnEvent (new system)
- 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

(cherry picked from commit e641d0c7d7)

# Conflicts:
#	sql/base/auth_database.sql
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Entities/Player/Player.h
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Entities/Unit/Unit.h
#	src/server/game/Spells/Auras/SpellAuraEffects.cpp
#	src/server/game/Spells/Auras/SpellAuras.cpp
#	src/server/game/Spells/Auras/SpellAuras.h
#	src/server/game/Spells/Spell.cpp
#	src/server/game/Spells/SpellEffects.cpp
#	src/server/game/Spells/SpellInfo.cpp
#	src/server/game/Spells/SpellMgr.cpp
#	src/server/game/Spells/SpellMgr.h
#	src/server/game/Spells/SpellScript.cpp
2017-08-13 12:03:43 +02:00
Shauren
12d0306543 Core/Spells: Use ValidateSpellInfo in all scripts 2017-06-03 01:34:21 +02:00
Shauren
2200b4b0e1 Nopch fix 2017-05-24 21:30:43 +02:00
Shauren
3d7c2ef88f Core/Game: Include cleanup, part 4 - packets and largest headers (after preprocessing, except player/objectmgr) 2017-05-21 23:18:43 +02:00