romegames 1
romegames
Krutzo 1
Krutzo
shrpnl 1
shrpnl
Best Studio 1
Best Studio
D 1
delimuratt
Aliyldrim 1
Aliyldrim
Mt2Hizmet 1
Mt2Hizmet
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Sutaşı Bar Envanteri

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!

Kemer envanterini revize ederek sorunsuzca kullanabilirsin, mesela kemer itemi takıldığında açılan kemer envanter slotları kontrollerini kaldırıp, kemer itemi gerekmeden açık kalmasını sağlayabilirsin. Çözemezsen müsait bir zamanımda ilgileneceğim.
 
İyi olur valla bende yarın bakıcam buna
 
Anlatımlı olarak yazdım sana

[CODE title="belt_inventory_Helper.h"]static bool CanMoveIntoBeltInventory(LPITEM item)
{
if (NULL == item)
return false;

if (item->GetType() != ITEM_USE)
return false;

switch (item->GetSubType())
{
case USE_POTION:
case USE_POTION_NODELAY:
case USE_POTION_CONTINUE:
case USE_POTION_TOWER:
case USE_POTION_NODELAY_TOWER:
return true;
default:
return false;
}

return false;
}[/CODE]

burayı düzenle sana örnek olsun diye yazdım eğer pot felan girsin istemez isen içine // Standart Tip ve Alt Tip Kontrolleri (Mevcut yapı) kontrolünü // komple kapat

Kod:
static bool CanMoveIntoBeltInventory(LPITEM item)
    {
        if (NULL == item)
            return false;

        // --- VNUM KONTROLÜ BAŞLANGICI ---
        DWORD itemVnum = item->GetVnum();

        // Sadece bu VNUM'lara özel olarak direkt giriş izni ver (Tipine bakmadan)
        if (itemVnum == 50051 || itemVnum == 50052)
        {
            return true;
        }
      
        // Eğer spesifik bir VNUM'u özellikle ENGELLEMEK istersen:
        // if (itemVnum == 27001)
        //    return false;
        // --- VNUM KONTROLÜ BİTİŞİ ---

        // Standart Tip ve Alt Tip Kontrolleri (Mevcut yapı)
        if (item->GetType() != ITEM_USE)
            return false;

        switch (item->GetSubType())
        {
            case USE_POTION:
            case USE_POTION_NODELAY:
            case USE_POTION_CONTINUE:
            case USE_POTION_TOWER:
            case USE_POTION_NODELAY_TOWER:
                return true;
            default:
                return false;
        }

        return false;
    }

bu şekilde değiştirirsen sürekli açık kalır kemer envanteri
[CODE title="aynı dosya"]static bool IsAvailableCell(WORD cell, int beltGrade /* int beltLevel */)
{
// Orijinal kuralı ve kemer derecesi kontrolünü sildik.
// Artık 16 hücrenin tamamı kemer olsa da olmasa da her zaman kullanılabilir.
return true;
}
[/CODE]

root içerisinde uiinventory.py aç
[CODE title="uiinventory.py" highlight="ARAT"]def RefreshSlot(self):
getItemVNum = ReprGetItemIndex(player.BELT_INVENTORY)
getItemCount = ReprGetItemCount(player.BELT_INVENTORY)

for i in xrange(item.BELT_INVENTORY_SLOT_COUNT):
slotNumber = item.BELT_INVENTORY_SLOT_START + i
self.wndBeltInventorySlot.SetItemSlot(slotNumber, getItemVNum(slotNumber), getItemCount(slotNumber))
self.wndBeltInventorySlot.SetAlwaysRenderCoverButton(slotNumber, True)

if player.IsAvailableBeltInventoryCell(slotNumber):
self.wndBeltInventorySlot.EnableCoverButton(slotNumber)
else:
self.wndBeltInventorySlot.DisableCoverButton(slotNumber)

self.wndBeltInventorySlot.RefreshSlot()[/CODE]

[CODE title="uiinventory.py" highlight="Değiştir"]def RefreshSlot(self):
getItemVNum = ReprGetItemIndex(player.BELT_INVENTORY)
getItemCount = ReprGetItemCount(player.BELT_INVENTORY)

for i in xrange(item.BELT_INVENTORY_SLOT_COUNT):
slotNumber = item.BELT_INVENTORY_SLOT_START + i
self.wndBeltInventorySlot.SetItemSlot(slotNumber, getItemVNum(slotNumber), getItemCount(slotNumber))
self.wndBeltInventorySlot.SetAlwaysRenderCoverButton(slotNumber, True)

