Commit Graph

78 Commits

Author SHA1 Message Date
Shauren 77130c910f Core/Spells: Fixed Execute formula, patch by dr.tenma
Closes issue #3478.

--HG--
branch : trunk
2010-09-05 14:28:13 +02:00
Shauren 1863960da8 Core/Spell: Fixed Escape artist, patch by Heisenberg
Closes issue #3536.

--HG--
branch : trunk
2010-09-05 13:59:49 +02:00
silinoron 5179d3149a Core/Game: Fix remaining warnings on windows (and most likely almost all of the ones on *nix)
--HG--
branch : trunk
2010-09-03 21:55:57 -07:00
azazel 7884fd927a Spell Scripts:
* moved some generic spell dummy effects to scripts
* implemented two spell scripts for quests: 8913 Sacred Cleansing (Quest 55), 44936 Quest - Fel Siphon Dummy (Quest 11515). Closes issue #3040
* did some cleanup in spell scripts and added more comments

--HG--
branch : trunk
2010-09-04 02:33:57 +06:00
Shauren e25846a08e Core/Spells: Fixed crash in EffectFeedPet
Closes issue #3728.
Closes issue #3752.

--HG--
branch : trunk
2010-09-02 22:04:08 +02:00
Shauren 15880d27ea Core/Spells: Fixed Health Leech effect, should not apply healing multiplier to damage done
--HG--
branch : trunk
2010-09-02 15:34:36 +02:00
Shocker c8dfbdac35 Conflagrate direct & DoT damage shouldn't scale with duration increases of Immolate/Shadowflame, fixes issue 3376.
--HG--
branch : trunk
2010-09-02 06:02:51 +03:00
Spp 405f312918 Core: Fix more warnings
--HG--
branch : trunk
2010-08-30 15:25:15 +02:00
azazel d952c90754 Spell Scripts:
* add new file spell_item.cpp for spells used by items (but not by quests)
* move some dummy effects of generic spells to scripts
* implement spell for quest 12937 Relief for the Fallen. Closes issue #3070

--HG--
branch : trunk
2010-08-29 22:40:23 +06:00
QAston d81f5facc0 *Allow SPELL_EFFECT_POWER_BURN(64) to proc with damage.
--HG--
branch : trunk
2010-08-29 05:26:32 +02:00
QAston 2d877bbbfd *Allow damage shield hits to miss.
*Send overkill on damage shield hit.
*Correct data order for execute log of power take effects.

--HG--
branch : trunk
2010-08-29 03:38:21 +02:00
QAston 511e8c5acf *Make EffectHealMechanical, EffectHealPct, EffectHealMaxHealth and EffectHealthLeech to use proc system for their dmg/heal (thanks kiper for research)
*Fix some spells with EffectHealMaxHealth with effect value set to 0.
*Fix a typo.

--HG--
branch : trunk
2010-08-28 23:01:04 +02:00
azazel 71de9aa79f DB Scripts: Fix calling of DB scripts from spell_scripts table
--HG--
branch : trunk
2010-08-28 21:01:16 +06:00
QAston e85df47749 *Send SMSG_SPELLINSTAKILLLOG on SPELL_EFFECT_INSTAKILL(1), thanks to Zor for base packet info.
--HG--
branch : trunk
2010-08-28 00:30:07 +02:00
QAston 6c3015a7e6 *Fix issues with negative dmg of periodic power burn and periodic power leech effects added recently.
*Minor cleanup.

--HG--
branch : trunk
2010-08-27 20:51:29 +02:00
QAston 36640c263a *Consistent parameter names of spell effect handlers - use effIndex instead of i or eff_idx or variations of it.
--HG--
branch : trunk
2010-08-27 19:36:27 +02:00
QAston f1d4933dcb *Fix combat logging of many spell effects - thanks to kiper, Ssp, Cyrax, and manuel for providing data and to Zor for inspecting opcodes.
--HG--
branch : trunk
2010-08-27 17:49:32 +02:00
QAston c1ac063ba1 *Remove m_currentBasePoints from spell class, use m_spellValue instead.
--HG--
branch : trunk
2010-08-27 06:40:23 +02:00
QAston 1d3deae555 *Send to client periodic heal absorbtion.
*Heal over time spells are updating healing achievement progress now.

