Commit Graph

266 Commits

Author SHA1 Message Date
QAston
e2d592f380 Core/Spells: Interrupt periodic trigger auras when triggered spells fails to cast. Closes #2598 2011-08-26 14:23:23 +02:00
QAston
5c48d9ec8a Core/Spells: Store explicit unit, corpse and GO targets in one variable, because both client and server can't handle more than one explicit object target; Add spell explicit target validation. 2011-08-26 12:06:13 +02:00
QAston
188fdb3e4c Core/Spells: Allow spells with TARGET_FLAG_CORPSE to target players which didn't hit release button yet. 2011-08-25 06:51:57 +02:00
QAston
1178cee836 Core/Spells: Small correction to: 7f30ac5a95 - TARGET_DEST_TRAJ targets should require both src and dst target provided. 2011-08-24 08:53:26 +02:00
QAston
7f30ac5a95 Core/Spells: Add a generic way of selecting spell explicit targets. Make explicit targets independant of calling convention in core - this makes targets sent to client to be much more blizzlike than before (for example CastSpell(Unit*) won't set TARGET_FLAG_UNIT for spells which are not using explicit unit target) for SMSG_SPELL_START packets. Also remove hacks, which became obsolete with this commit. 2011-08-24 08:08:33 +02:00
Chaplain
fb27848510 Core: Clean up here and there.
*replase postfix iterator increment\decrement with prefix in cycles
*replase strlen(*char) != 0 with *char[0] != '\0'
*replase strlen(rStr.c_str()) with rStr.length()
2011-08-23 18:09:08 +03:00
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
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
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
tobmaps
e1e91bacbe Core/Spells: Prevent apply spell power coefficients at bonus given by some "taken" damage mods
Closes #1991
2011-08-20 03:06:15 +07:00
QAston
e8240fbc02 Fix a typo in last commit. 2011-08-19 16:34:26 +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
Machiavelli
3c9c1a9b69 Core/Spells: Rename SPELL_ATTR6_ONLY_CAST_WHILE_POSSESSED to SPELL_ATTR6_CAST_BY_CHARMER and assign m_caster in Spell::Spell instead of m_originalCaster 2011-08-19 12:27:03 +02:00
Lopin
dad2fc78e2 Core/Logs: Added Difficulty output to InstanceMap::SetResetSchedule error message. Requested by Aokromes 2011-08-19 10:47:56 +02:00
Machiavelli
917ffdffac Core/Spells: More research on SPELL_ATTR6_ONLY_CAST_WHILE_POSSESSED and implement new research (original caster should be charmer or owner) and implement QAston's earlier research (only castable while possessed). 2011-08-18 20:28:07 +02:00
tobmaps
a23c4592af Core/Spells: Diminishing returns shouldn't prevent direct damage caused by spells - fixes dispel damage of Unstable Affliction if target immune to silence now 2011-08-17 04:09:12 +07: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
73bbc3aca8 Core/Spells: Update some targeting related attribute definitions to make them more clear and consistent. 2011-08-16 16:06:21 +02:00
Shauren
f797f9f74d Core/Spells: Failed triggered spell casts will no longer cause the proc aura that triggered them to be removed (this behavior should only apply to channeled spells), also corrected UNIT_FIELD_CHANNEL_OBJECT setting 2011-08-12 13:22:53 +02:00
idostyle@zoit
eedeeaf2b2 Spell: m_castItemGUID initialization
Closes #105
Closes #1193
2011-08-10 15:08:22 +02:00
tobmaps
7c6366ca11 Core/Spells: Partial revert of b0fe236265 , thx A-Metaphysical-Drama for tip
Closes #2266
Closes #2442
Closes #2454
Closes #2455
Closes #2502
2011-08-06 20:42:00 +07:00
Silinoron
76fe596160 Core/Refer-a-Friend: Finish base work for Refer-a-Friend.
Any testing would be very much appreciated.
2011-08-03 09:28:12 -07:00
Spp
e7327e7e94 Core: Fix compile without PCH and fix some warnings 2011-08-03 11:23:08 +02:00
Shauren
fa4b659964 Compile fix for f899c92899 2011-08-01 15:58:51 +02:00
Shauren
f899c92899 Core/Spells: Use ModStackAmount for CastCustomSpell with aura stack value if the aura is refreshed on target 2011-08-01 12:05:30 +02:00
Shauren
a80b36c2f3 Core/Spells: Limited SPELL_ATTR3_PLAYERS_ONLY attribute to only allow players, not pets and totems. This fixes many boss area spells incorrectly selecting pets and totems as their targets. 2011-08-01 11:17:34 +02:00
Machiavelli
c074be2944 Core/Spells: Small update to TriggeredFlags and fix Glyph of Totem of Wrath with it.
Closes #2458
2011-07-31 23:47:11 +02:00
Machiavelli
58f10c74f7 Core/Spells: Change low level bool triggered with bitmask TriggerCastFlags to better manipulate the behaviour of certain triggered spells. 2011-07-31 21:58:25 +02:00
Machiavelli
0ecb47bc8a Core/Spells & Vehicles: Define and implement SPELL_ATTR6_CASTABLE_WHILE_ON_VEHICLE and VEHICLE_SEAT_FLAG_CAN_CAST_MOUNT_SPELL.
Research done by QAston
2011-07-30 20:36:19 +02:00
Machiavelli
2effb7acdc Core/Spells: Fix client crash on ESC when channeling certain spells (e.g. Eye of Acherus, Death Knight Understudy)
Fixes #1131
2011-07-30 19:16:54 +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
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
Shauren
b9a6e2333c Core/Spells: Removed implicit casts from SpellImplicitTargetInfo, fixed copypaste mistakes and one crash 2011-07-27 12:35:59 +02:00
Spp-
b2a84d9f1e Core/ObjectMgr: Remove GetPlayer function (Remove double use of singletons) 2011-07-27 12:14:27 +02:00
Spp-
fa50c0a464 Fix some warnings here and there 2011-07-27 11:00:39 +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
tobmaps
a0f1a5c789 Core/Spells: Removed remaining part of old global cooldown handler 2011-07-23 03:30:43 +07:00
Shauren
74e2d981ac Core/GameObject: Refactored destructible building handling, properly implemented spell effect repair 2011-07-22 21:22:05 +02:00
Shauren
1e3c23a4e8 Core/Spells: Set UNIT_FIELD_TARGET to current spell cast target for proper facing the target 2011-07-15 12:33:03 +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