# Kemer takılı olup olmadığını kontrol eden sistemi devre dışı bıraktık.
# Artık tüm slotlar kemer olsa da olmasa da açık (kullanılabilir) görünecek.
self.wndBeltInventorySlot.EnableCoverButton(slotNumber)

self.wndBeltInventorySlot.RefreshSlot()[/CODE]
 
Son düzenleme:
Anlatımlı olarak yazdım sana

[CODE title="belt_inventory_Helper.h"]static bool CanMoveIntoBeltInventory(LPITEM item)
{
if (NULL == item)
return false;

if (item->GetType() != ITEM_USE)
return false;

switch (item->GetSubType())
{
case USE_POTION:
case USE_POTION_NODELAY:
case USE_POTION_CONTINUE:
case USE_POTION_TOWER:
case USE_POTION_NODELAY_TOWER:
return true;
default:
return false;
}

return false;
}[/CODE]

burayı düzenle sana örnek olsun diye yazdım eğer pot felan girsin istemez isen içine // Standart Tip ve Alt Tip Kontrolleri (Mevcut yapı) kontrolünü // komple kapat

Kod:
static bool CanMoveIntoBeltInventory(LPITEM item)
    {
        if (NULL == item)
            return false;

        // --- VNUM KONTROLÜ BAŞLANGICI ---
        DWORD itemVnum = item->GetVnum();

        // Sadece bu VNUM'lara özel olarak direkt giriş izni ver (Tipine bakmadan)
        if (itemVnum == 50051 || itemVnum == 50052)
        {
            return true;
        }
     
        // Eğer spesifik bir VNUM'u özellikle ENGELLEMEK istersen:
        // if (itemVnum == 27001)
        //    return false;
        // --- VNUM KONTROLÜ BİTİŞİ ---

        // Standart Tip ve Alt Tip Kontrolleri (Mevcut yapı)
        if (item->GetType() != ITEM_USE)
            return false;

        switch (item->GetSubType())
        {
            case USE_POTION:
            case USE_POTION_NODELAY:
            case USE_POTION_CONTINUE:
            case USE_POTION_TOWER:
            case USE_POTION_NODELAY_TOWER:
                return true;
            default:
                return false;
        }

        return false;
    }

bu şekilde değiştirirsen sürekli açık kalır kemer envanteri
[CODE title="aynı dosya"]static bool IsAvailableCell(WORD cell, int beltGrade /* int beltLevel */)
{
// Orijinal kuralı ve kemer derecesi kontrolünü sildik.
// Artık 16 hücrenin tamamı kemer olsa da olmasa da her zaman kullanılabilir.
return true;
}
[/CODE]

root içerisinde uiinventory.py aç
[CODE title="uiinventory.py" highlight="ARAT"]def RefreshSlot(self):
getItemVNum = ReprGetItemIndex(player.BELT_INVENTORY)
getItemCount = ReprGetItemCount(player.BELT_INVENTORY)

for i in xrange(item.BELT_INVENTORY_SLOT_COUNT):
slotNumber = item.BELT_INVENTORY_SLOT_START + i
self.wndBeltInventorySlot.SetItemSlot(slotNumber, getItemVNum(slotNumber), getItemCount(slotNumber))
self.wndBeltInventorySlot.SetAlwaysRenderCoverButton(slotNumber, True)

if player.IsAvailableBeltInventoryCell(slotNumber):
self.wndBeltInventorySlot.EnableCoverButton(slotNumber)
else:
self.wndBeltInventorySlot.DisableCoverButton(slotNumber)

self.wndBeltInventorySlot.RefreshSlot()[/CODE]

[CODE title="uiinventory.py" highlight="Değiştir"]def RefreshSlot(self):
getItemVNum = ReprGetItemIndex(player.BELT_INVENTORY)
getItemCount = ReprGetItemCount(player.BELT_INVENTORY)

for i in xrange(item.BELT_INVENTORY_SLOT_COUNT):
slotNumber = item.BELT_INVENTORY_SLOT_START + i
self.wndBeltInventorySlot.SetItemSlot(slotNumber, getItemVNum(slotNumber), getItemCount(slotNumber))
self.wndBeltInventorySlot.SetAlwaysRenderCoverButton(slotNumber, True)

# Kemer takılı olup olmadığını kontrol eden sistemi devre dışı bıraktık.
# Artık tüm slotlar kemer olsa da olmasa da açık (kullanılabilir) görünecek.
self.wndBeltInventorySlot.EnableCoverButton(slotNumber)

self.wndBeltInventorySlot.RefreshSlot()[/CODE]
Deniyecem teşekkür ettim
 

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

Geri
Üst