Çözüldü Sersemlik Bugu Fix Hakkında

Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

DarkNight

Üye
Üye
Mesaj
98
Çözümler
8
Beğeni
24
Puan
429
Ticaret Puanı
0
Öncelikle herkese iyi forumlar diliyorum.
Kalkanda sersemlik varken karakter hiçbir şekilde sersem yemesin istiyorum. Nasıl bir düzenleme yapmam gerekiyor?​
 
Çözüm
Mevcut sorun kalkanda sersemlik efsunu varken ws'de sersem yemekle alakalıydı. Sorunu çözdüm
Item.cpp açılır
Arat:
    DWORD dwImmuneFlag = 0;

    for (int i = 0; i < WEAR_MAX_NUM; ++i)
        if (m_pOwner->GetWear(i))
            SET_BIT(dwImmuneFlag, m_pOwner->GetWear(i)->m_pProto->dwImmuneFlag);


    m_pOwner->SetImmuneFlag(dwImmuneFlag);

Değiştir:
DWORD dwImmuneFlag = 0;    LPITEM item = NULL;


    for (int i = 0; i < WEAR_MAX_NUM; ++i)
    {
        if (item=m_pOwner->GetWear(i))
        {
            if (item->GetImmuneFlag() != 0)
                SET_BIT(dwImmuneFlag, item->GetImmuneFlag());
            if (item->GetAttributeCount() > 0)
            {
                if (item->HasAttr(APPLY_IMMUNE_STUN))...
char_resist.cpp

Kod:
int immune_pct = 90;

100 olarak değiştir veya;

Kod:
bool CHARACTER::IsImmune(DWORD dwImmuneFlag)
{
    if (IS_SET(m_pointsInstant.dwImmuneFlag, dwImmuneFlag))
        return true;
    
    return false;
}

Linkleri görebilmek için giriş yap veya kayıt ol.
 
Mevcut sorun kalkanda sersemlik efsunu varken ws'de sersem yemekle alakalıydı. Sorunu çözdüm
Item.cpp açılır
Arat:
    DWORD dwImmuneFlag = 0;

    for (int i = 0; i < WEAR_MAX_NUM; ++i)
        if (m_pOwner->GetWear(i))
            SET_BIT(dwImmuneFlag, m_pOwner->GetWear(i)->m_pProto->dwImmuneFlag);


    m_pOwner->SetImmuneFlag(dwImmuneFlag);

Değiştir:
DWORD dwImmuneFlag = 0;    LPITEM item = NULL;


    for (int i = 0; i < WEAR_MAX_NUM; ++i)
    {
        if (item=m_pOwner->GetWear(i))
        {
            if (item->GetImmuneFlag() != 0)
                SET_BIT(dwImmuneFlag, item->GetImmuneFlag());
            if (item->GetAttributeCount() > 0)
            {
                if (item->HasAttr(APPLY_IMMUNE_STUN))
                    SET_BIT(dwImmuneFlag, IMMUNE_STUN);
                if (item->HasAttr(APPLY_IMMUNE_SLOW))
                    SET_BIT(dwImmuneFlag, IMMUNE_SLOW);
                if (item->HasAttr(APPLY_IMMUNE_FALL))
                    SET_BIT(dwImmuneFlag, IMMUNE_FALL);
            }
        }
    }


    m_pOwner->SetImmuneFlag(dwImmuneFlag);

Arat:
    DWORD dwImmuneFlag = 0;

    for (int i = 0; i < WEAR_MAX_NUM; ++i)
        if (m_pOwner->GetWear(i))
            SET_BIT(dwImmuneFlag, m_pOwner->GetWear(i)->m_pProto->dwImmuneFlag);


    m_pOwner->SetImmuneFlag(dwImmuneFlag);

Değiştir:
DWORD dwImmuneFlag = 0;    LPITEM item = NULL;


    for (int i = 0; i < WEAR_MAX_NUM; ++i)
    {
        if (item=m_pOwner->GetWear(i))
        {
            if (item->GetImmuneFlag() != 0)
                SET_BIT(dwImmuneFlag, item->GetImmuneFlag());
            if (item->GetAttributeCount() > 0)
            {
                if (item->HasAttr(APPLY_IMMUNE_STUN))
                    SET_BIT(dwImmuneFlag, IMMUNE_STUN);
                if (item->HasAttr(APPLY_IMMUNE_SLOW))
                    SET_BIT(dwImmuneFlag, IMMUNE_SLOW);
                if (item->HasAttr(APPLY_IMMUNE_FALL))
                    SET_BIT(dwImmuneFlag, IMMUNE_FALL);
            }
        }
    }


    m_pOwner->SetImmuneFlag(dwImmuneFlag);
 
Çözüm
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst