Toplu-Sil-Sat Sistemi

1728426447138.webp


sa hocam resimdeki gibi bir durumda bir sonraki eşyayı koyduğumuzda ilk slota girmesini sağlayabilir miyiz? indirip bakmadım basit bir işlemse bu sistemi kurup eklemek istiyorum genel olarak sistemlerini beğeniyorum. iyi çalışmalar.
 
sa sistemi ekledim ama 1 konuda yardıma ihtiyacım var
benim rootda
uispecialstorage var ama sistemde de eklenecek dosya var lakin ara ekle yok direk içine atmamı söylüyor ama ozaman sistemde ekli şeyler bozuluyor bunu benim dosyaya sağlıklı şekilde eklemem yardımcı olacak varmıdır
dosyaşarı ekledim yardımcı olursanız çok sevinirim
 

Dosya Eklentileri

sa sistemi ekledim ama 1 konuda yardıma ihtiyacım var
benim rootda
uispecialstorage var ama sistemde de eklenecek dosya var lakin ara ekle yok direk içine atmamı söylüyor ama ozaman sistemde ekli şeyler bozuluyor bunu benim dosyaya sağlıklı şekilde eklemem yardımcı olacak varmıdır
dosyaşarı ekledim yardımcı olursanız çok sevinirim
hele dene :D olmazsa özelden yazarsın
 

Dosya Eklentileri

19322 eklentisini görüntüle

sa hocam resimdeki gibi bir durumda bir sonraki eşyayı koyduğumuzda ilk slota girmesini sağlayabilir miyiz? indirip bakmadım basit bir işlemse bu sistemi kurup eklemek istiyorum genel olarak sistemlerini beğeniyorum. iyi çalışmalar.
grid.py dosyasında ki def clear'ı aşağıda ki gibi güncelleyin fix'ini yaptım test ettim

grid.py:
Genişlet Daralt Kopyala
    def clear(self, pos, width, height):
        if pos < 0 or pos >= (self.width * self.height):
            return
    
        for row in range(height):
            start = pos + (row * self.width)
            self.grid[start] = False
            col = 1
            while col < width:
                self.grid[start + col] = False
                col += 1
 
Sil sat paketlerini uyarlamak gerekiyor ve k envanteri olanlar içinde örnek dosya var ordan bakarak k envanterine uyarlayabilirler.

O yorumdan sonra konuyu güncellemiştim k envanteri uyarlaması konunun içinde mevcut.
Ya reis mevcut mevcut diyorsun da benim anlamadım tek nokta o farklı bir k envanteri icin uyumlama bütün k envanterleri aynı mantık degil ki rica edeiyorum bir açıklama getirebilir misin

Ek Envanter Sistemi (K Envanteri)

Buna 1 saattir ugraşıyorum hala entegre edemedim

 
18353 eklentisini görüntüle




İndir;
Alıntılarda özel içerikler gözükmez.


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

Hocam sistem için teşekkürler,

0418 19:54:19227 :: CResourceManager::GetResourcePointer: File not exist d:/ymir work/ui/public/large1.png
0418 19:54:19227 :: ResourceManager::GetResourcePointer: NOT SUPPORT FILE d:\ymir work\ui\public\large1.png

Syserr de şöyle bir hata alıyorum.

ama belirtilen konumda zaten resim dosyası, sorun nedir çözümünü bilen var mıdır?

1744996740490.webp




EDİT;

sorunu şöyle çözdüm, siz de bilin istedim. pngleri tga ya çevirdim, sub dosyaları oluşturdum ve onlara linkledim (image d:/ymir work/ui/public/large1.tga), üstteki .py klasöründe de adını değiştirdim sorun düzeldi
 
Son düzenleme:
1747613676459.webp

Öncelikle Paylaşım için teşekkürler, sistemde bir kaç eksik mevcut
Giyili itemler sürükle bırak için fixlenmiş gözüküyor fakat "if int(inven_pos) > 180:" kontrolü ile fixlenmiş ama bazı itemler hala silinebiliyor o yüzden bu kontrolü "IsEquipmentSlot" ile yapmak daha sağlıklı olacaktır. Ayrıca giyili itemleri silerken sağ click için hiç bir fix eklenmemiş.
uideleteitem.py(sürükle bırak fixi):
Genişlet Daralt Kopyala
#ARAT
attrSlot = [player.GetItemAttribute(attachedSlotPos, i) for i in xrange(player.ATTRIBUTE_SLOT_MAX_NUM)]
            if int(attachedSlotPos) > 180:
                self.uyari2 = uiCommon.PopupDialog()
                self.uyari2.SetText("Giyili itemleri silemessin.")
                self.uyari2.Open()
                return
                
#DEĞİŞTİR
attrSlot = [player.GetItemAttribute(attachedSlotPos, i) for i in xrange(player.ATTRIBUTE_SLOT_MAX_NUM)]
            if player.IsEquipmentSlot(attachedSlotPos):
                self.uyari2 = uiCommon.PopupDialog()
                self.uyari2.SetText("Giyili itemleri silemezsin.")
                self.uyari2.Open()
                return

Sağ Click Fixi:
Genişlet Daralt Kopyala
#ARAT
def AddItemWithoutMouse(self, inven_type, inven_pos):
        itemID = player.GetItemIndex(inven_type, inven_pos)
        item.SelectItem(itemID)
        
#DEĞİŞTİR       
def AddItemWithoutMouse(self, inven_type, inven_pos):
        # Giyili item kontrolü:
        if player.IsEquipmentSlot(inven_pos):
            self.uyari2 = uiCommon.PopupDialog()
            self.uyari2.SetText("Giyili itemleri silemezsin.")
            self.uyari2.Open()
            return

Bu şekilde değişiklikleri yaparsanız on numara bir sistem, tekrar paylaşım için teşekkürler.
 
23498 eklentisini görüntüle
Öncelikle Paylaşım için teşekkürler, sistemde bir kaç eksik mevcut
Giyili itemler sürükle bırak için fixlenmiş gözüküyor fakat "if int(inven_pos) > 180:" kontrolü ile fixlenmiş ama bazı itemler hala silinebiliyor o yüzden bu kontrolü "IsEquipmentSlot" ile yapmak daha sağlıklı olacaktır. Ayrıca giyili itemleri silerken sağ click için hiç bir fix eklenmemiş.
uideleteitem.py(sürükle bırak fixi):
Genişlet Daralt Kopyala
#ARAT
attrSlot = [player.GetItemAttribute(attachedSlotPos, i) for i in xrange(player.ATTRIBUTE_SLOT_MAX_NUM)]
            if int(attachedSlotPos) > 180:
                self.uyari2 = uiCommon.PopupDialog()
                self.uyari2.SetText("Giyili itemleri silemessin.")
                self.uyari2.Open()
                return
               
#DEĞİŞTİR
attrSlot = [player.GetItemAttribute(attachedSlotPos, i) for i in xrange(player.ATTRIBUTE_SLOT_MAX_NUM)]
            if player.IsEquipmentSlot(attachedSlotPos):
                self.uyari2 = uiCommon.PopupDialog()
                self.uyari2.SetText("Giyili itemleri silemezsin.")
                self.uyari2.Open()
                return

Sağ Click Fixi:
Genişlet Daralt Kopyala
#ARAT
def AddItemWithoutMouse(self, inven_type, inven_pos):
        itemID = player.GetItemIndex(inven_type, inven_pos)
        item.SelectItem(itemID)
       
#DEĞİŞTİR      
def AddItemWithoutMouse(self, inven_type, inven_pos):
        # Giyili item kontrolü:
        if player.IsEquipmentSlot(inven_pos):
            self.uyari2 = uiCommon.PopupDialog()
            self.uyari2.SetText("Giyili itemleri silemezsin.")
            self.uyari2.Open()
            return

Bu şekilde değişiklikleri yaparsanız on numara bir sistem, tekrar paylaşım için teşekkürler.
Eline sağlık hocam
 
Fiyat hesaplaması x5 çarpanı şekilde biraz uğraştım /5 şeklinde fixledim şuanlık mantıkta problem çıkacağını sanmıyorum çünkü 0'ı neyle çarparsan 0'dır senin protonda değeri 1 gold'dur zaten 5x multiplier şeklinde geliyor /5 ile yine 1 gold şuanlık bu idealdir buyrun;

Not: Count hesaplamasıda geçerlidir.


uideleteitem.py:
Genişlet Daralt Kopyala
### Arat
    def RefreshMoney(self, bAdd, invenType, invenPos):
        itemVnum = player.GetItemIndex(invenType, invenPos)
        item.SelectItem(itemVnum)

        global g_iTotalGold
        if bAdd == True:
            g_iTotalGold += (item.GetISellItemPrice() * player.GetItemCount(invenType, invenPos))
        else:
            g_iTotalGold -= (item.GetISellItemPrice() * player.GetItemCount(invenType, invenPos))
        self.totalGold.SetText("|cffFDD017|h%s|h|r" % (localeInfo.NumberToMoneyString(g_iTotalGold)))
       
### Değiştir
    def RefreshMoney(self, bAdd, invenType, invenPos):
        itemVnum = player.GetItemIndex(invenType, invenPos)
        item.SelectItem(itemVnum)

        itemCount = player.GetItemCount(invenType, invenPos)
        itemPrice = item.GetISellItemPrice() / 5

        totalPrice = itemPrice * itemCount

        global g_iTotalGold
        if bAdd:
            g_iTotalGold += totalPrice
        else:
            g_iTotalGold -= totalPrice

        self.totalGold.SetText("|cffFDD017|h%s|h|r" % (localeInfo.NumberToMoneyString(g_iTotalGold)))
 
Son düzenleme:
Geri
Üst