Insider42
20.05.2010, 11:03
Суть проблемы:
Призываемый тотем не имеет 10% от жизни заклинателя
Покопавшись с помощью проги SpellWork в DBC разных версий клиента ОБНАРУЖИЛ:
патч 3.1.0
Effect: (028) SPELL_EFFECT_SUMMON
Base point = 5
Target A (TARGET_TOTEM_WATER), Target B (No target)
EffectMiscValue = 10467
EffectMiscValueB = 82
Effect: NO EFFECT
Effect: NO EFFECT
патч 3.2.0 (где как раз и введено данное изменение)
Effect: (028) SPELL_EFFECT_SUMMON
Base point = 5
Target A (TARGET_TOTEM_WATER), Target B (No target)
EffectMiscValue = 10467
EffectMiscValueB = 82
Effect: (000) No Effect
Base point = 10
Target A (No target), Target B (No target)
Effect: NO EFFECT
Вот что вышло
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index 4303e17..11db5c1 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -6797,6 +6802,9 @@ void Spell::DoSummonTotem(SpellEffectIndex eff_idx, uint8 slot_dbc)
modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_DURATION, duration);
pTotem->SetDuration(duration);
+ if (m_spellInfo->Id == 16190)
+ damage = m_caster->GetMaxHealth() * m_spellInfo->CalculateSimpleValue(EFFECT_INDEX_1) / 100;
+
if (damage) // if not spell info, DB values used
{
pTotem->SetMaxHealth(damage);
Призываемый тотем не имеет 10% от жизни заклинателя
Покопавшись с помощью проги SpellWork в DBC разных версий клиента ОБНАРУЖИЛ:
патч 3.1.0
Effect: (028) SPELL_EFFECT_SUMMON
Base point = 5
Target A (TARGET_TOTEM_WATER), Target B (No target)
EffectMiscValue = 10467
EffectMiscValueB = 82
Effect: NO EFFECT
Effect: NO EFFECT
патч 3.2.0 (где как раз и введено данное изменение)
Effect: (028) SPELL_EFFECT_SUMMON
Base point = 5
Target A (TARGET_TOTEM_WATER), Target B (No target)
EffectMiscValue = 10467
EffectMiscValueB = 82
Effect: (000) No Effect
Base point = 10
Target A (No target), Target B (No target)
Effect: NO EFFECT
Вот что вышло
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index 4303e17..11db5c1 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -6797,6 +6802,9 @@ void Spell::DoSummonTotem(SpellEffectIndex eff_idx, uint8 slot_dbc)
modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_DURATION, duration);
pTotem->SetDuration(duration);
+ if (m_spellInfo->Id == 16190)
+ damage = m_caster->GetMaxHealth() * m_spellInfo->CalculateSimpleValue(EFFECT_INDEX_1) / 100;
+
if (damage) // if not spell info, DB values used
{
pTotem->SetMaxHealth(damage);