- Mesaj
- 4.951
- Çözümler
- 210
- Beğeni
- 5.258
- Puan
- 2.850
- Ticaret Puanı
- 7
Bence gayet hoş duruyo valla herkese hayırlı kullanımlar.
uiinventory.py açalım ve aratalım
uiinventory.py açalım ve aratalım
arat
uiinventory:
def __LoadWindow(self):
if self.isLoaded == 1:
return
self.isLoaded = 1
try:
pyScrLoader = ui.PythonScriptLoader()
pyScrLoader.LoadScriptFile(self, uiScriptLocale.LOCALE_UISCRIPT_PATH + "InventoryWindow.py")
except:
import exception
exception.Abort("InventoryWindow.LoadWindow.LoadObject")
try:
wndItem = self.GetChild("ItemSlot")
wndEquip = self.GetChild("EquipmentSlot")
altına ekle
Python:
wndCostume = self.GetChild("CostumeSlot")
wndSecondary = self.GetChild("SecondarySlot")
wndTalisman = self.GetChild("TalismanSlot")
wndEffect = self.GetChild("EffectSlot")
arat
Python:
self.DSSButton = self.GetChild2("DSSButton")
altına ekle
Python:
mask1 = self.GetChild("Equipment_Base")
mask2 = self.GetChild("Costume_Base")
mask3 = self.GetChild("Secondary_Base")
mask4 = self.GetChild("Talisman_Base")
mask5 = self.GetChild("Effect_Base")
arat
Python:
self.equipmentTab = []
self.equipmentTab.append(self.GetChild("Equipment_Tab_01"))
self.equipmentTab.append(self.GetChild("Equipment_Tab_02"))
altına ekle
Python:
self.costumeTab = []
self.costumeTab.append(self.GetChild("Costume_Tab_01"))
self.costumeTab.append(self.GetChild("Costume_Tab_02"))
self.costumeTab.append(self.GetChild("Costume_Tab_03"))
self.costumeTab.append(self.GetChild("Costume_Tab_04"))
self.costumeTab.append(self.GetChild("Costume_Tab_05"))
arat
Python:
wndEquip.SetSelectEmptySlotEvent(ui.__mem_func__(self.SelectEmptySlot))
wndEquip.SetSelectItemSlotEvent(ui.__mem_func__(self.SelectItemSlot))
wndEquip.SetUnselectItemSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndEquip.SetUseSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndEquip.SetOverInItemEvent(ui.__mem_func__(self.OverInItem))
wndEquip.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))
altına ekle
Python:
## New EQUIPMENT
## Costume
wndCostume.SetSelectEmptySlotEvent(ui.__mem_func__(self.SelectEmptySlot))
wndCostume.SetSelectItemSlotEvent(ui.__mem_func__(self.SelectItemSlot))
wndCostume.SetUnselectItemSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndCostume.SetUseSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndCostume.SetOverInItemEvent(ui.__mem_func__(self.OverInItem))
wndCostume.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))
## Secondary
wndSecondary.SetSelectEmptySlotEvent(ui.__mem_func__(self.SelectEmptySlot))
wndSecondary.SetSelectItemSlotEvent(ui.__mem_func__(self.SelectItemSlot))
wndSecondary.SetUnselectItemSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndSecondary.SetUseSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndSecondary.SetOverInItemEvent(ui.__mem_func__(self.OverInItem))
wndSecondary.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))
## Talisman
wndTalisman.SetSelectEmptySlotEvent(ui.__mem_func__(self.SelectEmptySlot))
wndTalisman.SetSelectItemSlotEvent(ui.__mem_func__(self.SelectItemSlot))
wndTalisman.SetUnselectItemSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndTalisman.SetUseSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndTalisman.SetOverInItemEvent(ui.__mem_func__(self.OverInItem))
wndTalisman.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))
## Effect
wndEffect.SetSelectEmptySlotEvent(ui.__mem_func__(self.SelectEmptySlot))
wndEffect.SetSelectItemSlotEvent(ui.__mem_func__(self.SelectItemSlot))
wndEffect.SetUnselectItemSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndEffect.SetUseSlotEvent(ui.__mem_func__(self.UseItemSlot))
wndEffect.SetOverInItemEvent(ui.__mem_func__(self.OverInItem))
wndEffect.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))
## New EQUIPMENT
arat
Python:
self.equipmentTab[0].SetEvent(lambda arg=0: self.SetEquipmentPage(arg))
self.equipmentTab[1].SetEvent(lambda arg=1: self.SetEquipmentPage(arg))
self.equipmentTab[0].Down()
self.equipmentTab[0].Hide()
self.equipmentTab[1].Hide()
altına ekle
Python:
self.costumeTab[0].SetEvent(lambda arg=0: self.SetEquipmentPage(arg))
self.costumeTab[1].SetEvent(lambda arg=1: self.SetEquipmentPage(arg))
self.costumeTab[2].SetEvent(lambda arg=2: self.SetEquipmentPage(arg))
self.costumeTab[3].SetEvent(lambda arg=3: self.SetEquipmentPage(arg))
self.costumeTab[4].SetEvent(lambda arg=4: self.SetEquipmentPage(arg))
self.costumeTab[0].Down()
self.costumePageIndex = 0
## New EQUIPMENT
arat
Python:
self.wndItem = wndItem
self.wndEquip = wndEquip
altına ekle
Python:
self.wndCostume = wndCostume
self.wndSecondary = wndSecondary
self.wndTalisman = wndTalisman
self.wndEffect = wndEffect
self.mask1 = mask1
self.mask2 = mask2
self.mask3 = mask3
self.mask4 = mask4
self.mask5 = mask5
## New EQUIPMENT
arat
Python:
self.tooltipItem = None
self.wndItem = 0
self.wndEquip = 0
altına ekle
Python:
## NEW EQUIPMENT
self.wndCostume = 0
self.wndSecondary = 0
self.wndTalisman = 0
self.wndEffect = 0
## NEW EQUIPMENT
arat
Python:
def SetEquipmentPage(self, page):
değiştir
Python:
def SetEquipmentPage(self, page):
self.costumeTab[self.costumePageIndex].SetUp()
self.costumePageIndex = page
self.costumeTab[self.costumePageIndex].Down()
self.mask1.Hide()
self.mask2.Hide()
self.mask3.Hide()
self.mask4.Hide()
self.mask5.Hide()
if page == 0:
self.mask1.Show()
elif page == 1:
self.mask3.Show()
elif page == 2:
self.mask2.Show()
elif page == 3:
self.mask4.Show()
elif page == 4:
self.mask5.Show()
else:
self.mask1.Hide()
self.mask2.Hide()
self.mask3.Hide()
self.mask4.Hide()
self.mask5.Hide()
self.RefreshEquipSlotWindow()
def OnRunMouseWheel(self, nLen):
if nLen > 0:
if self.equipmentPageIndex < 4:
self.SetEquipmentPage(self.equipmentPageIndex + 1)
else:
if self.equipmentPageIndex > 0:
self.SetEquipmentPage(self.equipmentPageIndex - 1)
arat
Python:
def RefreshEquipSlotWindow(self):
değiştir
Python:
def RefreshEquipSlotWindow(self):
getItemVNum=player.GetItemIndex
getItemCount=player.GetItemCount
setItemVNum=self.wndEquip.SetItemSlot
for i in xrange(player.EQUIPMENT_PAGE_COUNT):
slotNumber = player.EQUIPMENT_SLOT_START + i
itemCount = getItemCount(slotNumber)
if itemCount <= 1:
itemCount = 0
setItemVNum(slotNumber, getItemVNum(slotNumber), itemCount)
for i in xrange(item.COSTUME_SLOT_COUNT):
slotNumber = item.COSTUME_SLOT_START + i
self.wndCostume.SetItemSlot(slotNumber, getItemVNum(slotNumber), 0)
if app.ENABLE_WEAPON_COSTUME_SYSTEM:
self.wndCostume.SetItemSlot(item.COSTUME_SLOT_WEAPON, getItemVNum(item.COSTUME_SLOT_WEAPON), 0)
self.wndEquip.SetItemSlot(slotNumber, getItemVNum(slotNumber), 0)
if app.ENABLE_NEW_EQUIPMENT_SYSTEM:
for i in xrange(player.NEW_EQUIPMENT_SLOT_COUNT):
slotNumber = player.NEW_EQUIPMENT_SLOT_START + i
itemCount = getItemCount(slotNumber)
if itemCount <= 1:
itemCount = 0
self.wndSecondary.SetItemSlot(slotNumber, getItemVNum(slotNumber), itemCount)
print "ENABLE_NEW_EQUIPMENT_SYSTEM", slotNumber, itemCount, getItemVNum(slotNumber)
self.wndEquip.RefreshSlot()
locale-uicscript/inventorywindow.py:
"children" :
(
## Title
{
"name" : "TitleBar",
"type" : "titlebar",
"style" : ("attach",),
"x" : 8,
"y" : 7,
"width" : 161,
"color" : "yellow",
"children" :
(
{ "name":"TitleName", "type":"text", "x":77, "y":3, "text":uiScriptLocale.INVENTORY_TITLE, "text_horizontal_align":"center" },
),
},
burdan aşağısını envanter butonlarının kodlarına kadar değiştirin
Python:
## Equipment Slot
{
"name" : "Equipment_Base",
"type" : "expanded_image",
"x" : 10,
"y" : 33,
"image" : "d:/ymir work/ui/inventory_buttons/eq_primary_page.jpg",
"children" :
(
{
"name" : "EquipmentSlot",
"type" : "slot",
"x" : 3,
"y" : 3,
"width" : 150,
"height" : 182,
"slot" : (
{"index":EQUIPMENT_START_INDEX+0, "x":39, "y":37, "width":32, "height":64},
{"index":EQUIPMENT_START_INDEX+1, "x":39, "y":2, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+2, "x":39, "y":145, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+3, "x":75, "y":67, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+4, "x":3, "y":3, "width":32, "height":96},
{"index":EQUIPMENT_START_INDEX+5, "x":114, "y":67, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+6, "x":114, "y":35, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+7, "x":2, "y":145, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+8, "x":75, "y":145, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+9, "x":114, "y":2, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+10, "x":75, "y":35, "width":32, "height":32},
{"index":item.EQUIPMENT_BELT, "x":39, "y":106, "width":32, "height":32},
),
},
),
},
## Costume Equipment Slot
{
"name" : "Costume_Base",
"type" : "expanded_image",
"x" : 10,
"y" : 33,
"image" : "d:/ymir work/ui/inventory_buttons/eq_cosmetics_page_v2.jpg",
"children" :
(
{
"name" : "CostumeSlot",
"type" : "slot",
"x" : 3,
"y" : 3,
"width" : 150,
"height" : 182,
"slot" : (
{"index":COSTUME_START_INDEX+0, "x":61, "y":77, "width":32, "height":64},
{"index":COSTUME_START_INDEX+1, "x":61, "y":40, "width":32, "height":32},
{"index":COSTUME_START_INDEX+2, "x":108, "y":23, "width":32, "height":32},#Sash
{"index":COSTUME_START_INDEX+3, "x":108, "y":63, "width":32, "height":32},
{"index":item.COSTUME_SLOT_WEAPON, "x":10, "y":63, "width":32, "height":96},#¹«±â
),
},
),
},
## Secondary Equipment Slot
{
"name" : "Secondary_Base",
"type" : "expanded_image",
"x" : 10,
"y" : 33,
"image" : "d:/ymir work/ui/inventory_buttons/eq_secondary_page_v2.jpg",
"children" :
(
{
"name" : "SecondarySlot",
"type" : "slot",
"x" : 3,
"y" : 3,
"width" : 150,
"height" : 182,
"slot" : (
# {"index":item.EQUIPMENT_RING1, "x":8, "y":2, "width":32, "height":32},
#{"index":item.EQUIPMENT_RING2, "x":44, "y":2, "width":32, "height":32},
# {"index":item.EQUIPMENT_PET, "x":115, "y":42, "width":32, "height":32},
#{"index":item.EQUIPMENT_MOUNT, "x":115, "y":4, "width":32, "height":32},
),
},
),
},
## Talisman Equipment Slot
{
"name" : "Talisman_Base",
"type" : "expanded_image",
"x" : 10,
"y" : 33,
"image" : "d:/ymir work/ui/inventory_buttons/eq_pendant_page.jpg",
"children" :
(
{
"name" : "TalismanSlot",
"type" : "slot",
"x" : 3,
"y" : 3,
"width" : 150,
"height" : 182,
"slot" : (
# {"index":COSTUME_START_INDEX+0, "x":61, "y":77, "width":32, "height":64},
# {"index":COSTUME_START_INDEX+1, "x":61, "y":40, "width":32, "height":32},
# {"index":COSTUME_START_INDEX+2, "x":61, "y":125, "width":32, "height":32},
# {"index":COSTUME_START_INDEX+3, "x":10, "y":62, "width":32, "height":96},
# {"index":COSTUME_START_INDEX+4, "x":110, "y":61, "width":32, "height":32},
),
},
),
},
## Effect Equipment Slot
{
"name" : "Effect_Base",
"type" : "expanded_image",
"x" : 10,
"y" : 33,
"image" : "d:/ymir work/ui/inventory_buttons/eq_effect_page_v2.jpg",
"children" :
(
{
"name" : "EffectSlot",
"type" : "slot",
"x" : 3,
"y" : 3,
"width" : 150,
"height" : 182,
"slot" : (
# {"index":COSTUME_START_INDEX+0, "x":61, "y":77, "width":32, "height":64},
# {"index":COSTUME_START_INDEX+1, "x":61, "y":40, "width":32, "height":32},
# {"index":COSTUME_START_INDEX+2, "x":61, "y":125, "width":32, "height":32},
# {"index":COSTUME_START_INDEX+3, "x":10, "y":62, "width":32, "height":96},
# {"index":COSTUME_START_INDEX+4, "x":110, "y":61, "width":32, "height":32},
),
},
),
},
{
"name" : "Equipment_Tab_01",
"type" : "radio_button",
"x" : 86,
"y" : 161,
"default_image" : "d:/ymir work/ui/game/windows/tab_button_small_01.sub",
"over_image" : "d:/ymir work/ui/game/windows/tab_button_small_02.sub",
"down_image" : "d:/ymir work/ui/game/windows/tab_button_small_03.sub",
"children" :
(
{
"name" : "Equipment_Tab_01_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "I",
},
),
},
{
"name" : "Equipment_Tab_02",
"type" : "radio_button",
"x" : 86 + 32,
"y" : 161,
"default_image" : "d:/ymir work/ui/game/windows/tab_button_small_01.sub",
"over_image" : "d:/ymir work/ui/game/windows/tab_button_small_02.sub",
"down_image" : "d:/ymir work/ui/game/windows/tab_button_small_03.sub",
"children" :
(
{
"name" : "Equipment_Tab_02_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "II",
},
),
},
{
"name" : "Costume_Tab_01",
"type" : "radio_button",
"x" : -14,
"y" : 33,
"default_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"over_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"down_image" : "d:/ymir work/ui/inventory_buttons/eqtabopen.dds",
"tooltip_text" : uiScriptLocale.INVENTORY_PAGE_BUTTON_TOOLTIP_1,
"children" :
(
{
"name" : "Equipment_Tab_01_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "I",
},
),
},
{
"name" : "Costume_Tab_02",
"type" : "radio_button",
"x" : -14,
"y" : 33 + 22,
"default_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"over_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"down_image" : "d:/ymir work/ui/inventory_buttons/eqtabopen.dds",
"tooltip_text" : uiScriptLocale.INVENTORY_PAGE_BUTTON_TOOLTIP_2,
"children" :
(
{
"name" : "Equipment_Tab_02_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "II",
},
),
},
{
"name" : "Costume_Tab_03",
"type" : "radio_button",
"x" : -14,
"y" : 33 + 22*2,
"default_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"over_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"down_image" : "d:/ymir work/ui/inventory_buttons/eqtabopen.dds",
"tooltip_text" : uiScriptLocale.INVENTORY_PAGE_BUTTON_TOOLTIP_3,
"children" :
(
{
"name" : "Equipment_Tab_03_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "III",
},
),
},
{
"name" : "Costume_Tab_04",
"type" : "radio_button",
"x" : -14,
"y" : 33 + 22*3,
"default_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"over_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"down_image" : "d:/ymir work/ui/inventory_buttons/eqtabopen.dds",
"tooltip_text" : uiScriptLocale.INVENTORY_PAGE_BUTTON_TOOLTIP_4,
"children" :
(
{
"name" : "Equipment_Tab_04_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "IV",
},
),
},
{
"name" : "Costume_Tab_05",
"type" : "radio_button",
"x" : -14,
"y" : 33 + 22*4,
"default_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"over_image" : "d:/ymir work/ui/inventory_buttons/eqtabclosed.dds",
"down_image" : "d:/ymir work/ui/inventory_buttons/eqtabopen.dds",
"tooltip_text" : uiScriptLocale.INVENTORY_PAGE_BUTTON_TOOLTIP_5,
"children" :
(
{
"name" : "Equipment_Tab_05_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "V",
},
),
},
arat
Python:
EQUIPMENT_START_INDEX
altına ekle
Python:
COSTUME_START_INDEX = item.COSTUME_SLOT_START
uiinventory.py de class inventorywindow içerisinde arat ve sil
Python:
# Costume Button
if self.costumeButton:
self.costumeButton.SetEvent(ui.__mem_func__(self.ClickCostumeButton))
self.wndCostume = None
tekrar arat ve sil
Python:
if self.wndCostume:
self.wndCostume.Destroy()
self.wndCostume = 0
tekrar arat ve sil
Python:
if self.wndCostume:
self.isOpenedCostumeWindowWhenClosingInventory = self.wndCostume.IsShow() # Àκ¥Å丮 âÀÌ ´İÈú ¶§ ÄÚ½ºÃõÀÌ ¿·Á ÀÖ¾ú´Â°¡?
self.wndCostume.Close()
18.01.2024 Tarihinde Verilen Güncelleme
Forumdaki çoğu kişi slotları nasıl uyarlayacağını bilmiyor. Bunu şahsen bende bilmiyordum. @Reached 'in verdiği fikirle çözmüş oldum. Asıl hikaye burada eklediğimiz şeyleri iyi bilmek. Mesela tılsımların envanterde gözükmesini istiyoruz. O zaman şu kodu eklememiz gerek.
Forumdaki çoğu kişi slotları nasıl uyarlayacağını bilmiyor. Bunu şahsen bende bilmiyordum. @Reached 'in verdiği fikirle çözmüş oldum. Asıl hikaye burada eklediğimiz şeyleri iyi bilmek. Mesela tılsımların envanterde gözükmesini istiyoruz. O zaman şu kodu eklememiz gerek.
diğer eşyaları uyarlama:
self.wndTalisman.SetItemSlot(slotNumber, getItemVNum(slotNumber), 0) #tılsımlar için
self.wndCostume.SetItemSlot(slotNumber, getItemVNum(slotNumber), 0) #kostümler için
self.wndSecondary.SetItemSlot(slotNumber, getItemVNum(slotNumber), 0) #ikinci envanter için
self.wndEffect.SetItemSlot(slotNumber, getItemVNum(slotNumber), 0) #ekleyeceğiniz giymeli efektler için (kanat vb.)
#veya ekleyeceğiniz item slota otomatik geçmiyorsa şu şekil olucak
self.wndCostume.SetItemSlot(item.COSTUME_SLOT_WEAPON, getItemVNum(item.COSTUME_SLOT_WEAPON), 0)
Linkleri görebilmek için
giriş yap veya kayıt ol.
Linkleri görebilmek için
giriş yap veya kayıt ol.
videoda gözükmemiş ama sizde silah fişleride slotuna oturacaktır oturmazsa ya da hata alırsanız konu altına belirtin.
Hayırlı kullanımlar
Dosya Eklentileri
Son düzenleme: