Показать сообщение отдельно
Старый 11.10.2012, 11:12   #1
Den
Ученый
 
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
Den Скоро придёт к известностиDen Скоро придёт к известности
По умолчанию [patch] Check cast Distract

Код:
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp
index 913f942..554cd7b 100644
--- a/src/game/Spell.cpp
+++ b/src/game/Spell.cpp
@@ -5463,6 +5463,28 @@ SpellCastResult Spell::CheckCast(bool strict)
                 }
                 break;
             }
+            case SPELL_EFFECT_DISTRACT:
+            {
+                // Distract
+                if (m_spellInfo->Id == 1725)
+                {
+                    UnitList targetsCombat;
+
+                    float radius = GetSpellRadius(sSpellRadiusStore.LookupEntry(m_spellInfo->EffectRadiusIndex[i]));
+
+                    FillAreaTargets(targetsCombat, radius, PUSH_DEST_CENTER, SPELL_TARGETS_AOE_DAMAGE);
+
+                    if (targetsCombat.empty())
+                        break;
+
+                    for (UnitList::iterator itr = targetsCombat.begin(); itr != targetsCombat.end(); ++itr)
+                    {
+                        if ((*itr)->isInCombat())
+                            return SPELL_FAILED_TARGET_IN_COMBAT;
+                    }
+                }
+                break;
+			}
             case SPELL_EFFECT_SCHOOL_DAMAGE:
             {
                 // Hammer of Wrath
Den вне форума