Commit Graph

279 Commits

Author SHA1 Message Date
Shauren 8919b9cb4c Core/Spells: Fixed typo breaking SPELL_AURA_MOD_AOE_DAMAGE_AVOIDANCE and SPELL_AURA_MOD_CREATURE_AOE_DAMAGE_AVOIDANCE 2011-10-06 14:22:11 +02:00
Shauren 5d37116ea6 Core/Spells: Allow ProcessEvent hook to run in EffectSendEvent when spell caster is a player 2011-09-30 18:41:30 +02:00
Shauren da54fb92d5 Core/Movement: Fixed knockback visibility for other players (no more "teleport") and knockback strength from creature spells (this does not fix knocking creatures back) 2011-09-30 18:24:12 +02:00
Spp b16d2245bb Cosmetic: Multiple cosmetic changes
- Added missing space to 'if', 'for', 'while' and 'switch' when it's followed by '('
- Added missing space after a comma and remove space before comma (with some exceptions)
- Remove trailing spaces
- Convert tab to spaces

Note: Only affects files with extension "cpp" and "h" under /src/server
2011-09-29 12:43:05 +02:00
QAston 8dd88fa43c Core/Spells: fix a typo which caused to display unneeded error message (invalid target) during cast of some spells (like warrior charge). 2011-09-28 18:59:55 +02:00
QAston a409cc226c Core/Spells: Fix Vanish's stealth trigger and Demonic Empowerment's invisibility trigger
Those spells were failing to pass default effect trigger spell due to their custom implementation (changing triggered_spell_id instead of adding serverside spells with proper targeting).
2011-09-27 00:36:23 +02:00
QAston e949ad3adb Core/Spells: spell effect handling improvements
* Call spell effect handlers in 4 modes:
   - SPELL_EFFECT_HANDLE_LAUNCH - called when spell is launched (cast just finished)
   - SPELL_EFFECT_HANDLE_LAUNCH_TARGET - called when spell is launched for each target in spell target map
   - SPELL_EFFECT_HANDLE_HIT - called when spell hits its destination
   - SPELL_EFFECT_HANDLE_HIT_TARGET - called when spell hits it's target from spell target map
*Correctly implement SPELL_EFFECT_TRIGGER_SPELL, SPELL_EFFECT_TRIGGER_SPELL_WITH_VALUE, SPELL_EFFECT_TRIGGER_MISSILE_SPELL_WITH_VALUE, SPELL_EFFECT_TRIGGER_MISSILE_SPELL
*Remove spell system hacks which became obsolete with this commit
Core/SpellScripts:
add OnEffectLaunch, OnEffectLaunchTarget, OnEffectHit, OnEffectHitTarget hooks for new effect handle modes and remove OnEffect hook.
A generic rule of thumb how to update your scripts (will work for nearly all cases) for spell system noobs:
if your spell script used GetHitXXXX function, you need to use OnEffectHitTarget, otherwise use
OnEffectHit
2011-09-25 13:29:50 +02:00
QAston d01a761f53 Core/Spells: Drop EFFECT_IMPLICIT_TARGET_PET and use EFFECT_IMPLICIT_TARGET_EXPLICIT instead. 2011-09-24 02:02:39 +02:00
Shauren 154c7ce79c Core/Spells: Fixed Brewfest - Attack Keg spell damage 2011-09-22 20:16:47 +02:00
QAston c0b1823524 Core/Entities: Replace Unit::canAttack usage with more accurate Unit::IsValidAttackTarget 2011-09-16 23:49:31 +02:00
Shauren 732e27f1e8 Core/Spells: Spells having the same effect types on multiple effects will now select them at the same time (except targets selected by entry) to ensure correct behavior with MaxAffectedTargets use 2011-09-16 11:40:53 +02:00
Shocker 7afb179185 Misc/Util: Add a template function for returning a random element from any container 2011-09-15 21:28:40 +03:00
Nay 791acfebac Core/Spells&GOs: Fix Ritual of Doom.
Thanks QAston and Shocker for helping.
Closes #2535
2011-09-15 17:52:35 +01:00
Spp af05915b9e [Cosmetic] Apply codestyle "XXX * " and "XXX *" changed to "XXX* " (with some exceptions) 2011-09-15 14:12:57 +02:00
Spp- 33ce07bdde Core: Minor cleanups (here and there)
- Fix warning
- Fix some typos
- Correct upper 'for' limit in LoadSkillLineAbilityMap
- Remove use of magic number in a query related to security levels
2011-09-13 14:15:35 +02:00
Spp- 327fe7c247 Core: Define helper functions to know if an account is Player, Moderator, GM, Admin or Console 2011-09-08 15:11:55 +02:00
kaelima 6078eebc45 Fix typo in 9d90c8245b and unintended change in b08900d033b51632e9adef8cb227a71a1061be5f. 2011-09-07 15:09:53 +02:00
kaelima 9d90c8245b Core/Spells: Deep freeze should do damage instead of freezing on targets with permanent stun immunity. 2011-09-07 00:19:40 +02:00
Nay 152f446c60 DB/BGs: Fix capturing of Snowball GY - AV
Counter-hack a hack with a hack. Closes #222
2011-09-06 21:20:14 +01:00
Shauren f13f32c972 Core/Achievements: Award normal mode achievements when instance was done on heroic mode 2011-09-05 15:21:37 +02:00
Spp- 3fac9914be Core: Code cleanup (here and there) 2011-09-05 14:01:50 +02:00
Nay fd5ab97774 Core/Spells: Fix Distract. Closes #155 2011-09-04 01:58:44 +01:00
Chaplain bea649d045 Core: cleanup.
*remove some garbage
*little bit moore const func
*fix process of args in vmap3_extractor
2011-09-01 22:38:32 +03:00
QAston 8e392440cf Core/Spells: Fix a regression of 7f30ac5a95 - spells with TARGET_SELECT_CATEGORY_CHANNEL target type (like mind sear) should be triggered by triggering spell caster 2011-08-26 12:39:50 +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 e2d8faea09 Core/Spells: move Cannibalize and Carrion Feeder cast checks to SpellScripts. 2011-08-20 00:30:38 +02:00
tobmaps cd03dadb7f Core/Misc: Minor code cleanup and code style fix 2011-08-20 04:43:01 +07: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
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
Nay a39ea8f3e5 Core/Spells: - Apply proper unit flags to summoned minions
- SPELL_AURA_MOD_REPUTATION_GAIN spells (e.g Diplomacy) should increase reputation gained from spells (e.g Commendation Badges)
2011-08-06 17:22:24 +01:00
Spp 1c882084f3 Core: Cosmetic changes in Threat related code (per request) and remove of extra call to SpellMgr singleton inside that singleton 2011-08-04 13:16:09 +02:00
Silinoron 0c2cd78400 Core/Refer-a-Friend: Fix a glitch in the summoning system. Thanks gyullo. 2011-08-03 15:21:08 -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
Spp- fcdd4d784f Core/Transport: Minor optimization in LoadTransports (And some cosmetic changes here and there in other files) 2011-08-03 08:18:24 +02:00
Machiavelli ff3c988ee7 Core/Entities: Allow Shaman totems to crit with spells, and add a temp workaround to make Fire Elemental Totem spawn crit with spells also.
Closes #252
Closes #1846
2011-08-01 18:30:00 +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 d4a68025c7 Core/Spells: Fix Shaman talent Storm, Earth, Fire (Earthgrab part) in case of using Earthbind totem trough Call of the Elements etc. 2011-07-31 21:58:27 +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 8ceb780213 Core/Spells: Fix Shaman totem bar exploit that would allow the player to cast any spell when using Call of the Elements etc.
Original patch by 3kids

Closes #2356
2011-07-31 14:12:53 +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 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
Shauren b9a6e2333c Core/Spells: Removed implicit casts from SpellImplicitTargetInfo, fixed copypaste mistakes and one crash 2011-07-27 12:35:59 +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
insider42 17c2c122da Core/Spells: Fix Glyph of Shadow Word: Death 2011-07-25 01:50:46 +07: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