Commit Graph
100 Commits
Author SHA1 Message Date
QAston 738214f8e5 Core/Spells: add some const modifiers to functions, fixes build. 2011-08-21 13:57:15 +02:00
QAston c453d78b07 Core/Spells: Fix mind controll after recent target requirement changes. 2011-08-21 13:01:37 +02:00
QAston 0a7c622305 Db: remove command no longer present in scripts - thanks Whiroph. 2011-08-21 13:01:36 +02:00
QAston 3476767eb0 Fix warnings from merged pull requests. 2011-08-21 11:59:06 +02:00
QAston 0946843875 Merge pull request #2682 from Fredi/clean
Core/AI: Cleaning up hungarian notation
2011-08-21 01:04:08 -07:00
QAston 396a2e588b Merge pull request #2678 from Kapoeira/master
Core/Spells: Fixed Heart of the Wild stamina and attack power bonus part.
2011-08-21 01:00:00 -07:00
QAston 8e8fa083b2 Merge pull request #2636 from LihO/master
Core/Auras: Check amount of total ticks to avoid division by zero (and crash) in Unit::GetRemainingPeriodicAmount.
2011-08-21 00:58:55 -07:00
QAston a10eb53598 Merge pull request #2672 from Chaplain/master
Core/Spell: case TOTAL_PCT\BASE_PCT should be processed by multiplicative function not additive.
2011-08-21 00:54:14 -07:00
QAston edb1f1d436 Core/Spells: Don't check triggered flags for SPELL_ATTR0_CASTABLE_WHILE_DEAD attribute check - triggered spells have this flag set correctly - fixes problems with auras triggering spells for dead casters while they shouldn't. 2011-08-21 09:39:53 +02:00
QAston a76f023002 Core/Spells: remove one now obsolete check which prevents spells with SPELL_ATTR6_CAST_BY_CHARMER from being cast. 2011-08-20 13:14:47 +02:00
QAston b838aad7d0 Core/Spells: check UNIT_FLAG_OOC_NOT_ATTACKABLE only for AOE spells targeting enemies, fixes some interactions with npcs. 2011-08-20 12:08:37 +02:00
QAston 919a8ecf0e Core/Spells: Allow to explicitly target crowd controlled targets for spells with SPELL_ATTR6_CANT_TARGET_CROWD_CONTROLLED (Shield of Righteousness for example). 2011-08-20 11:45:23 +02:00
QAston 511db66297 Core/Spells: Remove some duplicate checks from Spell::CheckPetCast 2011-08-20 10:23:28 +02:00
QAston b0602b3153 Core/Spells: Use spell target flags to determine if spell can target dead targets - fixes skinning. Also, fix build once again 2011-08-20 10:01:57 +02:00
QAston 580a68573f Core/Spells: fix a crash. 2011-08-20 09:49:18 +02:00
QAston cf4e19cf4b Fix GCC build. 2011-08-20 09:32:19 +02:00
QAston 03f3a2a636 Core/SpellScripts: Add possibility to access real damage/healing done by SpellScript from AfterHit hooks. 2011-08-20 00:45:34 +02:00
QAston e2d8faea09 Core/Spells: move Cannibalize and Carrion Feeder cast checks to SpellScripts. 2011-08-20 00:30:38 +02:00
QAston e8240fbc02 Fix a typo in last commit. 2011-08-19 16:34:26 +02:00
QAston 393b436a0c Fix a typo in last commit. 2011-08-19 16:34:00 +02:00
QAston fc5e924138 Core/Spells: Implement recently discovered target check attributes and move most of target checks to SpellInfo::CheckTarget function. 2011-08-19 14:54:15 +02:00
QAston dc3a3772ba Merge pull request #2617 from Chaplain/master
Core/Spells: Fixed exploit found in 9936921206.
2011-08-18 03:03:00 -07:00
QAston 1de095f7cf Core/Spells: Add required and implicit target object type data for spell effects - will be used in future patches. 2011-08-18 11:50:31 +02:00
QAston ec95ead0ac Fix build. 2011-08-17 12:00:20 +02:00
QAston a44e1c505e Core/Spells: Add new spell implicit target categories data - will be used in future patches. 2011-08-17 11:30:47 +02:00
QAston a3fc4e897c Core: Add missing forward declarations in SpellInfo.h 2011-08-16 20:08:13 +02:00
QAston a077a26aa5 Core/Spells: update the core to the changes from 1fb1988d46 . To make your custom code work with those changes simply lookup the value of Targets enum value from prev rev, and update the name in your code. 2011-08-16 19:44:18 +02:00
QAston 1fb1988d46 Core/Spells: change Targets enum to use consistent naming schema. This is not a functional change, but it's needed for upcoming changes, also this makes target type research and use easier. 2011-08-16 19:42:36 +02:00
QAston d4b90d1f86 Core/Spells: Remove OriginalVictim parameter from Unit::CastSpell(x,y,z) - setting unit target was enough for all spells which used it, there's never a need to cast with both unit and dest target on retail (in such cases unit target + DEST_TARGET target types are used). 2011-08-16 16:53:29 +02:00
QAston 73bbc3aca8 Core/Spells: Update some targeting related attribute definitions to make them more clear and consistent. 2011-08-16 16:06:21 +02:00
QAston e0d43388af Core/Spells: define SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS and SPELL_ATTR6_CAN_TARGET_INVISIBLE (big thanks to joschiwald for the second one) 2011-08-16 15:11:07 +02:00
QAston 961b2629c5 Merge pull request #2593 from fredi/clean
Core/Account: Code style and cleanups in AccountMgr
2011-08-16 04:47:31 -07:00
QAston 9936921206 Merge pull request #2580 from hacknowledge/damagemodfix
Core/Spells: Fixed weapon dependent damage mods for players as well as au
2011-08-16 03:41:23 -07:00
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