--HG--
branch : trunk
2010-08-27 01:13:27 +02:00
QAston 30d31ca40a *Fix usage of EffectValueMultiplier in spell code.
*Remove some obsolete code from spell class.
*Rename some spellmod and dbc column names to be more accurate.

--HG--
branch : trunk
2010-08-26 19:07:55 +02:00
Shauren 73d3f210a9 Scripts/Icecrown Citadel: Add script for Deathbringer Saurfang (only missing alliance outro due to need of spawning and moving a transport)
Scripts/Icecrown Citadel: Corrected Lord Marrowgar, should no longer target tanks with Bone Spike Graveyard, his Coldflame should now spread properly
Core/Scripts: Moved Lady Deathwhisper Mana Barrier handler to scripts
Core/Scripts: Allow AuraScript to prevent default effects by effect index
Core/Scripts: Added Is25ManRaid() method to ScriptedAI, obviously used to check if raid is 25man
Core/Achievements: Pass m_caster to UpdateAchievementCriteria for ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET

--HG--
branch : trunk
2010-08-21 20:50:38 +02:00
azazel 5fa14f58dc Core/Cleanup:
* move repeating code into separate method for storing locale strings in ObjectMgr (copy/paste sucks, you know)
* fix 'signed/unsigned' warnings (at least in VS)
* fix some other warnings and cleanup relative code

--HG--
branch : trunk
2010-08-26 15:54:56 +06:00
azazel 341e6303ef Core:
* add helping methods for manipulating unit's health and use it where applicable
* fix some conversion warnings and cleanup code (formatting, CRLF, tabs to spaces)

--HG--
branch : trunk
2010-08-26 01:20:57 +06:00
Shocker bd2ffab07a * Move Paladin Judgement bonuses to spell_bonus_data, thanks deltapower.inc
* Avoid code duplication by moving spell interrupt code for jump effects to a common function for both EffectJump and EffectJumpDest, thanks devthenecro

--HG--
branch : trunk
2010-08-25 18:24:40 +03:00
Shocker 020211bb31 Fix seal unleash damage for Seal of Wisdom / Light / Justice / Vengeance
--HG--
branch : trunk
2010-08-25 06:17:12 +03:00
Shocker c741163313 Knockback (ex: Thunderstorm) and Jump (ex: Death Grip) effects must instantly interrupt spellcasting on victim. Fixes issue 1973
--HG--
branch : trunk
2010-08-25 05:14:16 +03:00
Shocker d3c6edeb4a Correct usage of basePoints in various locations
--HG--
branch : trunk
2010-08-25 03:21:22 +03:00
silinoron 8649bee17f Replace World::getConfig with World::getFloatConfig, World::getIntConfig, and World::getBoolConfig.
Also fix a warning from a previous commit.

--HG--
branch : trunk
2010-08-23 19:56:47 -07:00
silinoron 34384a3832 Spell 62124 should allow critical hits.
Based on patch by Toni.Shocker (yes, again).
Fixes issue #3554
Also get rid of GuildScript in TODO, as it already exists.

--HG--
branch : trunk
2010-08-23 15:51:34 -07:00
silinoron ccc2a83510 * Some consistency changes.
* Move spell 6962 to spell scripts and make sure to set deathstate.

--HG--
branch : trunk
2010-08-22 21:07:18 -07:00
silinoron 5cbae843d5 Core/Game: fix all warnings related to converting doubles and floats.
--HG--
branch : trunk
2010-08-22 12:39:39 -07:00
azazel 399e35f8f5 Core:
* fix "warning C4305: 'initializing' : truncation from 'double' to 'float'" warnings
* fix some other warnings here and there

