Bvural41 1
Bvural41
Mt2Hizmet 1
Mt2Hizmet
xranzei 1
xranzei
quickxd 1
quickxd
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Scarlet 1
Scarlet
Hikaye Ekle

Client Source Fix Map Hatası #Alondark54

  • Konuyu başlatan Konuyu başlatan ɑce
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 2
  • Görüntüleme Görüntüleme 706
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

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!

Merhaba Arkadaşlar Bulduğum Bir Hatanın düzeltilebilmiş Şekli Sizinle Paylaşayım

Hata Client Sourceden Düzelticez Cok Gıcık Bir Hata

Syser Verdigi Hatta Bu İdi ///
LoadMonsterAreaInfo()
[FONT=&amp] /// Bunun Gibi Birşey Veriyordu

Hatayı söyle Düzelticez
[/FONT]


client sourceden

GameLib/MapOutdoorLoad.cpp

Acılır


Kod:
[CENTER][COLOR=#000088]bool[/COLOR][COLOR=#660066]CMapOutdoor[/COLOR][COLOR=#666600]::[/COLOR][COLOR=#660066]LoadMonsterAreaInfo[/COLOR][COLOR=#666600]()[/COLOR][/CENTER]

Bulun Eger Temiz Client İse en sonuncu satırda idir zaten


şu şekilde Düzenleyin o kısmı

Kod:
bool CMapOutdoor::LoadMonsterAreaInfo(){
    RemoveAllMonsterAreaInfo(); // Remove All Monster Info
    
    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]);
        
        // Start to read MonsterAreaInfo.txt
        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;
}


Böyle Düzenleyin O Kısmı

Not Hata Alırsanız Yazın Bir Bakalım
 
Son düzenleme:
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

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

Geri
Üst