Ru-MaNGOS

Вернуться   Ru-MaNGOS > Ядро > Патчи > Патчи на рассмотрении

Важная информация

Патчи на рассмотрении Рассматриваемые к принятию патчи

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.07.2011, 17:27   #1
Den
Ученый
 
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
Den Скоро придёт к известностиDen Скоро придёт к известности
По умолчанию [patch] Shaman T10 Elemental 2P Bonus

Кое-какая информация по опкоду SMSG_MODIFY_COOLDOWN , была взята отсюда: http://ru-mangos.ru/showthread.php?t=2708

Автор: ?
Код:
diff --git a/src/game/UnitAuraProcHandler.cpp b/src/game/UnitAuraProcHandler.cpp
index 92347ec..024a02b 100644
--- a/src/game/UnitAuraProcHandler.cpp
+++ b/src/game/UnitAuraProcHandler.cpp
@@ -2385,6 +2385,23 @@ SpellAuraProcResult Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura
                     basepoints[0] = int32(triggerAmount * damage / 100) / GetSpellAuraMaxTicks(triggered_spell_id);
                     break;
                 }
+                // Item - Shaman T10 Elemental 2P Bonus
+                case 70811:
+                {
+                    // Lightning Bolt == 0x0000000000000001,  Chain Lightning == 0x0000000000000002
+                    if (procSpell->IsFitToFamilyMask(UI64LIT(0x0000000000000003)))
+                    {
+                        uint32 cooldown = ((Player*)this)->GetSpellCooldownDelay(16166);
+                        ((Player*)this)->AddSpellCooldown(16166, 0, uint32(time(NULL) + cooldown));
+
+                        WorldPacket data(SMSG_MODIFY_COOLDOWN, 4 + 8 + 4);
+                        data << uint32(16166);
+                        data << uint64(GetObjectGuid());
+                        data << int32(-2000);
+                        ((Player*)this)->GetSession()->SendPacket(&data);
+                        return SPELL_AURA_PROC_OK;
+                    }
+                }
             }
             // Storm, Earth and Fire
             if (dummySpell->SpellIconID == 3063)

Последний раз редактировалось Den; 20.07.2011 в 18:52.
Den вне форума   Ответить с цитированием
Старый 04.07.2011, 21:12   #2
Amaru
MaNGOS Dev
 
Регистрация: 16.01.2011
Сообщений: 262
Сказал(а) спасибо: 57
Поблагодарили 73 раз(а) в 59 сообщениях
Amaru На верном пути
По умолчанию

не понятно.

спеллу выставляется такой же кулдаун, какой и был.
клиенту высылается обновление кулдауна, хотя это не произошло.
и что клиент будет думать, если оставшееся кд, например, 1 секунда, а ему приходит изменение на -2 сек?
конверт uint64(GetObjectGuid()) вроде бы не нужен, не так ли?
зачем обрабатывать прок, если кд на спелле нет?
не хватает break в case

2000 хранится в basepoints, а прок можно было бы запилить в spell_proc_event

Последний раз редактировалось Amaru; 04.07.2011 в 21:49.
Amaru вне форума   Ответить с цитированием
Старый 04.07.2011, 22:11   #3
Den
Ученый
 
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
Den Скоро придёт к известностиDen Скоро придёт к известности
По умолчанию

Ну попробуйте.

зачем break после return ? О_о

add
Цитата:
Сообщение от Amaru Посмотреть сообщение
а прок можно было бы запилить в spell_proc_event
имхо лишние записи в бд, не к чему .

Последний раз редактировалось Den; 04.07.2011 в 22:16.
Den вне форума   Ответить с цитированием
Старый 05.07.2011, 10:01   #4
Vipertv
Гость
 
Сообщений: n/a
По умолчанию

До использования таких вещей как ((Player*)this), возможно стоит проверять на соответствие GetTypeId к TYPEID_PLAYER. Это позволит избежать хоть и маловероятного но все-таки краша.
  Ответить с цитированием
Старый 20.07.2011, 18:52   #5
Den
Ученый
 
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
Den Скоро придёт к известностиDen Скоро придёт к известности
По умолчанию

Хм... это не мое "творение"... патч с ссылкой на http://ru-mangos.ru/showthread.php?t=2708 случайно залетел в папку /мои_патчи, и при чем довольна таки давно лежал там. Может быть с гетмангоса или с форка какого.
Den вне форума   Ответить с цитированием
Старый 21.07.2011, 22:42   #6
Amaru
MaNGOS Dev
 
Регистрация: 16.01.2011
Сообщений: 262
Сказал(а) спасибо: 57
Поблагодарили 73 раз(а) в 59 сообщениях
Amaru На верном пути
По умолчанию

Цитата:
Сообщение от Den Посмотреть сообщение
Ну попробуйте.
зачем break после return ? О_о.
потому что если спелл не чайник и не болт, то при наличии кода после этого кейса на прок, свитч провалится дальше.

имхо, треш а не патч
Amaru вне форума   Ответить с цитированием
Старый 22.07.2011, 01:53   #7
HuntsMan
Ученый
 
Аватар для HuntsMan
 
Регистрация: 19.12.2010
Сообщений: 221
Сказал(а) спасибо: 64
Поблагодарили 12 раз(а) в 9 сообщениях
Записей в дневнике: 2
HuntsMan На верном пути
По умолчанию

А почему бы момент с отсылкой пакета SMSG_MODIFY_COOLDOWN не перенести в AddSpellCooldown?
HuntsMan вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[11690] Shaman T10 Restoration bonus newsbot CMaNGOS Commits 0 28.06.2011 00:21
[11690][fix] Shaman T10 Restoration bonus Den Принятые патчи 1 28.06.2011 00:06
[fix] Shaman T7 Enhancement 2P Bonus Den Патчи на рассмотрении 0 12.05.2011 20:07
shaman + Dk VENOM Баг-репорты 0 17.03.2010 23:05
Elemental Focus и Elemental Oath procs [sql] Ranger Патчи 0 16.03.2010 09:32


Текущее время: 14:45. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot