aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjoschiwald <joschiwald.trinity@gmail.com>2017-07-29 18:01:12 +0200
committerjoschiwald <joschiwald.trinity@gmail.com>2017-07-29 18:01:12 +0200
commit7e4f6078512cd42f606b513f0a2597cc5f06dcc0 (patch)
treef7ba4182e886291fc970101824cf8c19a07a3669 /src
parent19dcae0dd4346304d509ac866305b737a8683048 (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.h2
-rw-r--r--src/server/game/Spells/Spell.cpp14
-rw-r--r--src/server/game/Spells/Spell.h2
-rw-r--r--src/server/game/Spells/SpellEffects.cpp31
-rw-r--r--src/server/game/Spells/SpellInfo.cpp2
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