farkmt2official 1
farkmt2official
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle

Offline Shop İsim game.core Fix

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

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

Merhaba Turkmmo Halkı;

Arkadaşlar konu önceden paylaşıldıysa kusura bakmayın detaylı bir araştırma yapamadım ama bende bugu dev'de buldum ve fixini araştırıp buldum paylaşmak istedim.

Pazar ismini böyle açınca game.core veriyor. %s%S(bunu yazın sonra ctrl+a ya basın) ondan sonra pazarı kurun game.core verecek.

kX7Ozr.png


Anlatıma geçelim:

Char.cpp açılır

ARATILIR
Kod:
void CHARACTER::OpenMyOfflineShop(const char * c_pszSign, TShopItemTable * pTable, BYTE bItemCount, BYTE bTime)

Kod bloğunun içinde aratılır;
Kod:
    char szSign[SHOP_SIGN_MAX_LEN+1];

    strlcpy(szSign, c_pszSign, sizeof(szSign));

Altına boşluk bırak ekle;
Kod:
    if (strlen(szSign) == 0)
    {
        ChatPacket(CHAT_TYPE_INFO, "Geçersiz çevrimdışı pazar ismi girdiniz!");
        return;
    }
   
    if (strstr(szSign, "%") || strstr(szSign, "'"))
    {
        ChatPacket(CHAT_TYPE_INFO, "Geçersiz çevrimdışı pazar ismi girdiniz!");
        return;      
    }

KANIT:
yzJ0ZM.png


İsim bozukluğunu kodlarda güncelleme yaparak giderdim attığım kanıttaki gibi gözükmeyecektir.

Herkese iyi forumlar.


bu blok altındaki engellemelerin altına herhangi bir yere yapsam olur mu
 
normal pazar bloğuna baktım dediğin kod var ara dediğin kod içindeki BYTE'lar da da char szSign var bende ara dediğin bloğun biraz altlarına

char szSign[SHOP_SIGN_MAX_LEN+1];

strlcpy(szSign, c_pszSign, sizeof(szSign));


bunu ekledim altınada fixini ekledim sorunsuz build oldu az önce bu kodlar olmadan yaptığımda "szSign" bu isim error'a yol açtı. build olsun bakalım fix olacak mı :)
 
char szSign[SHOP_SIGN_MAX_LEN * 2 + 1];
DBManager::instance().EscapeString(szSign, sizeof(szSign), c_pszSign, strlen(c_pszSign));
if (strlen(szSign) == 0)
{
ChatPacket(CHAT_TYPE_INFO, "You cannot open an offline-shop without title!");
return;
}
m_stOfflineShopSign = szSign;
if (m_stOfflineShopSign.length() == 0)
return;
if (CBanwordManager::instance().CheckString(m_stOfflineShopSign.c_str(), m_stOfflineShopSign.length()))
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("؛ٌ¼س¾î³ھ ہ؛¾î°، ئ÷اشµب »َء، ہج¸§ہ¸·خ »َء،ہ» ؟ ¼ِ ¾ّ½ہ´د´ظ."));
return;
}
std::string szSpecialCharName = m_stOfflineShopSign.c_str();
std::size_t szSpecialCheck = szSpecialCharName.find("%");
if (szSpecialCheck != std::string::npos)
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("The name inserted is invalid, please don't use special characters!"));
return;
}
 

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

Geri
Üst