QAston
b81fb4d423
Core/Spells: Rename SPELL_ATTR2_ALWAYS_APPLY_MODIFIERS to SPELL_ATTR2_DISPLAY_IN_STANCE_BAR, and make auras to be recalculated when permament instead of using that wrongly defined flag.
2011-08-11 23:11:10 +02:00
QAston
0d1a5314dc
Core/Spells: Define some new attributes: SPELL_ATTR6_ONLY_CAST_WHILE_POSSESSED, SPELL_ATTR6_DONT_DISPLAY_COOLDOWN, SPELL_ATTR5_ALLOW_TARGET_OF_TARGET_AS_TARGET, SPELL_ATTR4_AREA_TARGET_CHAIN, SPELL_ATTR3_DONT_DISPLAY_RANGE
2011-08-11 23:03:43 +02:00
QAston
df87f00e73
Core/Commands: Add .cast dest #spellid #x #y #z which orders selected unit to cast a spell at selected destination.
2011-08-06 22:50:46 +02:00
QAston
db28ae55c9
Core/Spells: Add missing braces to possession spell check - fixes problems with being unable to cast target's spells while possesing.
2011-07-31 11:13:41 +02:00
QAston
1df57ae522
Core/Spells: Don't allow passive area auras to stack.
2011-07-30 02:02:35 +02:00
QAston
c9291243c1
Core/Spells: Remove some obsolete code (stealth is no longer a ranked spell).
2011-07-29 18:01:33 +02:00
QAston
41593a79e3
Core/Spells: Check if spell has range entry before trying to access property (some spell do not) - fixes a crash.
2011-07-29 00:01:08 +02:00
QAston
fe913bf66c
Core/Spells: Fix a crash on checking school immunity added to unit manually (not by aura) - this time without additional changes (argh!)
2011-07-28 23:45:57 +02:00
QAston
495ead5f7f
Revert "Core/Spells: Fix a crash on checking school immunity added to unit manually (not by aura)"
...
This reverts commit 07badd7385 .
2011-07-28 23:44:39 +02:00
QAston
07badd7385
Core/Spells: Fix a crash on checking school immunity added to unit manually (not by aura)
2011-07-28 23:41:29 +02:00
QAston
045dec19fa
CoreSpells: Typofixes: fix area auras autocast and usage of items in combat.
2011-07-28 13:21:31 +02:00
QAston
f33a0c23ca
Core/Spells: Fix passive auras stacking logic after recent changes.
...
Closes #2417
2011-07-28 03:08:42 +02:00
QAston
7094f57841
Core/Spells: Don't unload sSpellStore on startup, to allow access to dbc strings.
2011-07-28 02:03:47 +02:00
QAston
4c8c0ce193
Core/Spells: Use correct spell target in Spell::EffectEnvirinmentalDMG - fixes area damage of spells using this.
2011-07-27 21:23:15 +02:00
QAston
46851c3fda
Core/Spells: Drop obsolete code for Demonic Sacrifice.
2011-07-27 20:37:28 +02:00
QAston
b0fe236265
Core: Use new SpellInfo class in core. Sadly, this commit is not compatibile with some of the custom code. To make your code work again you may need to change:
...
*SpellEntry is now SpellInfo
*GetSpellProto is now GetSpellInfo
*SpellEntry::Effect*[effIndex] is now avalible under SpellInfo.Effects[effIndex].*
*sSpellStore.LookupEntry is no longer valid, use sSpellMgr->GetSpellInfo()
*SpellFunctions from SpellMgr.h like DoSpellStuff(spellId) are now: spellInfo->DoStuff()
*SpellMgr::CalculateEffectValue and similar functions are now avalible in SpellEffectInfo class.
*GET_SPELL macro is removed, code which used it is moved to SpellMgr::LoadDbcDataCorrections
*code which affected dbc data in SpellMgr::LoadSpellCustomAttr is now moved to LoadDbcDataCorrections
2011-07-26 23:09:28 +02:00
QAston
29c228a801
Core/Spells: Add SpellInfo class to store static data and methods for spells. This class is going to replace SpellEntry use in core. SpellInfo class includes all spell-related functions which resided in SpellMgr, and makes them much easier to access, reuse or add new stuff. Another advantage is that you no longer have to lookup db/dbc data by entry or index, because such data can now be included in the new class. Thanks to that, TC will have no problems on drastic spell dbc format change in 4.x.
2011-07-26 23:00:23 +02:00
QAston
f35d8c9bc4
Core/Spells: Temporary workaround for Summon Eye of Acherus (this time working)
2011-07-16 08:03:36 +02:00
QAston
5f565709cf
Core/Auras: Correct display stackable aura amount in client when aura has 1 stack.
2011-07-13 20:57:11 +02:00
QAston
f70875510a
Core/Spells: Drop unrelated manaCostPct check from Spell::EffectPowerBurn and use explicit check instead, fixes some power burn spells.
2011-07-13 20:39:17 +02:00
QAston
b9413f08b3
Core/Spells: Define and implement attributes SPELL_ATTR1_CANT_BE_REDIRECTED and SPELL_ATTR1_CANT_BE_REFLECTED, fixes some problems with Grounding Totem and Spell Reflection.
2011-07-13 20:14:55 +02:00
QAston
7b2cf3d1f2
Core/Spells: Fix a typo (thanks to tobmaps for catching)
2011-07-13 17:31:09 +02:00
QAston
5b1d170272
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
...
Conflicts:
src/server/game/Entities/Unit/Unit.cpp
2011-07-13 17:22:04 +02:00
QAston
20e8c25b48
Core/Spells: Define and implement attribute SPELL_ATTR3_CANT_TRIGGER_PROC, change names of some attributes to better describe their functionality.
2011-07-13 17:18:04 +02:00
QAston
1c7616dcc8
Core/Spells: Define and implement SPELL_ATTR3_IGNORE_RESURRECTION_TIMER - now you can instantly resurrect with Rebirth spell.
2011-07-12 10:43:58 +02:00
QAston
cd1df639b2
Core/Spells: Define and implement SPELL_ATTR2_CANT_TARGET_TAPPED attribute.
2011-07-12 07:34:42 +02:00
QAston
b253c844fc
Core/Spells: Add ability check in one more place, to prevent other kind of spell reflection.
2011-07-12 06:34:57 +02:00
QAston
53cc218983
Core/Spells: Allow periodic trigger auras to work on dead creatures. Patch by Josh (major stuff) and me (minor changes).
2011-07-12 00:19:50 +02:00
QAston
58c63f4cc5
Core/Spells: Breaking news: Spell Reflection cannot reflect abilities (patch 1.2 change)
2011-07-11 22:54:18 +02:00
QAston
72ea9c9fa8
Core/Spells: Add a base for brand new proc system, this is a WIP and doesn't affect currently working code.
2011-07-10 13:13:02 +02:00
QAston
22135f4d91
Core/Spells: Add a temporary workaround for spell Summon Eye of Acherus(51888) - fixes gameobject cast of the spell after recent changes.
2011-07-09 20:25:32 +02:00
QAston
99f917552e
Forgotten change from 0dc90a2cbb.
2011-07-07 18:04:35 +02:00
QAston
0dc90a2cbb
Core/Spells: use spell caster as a target of spells triggered by SPELL_EFFECT_FORCE_CAST
2011-07-07 18:02:59 +02:00
QAston
2bf3bc334c
Core/Spells: define spell attributes: SPELL_ATTR1_MELEE_COMBAT_SPELL, SPELL_ATTR1_FARSIGHT, SPELL_ATTR1_DONT_DISPLAY_IN_AURA_BAR
2011-07-05 15:40:17 +02:00
QAston
3963d6eeb2
Typo in enum name, thanks Nayd for pointing this
2011-07-04 23:26:36 +02:00
QAston
0bc23239d8
Core/Spells: Remove some incorrect spell attribute checks and add custom attributes instead - it's better to know that there is no attribute for something than to pretend there's one and do ridiculous checks.
2011-07-04 23:14:20 +02:00
QAston
3bf7035fe1
Core/Spells: Remove some redundant code.
2011-07-04 22:10:42 +02:00
QAston
5b79175b7a
Core/Spells: More spell attribute definitions.
2011-07-03 10:03:13 +02:00
QAston
29a7535638
Core/Spells: Define 2 more spell attributes: SPELL_ATTR6_CAN_TARGET_POSSESSED_FRIENDS and SPELL_ATTR6_CAN_TARGET_UNTARGETABLE
2011-07-02 17:06:19 +02:00
QAston
1068583172
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
2011-07-02 16:12:43 +02:00
QAston
86dde83dda
Core/Spells: Define many unknown SpellCastTargetFlags enum values, rename some target type enum values to follow standards, also correctly implement TARGET_UNIT_TARGET_PASSENGER.
2011-07-02 16:12:19 +02:00
QAston
ce75ced741
Core/Spells: define SPELL_ATTR1_CHANNEL_DISPLAY_SPELL_NAME(0x20000000)
2011-07-01 13:12:19 +02:00
QAston
06515b27b3
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
2011-07-01 12:48:21 +02:00
QAston
3b8dce669d
Core/Spells: Define attributes: SPELL_ATTR0_CAST_TRACK_TARGET(0x00400000), SPELL_ATTR1_CHANNEL_TRACK_TARGET(0x00004000), SPELL_ATTR0_ON_NEXT_SWING_2(0x00000400), add some attribute flag comments based on client research.
2011-07-01 12:47:26 +02:00
QAston
d3e887060d
Fix build.
2011-06-30 02:17:07 +02:00
QAston
fb9719c653
Core/Spells: Define SPELL_ATTR0_ABILITY (old SPELL_ATTR0_UNK4)
2011-06-30 01:47:09 +02:00
QAston
e79d46e499
Core/Spells: Correctly define TARGET_UNIT_NEARBY_PARTY(3) and TARGET_UNIT_NEARBY_ALLY(4) target types.
2011-06-30 00:49:10 +02:00
QAston
d31f53c16a
Core/Auras: Don't cache aura object fields in periodic damage aura handler, as it's not needed.
2011-06-30 00:00:20 +02:00
QAston
348adaf791
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
2011-06-28 16:18:42 +02:00
QAston
11c3c80732
Core/Spells: Add SMSG_PROCRESIST packet handler.
2011-06-28 16:17:49 +02:00
QAston
e5db97a28e
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
2011-06-26 19:32:41 +02:00
QAston
faaba1aa65
Core/Auras: Improvements in spell_linked_spell table handling, now auras with using this table have linked stack amount, also linked aura removal is called now when aura is removed on target death.
2011-06-26 19:31:11 +02:00
QAston
d2e1f5a259
Misc: Rename update sqls to follow the standards.
2011-06-26 13:58:34 +02:00
QAston
557e06b1c1
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
2011-06-26 13:56:11 +02:00
QAston
ac88fa026f
Database/Spells: Add spell_proc table which is a replacement for spell_proc_event table. This is the initial patch from series of patches changing the way we currently handle procs in the core, and doesn't interfere with existing code in any way.
2011-06-26 13:54:44 +02:00
QAston
6dcee0c0ea
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
2011-06-26 00:29:36 +02:00
QAston
2bcf63d387
Core/Spells: don't allow spells which hit target only with SPELL_EFFECT_DUMMY to execute spell triggers on that targets, also cleanup related code a bit.
2011-06-26 00:29:12 +02:00
QAston
b54b72ba54
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
2011-06-23 15:52:30 +02:00
QAston
dc8a926c8d
Core/Auras: fix a typo in PowerDrain auras periodic tick handler.
2011-06-23 15:51:14 +02:00
QAston
3352cabb49
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
2011-06-23 13:50:45 +02:00
QAston
31d32e28ee
Fix build
2011-06-23 13:49:22 +02:00
QAston
3137a82c7c
Core/Spells: Cleanup in Spell.h:
...
- Codestyle (fix function naming) and cleanup changes in SpellCastTargets class, also access variables of this class by getters/setters
- Move IsQuestTameSpell function to SpellMgr.h
- Move UnitList typedef to Unit.h
Additionally - add missing copyright notice to SpellAuraEffects.h
2011-06-23 13:28:52 +02:00
QAston
c4818f1892
Core/Auras: Fix refresh of auras with spellmodifiers applied to currently cast spell.
2011-06-21 19:59:17 +02:00
QAston
2ac777f8ce
Revert "Core/Auras: Fix work of proc auras are refreshed during proc event routine."
...
This reverts commit 2a47163771 .
2011-06-21 15:58:30 +02:00
QAston
fcc02a045a
Core/Auras: Remove auras with AURA_INTERRUPT_FLAG_HITBYSPELL on spell hit, only when target hit is enemy.
2011-06-21 15:57:18 +02:00
QAston
2a47163771
Core/Auras: Fix work of proc auras are refreshed during proc event routine.
2011-06-21 12:03:54 +02:00
QAston
aebb75b816
Core/Auras: Move periodic aura effect handlers to separate functions, do a little cleanup in these, also allow periodic dummy/periodic trigger spell auras to tick when caster is not available.
2011-06-19 13:13:41 +02:00
QAston
ebc9ead617
Core/DynamicObject: Delete DynObjAura on DynObj delete, not on aura remove from object (prevents crashes)
2011-06-16 00:55:27 +02:00
QAston
5bbeccd00f
Merge pull request #1921 from zwerg/master
...
Fix problem with removing immunities by Unit::ApplySpellImmune
2011-06-11 04:19:50 -07:00
QAston
34d980ea4c
Core/Auras: Move AuraEffect::TriggerSpell missing spell error log to debug.
2011-06-11 13:16:19 +02:00
QAston
677cbbb93a
Scripts: Fix some crashes occuring due to unsafe use of AuraScript::GetCaster() method.
...
There's "returns unit which casted the aura or NULL if not avalible" written in description of the method, but who cares...
2011-06-11 12:42:01 +02:00
QAston
76bb3ca21c
Core/Auras: Call Aura::HandleAuraSpecificMods in Aura::SetStackAmount to preserve compatibility with older scripts.
2011-06-11 10:55:19 +02:00
QAston
38de636e30
Core/Spells: Define some unknown spell attributes.
2011-06-11 10:55:17 +02:00
QAston
3ec587e21e
Core/Auras:
...
Make Aura::ModStackAmount(1) an equivalent of reapplying the aura
Recalculate periodic aura timers on aura reapply.
2011-06-11 10:55:17 +02:00
QAston
23d43c72b2
Core/Spells: Drop some redundant code.
2011-06-11 10:55:16 +02:00
QAston
0c3e99c450
Core/Auras: Move repeating code for aura packet creation to separate function. Fixes usage of SPELL_ATTR5_HIDE_DURATION attribute.
2011-06-08 10:41:32 +02:00
QAston
0575dddbb3
Core/Auras: Fix visibility aura effect handlers to work correctly on amount change
2011-06-08 09:19:34 +02:00
QAston
8f7be3d48a
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
2011-06-07 22:26:14 +02:00
QAston
f74bc25af1
Core/Auras: Fix SPELL_AURA_MOD_DAMAGE_PERCENT_DONE aura handler to work correctly on amount change.
2011-06-07 22:25:39 +02:00
QAston
6c5f68e8fc
Core/Auras: Do not use spellmod system to drop auras with spell proc event entry.
2011-06-07 19:09:20 +02:00
QAston
b9e8e6d3b4
Core/Auras: Add functions for common actions on aura charges.
2011-06-07 17:26:27 +02:00
QAston
9542077c38
Core/Auras: Use recalculated aura max duration on spell hit for duration calculations.
2011-06-07 14:19:47 +02:00
QAston
3effdb2c23
Core/Auras: Add Aura::TryRefreshStackOrCreate function and remove stack checks from Aura::Create
2011-06-07 12:47:32 +02:00
QAston
506fedcfea
Changes missing from last commit.
2011-05-31 20:28:36 +02:00
QAston
7b5b95966e
Core/AuraScript: Add DoCheckAreaTarget hook to allow explicit area aura target selection.
2011-05-31 20:24:44 +02:00
QAston
0196192c7a
Core/Auras: Fix a typo, which broke AuraEffect::ChangeAmount function
2011-05-31 16:20:27 +02:00
QAston
8ff2ed69bf
Core/Auras: Fix *nix build
2011-05-31 16:03:27 +02:00
QAston
f3428cbad4
Core/Auras: Fix a crash in Unit::RemoveAurasDueToSpellBySteal
2011-05-31 15:30:41 +02:00
QAston
2d3f4687e5
Core/Auras: Prevent assertion fail in AuraEffect::HandleEffect
2011-05-31 14:50:54 +02:00
QAston
14bc68a291
Missaved file, thanks to Shauren for catch.
2011-05-29 15:54:46 +02:00
QAston
3c93cccdb1
Core/Auras: Prevent assertion fail due code in AuraEffect::HandleAuraLinked, also improve the sync between auras linked by this aura type.
2011-05-29 15:49:32 +02:00
QAston
854438fb8a
Core/Auras: add missing parenthesis.
2011-05-29 13:23:49 +02:00
QAston
42a20f14ef
Core/Auras: Use existing aura object on aura reapply/stack increase instead of creating a new one.
...
You can hook on reapply/stack event by checking for AURA_EFFECT_HANDLE_REAPPLY aura handler mode, AURA_EFFECT_HANDLE_REAL is now not triggered on aura refresh/stack.
2011-05-29 13:18:47 +02:00
QAston
fb1772e8c9
Core/AuraScripts: Allow to use AuraScript::GetTarget in AfterEffectRemove and AfterEffectApply hooks.
2011-05-26 17:44:07 +02:00
QAston
0762791754
Core/AuraScripts: Fix runtime error messages appearing in aura scripts when one hook is called from inside of another one.
2011-05-26 16:12:33 +02:00
QAston
79aa5233d7
Scripts/AuraScripts: Use AfterEffectApply and AfterEffectRemove hooks in scripts, where they fit better than On* hooks.
2011-05-25 19:12:41 +02:00
QAston
0eb89fc282
Core/SpellScripts: Better debug output on startup script validation.
2011-05-25 18:00:35 +02:00
QAston
a1b8fd2054
Core/AuraScripts: Add AfterEffectRemove and AfterEffectApply hooks, to allow safe triggering of spellcasts or other actions which may call linked events while OnEffectApply and OnEffectRemove are still there for overriding the way effect is handled on target.
2011-05-25 17:13:32 +02:00
QAston
ca8eb707d7
Core/Auras:
...
- Use safer order of calls in AuraEffect handlers (unit modification goes before any calls which may result in linked events execution)
- Allow manual removal of further effects of an aura during aura removal (so Unit::RemoveAurasByType works well in such situations)
2011-05-25 15:13:55 +02:00
QAston
432136355e
Scripts/Spell: Share some code for Incantner's Absorbtion script.
2011-05-15 19:04:09 +02:00