https://wowsoft.ru/shapkawowsoft.jpg
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Форум » ArcEmu » Ядра ArcEmu » ArcEMU r3302 (+ фикс Vampiric Embrace)
ArcEMU r3302 (+ фикс Vampiric Embrace)
RakezДата: Вторник, 31.08.2010, 13:48 | Сообщение # 1
Командир
Группа: Пользователи
Сообщений: 305
Статус: :-)

Исправления
Code
Index: Player.cpp
===================================================================
--- Player.cpp    (revision 3302)
+++ Player.cpp    (working copy)
@@ -12045,20 +12045,23 @@
     float fdmg = float(dmg);
     uint32 bonus;
     int32 perc;
+    int32 percP;
+    uint32 bonusP;
     Group * pGroup = GetGroup();
     SubGroup * pSubGroup = (pGroup != NULL) ? pGroup->GetSubGroup(GetSubGroup()) : NULL;
     GroupMembersSet::iterator itr;
-
+    
     if( ( !m_vampiricEmbrace && !m_vampiricTouch ) || getClass() != PRIEST )
      return;
-
-    if( m_vampiricEmbrace > 0 && pTarget->m_hasVampiricEmbrace > 0 && pTarget->HasAurasWithNameHash(SPELL_HASH_VAMPIRIC_EMBRACE) )
+    
+    
+    if( m_vampiricEmbrace < 0 && this->m_hasVampiricEmbrace < 0 && this->HasAurasWithNameHash(SPELL_HASH_VAMPIRIC_EMBRACE) )
     {
      perc = 15;
+  percP = 3;
      uint32 spellgroup[3] = {4, 0, 0};
      SM_FIValue(SM_FMiscEffect, &perc, spellgroup);
       
-
      bonus = float2int32(fdmg * (float(perc)/100.0f));
      if( bonus > 0 )
      {
@@ -12070,7 +12073,9 @@
        for( itr = pSubGroup->GetGroupMembersBegin(); itr != pSubGroup->GetGroupMembersEnd(); ++itr )
        {
         if( (*itr)->m_loggedInPlayer != NULL && (*itr) != m_playerInfo && (*itr)->m_loggedInPlayer->isAlive() )
-      Heal( (*itr)->m_loggedInPlayer, 15286, bonus );
+         
+      bonusP = float2int32(fdmg * (float(percP)/100.0f));
+      Heal( (*itr)->m_loggedInPlayer, 15286, bonusP );
        }
       }
      }
Index: SpellAuras.cpp
===================================================================
--- SpellAuras.cpp    (revision 3302)
+++ SpellAuras.cpp    (working copy)
@@ -2169,21 +2169,21 @@
      }break;
     case 15286://Vampiric Embrace
      {
-   if(apply)
-   {
-    SetNegative();
+   /*if(apply){
+    SetNegative(); // Wrong
+    //SetPositive();
        Unit * caster =this->GetUnitCaster();
        if(caster && caster->IsPlayer())
         ((Player*)caster)->m_vampiricEmbrace++;
        ++m_target->m_hasVampiricEmbrace;
       }
       else
-   {
+   {*/
        Unit * caster =this->GetUnitCaster();
        if(caster && caster->IsPlayer())
         ((Player*)caster)->m_vampiricEmbrace--;
        --m_target->m_hasVampiricEmbrace;
-   }
+   //}
      }break;
     case 34914://Vampiric Touch
     case 34916:

Скачать: https://filebeam.com/49a85159f1390ac76320de78df23a4bb

офф соурс код вы всегда найдёте svn://arcemu.info/svn/trunk - тут.
все найденные баги просьба отписать https://www.arcemu.info/trac/arcemu/newticket - тут. (зарегаться проще пареной репы)

Ура граждане! smile https://arcemu.info/trac/arcemu/changeset/3349


<img src='https://10.3.4.219/ub/create.php?guid=84'>

Сообщение отредактировал Rakez - Вторник, 31.08.2010, 13:52
 
Форум » ArcEmu » Ядра ArcEmu » ArcEMU r3302 (+ фикс Vampiric Embrace)
Страница 1 из 11
Поиск:



Copyright WoWsoft © 2010 | Карта сайта | Карта форума Хостинг от uCoz
При использовании материалов необходимо наличие прямой индексируемой ссылки на первоисточник
WoWsoft — World of Warcraft портал — Статьи World of Warcraft | Аддоны для WoW | Патчи World of Warcraft | Cервера WoW | Новости WoW