|
Патчи на рассмотрении Рассматриваемые к принятию патчи |
|
Опции темы | Поиск в этой теме | Опции просмотра |
30.10.2013, 21:24 | #1 |
Ученый
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
|
[patch] Restore work Paladin 5 tier Protected 2p bonus.
Код:
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 4ceb337..254f628 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -68,7 +68,7 @@ pAuraHandler AuraHandler[TOTAL_AURAS] = &Aura::HandleAuraModStun, // 12 SPELL_AURA_MOD_STUN &Aura::HandleModDamageDone, // 13 SPELL_AURA_MOD_DAMAGE_DONE &Aura::HandleNoImmediateEffect, // 14 SPELL_AURA_MOD_DAMAGE_TAKEN implemented in Unit::MeleeDamageBonusTaken and Unit::SpellBaseDamageBonusTaken - &Aura::HandleNoImmediateEffect, // 15 SPELL_AURA_DAMAGE_SHIELD implemented in Unit::DealMeleeDamage + &Aura::HandleAuraDamageShield, // 15 SPELL_AURA_DAMAGE_SHIELD implemented in Unit::DealMeleeDamage &Aura::HandleModStealth, // 16 SPELL_AURA_MOD_STEALTH &Aura::HandleNoImmediateEffect, // 17 SPELL_AURA_MOD_STEALTH_DETECT implemented in Unit::isVisibleForOrDetect &Aura::HandleInvisibility, // 18 SPELL_AURA_MOD_INVISIBILITY @@ -4606,6 +4606,25 @@ void Aura::HandleAuraModStun(bool apply, bool Real) } } +void Aura::HandleAuraDamageShield(bool apply, bool Real) +{ + if (!Real) + return; + + Unit* caster = GetCaster(); + + if (apply) + { + // Retribution Aura + if (GetSpellProto()->IsFitToFamily(SPELLFAMILY_PALADIN, UI64LIT(0x0000000000000008), 0x00000020)) + { + // Increased Retribution Aura (Paladin 5 tier Protected 2p bonus) + if (Aura* aura = caster->GetAura(37190, EFFECT_INDEX_0)) + m_modifier.m_amount += aura->GetModifier()->m_amount; + } + } +} + void Aura::HandleModStealth(bool apply, bool Real) { Unit* target = GetTarget(); diff --git a/src/game/SpellAuras.h b/src/game/SpellAuras.h index c185419..fbd8e9b 100644 --- a/src/game/SpellAuras.h +++ b/src/game/SpellAuras.h @@ -259,6 +259,7 @@ class MANGOS_DLL_SPEC Aura void HandleAuraModResistanceExclusive(bool Apply, bool Real); void HandleAuraSafeFall(bool Apply, bool Real); void HandleAuraModPetTalentsPoints(bool Apply, bool Real); + void HandleAuraDamageShield(bool Apply, bool Real); void HandleModStealth(bool Apply, bool Real); void HandleInvisibility(bool Apply, bool Real); void HandleInvisibilityDetect(bool Apply, bool Real); |
30.10.2013, 21:38 | #2 | |
Модератор
|
Во-первых, если уж фиксить, то не надо имхо запиливать отдельный хандлер в SpellAuras.cpp, а делать как написано
Цитата:
Во-вторых аура этого бонуса содержит такие данные Код:
Id: 6 (SPELL_EFFECT_APPLY_AURA) BasePoints = 15 Targets (1, 0) (TARGET_SELF, NO_TARGET) Aura Id 107 (SPELL_AURA_ADD_FLAT_MODIFIER), value = 15, misc = 0 (SPELLMOD_DAMAGE), miscB = 0, periodic = 0 SpellClassMask = 00000000 00000000 00000008 + 7294 - Retribution Aura (Rank 1) + 10298 - Retribution Aura (Rank 2) + 10299 - Retribution Aura (Rank 3) + 10300 - Retribution Aura (Rank 4) + 10301 - Retribution Aura (Rank 5) + 27150 - Retribution Aura (Rank 6) - 41106 - Battle Aura + 54043 - Retribution Aura (Rank 7) - 63531 - Sanctified Retribution |
|
31.10.2013, 18:48 | #3 |
Ученый
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
|
Я отталкиваюсь от опыта проекта мангос. И исходя из этого, таких отдельных хандлеров в SpellAuras.cpp хватает. )))
Да, и теоретические домыслы на подобии "должно работать" - по факту оказываются неработоспособными. )) Хотя я и не пробовал вашего решения, но все же если реализуете, то это пойдет тоглько на пользу сообществу форума и проекту мангос. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[11504] Druid tier 10 2p bonus affect work | newsbot | CMaNGOS Commits | 0 | 18.05.2011 05:00 |
[11504][patch] Restore tier 10 2p bonus affect work | Den | Принятые патчи | 1 | 18.05.2011 04:57 |
[11453] Fixed tier 8 4p bonus affect work | newsbot | CMaNGOS Commits | 0 | 09.05.2011 05:01 |
[11453] Restore tier 8 4p bonus affect work | Den | Принятые патчи | 1 | 09.05.2011 04:49 |
[11440][patch] Restore itemset 650 4p bonus affect work | Den | Принятые патчи | 1 | 08.05.2011 05:43 |