Yardım Great Offlineshop Slot Marking uyarlama

  • Konuyu açan Konuyu açan therasmus
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 4
  • Gösterim Gösterim 1K
Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.

therasmus

Üye
Üye
Mesaj
121
Çözümler
10
Beğeni
71
Puan
729
Ticaret Puanı
0
Merhaba,

Great offlineshop kurdum. daha öncesinde de slot marking sistemi vardı filesta.(Tradable icon)

marking sistemi greata uyarlarken sorun yaşıyorum.

Linkleri görebilmek için giriş yap veya kayıt ol.


market oluştur a tıklayınca arkadaki pazar kurma ekranı geliyor fakat öndeki oluşturma penceresi kapanmıyor.

verdiği syserr şu şekilde;
Python:
Genişlet Daralt Kopyala
1029 17:14:24271 ::   File "ui.py", line 1849, in CallEvent

1029 17:14:24272 ::   File "ui.py", line 87, in __call__

1029 17:14:24272 ::   File "ui.py", line 69, in __call__

1029 17:14:24272 ::   File "uiNewShop.py", line 131, in CreateShop

1029 17:14:24272 ::   File "uiPrivateShopBuilder.py", line 280, in Open

1029 17:14:24272 :: AttributeError
1029 17:14:24272 :: :
1029 17:14:24272 :: 'int' object has no attribute 'GetInventoryHandle'
1029 17:14:24272 ::

syserr ın gerçekleştiği yer shopbuilder.py
Python:
Genişlet Daralt Kopyala
    def Open(self, title, days, interface):

        self.days = days
        self.title = title

        if len(title) > 25:
            title = title[:22] + "..."

        self.itemStock = {}
        shop.ClearPrivateShopStock()
        self.nameLine.SetText(title)
        self.SetCenterPosition()
        self.Refresh()
        self.Show()

        if app.WJ_ENABLE_TRADABLE_ICON:
            self.lockedItems = {i:(-1,-1) for i in range(shop.SHOP_SLOT_COUNT)}
            self.interface = interface
            self.SetInven(self.interface.GetInventoryHandle())
            self.interface.SetOnTopWindow(player.ON_TOP_WND_PRIVATE_SHOP)
            self.interface.RefreshMarkInventoryBag()

        global g_isBuildingPrivateShop
        g_isBuildingPrivateShop = True

inferfacemodule deki handle fonksiyonu da şu şekilde;
Python:
Genişlet Daralt Kopyala
    def GetInventoryHandle(self):
        if self.wndInventory:
            return self.wndInventory
        else:
            return -1


bu 2 sistemi birlikte kullanan başka dosyalara baktım ama nafile. bu konuda yardıma ihtiyacım var. teşekkürler.
 
constinfo.py:
Genişlet Daralt Kopyala
Müsait bi yere eklenir.
INTERFACE_MODULE = 0

uinewshop.py:
Genişlet Daralt Kopyala
Aratılır

    def CreateShop(self):
        if len(self.UI["nameEdit"].GetText()) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_NAME_EMPTY)
            return
        id=int(self.UI["select"].DropList.GetSelectedItem().value)
        if int(id) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_TIMEOUT_EMPTY)
            return
        item = constInfo.shop_cost[id-1]

        if int(item["id"]) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_TIMEOUT_EMPTY)
            return
        self.__OnClosePopupDialog()
        self.privateShopBuilder.Open(self.UI["nameEdit"].GetText(),int(item["id"]))
        self.Close()
    
Değiştirilir

    def CreateShop(self):
        if len(self.UI["nameEdit"].GetText()) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_NAME_EMPTY)
            return
        id=int(self.UI["select"].DropList.GetSelectedItem().value)
        if int(id) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_TIMEOUT_EMPTY)
            return
        item = constInfo.shop_cost[id-1]

        if int(item["id"]) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_TIMEOUT_EMPTY)
            return
        self.__OnClosePopupDialog()
        self.privateShopBuilder.Open(self.UI["nameEdit"].GetText(),int(item["id"]),constInfo.INTERFACE_MODULE)
        self.Close()

Bi dener misin?
 
constinfo.py:
Genişlet Daralt Kopyala
Müsait bi yere eklenir.
INTERFACE_MODULE = 0

uinewshop.py:
Genişlet Daralt Kopyala
Aratılır

    def CreateShop(self):
        if len(self.UI["nameEdit"].GetText()) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_NAME_EMPTY)
            return
        id=int(self.UI["select"].DropList.GetSelectedItem().value)
        if int(id) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_TIMEOUT_EMPTY)
            return
        item = constInfo.shop_cost[id-1]

        if int(item["id"]) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_TIMEOUT_EMPTY)
            return
        self.__OnClosePopupDialog()
        self.privateShopBuilder.Open(self.UI["nameEdit"].GetText(),int(item["id"]))
        self.Close()
   
Değiştirilir

    def CreateShop(self):
        if len(self.UI["nameEdit"].GetText()) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_NAME_EMPTY)
            return
        id=int(self.UI["select"].DropList.GetSelectedItem().value)
        if int(id) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_TIMEOUT_EMPTY)
            return
        item = constInfo.shop_cost[id-1]

        if int(item["id"]) <=0:
            self.PopupMessage(uiScriptLocale.SHOP_TIMEOUT_EMPTY)
            return
        self.__OnClosePopupDialog()
        self.privateShopBuilder.Open(self.UI["nameEdit"].GetText(),int(item["id"]),constInfo.INTERFACE_MODULE)
        self.Close()

Bi dener misin?
interface zaten ekliydi ona rağmen hala syserr veriyordu. o hata veren satırları sildim düzeldi şu an.

şimdi de pazarı kurarken pazara koyduğum itemin üzerine gelince tooltip çıkmıyor.
 
interface zaten ekliydi ona rağmen hala syserr veriyordu. o hata veren satırları sildim düzeldi şu an.

şimdi de pazarı kurarken pazara koyduğum itemin üzerine gelince tooltip çıkmıyor.
Pachı tunga filesinden bak onda great ve marking sistemi vardı.
 
Geri
Üst