|
Патчи на рассмотрении Рассматриваемые к принятию патчи |
|
Опции темы | Поиск в этой теме | Опции просмотра |
28.09.2010, 14:59 | #1 |
Ученый
Регистрация: 15.03.2010
Сообщений: 261
Сказал(а) спасибо: 84
Поблагодарили 257 раз(а) в 96 сообщениях
|
[patch] Crypt Fever & Ebon Plaguebringer
Суть проблемы: полностью отсутствует реализация работы талантов Crypt Fever (Предсмертная лихорадка) и Ebon Plaguebringer (Разносчик черной чумы) у рыцарей смерти.
Таблетка (автор - я) Код:
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp index 95df7d0..564eea3 100644 --- a/src/game/SpellMgr.cpp +++ b/src/game/SpellMgr.cpp @@ -2038,6 +2038,11 @@ bool SpellMgr::IsNoStackSpellDueToSpell(uint32 spellId_1, uint32 spellId_2) cons // Blood Presence and Blood Presence (triggered) if (spellInfo_1->SpellIconID == 2636 && spellInfo_2->SpellIconID == 2636) return false; + + // Crypt Fever and Ebon Plague + if((spellInfo_1->SpellIconID == 264 && spellInfo_2->SpellIconID == 1933) || + (spellInfo_2->SpellIconID == 264 && spellInfo_1->SpellIconID == 1933)) + return true; } break; default: diff --git a/src/game/UnitAuraProcHandler.cpp b/src/game/UnitAuraProcHandler.cpp index a401316..e409f5c 100644 --- a/src/game/UnitAuraProcHandler.cpp +++ b/src/game/UnitAuraProcHandler.cpp @@ -3688,6 +3688,40 @@ SpellAuraProcResult Unit::HandleOverrideClassScriptAuraProc(Unit *pVictim, uint3 } break; } + case 7282: // Crypt Fever & Ebon Plaguebringer + { + if (!procSpell || pVictim == this) + return SPELL_AURA_PROC_FAILED; + + bool HasEP = false; + Unit::AuraList const& scriptAuras = GetAurasByType(SPELL_AURA_OVERRIDE_CLASS_SCRIPTS); + for(Unit::AuraList::const_iterator i = scriptAuras.begin(); i != scriptAuras.end(); ++i) + { + if ((*i)->GetSpellProto()->SpellIconID == 1766) + { + HasEP = true; + break; + } + } + + if (!HasEP) + switch(triggeredByAura->GetId()) + { + case 49032: triggered_spell_id = 50508; break; + case 49631: triggered_spell_id = 50509; break; + case 49632: triggered_spell_id = 50510; break; + default: return SPELL_AURA_PROC_FAILED; + } + else + switch(triggeredByAura->GetId()) + { + case 51099: triggered_spell_id = 51726; break; + case 51160: triggered_spell_id = 51734; break; + case 51161: triggered_spell_id = 51735; break; + default: return SPELL_AURA_PROC_FAILED; + } + break; + } } // not processed Код:
DELETE FROM `spell_proc_event` where `entry` IN (49032,51099); INSERT INTO `spell_proc_event` VALUES (49032,0x0,0,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00010000,0x00000000,0.000000,0.000000,0), (51099,0x0,0,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00010000,0x00000000,0.000000,0.000000,0); Последний раз редактировалось Insider42; 28.09.2010 в 15:06. |
28.09.2010, 15:17 | #2 |
Умный
Регистрация: 17.06.2010
Сообщений: 397
Сказал(а) спасибо: 58
Поблагодарили 55 раз(а) в 38 сообщениях
|
Ну болезни не заменяют болезни наложенные другим ДК, уничтожение не снимает болезни, наложенные не тобой, и урон за них не дает, значит тут также
|
28.09.2010, 15:50 | #3 | |
Ученый
Регистрация: 15.03.2010
Сообщений: 261
Сказал(а) спасибо: 84
Поблагодарили 257 раз(а) в 96 сообщениях
|
Цитата:
ДК №1 накладывает одну болезнь ДК №2 накладывает вторую болезнь Обе болезни действуют и мы получаем умопомрачительный урон... хотя тут тоже спорно, где-то умопиналось что болезни действуют только на себя. В общем без информации ничего менять не буду. я выполнял чтобы работало, как написано в описании Разносчика черной чумы дословно Последний раз редактировалось Insider42; 28.09.2010 в 15:52. |
|
30.09.2010, 01:04 | #4 | |
Пользователь
Регистрация: 08.03.2010
Сообщений: 47
Сказал(а) спасибо: 45
Поблагодарили 29 раз(а) в 13 сообщениях
|
Цитата:
PHP код:
|
|
30.09.2010, 09:14 | #5 | |
Ученый
Регистрация: 15.03.2010
Сообщений: 261
Сказал(а) спасибо: 84
Поблагодарили 257 раз(а) в 96 сообщениях
|
Цитата:
|
|
16.10.2010, 01:24 | #6 |
Гость
Сообщений: n/a
|
когда то писал подобный патч, только заменял я crypt fever на plaguebringer не через стаки, а в оверайдах. от каждого дк была своя болезнь, но из за того что была система стаков эффектов давала эффект только одна болезнь. Сейчас вроде бы есть проверка эффектов, но недавно выплыл баг с ней, так что твой вариант с одной болезнью на цели наверно более приемлем чем мой.
Из за перехода на 3.3.5 часть комитов поехала и куда то потерялась.. То что осталось http://github.com/narma/mangos/commi...fbab51fa831d1a З.Ы. Обидно что мой фикс появился раньше но не был замечен так как скаляция болезний Последний раз редактировалось Johonson; 16.10.2010 в 01:30. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[patch]Mind Sear & Curse of the Plaguebringer | Viste | Патчи на рассмотрении | 2 | 15.03.2010 19:58 |