Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import ui
- import snd
- import app
- import net
- import item
- import player
- import mouseModule
- import grp
- import uiScriptLocale
- import localeInfo
- import constInfo
- import wndMgr
- import uiToolTip
- import interfaceModule
- import dbg
- import uiCommon
- import chat
- class RefineRarityWindow(ui.ScriptWindow):
- def __init__(self):
- ui.ScriptWindow.__init__(self)
- self.LoadWindow()
- self.DefaultSettings()
- self.needitemcount = 0
- self.needmoney = 0
- self.percentage = 0
- def __del__(self):
- ui.ScriptWindow.__del__(self)
- def LoadWindow(self):
- pyScrLoader = ui.PythonScriptLoader()
- pyScrLoader.LoadScriptFile(self, "UIScript/rarityrefinewindow.py")
- GetObject=self.GetChild
- self.board = GetObject("board")
- self.refineRaritySlot = GetObject("RefineR_Slot")
- self.refineRaritySlot.SetSelectEmptySlotEvent(ui.__mem_func__(self.__OnSelectRaritySlotEmpty))
- self.refineRaritySlot.SetSelectItemSlotEvent(ui.__mem_func__(self.__OnSelectRaritySlot))
- self.refineRaritySlot.SetOverInItemEvent(ui.__mem_func__(self.__OnOverInRaritySlotItem))
- self.refineRaritySlot.SetOverOutItemEvent(ui.__mem_func__(self.__OnOverOutRaritySlotItem))
- self.closebutton = GetObject("CloseButton")
- self.closebutton.SetEvent(ui.__mem_func__(self.Close))
- self.refinebutton = GetObject("RefineR_Change_Button")
- self.refinebutton.SetEvent(ui.__mem_func__(self.RefineR_Change))
- self.okbutton = GetObject("RefineR_OK_Button")
- self.okbutton.SetEvent(ui.__mem_func__(self.RefineR_OK))
- self.bilgi = GetObject("bilgi")
- self.bilgi.SetToolTipWindow(self.__bilgiYazisi(uiScriptLocale.AXS_RARITYREFINE_INFO))
- self.alertmessage = GetObject("AlertMessage")
- self.evrimtiptext = GetObject("evrimText")
- self.otbilgitext = GetObject("otBilgiText")
- self.sonuctext = GetObject("AttrChangeResultText")
- def Destroy(self):
- self.ClearDictionary()
- self.board = None
- def Open(self, evo):
- if int(evo) == 0:
- self.needitemcount = 1
- self.needmoney = 5000000
- self.percentage = 80
- elif int(evo) == 1:
- self.needitemcount = 2
- self.needmoney = 10000000
- self.percentage = 70
- elif int(evo) == 2:
- self.needitemcount = 3
- self.needmoney = 15000000
- self.percentage = 60
- elif int(evo) == 3:
- self.needitemcount = 4
- self.needmoney = 20000000
- self.percentage = 50
- elif int(evo) == 4:
- self.needitemcount = 5
- self.needmoney = 25000000
- self.percentage = 40
- self.evrimtiptext.SetText("Upgrade rarita' dell'arma: %s" % (evo))
- self.otbilgitext.SetText("Quantita' item richiesti: %s | Yang richiesti: %s" % (self.needitemcount, self.needmoney))
- self.sonuctext.SetText("Possibilita' di successo: %%%s" % (self.percentage))
- self.Show()
- self.SetCenterPosition()
- def DefaultSettings(self):
- self.slotPositionsDict = {}
- self.refineRaritySlot.ClearSlot(0)
- self.refineRaritySlot.ClearSlot(1)
- self.refineRaritySlot.ClearSlot(2)
- self.refineRaritySlot.ClearSlot(3)
- self.refineRaritySlot.ClearSlot(4)
- self.refineRaritySlot.ClearSlot(5)
- self.refineRaritySlot.ClearSlot(6)
- self.alertmessage.SetText("|cff00b8b4K Fai clic destro sugli oggetti nel tuo inventario.")
- self.okbutton.Hide()
- self.refinebutton.Show()
- def Close(self):
- self.DefaultSettings()
- self.Hide()
- def __bilgiYazisi(self, title):
- toolTip = uiToolTip.ToolTip()
- toolTip.SetTitle(title)
- toolTip.AppendSpace(3)
- toolTip.AutoAppendTextLine(uiScriptLocale.AXS_RARITYREFINE_INFO1)
- toolTip.AutoAppendTextLine(uiScriptLocale.AXS_RARITYREFINE_INFO2)
- toolTip.AlignHorizonalCenter()
- return toolTip
- def SuccessMessage(self):
- self.SlotDegisimi()
- self.alertmessage.SetText("|cff10c100L'arma si è rarizzata con successo.")
- self.evrimtiptext.SetText("Rarita' dell'arma aumentata!")
- self.otbilgitext.SetText("Quantita' item richiesta: Sconosciuta | Yang richiesti: Sconosciuti")
- def NeedItem(self, a):
- needItemList = ["Erba rossa","Erba blu","Erba verde ","Erba viola "]
- alertBoxText = needItemList[int(a)]
- self.popupdialog = uiCommon.PopupDialog()
- self.popupdialog.SetText("Numero non sufficiente |cffff0000%s|h|r !" % (alertBoxText))
- self.popupdialog.Open()
- def Failed(self):
- self.SlotDegisimi()
- self.alertmessage.SetText("|cffff0000Sfortunatamente l'arma non è stata rarizzata.")
- def SansBelirle(self, itemVnum):
- sansList = [15,30]
- if itemVnum == 11113:
- return sansList[0]
- else:
- return sansList[1]
- def RefineR_Change(self):
- if (self.slotPositionsDict.has_key(1) == True and self.slotPositionsDict.has_key(2) == True and self.slotPositionsDict.has_key(3) == True and self.slotPositionsDict.has_key(4) == True):
- refineItemPos = self.slotPositionsDict[0][1]
- if self.slotPositionsDict.has_key(5) == True:
- itemIndex = player.GetItemIndex(self.slotPositionsDict[5][0], self.slotPositionsDict[5][1])
- sansMiktar = self.SansBelirle(itemIndex)
- net.SendChatPacket("/axs_refinerarity %d %d" % (refineItemPos, sansMiktar))
- else:
- net.SendChatPacket("/axs_refinerarity %d 0" % (refineItemPos))
- def SlotDegisimi(self):
- del self.slotPositionsDict[1]
- del self.slotPositionsDict[2]
- del self.slotPositionsDict[3]
- del self.slotPositionsDict[4]
- self.refineRaritySlot.ClearSlot(0)
- self.refineRaritySlot.ClearSlot(1)
- self.refineRaritySlot.ClearSlot(2)
- self.refineRaritySlot.ClearSlot(3)
- self.refineRaritySlot.ClearSlot(4)
- if (self.slotPositionsDict.has_key(5) == True):
- del self.slotPositionsDict[5]
- self.refineRaritySlot.ClearSlot(5)
- (invenType, invenPos) = self.slotPositionsDict[0]
- self.slotPositionsDict[6] = (invenType, invenPos)
- self.refineRaritySlot.SetItemSlot(6, player.GetItemIndex(invenType, invenPos), 0)
- self.refineRaritySlot.ActivateSlot(6)
- del self.slotPositionsDict[0]
- self.sonuctext.SetText(uiScriptLocale.ACCE_RESULT)
- self.refinebutton.Hide()
- self.okbutton.Show()
- def RefineR_OK(self):
- self.Close()
- def SetItemToolTip(self, tooltipItem):
- self.tooltipItem = tooltipItem
- def UseItemSlot(self, invenType, invenPos, itemmi=False):
- if (self.slotPositionsDict.has_key(6)):
- self.refineRaritySlot.ClearSlot(6)
- itemIndex = player.GetItemIndex(invenType, invenPos)
- itemCount = player.GetItemCountByVnum(itemIndex)
- if itemmi != False:
- self.slotPositionsDict[0] = (invenType, invenPos)
- self.refineRaritySlot.SetItemSlot(0, itemIndex, 0)
- return
- else:
- if (self.slotPositionsDict.has_key(1) == False and itemIndex == 70251):
- self.slotPositionsDict[1] = (invenType, invenPos)
- self.refineRaritySlot.SetItemSlot(1, itemIndex, itemCount)
- return
- if (self.slotPositionsDict.has_key(2) == False and itemIndex == 70252):
- self.slotPositionsDict[2] = (invenType, invenPos)
- self.refineRaritySlot.SetItemSlot(2, itemIndex, itemCount)
- return
- if (self.slotPositionsDict.has_key(3) == False and itemIndex == 70253):
- self.slotPositionsDict[3] = (invenType, invenPos)
- self.refineRaritySlot.SetItemSlot(3, itemIndex, itemCount)
- return
- if (self.slotPositionsDict.has_key(4) == False and itemIndex == 70254):
- self.slotPositionsDict[4] = (invenType, invenPos)
- self.refineRaritySlot.SetItemSlot(4, itemIndex, itemCount)
- return
- if (self.slotPositionsDict.has_key(5) == False and itemIndex == 11113 or itemIndex == 11114):
- oncekiYazi = self.sonuctext.GetText()
- ekstraYazi = self.SansBelirle(itemIndex)
- self.sonuctext.SetText("%s + |cff10c100%%%s" % (oncekiYazi, ekstraYazi))
- self.slotPositionsDict[5] = (invenType, invenPos)
- self.refineRaritySlot.SetItemSlot(5, itemIndex, itemCount)
- return
- def __OnOverInRaritySlotItem(self, slotIndex):
- if (not slotIndex in self.slotPositionsDict):
- return
- if (slotIndex == 6):
- self.refineRaritySlot.DeactivateSlot(6)
- (invenType, invenPos) = self.slotPositionsDict[slotIndex]
- self.tooltipItem.SetInventoryItem(invenPos, invenType)
- def __OnOverOutRaritySlotItem(self):
- self.tooltipItem.Hide()
- def __OnSelectRaritySlotEmpty(self, selectedSlotPos):
- if (self.slotPositionsDict.has_key(6)):
- self.refineRaritySlot.ClearSlot(6)
- if (mouseModule.mouseController.isAttached() == False):
- return
- if (selectedSlotPos == 0 or selectedSlotPos == 6):
- mouseModule.mouseController.DeattachObject()
- return
- attachedSlotType = mouseModule.mouseController.GetAttachedType()
- attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
- mouseModule.mouseController.DeattachObject()
- attachedInvenType = player.SlotTypeToInvenType(attachedSlotType)
- itemIndex = player.GetItemIndex(attachedInvenType, attachedSlotPos)
- itemCount = player.GetItemCountByVnum(itemIndex)
- if (selectedSlotPos == 1 and itemIndex != 70251):
- return
- if (selectedSlotPos == 2 and itemIndex != 70252):
- return
- if (selectedSlotPos == 3 and itemIndex != 70253):
- return
- if (selectedSlotPos == 4 and itemIndex != 70254):
- return
- if (selectedSlotPos == 5 and itemIndex != 11113 or itemIndex != 11114):
- return
- if (selectedSlotPos == 5):
- oncekiYazi = self.sonuctext.GetText()
- ekstraYazi = self.SansBelirle(itemIndex)
- self.sonuctext.SetText("%s + |cff10c100%%%s" % (oncekiYazi, ekstraYazi))
- self.slotPositionsDict[selectedSlotPos] = (attachedInvenType, attachedSlotPos)
- self.refineRaritySlot.SetItemSlot(selectedSlotPos, itemIndex, itemCount)
- def __OnSelectRaritySlot(self, selectedSlotPos):
- if (mouseModule.mouseController.isAttached() == True or selectedSlotPos == 0 or selectedSlotPos == 6):
- return
- if (selectedSlotPos == 5 and self.slotPositionsDict.has_key(5)):
- self.sonuctext.SetText("Possibilita' di successo: %%%s" % (self.percentage))
- del self.slotPositionsDict[selectedSlotPos]
- self.refineRaritySlot.ClearSlot(selectedSlotPos)
- def OnPressEscapeKey(self):
- self.Close()
- return TRUE
- def OnUpdate(self):
- if (self.slotPositionsDict.has_key(1) == True and self.slotPositionsDict.has_key(2) == True and self.slotPositionsDict.has_key(3) == True and self.slotPositionsDict.has_key(4) == True):
- # self.refinebutton.EnableFlash()
- self.alertmessage.SetText("|cfffb6500Prova ad aggiornare la rarita' facendo clic sul pulsante aggiorna rarita'!")
- else:
- # self.refinebutton.DisableFlash()
- if (self.slotPositionsDict.has_key(1)):
- itemIndex = player.GetItemIndex(self.slotPositionsDict[1][0], self.slotPositionsDict[1][1])
- if (itemIndex != 70251):
- self.refineRaritySlot.ClearSlot(1)
- del self.slotPositionsDict[1]
- if (self.slotPositionsDict.has_key(2)):
- itemIndex = player.GetItemIndex(self.slotPositionsDict[2][0], self.slotPositionsDict[2][1])
- if (itemIndex != 70252):
- self.refineRaritySlot.ClearSlot(2)
- del self.slotPositionsDict[2]
- if (self.slotPositionsDict.has_key(3)):
- itemIndex = player.GetItemIndex(self.slotPositionsDict[3][0], self.slotPositionsDict[3][1])
- if (itemIndex != 70253):
- self.refineRaritySlot.ClearSlot(3)
- del self.slotPositionsDict[3]
- if (self.slotPositionsDict.has_key(4)):
- itemIndex = player.GetItemIndex(self.slotPositionsDict[4][0], self.slotPositionsDict[4][1])
- if (itemIndex != 70254):
- self.refineRaritySlot.ClearSlot(4)
- del self.slotPositionsDict[4]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement