Показать сообщение отдельно
Старый 15.01.2012, 22:15   #14
Astoria
Пользователь
 
Регистрация: 26.03.2010
Сообщений: 40
Сказал(а) спасибо: 12
Поблагодарили 4 раз(а) в 4 сообщениях
Astoria На верном пути
По умолчанию

Конечный вариант, проверил - работает.

Код:
diff --git a/src/game/UnitAuraProcHandler.cpp b/src/game/UnitAuraProcHandler.cpp
index f56885e..052bfaa 100644
--- a/src/game/UnitAuraProcHandler.cpp
+++ b/src/game/UnitAuraProcHandler.cpp
@@ -1004,6 +1004,45 @@ SpellAuraProcResult Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura
                     }
                     break;
                 }
+				case 71519:
+				case 71562:
+				{
+					if(((Player*)this)->HasSpellCooldown(dummySpell->Id))
+						return SPELL_AURA_PROC_FAILED;
+
+					switch(getClass())
+					{
+						case CLASS_WARRIOR:
+						case CLASS_DEATH_KNIGHT:
+						case CLASS_PALADIN:
+						{
+							uint32 proc_spells[] = {71491, 71492, 71484, 71559, 71560, 71561};
+							triggered_spell_id = (dummySpell->Id) == 71519 ? proc_spells[urand(0,2)] : proc_spells[urand(3,5)];
+							break;
+						}
+						case CLASS_ROGUE:
+						case CLASS_SHAMAN:
+						{
+							uint32 proc_spells[] = {71485, 71486, 71492, 71556, 71558, 71560};
+							triggered_spell_id = (dummySpell->Id == 71519) ? proc_spells[urand(0,2)] : proc_spells[urand(3,5)];
+							break;
+						}
+						case CLASS_HUNTER:
+						{
+							uint32 proc_spells[] = {71485, 71486, 71491, 71556, 71558, 71559};
+							triggered_spell_id = (dummySpell->Id) == 71519 ? proc_spells[urand(0,2)] : proc_spells[urand(3,5)];
+							break;
+						}
+						case CLASS_DRUID:
+						{
+							uint32 proc_spells[] = {71485, 71492, 71484, 71556, 71560, 71561};
+							triggered_spell_id = (dummySpell->Id) == 71519 ? proc_spells[urand(0,2)] : proc_spells[urand(3,5)];
+							break;
+						}						
+					}
+					((Player*)this)->AddSpellCooldown(dummySpell->Id, 0, time(NULL) + cooldown);
+					break;
+				}
             }
             break;
         }
Вложения
Тип файла: patch deathbringers_will.patch (1.8 Кб, 3 просмотров)

Последний раз редактировалось Astoria; 15.01.2012 в 22:18.
Astoria вне форума   Ответить с цитированием