• Страница 1 из 1
  • 1
Модератор форума: Dimitro  
Форум » TrinityCore » Патчи / Моды / Фиксы для Trinity » [fix] Всевластный Суккуб
[fix] Всевластный Суккуб
DeimosLand
Сержант
Первая часть таланта Всевластный Суккуб не работала.

Вот фикс:

Code
diff  a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -3751,6 +3775,43 @@
                spellInfo->EffectRadiusIndex[0] = 37;
                count++;
                break;
+        case 18754: // Improved succubus - problems with apply if target is pet
+            spellInfo->EffectApplyAuraName[0] = SPELL_AURA_ADD_FLAT_MODIFIER;    // it's affects duration of seduction, let's minimize affection
+            spellInfo->EffectBasePoints[0] = -1.5*IN_MILISECONDS*0.22;           // reduce cast time of seduction by 22%    
+            spellInfo->EffectImplicitTargetA[0] = TARGET_UNIT_CASTER;
+            count++;
+            break;
+        case 18755:
+            spellInfo->EffectApplyAuraName[0] = SPELL_AURA_ADD_FLAT_MODIFIER;
+            spellInfo->EffectBasePoints[0] = -1.5*IN_MILISECONDS*0.44;           //  reduce cast time of seduction by 44%
+            spellInfo->EffectImplicitTargetA[0] = TARGET_UNIT_CASTER;
+            count++;
+            break;
+        case 18756:
+            spellInfo->EffectApplyAuraName[0] = SPELL_AURA_ADD_FLAT_MODIFIER;
+            spellInfo->EffectBasePoints[0] = -1.5*IN_MILISECONDS*0.66;           //  reduce cast time of seduction by 66%
+            spellInfo->EffectImplicitTargetA[0] = TARGET_UNIT_CASTER;
+            count++;
+            break;
            // Master Shapeshifter: missing stance data for forms other than bear - bear version has correct data
            // To prevent aura staying on target after talent unlearned
            case 48420:
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp
--- a/src/game/Spell.cpp
+++ b/src/game/Spell.cpp
@@ -51,6 +51,7 @@
@@ -1349,6 +1366,35 @@
                    if (IsChanneledSpell(m_spellInfo))
                        m_originalCaster->ModSpellCastTime(aurSpellInfo, duration, this);
       
+                // Seduction with Improved Succubus talent - fix duration.
+                if (m_spellInfo->Id == 6358 && unit->GetTypeId() == TYPEID_PLAYER && m_originalCaster->GetOwner())
+                {
+                    float mod = 1.0f;
+                    float durationadd = 0.0f;
+                       
+                    if (m_originalCaster->GetOwner()->HasAura(18754))
+                        durationadd += float(1.5*IN_MILISECONDS*0.22);
+                    else if (m_originalCaster->GetOwner()->HasAura(18755))
+                        durationadd += float(1.5*IN_MILISECONDS*0.44);
+                    else if (m_originalCaster->GetOwner()->HasAura(18756))
+                        durationadd += float(1.5*IN_MILISECONDS*0.66);
+
+                    if (durationadd)
+                    {
+                        switch (m_diminishLevel)
+                        {
+                        case DIMINISHING_LEVEL_1: break;
+                        // lol, we lost 1 second here
+                        case DIMINISHING_LEVEL_2: duration += 1000; mod = 0.5f; break;
+                        case DIMINISHING_LEVEL_3: duration += 1000; mod = 0.25f; break;
+                        case DIMINISHING_LEVEL_IMMUNE: { m_spellAura->Remove(); return SPELL_MISS_IMMUNE; }
+                        default: break;
+                        }
+                        durationadd *= mod;
+                        duration += int32(durationadd);
+                    }
+                }
+
                    if (duration == 0 && !positive)
                    {
                        m_spellAura->Remove();


Данный патч был переписа +100500 раз и по словам источника баг, который влёк за собой - исправлен.

Источник
Сообщение # 1 отредактировано DeimosLand - Понедельник, 30.04.2012, 14:53
Dinoza
para bellum
патчу 2 года как бы...
Сообщение # 2 написано 30.04.2012 в 19:23
DeimosLand
Сержант
Dinoza, как то странно, что в офф репо TrinityCore не исправили sad

Вчера мне на сервере пришёл баг-репорт. (Этот фикс я ещё не накатил)

Вот:



Тема актуально. Проверяйте.. sad
Сообщение # 3 отредактировано DeimosLand - Среда, 02.05.2012, 08:06
C3mak
Dev
DeimosLand, это офигеть, какой Хардкор, у себя исправил буквально несколькими строчками, причем более вернее, чем тут.
Сообщение # 4 написано 04.09.2012 в 16:19
Ma_aelKoT
Скаут
Quote (C3mak)
DeimosLand, это офигеть, какой Хардкор, у себя исправил буквально несколькими строчками, причем более вернее, чем тут.
ну так, не будучи жадиной - выложил бы тут эти пару строчек...:(

p.s. каждый раз, когда кто то пишет "более вернее".. в мире умирает учитель русского
Сообщение # 5 написано 05.09.2012 в 01:28
C3mak
Dev
Quote (Ma_aelKoT)
ну так, не будучи жадиной - выложил бы тут эти пару строчек...:(

тык, скачать патч актуален под офф тринити.

Скрин, без тала
скрин с талом
И как видите, без всякого хардкода.(хардкора)
Сообщение # 6 отредактировано C3mak - Среда, 05.09.2012, 16:09
cochlea
Скаут
И сделал не менее хардкодно чем автор.
Молодец.
Сообщение # 7 написано 16.09.2012 в 02:02
Форум » TrinityCore » Патчи / Моды / Фиксы для Trinity » [fix] Всевластный Суккуб
  • Страница 1 из 1
  • 1
Поиск: