Bvural41 1
Bvural41
Mt2Hizmet 1
Mt2Hizmet
xranzei 1
xranzei
quickxd 1
quickxd
Hikaye Ekle

CMapOutdoor::Load - LoadMonsterAreaInfo ERROR Client Syserr Çözümü

  • Konuyu başlatan Konuyu başlatan Shegys
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 10
  • Görüntüleme Görüntüleme 7K

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

LoadMonsterAreaInfo fonksiyonu binary için kullanılmıyor zaten komple fonksiyonu kaldırsanız da olur. ben kullanmıyorum binaryde
 
Bu Şekilde Sadece Syserri Gizlemiş Oluyorsun ;)

Bu Şekilde Sorunu Çözebilirsin;

Kod:
//- Açılır: Client/GameLib/MapOutdoorLoad.cpp
//- Aratılır:




bool CMapOutdoor::LoadMonsterAreaInfo()




//- Kod Bloğu Bu Şekilde Değiştirilir:




bool CMapOutdoor::LoadMonsterAreaInfo()
{
    RemoveAllMonsterAreaInfo(); // iMaRex Monster Load Dc FIX
   
    char szFileName[256];
    _snprintf(szFileName, sizeof(szFileName), "%s\\monsterareainfo.txt", GetMapDataDirectory().c_str());
   
    LPCVOID pModelData;
    CMappedFile File;
   
    if (!CEterPackManager::Instance().Get(File, szFileName, &pModelData)) return false;
   
    CMemoryTextFileLoader textFileLoader;
    CTokenVector stTokenVector;
   
    textFileLoader.Bind(File.Size(), pModelData);
   
    for (DWORD i = 0; i < textFileLoader.GetLineCount(); ++i)
    {
        if (!textFileLoader.SplitLine(i, &stTokenVector))
            continue;
       
        stl_lowers(stTokenVector[0]);
       
        if (0 == stTokenVector[0].compare("m") || 0 == stTokenVector[0].compare("g"))
        {
            if (stTokenVector.size() < 11)
            {
                TraceError("CMapOutdoorAccessor::LoadMonsterAreaInfo Get MonsterInfo File Format ERROR! continue....");
                continue;
            }


            CMonsterAreaInfo::EMonsterAreaInfoType eMonsterAreaInfoType;
            if (0 == stTokenVector[0].compare("m"))
            {
                eMonsterAreaInfoType = CMonsterAreaInfo::MONSTERAREAINFOTYPE_MONSTER;
            }
            else if (0 == stTokenVector[0].compare("g"))
            {
                eMonsterAreaInfoType = CMonsterAreaInfo::MONSTERAREAINFOTYPE_GROUP;
            }
            else
            {
                TraceError("CMapOutdoorAccessor::LoadMonsterAreaInfo Get MonsterInfo Data ERROR! continue....");
                continue;
            }
           
            const std::string & c_rstrOriginX    = stTokenVector[1].c_str();
            const std::string & c_rstrOriginY    = stTokenVector[2].c_str();
            const std::string & c_rstrSizeX        = stTokenVector[3].c_str();
            const std::string & c_rstrSizeY        = stTokenVector[4].c_str();
            const std::string & c_rstrZ            = stTokenVector[5].c_str();
            const std::string & c_rstrDir        = stTokenVector[6].c_str();
            const std::string & c_rstrTime        = stTokenVector[7].c_str();
            const std::string & c_rstrPercent    = stTokenVector[8].c_str();
            const std::string & c_rstrCount        = stTokenVector[9].c_str();
            const std::string & c_rstrVID        = stTokenVector[10].c_str();
           
            long lOriginX, lOriginY, lSizeX, lSizeY, lZ, lTime, lPercent;
            CMonsterAreaInfo::EMonsterDir eMonsterDir;
            DWORD dwMonsterCount;
            DWORD dwMonsterVID;
           
            lOriginX        = atol(c_rstrOriginX.c_str());
            lOriginY        = atol(c_rstrOriginY.c_str());
            lSizeX            = atol(c_rstrSizeX.c_str());
            lSizeY            = atol(c_rstrSizeY.c_str());
            lZ                = atol(c_rstrZ.c_str());
            eMonsterDir        = (CMonsterAreaInfo::EMonsterDir) atoi(c_rstrDir.c_str());
            lTime            = atol(c_rstrTime.c_str());
            lPercent        = atol(c_rstrPercent.c_str());
            dwMonsterCount    = (DWORD) atoi(c_rstrCount.c_str());
            dwMonsterVID    = (DWORD) atoi(c_rstrVID.c_str());
           
            CMonsterAreaInfo * pMonsterAreaInfo = AddMonsterAreaInfo(lOriginX, lOriginY, lSizeX, lSizeY);
            pMonsterAreaInfo->SetMonsterAreaInfoType(eMonsterAreaInfoType);
            if (CMonsterAreaInfo::MONSTERAREAINFOTYPE_MONSTER == eMonsterAreaInfoType)
                pMonsterAreaInfo->SetMonsterVID(dwMonsterVID);
            else if (CMonsterAreaInfo::MONSTERAREAINFOTYPE_GROUP == eMonsterAreaInfoType)
                pMonsterAreaInfo->SetMonsterGroupID(dwMonsterVID);
            pMonsterAreaInfo->SetMonsterCount(dwMonsterCount);
            pMonsterAreaInfo->SetMonsterDirection(eMonsterDir);
        }       
    } 
    return true;
}
 

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

Geri
Üst