Çözüldü client build hata

  • Konuyu açan Konuyu açan igul97
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 13
  • Gösterim Gösterim 322
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ı.

igul97

Üye
Üye
Mesaj
136
Çözümler
1
Beğeni
34
Puan
129
Ticaret Puanı
0
Merhaba mmo tutkunlarında ki Hızlı İtem Toplama Sistemi Sorunsuz bu konudakileri uyguladım ancak build alırken hata oluştu;

image.png


yardım eder misiniz
 
Çözüm
konuda çözümü varmış aslında

pythonitem.cppde aşağıdaki işlemi yapıp tekrar dene.

pythonitem.cpp:
Genişlet Daralt Kopyala
Aratılır

bool CPythonItem::GetCloseItem(const TPixelPosition & c_rPixelPosition, DWORD * pdwItemID, DWORD dwDistance)
{
...........
}

Kod bloğu altına eklenir.

#ifdef ENABLE_INSTANT_PICKUP_SYSTEM
bool CPythonItem::GetCloseItemVector(const std::string& myName, const TPixelPosition& c_rPixelPosition, std::vector<DWORD>& itemVidList)
{
    DWORD dwCloseItemDistance = 1000 * 1000;

    TGroundItemInstanceMap::iterator i;
    for (i = m_GroundItemInstanceMap.begin(); i != m_GroundItemInstanceMap.end(); ++i)
    {
        TGroundItemInstance* pInstance = i->second;

        DWORD dwxDistance = DWORD(c_rPixelPosition.x - pInstance->v3EndPosition.x)...
pythonplayer.h tarafında eksiğin olabilir mi acaba? pythonplayer dosyalarındaki eklemeleri kontrol et sonuca ulaşırsın.
 
eklenecek dosyaları direkt at eklemeyi ben yapayım.
 
pythonitem.h

#include "Locale_inc.h"

bunu ekler misin en üstteki includenin altına defineyi görmüyor sanırım.
 
Build aldım yine aynı hata pythonitem.h #include "Locale_inc.h" ekledim
 

Dosya Eklentileri

  • Ekran Alıntısı.PNG
    Ekran Alıntısı.PNG
    16,4 KB · Gösterim: 41
PythonItem.cpp ve .h içinde GetCloseItemVector fonksiyonu yok. O yüzden bu hatayı alıyorsun.
 
konuda çözümü varmış aslında

pythonitem.cppde aşağıdaki işlemi yapıp tekrar dene.

pythonitem.cpp:
Genişlet Daralt Kopyala
Aratılır

bool CPythonItem::GetCloseItem(const TPixelPosition & c_rPixelPosition, DWORD * pdwItemID, DWORD dwDistance)
{
...........
}

Kod bloğu altına eklenir.

#ifdef ENABLE_INSTANT_PICKUP_SYSTEM
bool CPythonItem::GetCloseItemVector(const std::string& myName, const TPixelPosition& c_rPixelPosition, std::vector<DWORD>& itemVidList)
{
    DWORD dwCloseItemDistance = 1000 * 1000;

    TGroundItemInstanceMap::iterator i;
    for (i = m_GroundItemInstanceMap.begin(); i != m_GroundItemInstanceMap.end(); ++i)
    {
        TGroundItemInstance* pInstance = i->second;

        DWORD dwxDistance = DWORD(c_rPixelPosition.x - pInstance->v3EndPosition.x);
        DWORD dwyDistance = DWORD(c_rPixelPosition.y - (-pInstance->v3EndPosition.y));
        DWORD dwDistance = DWORD(dwxDistance * dwxDistance + dwyDistance * dwyDistance);

        if (dwDistance < dwCloseItemDistance && (pInstance->stOwnership == "" || pInstance->stOwnership == myName))
        {
            itemVidList.push_back(i->first);
        }
    }

    return true;
}
#endif
 
Çözüm
PythonItem.cpp ve .h içinde GetCloseItemVector fonksiyonu yok. O yüzden bu hatayı alıyorsun.
Nasıl ekleyeceğim ?

konuda çözümü varmış aslında

pythonitem.cppde aşağıdaki işlemi yapıp tekrar dene.

pythonitem.cpp:
Genişlet Daralt Kopyala
Aratılır

bool CPythonItem::GetCloseItem(const TPixelPosition & c_rPixelPosition, DWORD * pdwItemID, DWORD dwDistance)
{
...........
}

Kod bloğu altına eklenir.

#ifdef ENABLE_INSTANT_PICKUP_SYSTEM
bool CPythonItem::GetCloseItemVector(const std::string& myName, const TPixelPosition& c_rPixelPosition, std::vector<DWORD>& itemVidList)
{
    DWORD dwCloseItemDistance = 1000 * 1000;

    TGroundItemInstanceMap::iterator i;
    for (i = m_GroundItemInstanceMap.begin(); i != m_GroundItemInstanceMap.end(); ++i)
    {
        TGroundItemInstance* pInstance = i->second;

        DWORD dwxDistance = DWORD(c_rPixelPosition.x - pInstance->v3EndPosition.x);
        DWORD dwyDistance = DWORD(c_rPixelPosition.y - (-pInstance->v3EndPosition.y));
        DWORD dwDistance = DWORD(dwxDistance * dwxDistance + dwyDistance * dwyDistance);

        if (dwDistance < dwCloseItemDistance && (pInstance->stOwnership == "" || pInstance->stOwnership == myName))
        {
            itemVidList.push_back(i->first);
        }
    }

    return true;
}
#endif
Bu kodlar zaten mevcut ama attığınız gibi düzenlemem mi gerekiyor ?
 

Dosya Eklentileri

  • Ekran Alıntısı.PNG
    Ekran Alıntısı.PNG
    25,4 KB · Gösterim: 33
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Üst