--HG--
branch : trunk
2010-08-22 23:46:40 +06:00
click 670964803f Core: Fix more warnings, add new function sLog.outStaticDebug() that replaces DEBUG_LOG
--HG--
branch : trunk
2010-08-22 01:57:04 +02:00
Spp 572f7bbd1d Core: Remove "may be used uninitialized in this function", "unused parameter ‘xxx’" and "'xxx' defined but not used" warnings
--HG--
branch : trunk
2010-08-21 23:08:54 +02:00
QAston 77bd968c63 *Remove some unused containers from Spell class.
--HG--
branch : trunk
2010-08-21 21:00:06 +02:00
Shauren 71a5320eda Scripts: Added script for Lord Marrowgar
Added base script for Icecrown Citadel instance

--HG--
branch : trunk
2010-08-18 17:19:47 +02:00
QAston 5e78e222c1 Core/Spells: Implement TARGET_DEST_CHANNEL_CASTER(106) and TARGET_GAMEOBJECT_AREA_PATH(108). Rename TARGET_UNIT_CHANNEL to TARGET_UNIT_CHANNEL_TARGET, TARGET_DEST_CHANNEL to TARGET_DEST_CHANNEL_TARGET
--HG--
branch : trunk
2010-08-18 15:04:00 +02:00
azazel 66fcd52106 Add more methods to SpellScript.
Spells cleanup: move spells from the core to scripts.

* Shaman spells: 39610 Mana Tide Totem, 1535 Fire Nova (and ranks)
* Death Knight spells: 55090 Scourge Strike (and ranks), 49158 Corpse Explosion (and ranks), 50524 Runic Power Feed
* Druid spells: 54846 Glyph of Starfire
* Warlock spells: 6201 Create Healthstone (and ranks), 47422 Everlasting Affliction, 47193 Demonic Empowerment, 63521 Guarded by The Light
* Hunter spells: 37506 Scatter Shot, 53412 Invigoration, 53209 Chimera Shot
* Quest spells: 45449 Arcane Prisoner Rescue (quest 11587), 46023 The Ultrasonic Screwdriver (quest 11730). Closes issue #3068

Clean old code for hunter's Heart of the Phoenix, move script effect of hunter's Master's Call to corresponding script.
Move DK's Hungering Cold to spell_scripts table (needs DB support)

--HG--
branch : trunk
2010-08-18 00:20:23 +06:00
Brian 1f52153410 Backed out changeset f751065ec933
Spell rep rate was already implemented by QAston

--HG--
branch : trunk
2010-08-09 11:33:31 -06:00
azazel f5399618d9 Implement reputation rates and aura effects for Spell::EffectReputation() (thanks Lynx3d)
--HG--
branch : trunk
2010-08-09 23:22:31 +06:00
QAston fa8a826656 *(More) correct implementation of SPELL_EFFECT_PULL_TOWARDS_DEST(145)
--HG--
branch : trunk
2010-08-09 02:31:42 +02:00
QAston 617a56ba29 *Implement spell casting on transports (no more out of range error, etc)
*Add MO transports to ObjectAccessor storage
*Add functions Position::RelocateOffset and Position::GetPositionOffsetTo to help offset manipulations - BIG thanks to azazelkon for creating formulas!
*Add function to output debug info for MovementInfo and SpellCastTargets
*Throw ByteBufferException on incorrect packGUID read
*Add rfinish function to finish bytebuffer read.

--HG--
branch : trunk
2010-08-08 20:32:14 +02:00
click 1f80c7b3c0 Sourcefile sleanups -> tabs to spaces, remove whitespace - also update the cleanupscripts very slightly
--HG--
branch : trunk
2010-08-08 19:45:53 +02:00
XTZGZoReX 9083271a2f * Some singleton renames for consistency:
accmgr -> AccountMgr
objmgr -> ObjectMgr
auctionmgr -> sAuctionMgr
spellmgr -> sSpellMgr
CreatureEAI_Mgr -> sEventAIMgr
achievementmgr -> sAchievementMgr
gameeventmgr -> sGameEventMgr
sInstanceSaveManager -> sInstanceSaveMgr
poolhandler -> sPoolMgr

