Показать сообщение отдельно
Старый 11.11.2010, 14:02   #2
Den
Ученый
 
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
Den Скоро придёт к известностиDen Скоро придёт к известности
По умолчанию

Перепроверил ещё раз, + ещё не должно сниматься оружие(офханды, ванды и т.п)

Вот так будет правильнее:

PHP код:
diff --git a/src/game/Player.cpp b/src/game/Player.cpp
index 1795654..9d492f8 100644
--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -10366,+10366,13 @@ uint8 Player::CanEquipItemuint8 slotuint16 &destItem *pItembool swapbo
                             
return EQUIP_ERR_NOT_DURING_ARENA_MATCH;
                 }
 
+                
// prevent equip item in process logout
+                if (pProto->Class == ITEM_CLASS_WEAPON || ITEM_CLASS_ARMOR)
+                {
+                    if(
GetSession()->isLogingOut())
+                       return 
EQUIP_ERR_YOU_ARE_STUNNED;
+                }

                 if (
isInCombat()&& pProto->Class == ITEM_CLASS_WEAPON && m_weaponChangeTimer != 0)
                     return 
EQUIP_ERR_CANT_DO_RIGHT_NOW;         // maybe exist better err
 
@@ -10497,+10504,13 @@ uint8 Player::CanUnequipItemuint16 posbool swap ) const
                 return 
EQUIP_ERR_NOT_DURING_ARENA_MATCH;
     }
 
+    
// prevent unequip item in process logout
+    if (pProto->Class == ITEM_CLASS_WEAPON || ITEM_CLASS_ARMOR)
+    {
+        if(
GetSession()->isLogingOut())
+            return 
EQUIP_ERR_YOU_ARE_STUNNED;     
+    }
+         
     if(!
swap && pItem->IsBag() && !((Bag*)pItem)->IsEmpty())
         return 
EQUIP_ERR_CAN_ONLY_DO_WITH_EMPTY_BAGS
Вложения
Тип файла: patch 1.patch (1.2 Кб, 3 просмотров)
Den вне форума