Commit Graph
112 Commits
Author SHA1 Message Date
Wilds 3103915994 Core/Spells: attribute research 2011-12-11 20:46:47 +01:00
kaelima 79903f31ce Core/Spells: Add own diminishing category for Dragon's Breath.
Will no longer share diminishing with Polymorph
Closes #3081
2011-11-13 00:51:33 +01:00
tobmaps c0c6000a44 Core/Misc: Fix spelling typo 2011-11-02 19:13:51 +07:00
Liberate a658d0b592 Core/Spells: Define and implement SPELL_ATTR4_PROC_ONLY_ON_DUMMY.
Fixes #2685
Fixes #2573
2011-10-19 22:08:54 +02:00
megamage 0bb86a3e97 Update code related to character name data.
Note: need to add/delete data when character is created/deleted.
2011-10-08 16:09:12 -04: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 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 31e755c291 Core/Entities: Add Unit::IsValidAssistTarget and Unit::IsValidAttackTarget functions for proper serverside checks of related entity flags. 2011-09-16 22:17:48 +02:00
Spp- 3fac9914be Core: Code cleanup (here and there) 2011-09-05 14:01:50 +02:00
QAston e7468b2e2c Core/Spells: Do not apply spellmods to spells with SPELL_ATTR3_NO_DONE_BONUS attribute. 2011-08-23 14:30: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 868c1c53f2 Core/GameObjects: Unrevealed GO_FLAG_UNK1. Now GO_FLAG_NOT_SELECTABLE makes gameobjects to be unselectable even in GM mode 2011-08-19 11:45:49 +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
Payn 69433862cb Core/Spells: Changed CHAIN_SPELL_JUMP_RADIUS down from 10y to 8y 2011-08-18 14:42:09 +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 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 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 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
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
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
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 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
Shauren 74e2d981ac Core/GameObject: Refactored destructible building handling, properly implemented spell effect repair 2011-07-22 21:22:05 +02:00
tobmaps a3feb40eb6 Core/Spells: Define and implement SPELL_ATTR6_NO_DONE_PCT_DAMAGE_MODS; revert SPELL_ATTR4_FIXED_DAMAGE
Closes #1307
Closes #2270
2011-07-22 23:30:23 +07: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 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 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 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 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 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 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
kaelima 6f361be1ba Core/Spell: Correctly reordered diminishing groups for sharing diminishing timers between spells.
- Fixes several spells witch were in wrong group.
- Charge and scatter shot now has their own group.
- Moved Noblegarden Bunny costumes to negative effect.

Thanks Shocker for testing. Data comes from Elitist Jerks, Arena Junkies and a few addons tracking diminishing timers.
2011-06-17 22:35:05 +02:00
Shauren 9b79df7074 Core/Spells: Implemented SPELL_ATTR7_IS_CHEAT_SPELL serverside checks and allow GMs to cast these spells 2011-06-11 13:02:54 +02:00
QAston 38de636e30 Core/Spells: Define some unknown spell attributes. 2011-06-11 10:55:17 +02:00
kaelima a7a1a123ec Core/Defines: filled some gaps from 31abc9e20c 2011-06-08 13:53:14 +02:00
kaelima 31abc9e20c Core/Defines: Revert parts of ae0d349a3c.
Seems like the list in lua files doesn't match what the client actually sends.

Closes #1895 #1894
2011-06-08 12:09:26 +02:00
Shauren 009aff2cc9 Core/Spells: Fixed targeting selection for target type 90 (TARGET_UNIT_TARGET_MINIPET)
Closes #1776
2011-06-04 12:13:27 +02:00
Shocker 38b07319fe Core/Events: Add missing definition for Kalu'ak Fishing Derby 2011-06-01 15:05:56 +03:00
kaelima ae0d349a3c Core/Defines: Update enum TextEmotes, values and names from client. (These emotes comes in CMSG_TEXT_EMOTE). 2011-05-30 22:57:37 +02:00