diff options
author | joschiwald <joschiwald.trinity@gmail.com> | 2017-07-29 18:01:12 +0200 |
---|---|---|
committer | joschiwald <joschiwald.trinity@gmail.com> | 2017-07-29 18:01:12 +0200 |
commit | 7e4f6078512cd42f606b513f0a2597cc5f06dcc0 (patch) | |
tree | f7ba4182e886291fc970101824cf8c19a07a3669 /src | |
parent | 19dcae0dd4346304d509ac866305b737a8683048 (diff) |
Core/Spells: Renamed SPELL_EFFECT_CREATE_MANA_GEM to SPELL_EFFECT_RECHARGE_ITEM
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Miscellaneous/SharedDefines.h | 2 | ||||
-rw-r--r-- | src/server/game/Spells/Spell.cpp | 14 | ||||
-rw-r--r-- | src/server/game/Spells/Spell.h | 2 | ||||
-rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 31 | ||||
-rw-r--r-- | src/server/game/Spells/SpellInfo.cpp | 2 |
5 files changed, 20 insertions, 31 deletions
diff --git a/src/server/game/Miscellaneous/SharedDefines.h b/src/server/game/Miscellaneous/SharedDefines.h index 29f58acb00d..5ef380758ae 100644 --- a/src/server/game/Miscellaneous/SharedDefines.h +++ b/src/server/game/Miscellaneous/SharedDefines.h @@ -1091,7 +1091,7 @@ enum SpellEffectName SPELL_EFFECT_THREAT = 63, SPELL_EFFECT_TRIGGER_SPELL = 64, SPELL_EFFECT_APPLY_AREA_AURA_RAID = 65, - SPELL_EFFECT_CREATE_MANA_GEM = 66, + SPELL_EFFECT_RECHARGE_ITEM = 66, SPELL_EFFECT_HEAL_MAX_HEALTH = 67, SPELL_EFFECT_INTERRUPT_CAST = 68, SPELL_EFFECT_DISTRACT = 69, diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 02aca63a6fb..bb5bdc602da 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -6544,18 +6544,18 @@ SpellCastResult Spell::CheckItems() } break; } - case SPELL_EFFECT_CREATE_MANA_GEM: + case SPELL_EFFECT_RECHARGE_ITEM: { - uint32 item_id = effect->ItemType; - ItemTemplate const* pProto = sObjectMgr->GetItemTemplate(item_id); + uint32 itemId = effect->ItemType; - if (!pProto) + ItemTemplate const* proto = sObjectMgr->GetItemTemplate(itemId); + if (!proto) return SPELL_FAILED_ITEM_AT_MAX_CHARGES; - if (Item* pitem = player->GetItemByEntry(item_id)) + if (Item* item = player->GetItemByEntry(itemId)) { - for (uint8 x = 0; x < pProto->Effects.size() && x < 5; ++x) - if (pProto->Effects[x]->Charges != 0 && pitem->GetSpellCharges(x) == pProto->Effects[x]->Charges) + for (uint8 x = 0; x < proto->Effects.size() && x < 5; ++x) + if (proto->Effects[x]->Charges != 0 && item->GetSpellCharges(x) == proto->Effects[x]->Charges) return SPELL_FAILED_ITEM_AT_MAX_CHARGES; } break; diff --git a/src/server/game/Spells/Spell.h b/src/server/game/Spells/Spell.h index 9aaea1b5973..b3602e28123 100644 --- a/src/server/game/Spells/Spell.h +++ b/src/server/game/Spells/Spell.h @@ -454,7 +454,7 @@ class TC_GAME_API Spell void EffectRemoveAura(SpellEffIndex effIndex); void EffectDamageFromMaxHealthPCT(SpellEffIndex effIndex); void EffectCastButtons(SpellEffIndex effIndex); - void EffectRechargeManaGem(SpellEffIndex effIndex); + void EffectRechargeItem(SpellEffIndex effIndex); void EffectGiveCurrency(SpellEffIndex effIndex); void EffectResurrectWithAura(SpellEffIndex effIndex); void EffectCreateAreaTrigger(SpellEffIndex effIndex); diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index be716fb61ef..3b1297d36c4 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -139,7 +139,7 @@ pEffect SpellEffects[TOTAL_SPELL_EFFECTS]= &Spell::EffectThreat, // 63 SPELL_EFFECT_THREAT &Spell::EffectTriggerSpell, // 64 SPELL_EFFECT_TRIGGER_SPELL &Spell::EffectApplyAreaAura, // 65 SPELL_EFFECT_APPLY_AREA_AURA_RAID - &Spell::EffectRechargeManaGem, // 66 SPELL_EFFECT_CREATE_MANA_GEM (possibly recharge it, misc - is item ID) + &Spell::EffectRechargeItem, // 66 SPELL_EFFECT_RECHARGE_ITEM &Spell::EffectHealMaxHealth, // 67 SPELL_EFFECT_HEAL_MAX_HEALTH &Spell::EffectInterruptCast, // 68 SPELL_EFFECT_INTERRUPT_CAST &Spell::EffectDistract, // 69 SPELL_EFFECT_DISTRACT @@ -5481,35 +5481,24 @@ void Spell::EffectCastButtons(SpellEffIndex /*effIndex*/) } } -void Spell::EffectRechargeManaGem(SpellEffIndex /*effIndex*/) +void Spell::EffectRechargeItem(SpellEffIndex /*effIndex*/) { if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET) return; - if (!unitTarget || unitTarget->GetTypeId() != TYPEID_PLAYER) + if (!unitTarget) return; - Player* player = m_caster->ToPlayer(); - + Player* player = unitTarget->ToPlayer(); if (!player) return; - if (SpellEffectInfo const* effect = GetEffect(EFFECT_0)) - { - uint32 item_id = effect->ItemType; - - ItemTemplate const* pProto = sObjectMgr->GetItemTemplate(item_id); - if (!pProto) - { - player->SendEquipError(EQUIP_ERR_ITEM_NOT_FOUND, NULL, NULL); - return; - } - if (Item* pItem = player->GetItemByEntry(item_id)) - { - for (size_t x = 0; x < pProto->Effects.size() && x < 5; ++x) - pItem->SetSpellCharges(x, pProto->Effects[x]->Charges); - pItem->SetState(ITEM_CHANGED, player); - } + if (Item* item = player->GetItemByEntry(effectInfo->ItemType)) + { + ItemTemplate const* proto = item->GetTemplate(); + for (size_t x = 0; x < proto->Effects.size() && x < 5; ++x) + item->SetSpellCharges(x, proto->Effects[x]->Charges); + item->SetState(ITEM_CHANGED, player); } } diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index 2604c2e3346..1319cfa41cd 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -792,7 +792,7 @@ SpellEffectInfo::StaticData SpellEffectInfo::_data[TOTAL_SPELL_EFFECTS] = {EFFECT_IMPLICIT_TARGET_EXPLICIT, TARGET_OBJECT_TYPE_UNIT}, // 63 SPELL_EFFECT_THREAT {EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 64 SPELL_EFFECT_TRIGGER_SPELL {EFFECT_IMPLICIT_TARGET_EXPLICIT, TARGET_OBJECT_TYPE_UNIT}, // 65 SPELL_EFFECT_APPLY_AREA_AURA_RAID - {EFFECT_IMPLICIT_TARGET_EXPLICIT, TARGET_OBJECT_TYPE_UNIT}, // 66 SPELL_EFFECT_CREATE_MANA_GEM + {EFFECT_IMPLICIT_TARGET_EXPLICIT, TARGET_OBJECT_TYPE_UNIT}, // 66 SPELL_EFFECT_RECHARGE_ITEM {EFFECT_IMPLICIT_TARGET_EXPLICIT, TARGET_OBJECT_TYPE_UNIT}, // 67 SPELL_EFFECT_HEAL_MAX_HEALTH {EFFECT_IMPLICIT_TARGET_EXPLICIT, TARGET_OBJECT_TYPE_UNIT}, // 68 SPELL_EFFECT_INTERRUPT_CAST {EFFECT_IMPLICIT_TARGET_EXPLICIT, TARGET_OBJECT_TYPE_UNIT_AND_DEST}, // 69 SPELL_EFFECT_DISTRACT |