--HG--
branch : trunk
2010-08-08 05:25:45 +02:00
XTZGZoReX 909e332579 * Rename: BattleGround -> Battleground.
--HG--
branch : trunk
2010-08-08 04:37:24 +02:00
silinoron 443226c562 Unholy Blight should prevent the dispelling of diseases.
Fixes issue #2609
Fixes issue #2982

--HG--
branch : trunk
2010-08-06 21:32:42 -07:00
azazel f413d60908 * Move all movable spell effects from core to DB. Needs DB support.
* Fix some compile errors made in previous commits.

--HG--
branch : trunk
2010-08-07 01:02:09 +06:00
XTZGZoReX 946adf469c *** New core <-> script library interface - complete rewrite of the old one.
* Removed the misdesigned on_events script/hooks.
* Lots of related cleanups and assertions.
* The interface is now fully object-oriented.
** Scripts no longer use function pointers.
** Scripts no longer use the general-purpose Script struct for everything.
** Script types are split into separate classes which must be inherited depending on what functionality is desired.
* Several script types have been added to allow extending functionality in a code-only manner (some script types require
  assignment in the recently added ScriptName columns in the database, though).
** SpellHandlerScript: Wrapper around spell scripts (returns new SpellScript objects (`spell_script_names`.`ScriptName`)).
** ServerScript: Allows scripting events that occur in the network layer.
** WorldScript: Allows scripting certain world-global events.
** FormulaScript: Allows hooking and interfering with core formulas.
** *MapScript: Allows hooking different map types (including world, instance, and battleground maps (`instance_template`.`ScriptName`)).
** ItemScript: Allows scripting of items (like the old interface (`item_template`.`ScriptName`)).
** CreatureScript: Allows scripting of creatures/AI (like the old interface (`creature_template`.`ScriptName`)).
** GameObjectScript: Allows scripting of gameobjects (like the old interface (`gameobject_template`.`ScriptName`)).
** AreaTriggerScript: Allows scripting triggered area triggers (like the old interface (`areatrigger_scripts`.`ScriptName`)).
** OutdoorPvPScript: Script which should return OutdoorPvP objects for use by OutdoorPvPMgr (`outdoorpvp_template`.`ScriptName`).
** CommandScript: Allows extending the in-core command table.
** WeatherScript: Allows scripting of weather changes (`game_weather`.`ScriptName`).
** AuctionHouseScript: Allows scripting of auction events.
** ConditionScript: Allows scripting of conditions (`conditions`.`ScriptName`).
** DynamicObjectScript: Allows scripting of dynamicobjects.
** TransportScript: Allows scripting of transport events (`transports`.`ScriptName`).
* OutdoorPvP objects are now created through scripts. This effectively means that they'll need to be moved to scripts
  before the they're functional again.
* The whole idea with this new interface is to allow expanding core functionality without touching core code. If further
  hooks are needed to expand functionality of the core, let us know; we'll add them, if we agree that it is appropriate
  to do so.
*** NOTE: The scripts project will _not_ build before it has been adapted to the new interface.
*** Thanks to everyone who helped out with related preparations and suggestions!

--HG--
branch : trunk
2010-08-06 19:23:43 +02:00
azazel 2562a4651f Moved Pain and Suffering (47948) script effect to spell script.
--HG--
branch : trunk
2010-08-06 23:03:43 +06:00
azazel 885fc368fd * Implement item limit category (based on changes by VladimirMangos)
* Additional check for HandleAutoBankItemOpcode (thanks to VladimitMangos)
* Properly show empty vendor list for empty item list (author: a1ien)
* More stricted checks for store operations (thanks to VladimirMangos)
* Prevent autostoring of not empty bags (thanks to L1ghtGu4rd)

Changes need testing. Please post bugs on our tracker.

--HG--
branch : trunk
2010-08-05 22:08:07 +06:00