Ru-MaNGOS

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

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

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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.05.2010, 16:28   #1
PSZ
Ученый
 
Регистрация: 07.03.2010
Сообщений: 138
Сказал(а) спасибо: 200
Поблагодарили 143 раз(а) в 49 сообщениях
PSZ Обладатель прекрасной аурыPSZ Обладатель прекрасной ауры
По умолчанию [patch] Мобы и критические удары спеллами

Мобы спеллами критовать не могут. Об этом даже выскакивает подсказка при загрузке клиента.
Код:
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index 3b36892..d8743ad 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -9375,6 +9375,10 @@ int32 Unit::SpellBaseDamageBonusTaken(SpellSchoolMask schoolMask)
 
 bool Unit::IsSpellCrit(Unit *pVictim, SpellEntry const *spellProto, SpellSchoolMask schoolMask, WeaponAttackType attackType)
 {
+    // mobs can't crit with spells at all
+    if (GetObjectGuid().IsCreature())
+        return false;
+
     // not critting spell
     if((spellProto->AttributesEx2 & SPELL_ATTR_EX2_CANT_CRIT))
         return false;
PSZ вне форума   Ответить с цитированием
7 пользователя(ей) сказали cпасибо:
Den (14.05.2010), Dragon (15.05.2010), Insider42 (14.05.2010), LordJZ (14.05.2010), tempura (28.05.2010), xex (15.05.2010)
Старый 14.05.2010, 16:59   #2
Insider42
Ученый
 
Регистрация: 15.03.2010
Сообщений: 261
Сказал(а) спасибо: 84
Поблагодарили 257 раз(а) в 96 сообщениях
Insider42 Как самоцвет среди гранитаInsider42 Как самоцвет среди гранитаInsider42 Как самоцвет среди гранита
По умолчанию

А петов это не затронет случаем?
Insider42 вне форума   Ответить с цитированием
Старый 14.05.2010, 21:14   #3
wk23
Пользователь
 
Регистрация: 11.03.2010
Адрес: Спб
Сообщений: 35
Сказал(а) спасибо: 5
Поблагодарили 10 раз(а) в 8 сообщениях
wk23 На верном пути
По умолчанию

wk23 вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
PSZ (14.05.2010)
Старый 14.05.2010, 23:36   #4
PSZ
Ученый
 
Регистрация: 07.03.2010
Сообщений: 138
Сказал(а) спасибо: 200
Поблагодарили 143 раз(а) в 49 сообщениях
PSZ Обладатель прекрасной аурыPSZ Обладатель прекрасной ауры
По умолчанию

Цитата:
Сообщение от Insider42 Посмотреть сообщение
А петов это не затронет случаем?
Не должно. Поэтому и использовал GetObjectGuid().IsCreature(), а не обычное GetTypeId() == TYPEID_UNIT. GetTypeId() возвращает TYPEID_UNIT и для петов.
Код:
        static TypeID GetTypeId(HighGuid high)
        {
            switch(high)
            {
                case HIGHGUID_ITEM:         return TYPEID_ITEM;
                //case HIGHGUID_CONTAINER:    return TYPEID_CONTAINER; HIGHGUID_CONTAINER==HIGHGUID_ITEM currently
                case HIGHGUID_UNIT:         return TYPEID_UNIT;
                case HIGHGUID_PET:          return TYPEID_UNIT;
                case HIGHGUID_PLAYER:       return TYPEID_PLAYER;
                case HIGHGUID_GAMEOBJECT:   return TYPEID_GAMEOBJECT;
                case HIGHGUID_DYNAMICOBJECT:return TYPEID_DYNAMICOBJECT;
                case HIGHGUID_CORPSE:       return TYPEID_CORPSE;
                case HIGHGUID_MO_TRANSPORT: return TYPEID_GAMEOBJECT;
                case HIGHGUID_VEHICLE:      return TYPEID_UNIT;
                // unknown
                default:                    return TYPEID_OBJECT;
            }
        }
PSZ вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Insider42 (15.05.2010)
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мобы проваливаются в текстуры MorgaN Новичкам 7 17.10.2010 19:54


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


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