Mt2Hizmet 1
Mt2Hizmet
mavzermete 1
mavzermete
Vahsi Uzman 1
Vahsi Uzman
kralhakan2009 1
kralhakan2009
farkmt2official 1
farkmt2official
Bvural41 1
Bvural41
Fethi Polat 1
Fethi Polat
Hikaye Ekle

MaviAyGames | CAffectFlagContainer::IsSet(uPos=64>64 Syserr Fix

Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!

Bu hata AFFECT_NUM 64 değeri aşıldığında karşılaşabileceğiniz bir hata NUM değerini arttırsanızda bu hata kalkmaz çünkü diğer dosyalarda 64 olarak ayarlanmış şekilde duruyor bunu nasıl düzenleyebilirsiniz bu konuda onu gösteriyorum

Syserri veren kod bloğu şu şekilde
AffectFlagContainer.cpp;
Kod:
bool CAffectFlagContainer::IsSet(UINT uPos) const
{
    if (uPos/8>=BYTE_SIZE)
    {
        TraceError("CAffectFlagContainer::IsSet(uPos=%d>%d", uPos, BYTE_SIZE*8);
        return false;
    }

    const BYTE& c_rElement=m_aElement[uPos/8];

    BYTE bMask=BYTE(1<<(uPos&7));
    if (c_rElement&bMask)
        return true;

    return false;
}

Burada uPos değeri var olan AFFECT_NUM'dan büyük ise veya eşit ise bu hatayı verdirtecek bir kod mevcut BYTE_SIZE değeri şuanda 8'e eşit

Kod:
        enum
        {
            BIT_SIZE = 64,
            BYTE_SIZE = BIT_SIZE/8+(1*((BIT_SIZE&7) ? 1 : 0)),
        };


Burada BYTE_SIZE değerini yükseltecek herhangi bir değişiklik yapmanız gerekiyor isterseniz BIT_SIZE değerini yükseltin. İsterseniz oradaki matematik işlemini değiştirin

Yapmanız gereken sadece
Instancebase.h içindeki AFFECT_NUM = xx, değerini +1 geçecek şekilde ayarlamak
AFFECT_NUM = 99 ise BYTE_SIZE = BIT_SIZE/8+(1*(4*23), Şeklinde yapabilirsiniz size kalmış birşey matematik kısmını istediğiniz gibi değiştirebilirsiniz.
 
Sorunla karşılaşıp paylaşım konusuna dönüp nasıl yapıldığına bakan adam gibi adamdır MaviAy44 :D
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst