Unk3n0w7 1,321 Posted June 10, 2013 boas pessoal eu ja acabei de por a receita no cube.txt Agora queria saber onde devo por a receita aqui no uicube.py import ui import net import mouseModule import player import snd[/center] class CubeResultWindow(ui.ScriptWindow): def __init__(self): ui.ScriptWindow.__init__(self) [center]def __del__(self): ui.ScriptWindow.__del__(self)[/center] def LoadWindow(self): try: pyScrLoader = ui.PythonScriptLoader() pyScrLoader.LoadScriptFile(self, "UIScript/CubeResultWindow.py") except: import exception exception.Abort("CubeResultWindow.LoadDialog.LoadScript") [center] try: GetObject=self.GetChild self.titleBar = GetObject("TitleBar") self.btnClose = GetObject("CloseButton") self.cubeSlot = GetObject("CubeSlot")[/center] except: import exception exception.Abort("CubeWindow.LoadDialog.BindObject") [center] self.cubeSlot.SetOverInItemEvent(ui.__mem_func__(self.__OnOverInItem)) self.cubeSlot.SetOverOutItemEvent(ui.__mem_func__(self.__OnOverOutItem)) self.titleBar.SetCloseEvent(ui.__mem_func__(self.__OnCloseButtonClick)) self.btnClose.SetEvent(ui.__mem_func__(self.__OnCloseButtonClick)) self.itemVnum = 0[/center] def Destroy(self): self.ClearDictionary() self.titleBar = None self.btnClose = None self.cubeSlot = None self.tooltipItem = None self.itemVnum = 0 [center]def SetItemToolTip(self, tooltipItem): self.tooltipItem = tooltipItem[/center] def SetCubeResultItem(self, itemVnum, count): self.itemVnum = itemVnum [center] if 0 == count: count = 1[/center] self.cubeSlot.SetItemSlot(0, itemVnum, count) [center]def Open(self): self.Show()[/center] def Close(self): self.Hide() [center]def __OnCloseButtonClick(self): self.Close()[/center] def __OnOverInItem(self, slotIndex): if self.tooltipItem: if 0 != self.itemVnum: self.tooltipItem.SetItemToolTip(self.itemVnum) [center]def __OnOverOutItem(self): if self.tooltipItem: self.tooltipItem.HideToolTip()[/center] def OnPressEscapeKey(self): if 0 != self.eventClose: self.eventClose() return TRUE [center] class CubeWindow(ui.ScriptWindow): def __init__(self): ui.ScriptWindow.__init__(self) self.xShopStart = 0 self.yShopStart = 0 self.isUsable = FALSE[/center] def __del__(self): ui.ScriptWindow.__del__(self) [center]def LoadWindow(self): try: pyScrLoader = ui.PythonScriptLoader() pyScrLoader.LoadScriptFile(self, "UIScript/CubeWindow.py") except: import exception exception.Abort("CubeWindow.LoadDialog.LoadScript")[/center] try: GetObject=self.GetChild self.titleBar = GetObject("TitleBar") self.btnAccept = GetObject("AcceptButton") self.btnCancel = GetObject("CancelButton") self.cubeSlot = GetObject("CubeSlot") [center] except: import exception exception.Abort("CubeWindow.LoadDialog.BindObject")[/center] self.cubeSlot.SetSelectEmptySlotEvent(ui.__mem_func__(self.__OnSelectEmptySlot)) self.cubeSlot.SetSelectItemSlotEvent(ui.__mem_func__(self.__OnSelectItemSlot)) self.cubeSlot.SetOverInItemEvent(ui.__mem_func__(self.__OnOverInItem)) self.cubeSlot.SetOverOutItemEvent(ui.__mem_func__(self.__OnOverOutItem)) self.titleBar.SetCloseEvent(ui.__mem_func__(self.__OnCloseButtonClick)) self.btnCancel.SetEvent(ui.__mem_func__(self.__OnCloseButtonClick)) self.btnAccept.SetEvent(ui.__mem_func__(self.__OnAcceptButtonClick)) [center] self.cubeItemInfo = {}[/center] def Destroy(self): self.ClearDictionary() self.titleBar = None self.btnAccept = None self.btnCancel = None self.cubeSlot = None self.tooltipItem = None [center]def SetItemToolTip(self, tooltipItem): self.tooltipItem = tooltipItem[/center] def Open(self): self.cubeItemInfo = {} self.Refresh() self.Show() [center] self.isUsable = TRUE (self.xShopStart, self.yShopStart, z) = player.GetMainCharacterPosition()[/center] def Close(self): self.Hide() self.cubeItemInfo = {} [center]def Clear(self): self.Refresh()[/center] def Refresh(self): for slotPos in xrange(self.cubeSlot.GetSlotCount()): [center] if not slotPos in self.cubeItemInfo: self.cubeSlot.ClearSlot(slotPos) continue[/center] invenPos = self.cubeItemInfo[slotPos] itemCount = player.GetItemCount(invenPos) if itemCount > 0: self.cubeSlot.SetItemSlot(slotPos, player.GetItemIndex(invenPos), itemCount) else: del self.cubeItemInfo[slotPos] self.cubeSlot.ClearSlot(slotPos) [center] self.cubeSlot.RefreshSlot()[/center] def __OnCloseButtonClick(self): if self.isUsable: self.isUsable = FALSE [center] print "Å¥ºê ´Ý±â" net.SendChatPacket("/cube close")[/center] def __OnAcceptButtonClick(self): if len(self.cubeItemInfo) == 0: "ºó Å¥ºê" return print "Å¥ºê Á¦ÀÛ ½ÃÀÛ" #for invenPos in self.cubeItemInfo.values(): # net.SendChatPacket("/cube add " + str(invenPos)) net.SendChatPacket("/cube make") def __OnSelectEmptySlot(self, selectedSlotPos): [center] isAttached = mouseModule.mouseController.isAttached() if isAttached: attachedSlotType = mouseModule.mouseController.GetAttachedType() attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber() mouseModule.mouseController.DeattachObject()[/center] if player.SLOT_TYPE_INVENTORY != attachedSlotType: return [center] for slotPos, invenPos in self.cubeItemInfo.items(): if invenPos == attachedSlotPos: del self.cubeItemInfo[slotPos] self.cubeItemInfo[selectedSlotPos] = attachedSlotPos net.SendChatPacket("/cube add %d %d" % (selectedSlotPos, attachedSlotPos))[/center] self.Refresh() [center]def __OnSelectItemSlot(self, selectedSlotPos):[/center] isAttached = mouseModule.mouseController.isAttached() if isAttached: snd.PlaySound("sound/ui/loginfail.wav") mouseModule.mouseController.DeattachObject() [center] else: if not selectedSlotPos in self.cubeItemInfo: return[/center] snd.PlaySound("sound/ui/drop.wav") [center] print selectedSlotPos net.SendChatPacket("/cube del %d " % selectedSlotPos) del self.cubeItemInfo[selectedSlotPos][/center] self.Refresh() [center]def __OnOverInItem(self, slotIndex): if self.tooltipItem: if self.cubeItemInfo.has_key(slotIndex): self.tooltipItem.SetInventoryItem(self.cubeItemInfo[slotIndex])[/center] def __OnOverOutItem(self): if self.tooltipItem: self.tooltipItem.HideToolTip() [center]def OnPressEscapeKey(self): if 0 != self.eventClose: self.eventClose() return TRUE[/center] def OnUpdate(self): USE_SHOP_LIMIT_RANGE = 1000 [center] (x, y, z) = player.GetMainCharacterPosition() if abs(x - self.xShopStart) > USE_SHOP_LIMIT_RANGE or abs(y - self.yShopStart) > USE_SHOP_LIMIT_RANGE: self.__OnCloseButtonClick()[/center] if __name__ == "__main__": [center]import app import wndMgr import systemSetting import mouseModule import grp import ui import uiToolTip import locale[/center] app.SetMouseHandler(mouseModule.mouseController) app.SetHairColorEnable(TRUE) wndMgr.SetMouseHandler(mouseModule.mouseController) wndMgr.SetScreenSize(systemSetting.GetWidth(), systemSetting.GetHeight()) app.Create(locale.APP_TITLE, systemSetting.GetWidth(), systemSetting.GetHeight(), 1) mouseModule.mouseController.Create() [center]class TestGame(ui.Window): def __init__(self): ui.Window.__init__(self)[/center] locale.LoadLocaleData() [center] self.tooltipItem = uiToolTip.ItemToolTip() self.tooltipItem.Hide()[/center] self.cubeWindow = CubeWindow() self.cubeWindow.LoadWindow() self.cubeWindow.SetItemToolTip(self.tooltipItem) self.cubeWindow.Open() [center] self.cubeResultWindow = CubeResultWindow() self.cubeResultWindow.LoadWindow() self.cubeResultWindow.SetItemToolTip(self.tooltipItem) self.cubeResultWindow.SetCubeResultItem(27001, 1) self.cubeResultWindow.Open()[/center] def __del__(self): ui.Window.__del__(self) [center] def OnUpdate(self): app.UpdateGame()[/center] def OnRender(self): app.RenderGame() grp.PopState() grp.SetInterfaceRenderState() [center]game = TestGame() game.SetSize(systemSetting.GetWidth(), systemSetting.GetHeight()) game.Show()[/center] app.Loop() Share this post Link to post Share on other sites
Annie 1,207 Posted May 9, 2014 Tópico Fechado Tópico Antigo e Sem resposta Movido de Metin2 - Dúvidas para Lixeira do Fórum Share this post Link to post Share on other sites