InfernoShade 1
InfernoShade
Psych0SoociaL 1
Psych0SoociaL
onur akbaş 1
onur akbaş
noisiv 1
noisiv
xranzei 1
xranzei
Bvural41 1
Bvural41
D 1
delimuratt
ShadowFon 1
ShadowFon
shrpnl 1
shrpnl
DEVLOPER 1
DEVLOPER
Manwe Work 1
Manwe Work
Hikaye Ekle

[uiinventory.py] Envanter For döngüsü

  • Konuyu başlatan Konuyu başlatan LangonaWork
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 15
  • Görüntüleme Görüntüleme 3K

LangonaWork

Denizciler Tanrının Günahkar Çocukları.
TM Üye
Üye
Katılım
14 Nis 2017
Konular
82
Mesajlar
621
Çözüm
3
Online süresi
8mo 22d
Reaksiyon Skoru
379
Altın Konu
2
TM Yaşı
9 Yıl 2 Ay 6 Gün
Başarım Puanı
224
MmoLira
3,237
DevLira
39
Ticaret - 0%
0   0   0

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 bu gece envanter için bir sistem düşündüğüm için uiinventory deki envanter kodları benim düşündüğüm işi yapmayacak şekildeydi ve ben bunun üzerine for döngüsü kodladım ufak ama sizin için çok faydalı olacaktır, anlatıma geçiyorum ;

İlk Önce arat ; (Bazılarınızda 4 veya 3' de olabilir)

Kod:
self.inventoryTab = []
self.inventoryTab.append(self.GetChild("Inventory_Tab_01"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_02"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_03"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_04"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_05"))

Bununla değiştirin ;

Kod:
            self.inventoryTab = []
            for i in xrange(player.INVENTORY_PAGE_COUNT):
                self.inventoryTab.append(self.GetChild("Inventory_Tab_%02d" % (i+1)))

Tekrar Arat ;

Kod:
        self.inventoryTab[0].SetEvent(lambda arg=0: self.SetInventoryPage(arg))
        self.inventoryTab[1].SetEvent(lambda arg=1: self.SetInventoryPage(arg))
        self.inventoryTab[2].SetEvent(lambda arg=2: self.SetInventoryPage(arg))
        self.inventoryTab[3].SetEvent(lambda arg=3: self.SetInventoryPage(arg))
        self.inventoryTab[4].SetEvent(lambda arg=4: self.SetInventoryPage(arg))
        self.inventoryTab[0].Down()

Bununla Değiştir ;

Kod:
        for i in xrange(player.INVENTORY_PAGE_COUNT):
            self.inventoryTab[i].SetEvent(lambda arg=i: self.SetInventoryPage(arg))
        self.inventoryTab[0].Down()

Son Olarak Tekrar Arat;

Kod:
    def SetInventoryPage(self, page):
        self.inventoryPageIndex = page
        self.inventoryTab[(page+1)%5].SetUp()
        self.inventoryTab[(page+2)%5].SetUp()
        self.inventoryTab[(page+3)%5].SetUp()
        self.inventoryTab[(page+4)%5].SetUp()
        self.RefreshBagSlotWindow()

Bununla Değiştir ;

Kod:
    def SetInventoryPage(self, page):
        self.inventoryPageIndex = page
        for i in xrange(player.INVENTORY_PAGE_COUNT):
            if i!=page:
                self.inventoryTab[i].SetUp()
        self.RefreshBagSlotWindow()

İşleminiz bitmiştir.

Not : Bu for döngüsü direk olarak src den algılamaktadır örnek vermek gerekirse 4 envanteriniz var, siz bunu sadece py olarak 5 e yükselttiniz ve oyuna girmeye çalışıyorsunuz, oyun direk kapanır src dende 5 olması gerekir, sorunsuz şekilde kullanabilirsiniz

Ek olarak : yeni bir envanter ekleyeceğinizde artık işlemleriniz src + inventorywindowdan oluyor uiinventory e dokunmayın kolay gelsin :)


 
Son düzenleme:
Teşekkürler
 
Yararlı konu ellerine sağlık kardeşim teşekkürler :)
 
Teşekkürler
 

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

Geri
Üst