Advertisement
Guest User

Untitled

a guest
Jul 1st, 2015
243
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.12 KB | None | 0 0
  1. import os
  2. import ui
  3. import grp
  4. import net
  5. import snd
  6. import item
  7. import player
  8. import localeinfo
  9. import constInfo
  10. import uiToolTip
  11. import mouseModule
  12. import uiScriptLocale
  13. import app
  14. import chat
  15.  
  16.  
  17. class changeequip(ui.ScriptWindow):
  18. def __init__(self):
  19. import exception
  20. ui.ScriptWindow.__init__(self)
  21. self.wndEquip = None
  22. self.tokens = None
  23. self.lastChanged = 0
  24. self.tooltipItem = uiToolTip.ItemToolTip()
  25. self.tooltipItem.Hide()
  26. if constInfo.FAST_PAGE == 1:
  27. self.saveName = "logindata/FastEquipPage1.pyc"
  28. elif constInfo.FAST_PAGE == 2:
  29. self.saveName = "logindata/FastEquipPage2.pyc"
  30. elif constInfo.FAST_PAGE == 3:
  31. self.saveName = "logindata/FastEquipPage3.pyc"
  32. elif constInfo.FAST_PAGE == 4:
  33. self.saveName = "logindata/FastEquipPage4.pyc"
  34.  
  35. def __del__(self):
  36. ui.ScriptWindow.__del__(self)
  37.  
  38. def Show(self):
  39. self.__LoadWindow()
  40. ui.ScriptWindow.Show(self)
  41.  
  42. def Close(self):
  43. constInfo.FAST_EQUIP = 0
  44. snd.PlaySound("sound/ui/click.wav")
  45. self.Hide()
  46. self.__saveedit()
  47.  
  48. def __LoadWindow(self):
  49. try:
  50. pyScrLoader = ui.PythonScriptLoader()
  51. pyScrLoader.LoadScriptFile(self, "uiscript/fastequip_window.py")
  52. except:
  53. import exception
  54. exception.Abort("CostumeWindow.LoadWindow.LoadObject")
  55.  
  56. self.wndEquip = self.GetChild("equipslot")
  57. self.bottone_change = self.GetChild("change_button")
  58. self.clear_button = self.GetChild("clear_button")
  59. self.TitleBar = self.GetChild("TitleBar")
  60. self.pag1_button = self.GetChild("page1_button")
  61. self.pag2_button = self.GetChild("page2_button")
  62. self.pag3_button = self.GetChild("page3_button")
  63. self.pag4_button = self.GetChild("page4_button")
  64. self.edit1 = self.GetChild("page1edit")
  65. self.edit2 = self.GetChild("page2edit")
  66. self.edit3 = self.GetChild("page3edit")
  67. self.edit4 = self.GetChild("page4edit")
  68.  
  69. self.TitleBar.SetCloseEvent(ui.__mem_func__(self.Close))
  70. self.wndEquip.SetSelectEmptySlotEvent(ui.__mem_func__(self.SelectItemSlot))
  71. self.wndEquip.SetSelectItemSlotEvent(ui.__mem_func__(self.SelectItemSlot))
  72. self.wndEquip.SetOverInItemEvent(ui.__mem_func__(self.OverInItem))
  73. self.wndEquip.SetOverOutItemEvent(ui.__mem_func__(self.OnOverOutItem))
  74. self.bottone_change.SetEvent(ui.__mem_func__(self.__change_button))
  75. self.clear_button.SetEvent(ui.__mem_func__(self.__clear_button))
  76. self.pag1_button.SAFE_SetEvent(self.__pag1_button)
  77. self.pag2_button.SetEvent(ui.__mem_func__(self.__pag2_button))
  78. self.pag3_button.SetEvent(ui.__mem_func__(self.__pag3_button))
  79. self.pag4_button.SetEvent(ui.__mem_func__(self.__pag4_button))
  80.  
  81. if os.path.exists(self.saveName):
  82. self.tokens = open(self.saveName, "r").read().split()
  83. else:
  84. open(self.saveName, "w").write("@\t@\t@\t@\t@\t@\t@\t@\t@")
  85.  
  86. button = self.GetChild("page1_button")
  87. button.Down()
  88. self.__loadedit()
  89.  
  90. def __loadedit(self):
  91. r = open("logindata/editname.pyc","r")
  92. self.edit1.SetText(r.readline().replace("\n",""))
  93. self.edit2.SetText(r.readline().replace("\n",""))
  94. self.edit3.SetText(r.readline().replace("\n",""))
  95. self.edit4.SetText(r.readline())
  96. r.close()
  97.  
  98. def __saveedit(self):
  99. w = open("logindata/editname.pyc","w")
  100. w.write(str(self.edit1.GetText()) + "\n")
  101. w.write(str(self.edit2.GetText()) + "\n")
  102. w.write(str(self.edit3.GetText()) + "\n")
  103. w.write(str(self.edit4.GetText()))
  104. w.close()
  105.  
  106. def OnPressEscapeKey(self):
  107. self.Close()
  108. return TRUE
  109.  
  110. def __clear_button(self):
  111. if constInfo.FAST_PAGE == 1:
  112. self.saveName = "logindata/FastEquipPage1.pyc"
  113. if os.path.exists(self.saveName):
  114. os.remove(self.saveName)
  115. open(self.saveName, "w").write("@\t@\t@\t@\t@\t@\t@\t@\t@")
  116. elif constInfo.FAST_PAGE == 2:
  117. self.saveName = "logindata/FastEquipPage2.pyc"
  118. if os.path.exists(self.saveName):
  119. os.remove(self.saveName)
  120. open(self.saveName, "w").write("@\t@\t@\t@\t@\t@\t@\t@\t@")
  121. elif constInfo.FAST_PAGE == 3:
  122. self.saveName = "logindata/FastEquipPage3.pyc"
  123. if os.path.exists(self.saveName):
  124. os.remove(self.saveName)
  125. open(self.saveName, "w").write("@\t@\t@\t@\t@\t@\t@\t@\t@")
  126. elif constInfo.FAST_PAGE == 4:
  127. self.saveName = "logindata/FastEquipPage4.pyc"
  128. if os.path.exists(self.saveName):
  129. os.remove(self.saveName)
  130. open(self.saveName, "w").write("@\t@\t@\t@\t@\t@\t@\t@\t@")
  131.  
  132. def __pag1_button(self):
  133. constInfo.FAST_PAGE = 1
  134. button2 = self.GetChild("page2_button")
  135. button3 = self.GetChild("page3_button")
  136. button4 = self.GetChild("page4_button")
  137. button2.SetUp()
  138. button3.SetUp()
  139. button4.SetUp()
  140.  
  141. self.saveName = "logindata/FastEquipPage1.pyc"
  142. if os.path.exists(self.saveName):
  143. open(self.saveName, "r").read().split()
  144. else:
  145. open(self.saveName, "w").write("@\t@\t@\t@\t@\t@\t@\t@\t@")
  146.  
  147. def __pag2_button(self):
  148. constInfo.FAST_PAGE = 2
  149. button1 = self.GetChild("page1_button")
  150. button3 = self.GetChild("page3_button")
  151. button4 = self.GetChild("page4_button")
  152. button1.SetUp()
  153. button3.SetUp()
  154. button4.SetUp()
  155.  
  156. self.saveName = "logindata/FastEquipPage2.pyc"
  157. if os.path.exists(self.saveName):
  158. open(self.saveName, "r").read().split()
  159. else:
  160. open(self.saveName, "w").write("@\t@\t@\t@\t@\t@\t@\t@\t@")
  161.  
  162. def __pag3_button(self):
  163. constInfo.FAST_PAGE = 3
  164. button1 = self.GetChild("page1_button")
  165. button2 = self.GetChild("page2_button")
  166. button4 = self.GetChild("page4_button")
  167. button1.SetUp()
  168. button2.SetUp()
  169. button4.SetUp()
  170.  
  171. self.saveName = "logindata/FastEquipPage3.pyc"
  172. if os.path.exists(self.saveName):
  173. open(self.saveName, "r").read().split()
  174. else:
  175. open(self.saveName, "w").write("@\t@\t@\t@\t@\t@\t@\t@\t@")
  176.  
  177. def __pag4_button(self):
  178. constInfo.FAST_PAGE = 4
  179. button1 = self.GetChild("page1_button")
  180. button2 = self.GetChild("page2_button")
  181. button3 = self.GetChild("page3_button")
  182. button1.SetUp()
  183. button2.SetUp()
  184. button3.SetUp()
  185.  
  186. self.saveName = "logindata/FastEquipPage4.pyc"
  187. if os.path.exists(self.saveName):
  188. open(self.saveName, "r").read().split()
  189. else:
  190. open(self.saveName, "w").write("@\t@\t@\t@\t@\t@\t@\t@\t@")
  191.  
  192. def __change_button(self):
  193. self.__saveedit()
  194.  
  195. if app.GetTime() < self.lastChanged + 10:
  196. chat.AppendChat(chat.CHAT_TYPE_INFO, "Devi attendere 10 secondi per poter cambiare nuovamente equipaggiamento!")
  197. return
  198.  
  199. for i in range(1,10):
  200. if self.tokens[i-1] != "@":
  201. net.SendItemUsePacket(int(self.tokens[i-1]))
  202.  
  203. self.lastChanged = app.GetTime()
  204.  
  205. def OverInItem(self, slotNumber):
  206. if self.tooltipItem:
  207. self.tooltipItem.SetInventoryItem(int(self.tokens[slotNumber-1]))
  208.  
  209. def OnOverOutItem(self):
  210. if self.tooltipItem:
  211. self.tooltipItem.HideToolTip()
  212.  
  213. def SelectItemSlot(self, itemSlotIndex):
  214. isAttached = mouseModule.mouseController.isAttached()
  215. if isAttached:
  216. attachedSlotType = mouseModule.mouseController.GetAttachedType()
  217. attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
  218. itemIndex = player.GetItemIndex(attachedSlotPos)
  219. itemCount = player.GetItemCount(attachedSlotPos)
  220. item.SelectItem(itemIndex)
  221. itemType = item.GetItemType()
  222. itemSubType = item.GetItemSubType()
  223.  
  224.  
  225. if item.IsWearableFlag(item.WEARABLE_BODY):
  226. self.tokens[1-1] = attachedSlotPos
  227. snd.PlaySound("sound/ui/equip_metal_armor.wav")
  228. elif item.IsWearableFlag(item.WEARABLE_HEAD):
  229. self.tokens[2-1] = attachedSlotPos
  230. snd.PlaySound("sound/ui/drop.wav")
  231. elif item.IsWearableFlag(item.WEARABLE_FOOTS):
  232. self.tokens[3-1] = attachedSlotPos
  233. snd.PlaySound("sound/ui/drop.wav")
  234. elif item.IsWearableFlag(item.WEARABLE_WRIST):
  235. self.tokens[4-1] = attachedSlotPos
  236. snd.PlaySound("sound/ui/drop.wav")
  237. elif item.IsWearableFlag(item.WEARABLE_WEAPON):
  238. self.tokens[5-1] = attachedSlotPos
  239. if itemSubType == 2:
  240. snd.PlaySound("sound/ui/equip_bow.wav")
  241. else:
  242. snd.PlaySound("sound/ui/equip_metal_weapon.wav")
  243. elif item.IsWearableFlag(item.WEARABLE_NECK):
  244. self.tokens[6-1] = attachedSlotPos
  245. snd.PlaySound("sound/ui/equip_ring_amulet.wav")
  246. elif item.IsWearableFlag(item.WEARABLE_EAR):
  247. self.tokens[7-1] = attachedSlotPos
  248. snd.PlaySound("sound/ui/equip_ring_amulet.wav")
  249. elif item.IsWearableFlag(item.WEARABLE_SHIELD):
  250. self.tokens[8-1] = attachedSlotPos
  251. snd.PlaySound("sound/ui/drop.wav")
  252. elif item.IsWearableFlag(item.WEARABLE_ARROW):
  253. self.tokens[9-1] = attachedSlotPos
  254. snd.PlaySound("sound/ui/drop.wav")
  255. else:
  256. return
  257.  
  258. open(self.saveName, "w").write("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % tuple(self.tokens))
  259. mouseModule.mouseController.DeattachObject()
  260.  
  261. def OnUpdate(self):
  262. tokens = open(self.saveName, "r").read().split()
  263. self.tokens = tokens
  264. for i in range(1,10):
  265. if tokens[i-1] == "@":
  266. self.wndEquip.SetItemSlot(i, 0, 0)
  267. else:
  268. itemIndex = player.GetItemIndex(int(tokens[i-1]))
  269. if itemIndex != 0:
  270. item.SelectItem(itemIndex)
  271. if i == 1 and item.IsWearableFlag(item.WEARABLE_BODY):
  272. self.wndEquip.SetItemSlot(i, itemIndex, 0)
  273. elif i == 2 and item.IsWearableFlag(item.WEARABLE_HEAD):
  274. self.wndEquip.SetItemSlot(i, itemIndex, 0)
  275. elif i == 3 and item.IsWearableFlag(item.WEARABLE_FOOTS):
  276. self.wndEquip.SetItemSlot(i, itemIndex, 0)
  277. elif i == 4 and item.IsWearableFlag(item.WEARABLE_WRIST):
  278. self.wndEquip.SetItemSlot(i, itemIndex, 0)
  279. elif i == 5 and item.IsWearableFlag(item.WEARABLE_WEAPON):
  280. self.wndEquip.SetItemSlot(i, itemIndex, 0)
  281. elif i == 6 and item.IsWearableFlag(item.WEARABLE_NECK):
  282. self.wndEquip.SetItemSlot(i, itemIndex, 0)
  283. elif i == 7 and item.IsWearableFlag(item.WEARABLE_EAR):
  284. self.wndEquip.SetItemSlot(i, itemIndex, 0)
  285. elif i == 8 and item.IsWearableFlag(item.WEARABLE_SHIELD):
  286. self.wndEquip.SetItemSlot(i, itemIndex, 0)
  287. elif i == 9 and item.IsWearableFlag(item.WEARABLE_ARROW):
  288. self.wndEquip.SetItemSlot(i, itemIndex, 0)
  289. else:
  290. self.wndEquip.SetItemSlot(i, 0, 0)
  291. self.tokens[i-1] = "@"
  292. open(self.saveName, "w").write("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % tuple(self.tokens))
  293. continue
  294. else:
  295. self.wndEquip.SetItemSlot(i, 0, 0)
  296.  
  297. # -->
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement