ShadowFon 1
ShadowFon
D 1
delimuratt
PrimeAC 1
PrimeAC
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Best Studio 1
Best Studio
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
romegames 1
romegames
Bvural41 1
Bvural41
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Chat İtem Yansıtma Fixi 6 Taş

salihq

Level 7
Telefon Numarası Onaylanmış Üye TC Kimlik Numarası Doğrulanmış Üye
Banlı
Katılım
22 Nis 2020
Konular
194
Mesajlar
1,808
Çözüm
147
Online süresi
6mo 8d
Reaksiyon Skoru
712
Altın Konu
0
TM Yaşı
6 Yıl 1 Ay 18 Gün
Başarım Puanı
234
MmoLira
5,419
DevLira
192
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

Arkadaslar Bazı Arkadaslarda Bu Sorun Var 6 Taş Ekledin Zaman İtem yansıtma Sorunu 6Taş Sistemininde Anlatılmıs Konu Ama Bazı Kisiler Yapamamıs Diye Paylaşıyorum Aşagıda Verdim Syser Cözümü . ! '' Normalde Paylaşmıycaktım Cünkü 6 Taş sisteminde konu Var Ama bazı Kişiler Yapamıyor Tab Ayarınını .
@Alemji21 https://forum.turkmmo.com/konu/3737409-chat-yansitma-sorunu-yardim-pls/?view=votes

Kod:
0627 20:27:38327 ::   File "game.py", line 1938, in OnMouseLeftButtonUp

0627 20:27:38329 ::   File "interfaceModule.py", line 574, in MakeHyperlinkTooltip

0627 20:27:38330 ::   File "uiToolTip.py", line 2391, in SetHyperlinkItem

0627 20:27:38332 :: ValueError
0627 20:27:38332 :: :
0627 20:27:38332 :: invalid literal for int() with base 10: '6f15'
0627 20:27:38332 ::

1 Adım Uygula
Eğer Yukardakı Uygulama Olmassa Sonraki 2 Adım Uygula Sorun Cözülcektir.


KANIT
Ekran-Alintisi.png
 
Son düzenleme:


İtem Yansıtma Problemi fixi aşşağıda :)
root/uitooltip.py
arat değiştir
Kod:
    def SetHyperlinkItem(self, tokens):
        minTokenCount = 3 + player.METIN_SOCKET_MAX_NUM
        maxTokenCount = minTokenCount + 2 * player.ATTRIBUTE_SLOT_MAX_NUM
        if tokens and len(tokens) >= minTokenCount and len(tokens) <= maxTokenCount:
            head, vnum, flag = tokens[:3]
            itemVnum = int(vnum, 16)
            metinSlot = [int(metin, 16) for metin in tokens[3:9]]


            rests = tokens[9:]
            if rests:
                attrSlot = []


                rests.reverse()
                while rests:
                    key = int(rests.pop(), 16)
                    if rests:
                        val = int(rests.pop())
                        attrSlot.append((key, val))


                attrSlot += [(0, 0)] * (player.ATTRIBUTE_SLOT_MAX_NUM - len(attrSlot))
            else:
                attrSlot = [(0, 0)] * player.ATTRIBUTE_SLOT_MAX_NUM


            self.ClearToolTip()
            self.AddItemData(itemVnum, metinSlot, attrSlot)


            ItemToolTip.OnUpdate(self)
////////////////////////////////


pythonchatmodule.cpp




açılır




//////////////////////////




PyObject * chatGetLinkFromHyperlink(PyObject * poSelf, PyObject * poArgs)




arat


Kod:
PyObject * chatGetLinkFromHyperlink(PyObject * poSelf, PyObject * poArgs)
Kod:
{
    char * szHyperlink;

    if (!PyTuple_GetString(poArgs, 0, &szHyperlink))
        return Py_BuildException();




    std::string stHyperlink(szHyperlink);
    std::vector<std::string> results;




    split_string(stHyperlink, ":", results, false);




    // item:vnum:flag:socket0:socket1:socket2:socket3:socket4:socket5
    if (0 == results[0].compare("item"))
    {
        if (results.size() < 9)
            return Py_BuildValue("s", "");




        CItemData * pItemData = NULL;




        if (CItemManager::Instance().GetItemDataPointer(htoi(results[1].c_str()), &pItemData))
        {
            char buf[1024] = { 0 };
            char itemlink[256];
            int len;
            bool isAttr = false;




            len = snprintf(itemlink, sizeof(itemlink), "item:%x:%x:%x:%x:%x:%x:%x:%x",
                    htoi(results[1].c_str()),
                    htoi(results[2].c_str()),
                    htoi(results[3].c_str()),
                    htoi(results[4].c_str()),
                    htoi(results[5].c_str()),
                    htoi(results[6].c_str()),
                    htoi(results[7].c_str()),
                    htoi(results[8].c_str()));




            if (results.size() >= 11)
            {
                for (int i = 9; i < results.size(); i += 2)
                {
                    len += snprintf(itemlink + len, sizeof(itemlink) - len, ":%x:%d",
                            htoi(results[i].c_str()),
                            atoi(results[i+1].c_str()));
                    isAttr = true;
                }
            }




            if (isAttr)
                //"item:¹øÈ£:Ç÷¡±×:¼ÒÄÏ0:¼ÒÄÏ1:¼ÒÄÏ2"
                snprintf(buf, sizeof(buf), "|cffffc700|H%s|h[%s]|h|r", itemlink, pItemData->GetName());
            else
                snprintf(buf, sizeof(buf), "|cfff1e6c0|H%s|h[%s]|h|r", itemlink, pItemData->GetName());




            return Py_BuildValue("s", buf);
        }
    }




    return Py_BuildValue("s", "");
}




değiştir.


///////////////////////////////////////////////////////////////////


pythonplayermodule.cpp
arat
Kod:
PyObject * playerGetItemLink(PyObject * poSelf, PyObject * poArgs)






///////////////////////////


[CODE]PyObject * playerGetItemLink(PyObject * poSelf, PyObject * poArgs)
Kod:
{
    TItemPos Cell;




    switch (PyTuple_Size(poArgs))
    {
    case 1:  
        if (!PyTuple_GetInteger(poArgs, 0, &Cell.cell))
            return Py_BuildException();
        break;
    case 2:
        if (!PyTuple_GetByte(poArgs, 0, &Cell.window_type))
            return Py_BuildException();
        if (!PyTuple_GetInteger(poArgs, 1, &Cell.cell))
            return Py_BuildException();
        break;
    default:
        return Py_BuildException();
    }
    const TItemData * pPlayerItem = CPythonPlayer::Instance().GetItemData(Cell);
    CItemData * pItemData = NULL;
    char buf[1024];




    if (pPlayerItem && CItemManager::Instance().GetItemDataPointer(pPlayerItem->vnum, &pItemData))
    {
        char itemlink[256];
        int len;
        bool isAttr = false;




        len = snprintf(itemlink, sizeof(itemlink), "item:%x:%x:%x:%x:%x:%x:%x:%x",
                pPlayerItem->vnum, pPlayerItem->flags,
                pPlayerItem->alSockets[0], pPlayerItem->alSockets[1], pPlayerItem->alSockets[2] , pPlayerItem->alSockets[3], pPlayerItem->alSockets[4], pPlayerItem->alSockets[5]);




        for (int i = 0; i < ITEM_ATTRIBUTE_SLOT_MAX_NUM; ++i)
            if (pPlayerItem->aAttr[i].bType != 0)
            {
                len += snprintf(itemlink + len, sizeof(itemlink) - len, ":%x:%d",
                        pPlayerItem->aAttr[i].bType, pPlayerItem->aAttr[i].sValue);
                isAttr = true;
            }








        if( GetDefaultCodePage() == CP_ARABIC ) {
            if (isAttr)
                //"item:¹øÈ£:Ç÷¡±×:¼ÒÄÏ0:¼ÒÄÏ1:¼ÒÄÏ2"
                snprintf(buf, sizeof(buf), " |h|r[%s]|cffffc700|H%s|h", pItemData->GetName(), itemlink);
            else
                snprintf(buf, sizeof(buf), " |h|r[%s]|cfff1e6c0|H%s|h", pItemData->GetName(), itemlink);
        } else {
            if (isAttr)
                //"item:¹øÈ£:Ç÷¡±×:¼ÒÄÏ0:¼ÒÄÏ1:¼ÒÄÏ2"
                snprintf(buf, sizeof(buf), "|cffffc700|H%s|h[%s]|h|r", itemlink, pItemData->GetName());
            else
                snprintf(buf, sizeof(buf), "|cfff1e6c0|H%s|h[%s]|h|r", itemlink, pItemData->GetName());
        }
    }
    else
        buf[0] = '\0';




    return Py_BuildValue("s", buf);
}[/FONT]


değiştir.
Keyifli Forumlar...
 

21a7e77543136f51e.png


Bu arkadas Yapamamıs Belki Düsündüm Yapamayanlar Vardır diye o yuzden paylastım .

[CODE title="Syser"]0627 20:27:38327 :: File "game.py", line 1938, in OnMouseLeftButtonUp

0627 20:27:38329 :: File "interfaceModule.py", line 574, in MakeHyperlinkTooltip

0627 20:27:38330 :: File "uiToolTip.py", line 2391, in SetHyperlinkItem

0627 20:27:38332 :: ValueError
0627 20:27:38332 :: :
0627 20:27:38332 :: invalid literal for int() with base 10: '6f15'
0627 20:27:38332 ::[/CODE]
 
21a7e77543136f51e.png


Bu arkadas Yapamamıs Belki Düsündüm Yapamayanlar Vardır diye o yuzden paylastım .

[CODE title="Syser"]0627 20:27:38327 :: File "game.py", line 1938, in OnMouseLeftButtonUp

0627 20:27:38329 :: File "interfaceModule.py", line 574, in MakeHyperlinkTooltip

0627 20:27:38330 :: File "uiToolTip.py", line 2391, in SetHyperlinkItem

0627 20:27:38332 :: ValueError
0627 20:27:38332 :: :
0627 20:27:38332 :: invalid literal for int() with base 10: '6f15'
0627 20:27:38332 ::[/CODE]
yine yapamayacak sorun ayrıntılı olarak paylaşmakta değil ki
 

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

Geri
Üst