Advertisement
Guest User

Untitled

a guest
Apr 21st, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 50.69 KB | None | 0 0
  1. import uislotmachine
  2. ##
  3. ## Interface
  4. ##
  5. import constInfo
  6. import systemSetting
  7. import wndMgr
  8. import chat
  9. import app
  10. import player
  11. import uiTaskBar
  12. import uiCharacter
  13. import uiInventory
  14. import uiDragonSoul
  15. import uiChat
  16. import uiMessenger
  17. import guild
  18.  
  19. import ui
  20. import uiHelp
  21. import uiWhisper
  22. import uiPointReset
  23. import uiShop
  24. import uiExchange
  25. import uiSystem
  26. import uiRestart
  27. import uiToolTip
  28. import uiMiniMap
  29. import uiParty
  30. import uiSafebox
  31. import uiGuild
  32. import uiQuest
  33. import uiPrivateShopBuilder
  34. import uiCommon
  35. import uiRefine
  36. import uiEquipmentDialog
  37. import uiGameButton
  38. import uiTip
  39. import uiCube
  40. import miniMap
  41. # ACCESSORY_REFINE_ADD_METIN_STONE
  42. import uiselectitem
  43. # END_OF_ACCESSORY_REFINE_ADD_METIN_STONE
  44. import uiScriptLocale
  45.  
  46. import event
  47. import localeInfo
  48. if app.ENABLE_SASH_SYSTEM:
  49. import uisash
  50.  
  51. IsQBHide = 0
  52. class Interface(object):
  53. CHARACTER_STATUS_TAB = 1
  54. CHARACTER_SKILL_TAB = 2
  55.  
  56. def __init__(self):
  57. systemSetting.SetInterfaceHandler(self)
  58. self.windowOpenPosition = 0
  59. self.dlgWhisperWithoutTarget = None
  60. self.inputDialog = None
  61. self.tipBoard = None
  62. self.bigBoard = None
  63. self.wndGiftBox = None
  64.  
  65. # ITEM_MALL
  66. self.mallPageDlg = None
  67. # END_OF_ITEM_MALL
  68.  
  69. self.wndWeb = None
  70. self.wndTaskBar = None
  71. self.wndCharacter = None
  72. self.wndInventory = None
  73. self.wndExpandedTaskBar = None
  74. self.wndDragonSoul = None
  75. self.wndDragonSoulRefine = None
  76. self.wndChat = None
  77. self.wndMessenger = None
  78. self.wndMiniMap = None
  79. self.wndGuild = None
  80. self.wndGuildBuilding = None
  81.  
  82. self.listGMName = {}
  83. self.wndQuestWindow = {}
  84. self.wndQuestWindowNewKey = 0
  85. self.privateShopAdvertisementBoardDict = {}
  86. self.guildScoreBoardDict = {}
  87. self.equipmentDialogDict = {}
  88. event.SetInterfaceWindow(self)
  89.  
  90. def __del__(self):
  91. systemSetting.DestroyInterfaceHandler()
  92. event.SetInterfaceWindow(None)
  93.  
  94. ################################
  95. ## Make Windows & Dialogs
  96. def __MakeUICurtain(self):
  97. wndUICurtain = ui.Bar("TOP_MOST")
  98. wndUICurtain.SetSize(wndMgr.GetScreenWidth(), wndMgr.GetScreenHeight())
  99. wndUICurtain.SetColor(0x77000000)
  100. wndUICurtain.Hide()
  101. self.wndUICurtain = wndUICurtain
  102.  
  103. def __MakeMessengerWindow(self):
  104. self.wndMessenger = uiMessenger.MessengerWindow()
  105.  
  106. from _weakref import proxy
  107. self.wndMessenger.SetWhisperButtonEvent(lambda n,i=proxy(self):i.OpenWhisperDialog(n))
  108. self.wndMessenger.SetGuildButtonEvent(ui.__mem_func__(self.ToggleGuildWindow))
  109.  
  110. def __MakeGuildWindow(self):
  111. self.wndGuild = uiGuild.GuildWindow()
  112.  
  113. def __MakeChatWindow(self):
  114.  
  115. wndChat = uiChat.ChatWindow()
  116.  
  117. wndChat.SetSize(wndChat.CHAT_WINDOW_WIDTH, 0)
  118. wndChat.SetPosition(wndMgr.GetScreenWidth()/2 - wndChat.CHAT_WINDOW_WIDTH/2, wndMgr.GetScreenHeight() - wndChat.EDIT_LINE_HEIGHT - 37)
  119. wndChat.SetHeight(200)
  120. wndChat.Refresh()
  121. wndChat.Show()
  122.  
  123. self.wndChat = wndChat
  124. self.wndChat.BindInterface(self)
  125. self.wndChat.SetSendWhisperEvent(ui.__mem_func__(self.OpenWhisperDialogWithoutTarget))
  126. self.wndChat.SetOpenChatLogEvent(ui.__mem_func__(self.ToggleChatLogWindow))
  127.  
  128. def __MakeTaskBar(self):
  129. wndTaskBar = uiTaskBar.TaskBar()
  130. wndTaskBar.LoadWindow()
  131. self.wndTaskBar = wndTaskBar
  132. self.wndTaskBar.SetToggleButtonEvent(uiTaskBar.TaskBar.BUTTON_CHARACTER, ui.__mem_func__(self.ToggleCharacterWindowStatusPage))
  133. self.wndTaskBar.SetToggleButtonEvent(uiTaskBar.TaskBar.BUTTON_INVENTORY, ui.__mem_func__(self.ToggleInventoryWindow))
  134. self.wndTaskBar.SetToggleButtonEvent(uiTaskBar.TaskBar.BUTTON_MESSENGER, ui.__mem_func__(self.ToggleMessenger))
  135. self.wndTaskBar.SetToggleButtonEvent(uiTaskBar.TaskBar.BUTTON_SYSTEM, ui.__mem_func__(self.ToggleSystemDialog))
  136. if uiTaskBar.TaskBar.IS_EXPANDED:
  137. self.wndTaskBar.SetToggleButtonEvent(uiTaskBar.TaskBar.BUTTON_EXPAND, ui.__mem_func__(self.ToggleExpandedButton))
  138. self.wndExpandedTaskBar = uiTaskBar.ExpandedTaskBar()
  139. self.wndExpandedTaskBar.LoadWindow()
  140. self.wndExpandedTaskBar.SetToggleButtonEvent(uiTaskBar.ExpandedTaskBar.BUTTON_DRAGON_SOUL, ui.__mem_func__(self.ToggleDragonSoulWindow))
  141.  
  142. else:
  143. self.wndTaskBar.SetToggleButtonEvent(uiTaskBar.TaskBar.BUTTON_CHAT, ui.__mem_func__(self.ToggleChat))
  144.  
  145. import uiGift
  146. wndGiftBox=uiGift.GiftDialog()
  147. wndGiftBox.Hide()
  148. self.wndGiftBox=wndGiftBox
  149.  
  150. self.wndEnergyBar = None
  151. import app
  152. if app.ENABLE_ENERGY_SYSTEM:
  153. wndEnergyBar = uiTaskBar.EnergyBar()
  154. wndEnergyBar.LoadWindow()
  155. self.wndEnergyBar = wndEnergyBar
  156.  
  157. def __MakeParty(self):
  158. wndParty = uiParty.PartyWindow()
  159. wndParty.Hide()
  160. self.wndParty = wndParty
  161.  
  162. def __MakeGameButtonWindow(self):
  163. wndGameButton = uiGameButton.GameButtonWindow()
  164. wndGameButton.SetTop()
  165. wndGameButton.Show()
  166. wndGameButton.SetButtonEvent("STATUS", ui.__mem_func__(self.__OnClickStatusPlusButton))
  167. wndGameButton.SetButtonEvent("SKILL", ui.__mem_func__(self.__OnClickSkillPlusButton))
  168. wndGameButton.SetButtonEvent("QUEST", ui.__mem_func__(self.__OnClickQuestButton))
  169. wndGameButton.SetButtonEvent("HELP", ui.__mem_func__(self.__OnClickHelpButton))
  170. wndGameButton.SetButtonEvent("BUILD", ui.__mem_func__(self.__OnClickBuildButton))
  171. wndGameButton.SetButtonEvent("GIFT", ui.__mem_func__(self.__OnClickGiftButton))
  172.  
  173. self.wndGameButton = wndGameButton
  174.  
  175. def __IsChatOpen(self):
  176. return True
  177.  
  178. def __MakeWindows(self):
  179. wndCharacter = uiCharacter.CharacterWindow()
  180. wndInventory = uiInventory.InventoryWindow()
  181. wndInventory.BindInterfaceClass(self)
  182. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  183. wndDragonSoul = uiDragonSoul.DragonSoulWindow()
  184. wndDragonSoulRefine = uiDragonSoul.DragonSoulRefineWindow()
  185. else:
  186. wndDragonSoul = None
  187. wndDragonSoulRefine = None
  188.  
  189. wndMiniMap = uiMiniMap.MiniMap()
  190. wndSafebox = uiSafebox.SafeboxWindow()
  191.  
  192. # ITEM_MALL
  193. wndMall = uiSafebox.MallWindow()
  194. self.wndMall = wndMall
  195. # END_OF_ITEM_MALL
  196.  
  197. wndChatLog = uiChat.ChatLogWindow()
  198. wndChatLog.BindInterface(self)
  199.  
  200. self.wndCharacter = wndCharacter
  201. self.wndInventory = wndInventory
  202. self.wndDragonSoul = wndDragonSoul
  203. self.wndDragonSoulRefine = wndDragonSoulRefine
  204. self.wndMiniMap = wndMiniMap
  205. self.wndSafebox = wndSafebox
  206. self.wndChatLog = wndChatLog
  207.  
  208. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  209. self.wndDragonSoul.SetDragonSoulRefineWindow(self.wndDragonSoulRefine)
  210. self.wndDragonSoulRefine.SetInventoryWindows(self.wndInventory, self.wndDragonSoul)
  211. self.wndInventory.SetDragonSoulRefineWindow(self.wndDragonSoulRefine)
  212.  
  213. def __MakeDialogs(self):
  214. self.dlgExchange = uiExchange.ExchangeDialog()
  215. self.dlgExchange.LoadDialog()
  216. self.dlgExchange.SetCenterPosition()
  217. self.dlgExchange.Hide()
  218.  
  219. self.dlgPointReset = uiPointReset.PointResetDialog()
  220. self.dlgPointReset.LoadDialog()
  221. self.dlgPointReset.Hide()
  222.  
  223. self.dlgShop = uiShop.ShopDialog()
  224. self.dlgShop.LoadDialog()
  225. self.dlgShop.Hide()
  226.  
  227. self.dlgRestart = uiRestart.RestartDialog()
  228. self.dlgRestart.LoadDialog()
  229. self.dlgRestart.Hide()
  230.  
  231. self.dlgSystem = uiSystem.SystemDialog()
  232. self.dlgSystem.LoadDialog()
  233. self.dlgSystem.SetOpenHelpWindowEvent(ui.__mem_func__(self.OpenHelpWindow))
  234.  
  235. self.dlgSystem.Hide()
  236.  
  237. self.dlgPassword = uiSafebox.PasswordDialog()
  238. self.dlgPassword.Hide()
  239.  
  240. self.hyperlinkItemTooltip = uiToolTip.HyperlinkItemToolTip()
  241. self.hyperlinkItemTooltip.Hide()
  242.  
  243. self.tooltipItem = uiToolTip.ItemToolTip()
  244. self.tooltipItem.Hide()
  245.  
  246. self.tooltipSkill = uiToolTip.SkillToolTip()
  247. self.tooltipSkill.Hide()
  248.  
  249. self.privateShopBuilder = uiPrivateShopBuilder.PrivateShopBuilder()
  250. self.privateShopBuilder.Hide()
  251.  
  252. self.SlotmachineWnd = uislotmachine.Slotmachine()
  253.  
  254. self.dlgRefineNew = uiRefine.RefineDialogNew()
  255. self.dlgRefineNew.Hide()
  256.  
  257. def __MakeHelpWindow(self):
  258. self.wndHelp = uiHelp.HelpWindow()
  259. self.wndHelp.LoadDialog()
  260. self.wndHelp.SetCloseEvent(ui.__mem_func__(self.CloseHelpWindow))
  261. self.wndHelp.Hide()
  262.  
  263. def __MakeTipBoard(self):
  264. self.tipBoard = uiTip.TipBoard()
  265. self.tipBoard.Hide()
  266.  
  267. self.bigBoard = uiTip.BigBoard()
  268. self.bigBoard.Hide()
  269.  
  270. def __MakeWebWindow(self):
  271. if constInfo.IN_GAME_SHOP_ENABLE:
  272. import uiWeb
  273. self.wndWeb = uiWeb.WebWindow()
  274. self.wndWeb.LoadWindow()
  275. self.wndWeb.Hide()
  276.  
  277. if app.ENABLE_SASH_SYSTEM:
  278. def __MakeSashWindow(self):
  279. self.wndSashCombine = uisash.CombineWindow()
  280. self.wndSashCombine.LoadWindow()
  281. self.wndSashCombine.Hide()
  282.  
  283. self.wndSashAbsorption = uisash.AbsorbWindow()
  284. self.wndSashAbsorption.LoadWindow()
  285. self.wndSashAbsorption.Hide()
  286.  
  287. if self.wndInventory:
  288. self.wndInventory.SetSashWindow(self.wndSashCombine, self.wndSashAbsorption)
  289.  
  290. def __MakeCubeWindow(self):
  291. self.wndCube = uiCube.CubeWindow()
  292. self.wndCube.LoadWindow()
  293. self.wndCube.Hide()
  294.  
  295. def __MakeCubeResultWindow(self):
  296. self.wndCubeResult = uiCube.CubeResultWindow()
  297. self.wndCubeResult.LoadWindow()
  298. self.wndCubeResult.Hide()
  299.  
  300. # ACCESSORY_REFINE_ADD_METIN_STONE
  301. def __MakeItemSelectWindow(self):
  302. self.wndItemSelect = uiselectitem.SelectItemWindow()
  303. self.wndItemSelect.Hide()
  304. # END_OF_ACCESSORY_REFINE_ADD_METIN_STONE
  305.  
  306. def MakeInterface(self):
  307. self.__MakeMessengerWindow()
  308. self.__MakeGuildWindow()
  309. self.__MakeChatWindow()
  310. self.__MakeParty()
  311. self.__MakeWindows()
  312. self.__MakeDialogs()
  313.  
  314. self.__MakeUICurtain()
  315. self.__MakeTaskBar()
  316. self.__MakeGameButtonWindow()
  317. self.__MakeHelpWindow()
  318. self.__MakeTipBoard()
  319. self.__MakeWebWindow()
  320. if app.ENABLE_SASH_SYSTEM:
  321. self.__MakeSashWindow()
  322. self.__MakeCubeWindow()
  323. self.__MakeCubeResultWindow()
  324.  
  325.  
  326. # ACCESSORY_REFINE_ADD_METIN_STONE
  327. self.__MakeItemSelectWindow()
  328. # END_OF_ACCESSORY_REFINE_ADD_METIN_STONE
  329.  
  330. self.questButtonList = []
  331. self.whisperButtonList = []
  332. self.whisperDialogDict = {}
  333. self.privateShopAdvertisementBoardDict = {}
  334.  
  335. self.wndInventory.SetItemToolTip(self.tooltipItem)
  336. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  337. self.wndDragonSoul.SetItemToolTip(self.tooltipItem)
  338. self.wndDragonSoulRefine.SetItemToolTip(self.tooltipItem)
  339. self.wndSafebox.SetItemToolTip(self.tooltipItem)
  340. if app.ENABLE_SASH_SYSTEM:
  341. self.wndSashCombine.SetItemToolTip(self.tooltipItem)
  342. self.wndSashAbsorption.SetItemToolTip(self.tooltipItem)
  343. self.wndCube.SetItemToolTip(self.tooltipItem)
  344. self.wndCubeResult.SetItemToolTip(self.tooltipItem)
  345.  
  346. # ITEM_MALL
  347. self.wndMall.SetItemToolTip(self.tooltipItem)
  348. # END_OF_ITEM_MALL
  349.  
  350. self.wndCharacter.SetSkillToolTip(self.tooltipSkill)
  351. self.wndTaskBar.SetItemToolTip(self.tooltipItem)
  352. self.wndTaskBar.SetSkillToolTip(self.tooltipSkill)
  353. self.wndGuild.SetSkillToolTip(self.tooltipSkill)
  354.  
  355. # ACCESSORY_REFINE_ADD_METIN_STONE
  356. self.wndItemSelect.SetItemToolTip(self.tooltipItem)
  357. # END_OF_ACCESSORY_REFINE_ADD_METIN_STONE
  358.  
  359. self.dlgShop.SetItemToolTip(self.tooltipItem)
  360. self.dlgExchange.SetItemToolTip(self.tooltipItem)
  361. self.privateShopBuilder.SetItemToolTip(self.tooltipItem)
  362.  
  363. self.__InitWhisper()
  364. self.DRAGON_SOUL_IS_QUALIFIED = False
  365.  
  366. def MakeHyperlinkTooltip(self, hyperlink):
  367. tokens = hyperlink.split(":")
  368. if tokens and len(tokens):
  369. type = tokens[0]
  370. if "item" == type:
  371. self.hyperlinkItemTooltip.SetHyperlinkItem(tokens)
  372. elif "szept" == type:
  373. self.OpenWhisperDialog(str(tokens[1]))
  374.  
  375. ## Make Windows & Dialogs
  376. ################################
  377.  
  378. def Close(self):
  379.  
  380. if self.SlotmachineWnd:
  381. self.SlotmachineWnd.Destroy()
  382.  
  383. if self.dlgWhisperWithoutTarget:
  384. self.dlgWhisperWithoutTarget.Destroy()
  385. del self.dlgWhisperWithoutTarget
  386.  
  387. if uiQuest.QuestDialog.__dict__.has_key("QuestCurtain"):
  388. uiQuest.QuestDialog.QuestCurtain.Close()
  389.  
  390. if self.wndQuestWindow:
  391. for key, eachQuestWindow in self.wndQuestWindow.items():
  392. eachQuestWindow.nextCurtainMode = -1
  393. eachQuestWindow.CloseSelf()
  394. eachQuestWindow = None
  395. self.wndQuestWindow = {}
  396.  
  397. if self.wndChat:
  398. self.wndChat.Destroy()
  399.  
  400. if self.wndTaskBar:
  401. self.wndTaskBar.Destroy()
  402.  
  403. if self.wndExpandedTaskBar:
  404. self.wndExpandedTaskBar.Destroy()
  405.  
  406. if self.wndEnergyBar:
  407. self.wndEnergyBar.Destroy()
  408.  
  409. if self.wndCharacter:
  410. self.wndCharacter.Destroy()
  411.  
  412. if self.wndInventory:
  413. self.wndInventory.Destroy()
  414.  
  415. if self.wndDragonSoul:
  416. self.wndDragonSoul.Destroy()
  417.  
  418. if self.wndDragonSoulRefine:
  419. self.wndDragonSoulRefine.Destroy()
  420.  
  421. if self.dlgExchange:
  422. self.dlgExchange.Destroy()
  423.  
  424. if self.dlgPointReset:
  425. self.dlgPointReset.Destroy()
  426.  
  427. if self.dlgShop:
  428. self.dlgShop.Destroy()
  429.  
  430. if self.dlgRestart:
  431. self.dlgRestart.Destroy()
  432.  
  433. if self.dlgSystem:
  434. self.dlgSystem.Destroy()
  435.  
  436. if self.dlgPassword:
  437. self.dlgPassword.Destroy()
  438.  
  439. if self.wndMiniMap:
  440. self.wndMiniMap.Destroy()
  441.  
  442. if self.wndSafebox:
  443. self.wndSafebox.Destroy()
  444.  
  445. if self.wndWeb:
  446. self.wndWeb.Destroy()
  447. self.wndWeb = None
  448.  
  449. if self.wndMall:
  450. self.wndMall.Destroy()
  451.  
  452. if self.wndParty:
  453. self.wndParty.Destroy()
  454.  
  455. if self.wndHelp:
  456. self.wndHelp.Destroy()
  457.  
  458. if app.ENABLE_SASH_SYSTEM:
  459. if self.wndSashCombine:
  460. self.wndSashCombine.Destroy()
  461.  
  462. if self.wndSashAbsorption:
  463. self.wndSashAbsorption.Destroy()
  464.  
  465. if self.wndCube:
  466. self.wndCube.Destroy()
  467.  
  468. if self.wndCubeResult:
  469. self.wndCubeResult.Destroy()
  470.  
  471. if self.wndMessenger:
  472. self.wndMessenger.Destroy()
  473.  
  474. if self.wndGuild:
  475. self.wndGuild.Destroy()
  476.  
  477. if self.privateShopBuilder:
  478. self.privateShopBuilder.Destroy()
  479.  
  480. if self.dlgRefineNew:
  481. self.dlgRefineNew.Destroy()
  482.  
  483. if self.wndGuildBuilding:
  484. self.wndGuildBuilding.Destroy()
  485.  
  486. if self.wndGameButton:
  487. self.wndGameButton.Destroy()
  488.  
  489. # ITEM_MALL
  490. if self.mallPageDlg:
  491. self.mallPageDlg.Destroy()
  492. # END_OF_ITEM_MALL
  493.  
  494. # ACCESSORY_REFINE_ADD_METIN_STONE
  495. if self.wndItemSelect:
  496. self.wndItemSelect.Destroy()
  497. # END_OF_ACCESSORY_REFINE_ADD_METIN_STONE
  498.  
  499. self.wndChatLog.Destroy()
  500. for btn in self.questButtonList:
  501. btn.SetEvent(0)
  502. for btn in self.whisperButtonList:
  503. btn.SetEvent(0)
  504. for dlg in self.whisperDialogDict.itervalues():
  505. dlg.Destroy()
  506. for brd in self.guildScoreBoardDict.itervalues():
  507. brd.Destroy()
  508. for dlg in self.equipmentDialogDict.itervalues():
  509. dlg.Destroy()
  510.  
  511. # ITEM_MALL
  512. del self.mallPageDlg
  513. # END_OF_ITEM_MALL
  514.  
  515. del self.wndGuild
  516. del self.wndMessenger
  517. del self.wndUICurtain
  518. del self.wndChat
  519. del self.wndTaskBar
  520. if self.wndExpandedTaskBar:
  521. del self.wndExpandedTaskBar
  522. del self.wndEnergyBar
  523. del self.wndCharacter
  524. del self.wndInventory
  525. if self.wndDragonSoul:
  526. del self.wndDragonSoul
  527. if self.wndDragonSoulRefine:
  528. del self.wndDragonSoulRefine
  529. del self.dlgExchange
  530. del self.dlgPointReset
  531. del self.dlgShop
  532. del self.dlgRestart
  533. del self.dlgSystem
  534. del self.dlgPassword
  535. del self.hyperlinkItemTooltip
  536. del self.tooltipItem
  537. del self.tooltipSkill
  538. del self.wndMiniMap
  539. del self.wndSafebox
  540. del self.wndMall
  541. del self.wndParty
  542. del self.wndHelp
  543. if app.ENABLE_SASH_SYSTEM:
  544. del self.wndSashCombine
  545. del self.wndSashAbsorption
  546. del self.wndCube
  547. del self.wndCubeResult
  548. del self.privateShopBuilder
  549. del self.inputDialog
  550. del self.wndChatLog
  551. del self.SlotmachineWnd
  552. del self.dlgRefineNew
  553. del self.wndGuildBuilding
  554. del self.wndGameButton
  555. del self.tipBoard
  556. del self.bigBoard
  557. del self.wndItemSelect
  558.  
  559. self.questButtonList = []
  560. self.whisperButtonList = []
  561. self.whisperDialogDict = {}
  562. self.privateShopAdvertisementBoardDict = {}
  563. self.guildScoreBoardDict = {}
  564. self.equipmentDialogDict = {}
  565.  
  566. if self.wndGiftBox:
  567. self.wndGiftBox.Clear()
  568. self.wndGiftBox.Hide()
  569. self.wndGiftBox.Destroy()
  570. del self.wndGiftBox
  571.  
  572. uiChat.DestroyChatInputSetWindow()
  573.  
  574. ## Skill
  575. def OnUseSkill(self, slotIndex, coolTime):
  576. self.wndCharacter.OnUseSkill(slotIndex, coolTime)
  577. self.wndTaskBar.OnUseSkill(slotIndex, coolTime)
  578. self.wndGuild.OnUseSkill(slotIndex, coolTime)
  579.  
  580. def OnActivateSkill(self, slotIndex):
  581. self.wndCharacter.OnActivateSkill(slotIndex)
  582. self.wndTaskBar.OnActivateSkill(slotIndex)
  583.  
  584. def OnDeactivateSkill(self, slotIndex):
  585. self.wndCharacter.OnDeactivateSkill(slotIndex)
  586. self.wndTaskBar.OnDeactivateSkill(slotIndex)
  587.  
  588. def OnChangeCurrentSkill(self, skillSlotNumber):
  589. self.wndTaskBar.OnChangeCurrentSkill(skillSlotNumber)
  590.  
  591. def SelectMouseButtonEvent(self, dir, event):
  592. self.wndTaskBar.SelectMouseButtonEvent(dir, event)
  593.  
  594. ## Refresh
  595. def RefreshAlignment(self):
  596. self.wndCharacter.RefreshAlignment()
  597.  
  598. def RefreshStatus(self):
  599. self.wndTaskBar.RefreshStatus()
  600. self.wndCharacter.RefreshStatus()
  601. self.wndInventory.RefreshStatus()
  602. if self.wndEnergyBar:
  603. self.wndEnergyBar.RefreshStatus()
  604. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  605. self.wndDragonSoul.RefreshStatus()
  606.  
  607. def RefreshStamina(self):
  608. self.wndTaskBar.RefreshStamina()
  609.  
  610. def RefreshSkill(self):
  611. self.wndCharacter.RefreshSkill()
  612. self.wndTaskBar.RefreshSkill()
  613.  
  614. def RefreshInventory(self):
  615. self.wndTaskBar.RefreshQuickSlot()
  616. self.wndInventory.RefreshItemSlot()
  617. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  618. self.wndDragonSoul.RefreshItemSlot()
  619.  
  620. def RefreshCharacter(self): ## Character ĆäŔĚÁöŔÇ ľó±Ľ, Inventory ĆäŔĚÁöŔÇ Ŕü˝Ĺ ±×¸˛ µîŔÇ Refresh
  621. self.wndCharacter.RefreshCharacter()
  622. self.wndTaskBar.RefreshQuickSlot()
  623.  
  624. def RefreshQuest(self):
  625. self.wndCharacter.RefreshQuest()
  626.  
  627. def RefreshSafebox(self):
  628. self.wndSafebox.RefreshSafebox()
  629.  
  630. # ITEM_MALL
  631. def RefreshMall(self):
  632. self.wndMall.RefreshMall()
  633.  
  634. def OpenItemMall(self):
  635. if not self.mallPageDlg:
  636. self.mallPageDlg = uiShop.MallPageDialog()
  637.  
  638. self.mallPageDlg.Open()
  639. # END_OF_ITEM_MALL
  640.  
  641. def RefreshMessenger(self):
  642. self.wndMessenger.RefreshMessenger()
  643.  
  644. def RefreshGuildInfoPage(self):
  645. self.wndGuild.RefreshGuildInfoPage()
  646.  
  647. def RefreshGuildBoardPage(self):
  648. self.wndGuild.RefreshGuildBoardPage()
  649.  
  650. def RefreshGuildMemberPage(self):
  651. self.wndGuild.RefreshGuildMemberPage()
  652.  
  653. def RefreshGuildMemberPageGradeComboBox(self):
  654. self.wndGuild.RefreshGuildMemberPageGradeComboBox()
  655.  
  656. def RefreshGuildSkillPage(self):
  657. self.wndGuild.RefreshGuildSkillPage()
  658.  
  659. def RefreshGuildGradePage(self):
  660. self.wndGuild.RefreshGuildGradePage()
  661.  
  662. def DeleteGuild(self):
  663. self.wndMessenger.ClearGuildMember()
  664. self.wndGuild.DeleteGuild()
  665.  
  666. def RefreshMobile(self):
  667. self.dlgSystem.RefreshMobile()
  668.  
  669. def OnMobileAuthority(self):
  670. self.dlgSystem.OnMobileAuthority()
  671.  
  672. def OnBlockMode(self, mode):
  673. self.dlgSystem.OnBlockMode(mode)
  674.  
  675. ## Calling Functions
  676. # PointReset
  677. def OpenPointResetDialog(self):
  678. self.dlgPointReset.Show()
  679. self.dlgPointReset.SetTop()
  680.  
  681. def ClosePointResetDialog(self):
  682. self.dlgPointReset.Close()
  683.  
  684. # Shop
  685. def OpenShopDialog(self, vid):
  686. self.wndInventory.Show()
  687. self.wndInventory.SetTop()
  688. self.dlgShop.Open(vid)
  689. self.dlgShop.SetTop()
  690.  
  691. def CloseShopDialog(self):
  692. self.dlgShop.Close()
  693.  
  694. def RefreshShopDialog(self):
  695. self.dlgShop.Refresh()
  696.  
  697. ## Quest
  698. def OpenCharacterWindowQuestPage(self):
  699. self.wndCharacter.Show()
  700. self.wndCharacter.SetState("QUEST")
  701.  
  702. def OpenQuestWindow(self, skin, idx):
  703. if not constInfo.INPUT_IGNORE == 1:
  704.  
  705. wnds = ()
  706.  
  707. q = uiQuest.QuestDialog(skin, idx)
  708. q.SetWindowName("QuestWindow" + str(idx))
  709. q.Show()
  710. if skin:
  711. q.Lock()
  712. wnds = self.__HideWindows()
  713.  
  714. # UNKNOWN_UPDATE
  715. q.AddOnDoneEvent(lambda tmp_self, args=wnds: self.__ShowWindows(args))
  716. # END_OF_UNKNOWN_UPDATE
  717.  
  718. if skin:
  719. q.AddOnCloseEvent(q.Unlock)
  720. q.AddOnCloseEvent(lambda key = self.wndQuestWindowNewKey:ui.__mem_func__(self.RemoveQuestDialog)(key))
  721. self.wndQuestWindow[self.wndQuestWindowNewKey] = q
  722.  
  723. self.wndQuestWindowNewKey = self.wndQuestWindowNewKey + 1
  724.  
  725. # END_OF_UNKNOWN_UPDATE
  726.  
  727. def RemoveQuestDialog(self, key):
  728. del self.wndQuestWindow[key]
  729.  
  730. ## Exchange
  731. def StartExchange(self):
  732. self.dlgExchange.OpenDialog()
  733. self.dlgExchange.Refresh()
  734.  
  735. def EndExchange(self):
  736. self.dlgExchange.CloseDialog()
  737.  
  738. def RefreshExchange(self):
  739. self.dlgExchange.Refresh()
  740.  
  741. ## Party
  742. def AddPartyMember(self, pid, name):
  743. self.wndParty.AddPartyMember(pid, name)
  744.  
  745. self.__ArrangeQuestButton()
  746.  
  747. def UpdatePartyMemberInfo(self, pid):
  748. self.wndParty.UpdatePartyMemberInfo(pid)
  749.  
  750. def RemovePartyMember(self, pid):
  751. self.wndParty.RemovePartyMember(pid)
  752.  
  753. ##!! 20061026.levites.Äů˝şĆ®_Ŕ§Äˇ_ş¸Á¤
  754. self.__ArrangeQuestButton()
  755.  
  756. def LinkPartyMember(self, pid, vid):
  757. self.wndParty.LinkPartyMember(pid, vid)
  758.  
  759. def UnlinkPartyMember(self, pid):
  760. self.wndParty.UnlinkPartyMember(pid)
  761.  
  762. def UnlinkAllPartyMember(self):
  763. self.wndParty.UnlinkAllPartyMember()
  764.  
  765. def ExitParty(self):
  766. self.wndParty.ExitParty()
  767.  
  768. ##!! 20061026.levites.Äů˝şĆ®_Ŕ§Äˇ_ş¸Á¤
  769. self.__ArrangeQuestButton()
  770.  
  771. def PartyHealReady(self):
  772. self.wndParty.PartyHealReady()
  773.  
  774. def ChangePartyParameter(self, distributionMode):
  775. self.wndParty.ChangePartyParameter(distributionMode)
  776.  
  777. ## Safebox
  778. def AskSafeboxPassword(self):
  779. if self.wndSafebox.IsShow():
  780. return
  781.  
  782. # SAFEBOX_PASSWORD
  783. self.dlgPassword.SetTitle(localeInfo.PASSWORD_TITLE)
  784. self.dlgPassword.SetSendMessage("/safebox_password ")
  785. # END_OF_SAFEBOX_PASSWORD
  786.  
  787. self.dlgPassword.ShowDialog()
  788.  
  789. def OpenSafeboxWindow(self, size):
  790. self.dlgPassword.CloseDialog()
  791. self.wndSafebox.ShowWindow(size)
  792.  
  793. def RefreshSafeboxMoney(self):
  794. self.wndSafebox.RefreshSafeboxMoney()
  795.  
  796. def CommandCloseSafebox(self):
  797. self.wndSafebox.CommandCloseSafebox()
  798.  
  799. # ITEM_MALL
  800. def AskMallPassword(self):
  801. if self.wndMall.IsShow():
  802. return
  803. self.dlgPassword.SetTitle(localeInfo.MALL_PASSWORD_TITLE)
  804. self.dlgPassword.SetSendMessage("/mall_password ")
  805. self.dlgPassword.ShowDialog()
  806.  
  807. def OpenMallWindow(self, size):
  808. self.dlgPassword.CloseDialog()
  809. self.wndMall.ShowWindow(size)
  810.  
  811. def CommandCloseMall(self):
  812. self.wndMall.CommandCloseMall()
  813. # END_OF_ITEM_MALL
  814.  
  815. ## Guild
  816. def OnStartGuildWar(self, guildSelf, guildOpp):
  817. self.wndGuild.OnStartGuildWar(guildSelf, guildOpp)
  818.  
  819. guildWarScoreBoard = uiGuild.GuildWarScoreBoard()
  820. guildWarScoreBoard.Open(guildSelf, guildOpp)
  821. guildWarScoreBoard.Show()
  822. self.guildScoreBoardDict[uiGuild.GetGVGKey(guildSelf, guildOpp)] = guildWarScoreBoard
  823.  
  824. def OnEndGuildWar(self, guildSelf, guildOpp):
  825. self.wndGuild.OnEndGuildWar(guildSelf, guildOpp)
  826.  
  827. key = uiGuild.GetGVGKey(guildSelf, guildOpp)
  828.  
  829. if not self.guildScoreBoardDict.has_key(key):
  830. return
  831.  
  832. self.guildScoreBoardDict[key].Destroy()
  833. del self.guildScoreBoardDict[key]
  834.  
  835. # GUILDWAR_MEMBER_COUNT
  836. def UpdateMemberCount(self, gulidID1, memberCount1, guildID2, memberCount2):
  837. key = uiGuild.GetGVGKey(gulidID1, guildID2)
  838.  
  839. if not self.guildScoreBoardDict.has_key(key):
  840. return
  841.  
  842. self.guildScoreBoardDict[key].UpdateMemberCount(gulidID1, memberCount1, guildID2, memberCount2)
  843. # END_OF_GUILDWAR_MEMBER_COUNT
  844.  
  845. def OnRecvGuildWarPoint(self, gainGuildID, opponentGuildID, point):
  846. key = uiGuild.GetGVGKey(gainGuildID, opponentGuildID)
  847. if not self.guildScoreBoardDict.has_key(key):
  848. return
  849.  
  850. guildBoard = self.guildScoreBoardDict[key]
  851. guildBoard.SetScore(gainGuildID, opponentGuildID, point)
  852.  
  853. ## PK Mode
  854. def OnChangePKMode(self):
  855. self.wndCharacter.RefreshAlignment()
  856. self.dlgSystem.OnChangePKMode()
  857.  
  858. ## Refine
  859. def OpenRefineDialog(self, targetItemPos, nextGradeItemVnum, cost, prob, type):
  860. self.dlgRefineNew.Open(targetItemPos, nextGradeItemVnum, cost, prob, type)
  861.  
  862. def AppendMaterialToRefineDialog(self, vnum, count):
  863. self.dlgRefineNew.AppendMaterial(vnum, count)
  864.  
  865. ## Show & Hide
  866. def ShowDefaultWindows(self):
  867. self.wndTaskBar.Show()
  868. self.wndMiniMap.Show()
  869. self.wndMiniMap.ShowMiniMap()
  870. if self.wndEnergyBar:
  871. self.wndEnergyBar.Show()
  872.  
  873. def ShowAllWindows(self):
  874. self.wndTaskBar.Show()
  875. self.wndCharacter.Show()
  876. self.wndInventory.Show()
  877. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  878. self.wndDragonSoul.Show()
  879. self.wndDragonSoulRefine.Show()
  880. self.wndChat.Show()
  881. self.wndMiniMap.Show()
  882. if self.wndEnergyBar:
  883. self.wndEnergyBar.Show()
  884. if self.wndExpandedTaskBar:
  885. self.wndExpandedTaskBar.Show()
  886. self.wndExpandedTaskBar.SetTop()
  887.  
  888. def HideAllWindows(self):
  889. if self.wndTaskBar:
  890. self.wndTaskBar.Hide()
  891.  
  892. if self.wndEnergyBar:
  893. self.wndEnergyBar.Hide()
  894.  
  895. if self.wndCharacter:
  896. self.wndCharacter.Hide()
  897.  
  898. if self.wndInventory:
  899. self.wndInventory.Hide()
  900.  
  901. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  902. self.wndDragonSoul.Hide()
  903. self.wndDragonSoulRefine.Hide()
  904.  
  905. if self.wndChat:
  906. self.wndChat.Hide()
  907.  
  908. if self.wndMiniMap:
  909. self.wndMiniMap.Hide()
  910.  
  911. if self.wndMessenger:
  912. self.wndMessenger.Hide()
  913.  
  914. if self.wndGuild:
  915. self.wndGuild.Hide()
  916.  
  917. if self.wndExpandedTaskBar:
  918. self.wndExpandedTaskBar.Hide()
  919.  
  920.  
  921. def ShowMouseImage(self):
  922. self.wndTaskBar.ShowMouseImage()
  923.  
  924. def HideMouseImage(self):
  925. self.wndTaskBar.HideMouseImage()
  926.  
  927. def ToggleChat(self):
  928. if True == self.wndChat.IsEditMode():
  929. self.wndChat.CloseChat()
  930. else:
  931. # ŔĄĆäŔĚÁö°ˇ ż­·ČŔ»¶§´Â äĆĂ ŔÔ·ÂŔĚ ľČµĘ
  932. if self.wndWeb and self.wndWeb.IsShow():
  933. pass
  934. else:
  935. self.wndChat.OpenChat()
  936.  
  937. def IsOpenChat(self):
  938. return self.wndChat.IsEditMode()
  939.  
  940. def SetChatFocus(self):
  941. self.wndChat.SetChatFocus()
  942.  
  943. def OpenRestartDialog(self):
  944. self.dlgRestart.OpenDialog()
  945. self.dlgRestart.SetTop()
  946.  
  947. def CloseRestartDialog(self):
  948. self.dlgRestart.Close()
  949.  
  950. def ToggleSystemDialog(self):
  951. if False == self.dlgSystem.IsShow():
  952. self.dlgSystem.OpenDialog()
  953. self.dlgSystem.SetTop()
  954. else:
  955. self.dlgSystem.Close()
  956.  
  957. def OpenSystemDialog(self):
  958. self.dlgSystem.OpenDialog()
  959. self.dlgSystem.SetTop()
  960.  
  961. def ToggleMessenger(self):
  962. if self.wndMessenger.IsShow():
  963. self.wndMessenger.Hide()
  964. else:
  965. self.wndMessenger.SetTop()
  966. self.wndMessenger.Show()
  967.  
  968. def ToggleMiniMap(self):
  969. if app.IsPressed(app.DIK_LSHIFT) or app.IsPressed(app.DIK_RSHIFT):
  970. if False == self.wndMiniMap.isShowMiniMap():
  971. self.wndMiniMap.ShowMiniMap()
  972. self.wndMiniMap.SetTop()
  973. else:
  974. self.wndMiniMap.HideMiniMap()
  975.  
  976. else:
  977. self.wndMiniMap.ToggleAtlasWindow()
  978.  
  979. def PressMKey(self):
  980. if app.IsPressed(app.DIK_LALT) or app.IsPressed(app.DIK_RALT):
  981. self.ToggleMessenger()
  982.  
  983. else:
  984. self.ToggleMiniMap()
  985.  
  986. def SetMapName(self, mapName):
  987. self.wndMiniMap.SetMapName(mapName)
  988.  
  989. def MiniMapScaleUp(self):
  990. self.wndMiniMap.ScaleUp()
  991.  
  992. def MiniMapScaleDown(self):
  993. self.wndMiniMap.ScaleDown()
  994.  
  995. def ToggleCharacterWindow(self, state):
  996. if False == player.IsObserverMode():
  997. if False == self.wndCharacter.IsShow():
  998. self.OpenCharacterWindowWithState(state)
  999. else:
  1000. if state == self.wndCharacter.GetState():
  1001. self.wndCharacter.OverOutItem()
  1002. self.wndCharacter.Hide()
  1003. else:
  1004. self.wndCharacter.SetState(state)
  1005.  
  1006. def OpenCharacterWindowWithState(self, state):
  1007. if False == player.IsObserverMode():
  1008. self.wndCharacter.SetState(state)
  1009. self.wndCharacter.Show()
  1010. self.wndCharacter.SetTop()
  1011.  
  1012. def ToggleCharacterWindowStatusPage(self):
  1013. self.ToggleCharacterWindow("STATUS")
  1014.  
  1015. def ToggleInventoryWindow(self):
  1016. if FALSE == player.IsObserverMode():
  1017. if FALSE == self.wndInventory.IsShow():
  1018. self.wndInventory.Show()
  1019. self.wndInventory.SetTop()
  1020. else:
  1021. self.wndInventory.OverOutItem()
  1022. self.wndInventory.Close()
  1023.  
  1024. def ToggleExpandedButton(self):
  1025. if False == player.IsObserverMode():
  1026. if False == self.wndExpandedTaskBar.IsShow():
  1027. self.wndExpandedTaskBar.Show()
  1028. self.wndExpandedTaskBar.SetTop()
  1029. else:
  1030. self.wndExpandedTaskBar.Close()
  1031.  
  1032. # żëČĄĽ®
  1033. def DragonSoulActivate(self, deck):
  1034. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1035. self.wndDragonSoul.ActivateDragonSoulByExtern(deck)
  1036.  
  1037. def DragonSoulDeactivate(self):
  1038. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1039. self.wndDragonSoul.DeactivateDragonSoul()
  1040.  
  1041. def Highligt_Item(self, inven_type, inven_pos):
  1042. if player.DRAGON_SOUL_INVENTORY == inven_type:
  1043. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1044. self.wndDragonSoul.HighlightSlot(inven_pos)
  1045.  
  1046. def DragonSoulGiveQuilification(self):
  1047. self.DRAGON_SOUL_IS_QUALIFIED = True
  1048. self.wndExpandedTaskBar.SetToolTipText(uiTaskBar.ExpandedTaskBar.BUTTON_DRAGON_SOUL, uiScriptLocale.TASKBAR_DRAGON_SOUL)
  1049.  
  1050. def ToggleDragonSoulWindow(self):
  1051. if False == player.IsObserverMode():
  1052. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1053. if False == self.wndDragonSoul.IsShow():
  1054. if self.DRAGON_SOUL_IS_QUALIFIED:
  1055. self.wndDragonSoul.Show()
  1056. else:
  1057. try:
  1058. self.wndPopupDialog.SetText(localeInfo.DRAGON_SOUL_UNQUALIFIED)
  1059. self.wndPopupDialog.Open()
  1060. except:
  1061. self.wndPopupDialog = uiCommon.PopupDialog()
  1062. self.wndPopupDialog.SetText(localeInfo.DRAGON_SOUL_UNQUALIFIED)
  1063. self.wndPopupDialog.Open()
  1064. else:
  1065. self.wndDragonSoul.Close()
  1066.  
  1067. def ToggleDragonSoulWindowWithNoInfo(self):
  1068. if False == player.IsObserverMode():
  1069. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1070. if False == self.wndDragonSoul.IsShow():
  1071. if self.DRAGON_SOUL_IS_QUALIFIED:
  1072. self.wndDragonSoul.Show()
  1073. else:
  1074. self.wndDragonSoul.Close()
  1075.  
  1076. def FailDragonSoulRefine(self, reason, inven_type, inven_pos):
  1077. if False == player.IsObserverMode():
  1078. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1079. if True == self.wndDragonSoulRefine.IsShow():
  1080. self.wndDragonSoulRefine.RefineFail(reason, inven_type, inven_pos)
  1081.  
  1082. def SucceedDragonSoulRefine(self, inven_type, inven_pos):
  1083. if False == player.IsObserverMode():
  1084. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1085. if True == self.wndDragonSoulRefine.IsShow():
  1086. self.wndDragonSoulRefine.RefineSucceed(inven_type, inven_pos)
  1087.  
  1088. def OpenDragonSoulRefineWindow(self):
  1089. if False == player.IsObserverMode():
  1090. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1091. if False == self.wndDragonSoulRefine.IsShow():
  1092. self.wndDragonSoulRefine.Show()
  1093. if None != self.wndDragonSoul:
  1094. if False == self.wndDragonSoul.IsShow():
  1095. self.wndDragonSoul.Show()
  1096.  
  1097. def CloseDragonSoulRefineWindow(self):
  1098. if False == player.IsObserverMode():
  1099. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1100. if True == self.wndDragonSoulRefine.IsShow():
  1101. self.wndDragonSoulRefine.Close()
  1102.  
  1103. # żëČĄĽ® łˇ
  1104.  
  1105. def ToggleGuildWindow(self):
  1106. if not self.wndGuild.IsShow():
  1107. if self.wndGuild.CanOpen():
  1108. self.wndGuild.Open()
  1109. else:
  1110. chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.GUILD_YOU_DO_NOT_JOIN)
  1111. else:
  1112. self.wndGuild.OverOutItem()
  1113. self.wndGuild.Hide()
  1114.  
  1115. def ToggleChatLogWindow(self):
  1116. if self.wndChatLog.IsShow():
  1117. self.wndChatLog.Hide()
  1118. else:
  1119. self.wndChatLog.Show()
  1120.  
  1121. def CheckGameButton(self):
  1122. if self.wndGameButton:
  1123. self.wndGameButton.CheckGameButton()
  1124.  
  1125. def __OnClickStatusPlusButton(self):
  1126. self.ToggleCharacterWindow("STATUS")
  1127.  
  1128. def __OnClickSkillPlusButton(self):
  1129. self.ToggleCharacterWindow("SKILL")
  1130.  
  1131. def __OnClickQuestButton(self):
  1132. self.ToggleCharacterWindow("QUEST")
  1133.  
  1134. def __OnClickHelpButton(self):
  1135. player.SetPlayTime(1)
  1136. self.CheckGameButton()
  1137. self.OpenHelpWindow()
  1138.  
  1139. def __OnClickBuildButton(self):
  1140. self.BUILD_OpenWindow()
  1141.  
  1142. def OpenHelpWindow(self):
  1143. self.wndUICurtain.Show()
  1144. self.wndHelp.Open()
  1145.  
  1146. def CloseHelpWindow(self):
  1147. self.wndUICurtain.Hide()
  1148. self.wndHelp.Close()
  1149.  
  1150. def OpenWebWindow(self, url):
  1151. self.wndWeb.Open(url)
  1152.  
  1153. # ŔĄĆäŔĚÁö¸¦ ż­¸é äĆĂŔ» ´Ý´Â´Ů
  1154. self.wndChat.CloseChat()
  1155.  
  1156. # show GIFT
  1157. def ShowGift(self):
  1158. self.wndTaskBar.ShowGift()
  1159.  
  1160. def CloseWbWindow(self):
  1161. self.wndWeb.Close()
  1162.  
  1163. if app.ENABLE_SASH_SYSTEM:
  1164. def ActSash(self, iAct, bWindow):
  1165. if iAct == 1:
  1166. if bWindow == True:
  1167. if not self.wndSashCombine.IsOpened():
  1168. self.wndSashCombine.Open()
  1169.  
  1170. if not self.wndInventory.IsShow():
  1171. self.wndInventory.Show()
  1172. else:
  1173. if not self.wndSashAbsorption.IsOpened():
  1174. self.wndSashAbsorption.Open()
  1175.  
  1176. if not self.wndInventory.IsShow():
  1177. self.wndInventory.Show()
  1178.  
  1179. self.wndInventory.RefreshBagSlotWindow()
  1180. elif iAct == 2:
  1181. if bWindow == True:
  1182. if self.wndSashCombine.IsOpened():
  1183. self.wndSashCombine.Close()
  1184. else:
  1185. if self.wndSashAbsorption.IsOpened():
  1186. self.wndSashAbsorption.Close()
  1187.  
  1188. self.wndInventory.RefreshBagSlotWindow()
  1189. elif iAct == 3 or iAct == 4:
  1190. if bWindow == True:
  1191. if self.wndSashCombine.IsOpened():
  1192. self.wndSashCombine.Refresh(iAct)
  1193. else:
  1194. if self.wndSashAbsorption.IsOpened():
  1195. self.wndSashAbsorption.Refresh(iAct)
  1196.  
  1197. self.wndInventory.RefreshBagSlotWindow()
  1198.  
  1199. def OpenCubeWindow(self):
  1200. self.wndCube.Open()
  1201.  
  1202. if FALSE == self.wndInventory.IsShow():
  1203. self.wndInventory.Show()
  1204.  
  1205. def UpdateCubeInfo(self, gold, itemVnum, count):
  1206. self.wndCube.UpdateInfo(gold, itemVnum, count)
  1207.  
  1208. def CloseCubeWindow(self):
  1209. self.wndCube.Close()
  1210.  
  1211. def FailedCubeWork(self):
  1212. self.wndCube.Refresh()
  1213.  
  1214. def SucceedCubeWork(self, itemVnum, count):
  1215. self.wndCube.Clear()
  1216.  
  1217. print "ĹĄşę Á¦ŔŰ Ľş°ř! [%d:%d]" % (itemVnum, count)
  1218.  
  1219. if 0: # °á°ú ¸Ţ˝ĂÁö Ăâ·ÂŔş »ý·« ÇŃ´Ů
  1220. self.wndCubeResult.SetPosition(*self.wndCube.GetGlobalPosition())
  1221. self.wndCubeResult.SetCubeResultItem(itemVnum, count)
  1222. self.wndCubeResult.Open()
  1223. self.wndCubeResult.SetTop()
  1224.  
  1225. def __HideWindows(self):
  1226. hideWindows = self.wndTaskBar,\
  1227. self.wndCharacter,\
  1228. self.wndInventory,\
  1229. self.wndMiniMap,\
  1230. self.wndGuild,\
  1231. self.wndMessenger,\
  1232. self.wndChat,\
  1233. self.wndParty,\
  1234. self.wndGameButton,
  1235.  
  1236. if self.wndEnergyBar:
  1237. hideWindows += self.wndEnergyBar,
  1238.  
  1239. if self.wndExpandedTaskBar:
  1240. hideWindows += self.wndExpandedTaskBar,
  1241.  
  1242. if app.ENABLE_DRAGON_SOUL_SYSTEM:
  1243. hideWindows += self.wndDragonSoul,\
  1244. self.wndDragonSoulRefine,
  1245.  
  1246. hideWindows = filter(lambda x:x.IsShow(), hideWindows)
  1247. map(lambda x:x.Hide(), hideWindows)
  1248. import sys
  1249.  
  1250. self.HideAllQuestButton()
  1251. self.HideAllWhisperButton()
  1252.  
  1253. if self.wndChat.IsEditMode():
  1254. self.wndChat.CloseChat()
  1255.  
  1256. return hideWindows
  1257.  
  1258. def __ShowWindows(self, wnds):
  1259. import sys
  1260. map(lambda x:x.Show(), wnds)
  1261. global IsQBHide
  1262. if not IsQBHide:
  1263. self.ShowAllQuestButton()
  1264. else:
  1265. self.HideAllQuestButton()
  1266.  
  1267. self.ShowAllWhisperButton()
  1268.  
  1269. def BINARY_OpenAtlasWindow(self):
  1270. if self.wndMiniMap:
  1271. self.wndMiniMap.ShowAtlas()
  1272.  
  1273. def BINARY_SetObserverMode(self, flag):
  1274. self.wndGameButton.SetObserverMode(flag)
  1275.  
  1276. # ACCESSORY_REFINE_ADD_METIN_STONE
  1277. def BINARY_OpenSelectItemWindow(self):
  1278. self.wndItemSelect.Open()
  1279. # END_OF_ACCESSORY_REFINE_ADD_METIN_STONE
  1280.  
  1281. #####################################################################################
  1282. ### Private Shop ###
  1283.  
  1284. def OpenPrivateShopInputNameDialog(self):
  1285. #if player.IsInSafeArea():
  1286. # chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.CANNOT_OPEN_PRIVATE_SHOP_IN_SAFE_AREA)
  1287. # return
  1288.  
  1289. inputDialog = uiCommon.InputDialog()
  1290. inputDialog.SetTitle(localeInfo.PRIVATE_SHOP_INPUT_NAME_DIALOG_TITLE)
  1291. inputDialog.SetMaxLength(32)
  1292. inputDialog.SetAcceptEvent(ui.__mem_func__(self.OpenPrivateShopBuilder))
  1293. inputDialog.SetCancelEvent(ui.__mem_func__(self.ClosePrivateShopInputNameDialog))
  1294. inputDialog.Open()
  1295. self.inputDialog = inputDialog
  1296.  
  1297. def ClosePrivateShopInputNameDialog(self):
  1298. self.inputDialog = None
  1299. return True
  1300.  
  1301. def OpenPrivateShopBuilder(self):
  1302.  
  1303. if not self.inputDialog:
  1304. return True
  1305.  
  1306. if not len(self.inputDialog.GetText()):
  1307. return True
  1308.  
  1309. self.privateShopBuilder.Open(self.inputDialog.GetText())
  1310. self.ClosePrivateShopInputNameDialog()
  1311. return True
  1312.  
  1313. def AppearPrivateShop(self, vid, text):
  1314.  
  1315. board = uiPrivateShopBuilder.PrivateShopAdvertisementBoard()
  1316. board.Open(vid, text)
  1317.  
  1318. self.privateShopAdvertisementBoardDict[vid] = board
  1319.  
  1320. def DisappearPrivateShop(self, vid):
  1321.  
  1322. if not self.privateShopAdvertisementBoardDict.has_key(vid):
  1323. return
  1324.  
  1325. del self.privateShopAdvertisementBoardDict[vid]
  1326. uiPrivateShopBuilder.DeleteADBoard(vid)
  1327.  
  1328. #####################################################################################
  1329. ### Equipment ###
  1330.  
  1331. def OpenEquipmentDialog(self, vid):
  1332. dlg = uiEquipmentDialog.EquipmentDialog()
  1333. dlg.SetItemToolTip(self.tooltipItem)
  1334. dlg.SetCloseEvent(ui.__mem_func__(self.CloseEquipmentDialog))
  1335. dlg.Open(vid)
  1336.  
  1337. self.equipmentDialogDict[vid] = dlg
  1338.  
  1339. def SetEquipmentDialogItem(self, vid, slotIndex, vnum, count):
  1340. if not vid in self.equipmentDialogDict:
  1341. return
  1342. self.equipmentDialogDict[vid].SetEquipmentDialogItem(slotIndex, vnum, count)
  1343.  
  1344. def SetEquipmentDialogSocket(self, vid, slotIndex, socketIndex, value):
  1345. if not vid in self.equipmentDialogDict:
  1346. return
  1347. self.equipmentDialogDict[vid].SetEquipmentDialogSocket(slotIndex, socketIndex, value)
  1348.  
  1349. def SetEquipmentDialogAttr(self, vid, slotIndex, attrIndex, type, value):
  1350. if not vid in self.equipmentDialogDict:
  1351. return
  1352. self.equipmentDialogDict[vid].SetEquipmentDialogAttr(slotIndex, attrIndex, type, value)
  1353.  
  1354. def CloseEquipmentDialog(self, vid):
  1355. if not vid in self.equipmentDialogDict:
  1356. return
  1357. del self.equipmentDialogDict[vid]
  1358.  
  1359. #####################################################################################
  1360.  
  1361. #####################################################################################
  1362. ### Quest ###
  1363. def BINARY_ClearQuest(self, index):
  1364. btn = self.__FindQuestButton(index)
  1365. if 0 != btn:
  1366. self.__DestroyQuestButton(btn)
  1367.  
  1368. def RecvQuest(self, index, name):
  1369. # QUEST_LETTER_IMAGE
  1370. self.BINARY_RecvQuest(index, name, "file", localeInfo.GetLetterImageName())
  1371. # END_OF_QUEST_LETTER_IMAGE
  1372.  
  1373. def BINARY_RecvQuest(self, index, name, iconType, iconName):
  1374.  
  1375. btn = self.__FindQuestButton(index)
  1376. if 0 != btn:
  1377. self.__DestroyQuestButton(btn)
  1378.  
  1379. btn = uiWhisper.WhisperButton()
  1380.  
  1381. # QUEST_LETTER_IMAGE
  1382. ##!! 20061026.levites.Äů˝şĆ®_ŔĚąĚÁö_±łĂĽ
  1383. import item
  1384. if "item"==iconType:
  1385. item.SelectItem(int(iconName))
  1386. buttonImageFileName=item.GetIconImageFileName()
  1387. else:
  1388. buttonImageFileName=iconName
  1389.  
  1390. if localeInfo.IsEUROPE():
  1391. if "highlight" == iconType:
  1392. btn.SetUpVisual("locale/ymir_ui/highlighted_quest.tga")
  1393. btn.SetOverVisual("locale/ymir_ui/highlighted_quest_r.tga")
  1394. btn.SetDownVisual("locale/ymir_ui/highlighted_quest_r.tga")
  1395. else:
  1396. btn.SetUpVisual(localeInfo.GetLetterCloseImageName())
  1397. btn.SetOverVisual(localeInfo.GetLetterOpenImageName())
  1398. btn.SetDownVisual(localeInfo.GetLetterOpenImageName())
  1399. else:
  1400. btn.SetUpVisual(buttonImageFileName)
  1401. btn.SetOverVisual(buttonImageFileName)
  1402. btn.SetDownVisual(buttonImageFileName)
  1403. btn.Flash()
  1404. # END_OF_QUEST_LETTER_IMAGE
  1405.  
  1406. if localeInfo.IsARABIC():
  1407. btn.SetToolTipText(name, 0, 35)
  1408. btn.ToolTipText.SetHorizontalAlignCenter()
  1409. else:
  1410. btn.SetToolTipText(name, -20, 35)
  1411. btn.ToolTipText.SetHorizontalAlignLeft()
  1412.  
  1413. btn.SetEvent(ui.__mem_func__(self.__StartQuest), btn)
  1414. btn.Show()
  1415.  
  1416. btn.index = index
  1417. btn.name = name
  1418.  
  1419. self.questButtonList.insert(0, btn)
  1420. self.__ArrangeQuestButton()
  1421.  
  1422. #chat.AppendChat(chat.CHAT_TYPE_NOTICE, localeInfo.QUEST_APPEND)
  1423.  
  1424. def __ArrangeQuestButton(self):
  1425.  
  1426. screenWidth = wndMgr.GetScreenWidth()
  1427. screenHeight = wndMgr.GetScreenHeight()
  1428.  
  1429. ##!! 20061026.levites.Äů˝şĆ®_Ŕ§Äˇ_ş¸Á¤
  1430. if self.wndParty.IsShow():
  1431. xPos = 100 + 30
  1432. else:
  1433. xPos = 20
  1434.  
  1435. if localeInfo.IsARABIC():
  1436. xPos = xPos + 15
  1437.  
  1438. yPos = 170 * screenHeight / 600
  1439. yCount = (screenHeight - 330) / 63
  1440.  
  1441. count = 0
  1442. for btn in self.questButtonList:
  1443.  
  1444. btn.SetPosition(xPos + (int(count/yCount) * 100), yPos + (count%yCount * 63))
  1445. count += 1
  1446. global IsQBHide
  1447. if IsQBHide:
  1448. btn.Hide()
  1449. else:
  1450. btn.Show()
  1451.  
  1452. def __StartQuest(self, btn):
  1453. event.QuestButtonClick(btn.index)
  1454. self.__DestroyQuestButton(btn)
  1455.  
  1456. def __FindQuestButton(self, index):
  1457. for btn in self.questButtonList:
  1458. if btn.index == index:
  1459. return btn
  1460.  
  1461. return 0
  1462.  
  1463. def __DestroyQuestButton(self, btn):
  1464. btn.SetEvent(0)
  1465. self.questButtonList.remove(btn)
  1466. self.__ArrangeQuestButton()
  1467.  
  1468. def HideAllQuestButton(self):
  1469. for btn in self.questButtonList:
  1470. btn.Hide()
  1471.  
  1472. def ShowAllQuestButton(self):
  1473. for btn in self.questButtonList:
  1474. btn.Show()
  1475. #####################################################################################
  1476.  
  1477. #####################################################################################
  1478. ### Whisper ###
  1479.  
  1480. def __InitWhisper(self):
  1481. chat.InitWhisper(self)
  1482.  
  1483. ## äĆĂâŔÇ "¸Ţ˝ĂÁö ş¸ł»±â"¸¦ ´­·¶Ŕ»¶§ Ŕ̸§ ľř´Â ´ëȭâŔ» ż©´Â ÇÔĽö
  1484. ## Ŕ̸§ŔĚ ľř±â ¶§ą®żˇ ±âÁ¸ŔÇ WhisperDialogDict żÍ ş°µµ·Î °ü¸®µČ´Ů.
  1485. def OpenWhisperDialogWithoutTarget(self):
  1486. if not self.dlgWhisperWithoutTarget:
  1487. dlgWhisper = uiWhisper.WhisperDialog(self.MinimizeWhisperDialog, self.CloseWhisperDialog)
  1488. dlgWhisper.BindInterface(self)
  1489. dlgWhisper.LoadDialog()
  1490. dlgWhisper.OpenWithoutTarget(self.RegisterTemporaryWhisperDialog)
  1491. dlgWhisper.SetPosition(self.windowOpenPosition*30,self.windowOpenPosition*30)
  1492. dlgWhisper.Show()
  1493. self.dlgWhisperWithoutTarget = dlgWhisper
  1494.  
  1495. self.windowOpenPosition = (self.windowOpenPosition+1) % 5
  1496.  
  1497. else:
  1498. self.dlgWhisperWithoutTarget.SetTop()
  1499. self.dlgWhisperWithoutTarget.OpenWithoutTarget(self.RegisterTemporaryWhisperDialog)
  1500.  
  1501. ## Ŕ̸§ ľř´Â ´ëȭ⿡Ľ­ Ŕ̸§Ŕ» °áÁ¤ÇßŔ»¶§ WhisperDialogDictżˇ âŔ» łÖľîÁÖ´Â ÇÔĽö
  1502. def RegisterTemporaryWhisperDialog(self, name):
  1503. if not self.dlgWhisperWithoutTarget:
  1504. return
  1505.  
  1506. btn = self.__FindWhisperButton(name)
  1507. if 0 != btn:
  1508. self.__DestroyWhisperButton(btn)
  1509.  
  1510. elif self.whisperDialogDict.has_key(name):
  1511. oldDialog = self.whisperDialogDict[name]
  1512. oldDialog.Destroy()
  1513. del self.whisperDialogDict[name]
  1514.  
  1515. self.whisperDialogDict[name] = self.dlgWhisperWithoutTarget
  1516. self.dlgWhisperWithoutTarget.OpenWithTarget(name)
  1517. self.dlgWhisperWithoutTarget = None
  1518. self.__CheckGameMaster(name)
  1519.  
  1520. ## Äł¸ŻĹÍ ¸Ţ´şŔÇ 1:1 ´ëČ­ Çϱ⸦ ´­·¶Ŕ»¶§ Ŕ̸§Ŕ» °ˇÁö°í ąŮ·Î âŔ» ż©´Â ÇÔĽö
  1521. def OpenWhisperDialog(self, name):
  1522. if not self.whisperDialogDict.has_key(name):
  1523. dlg = self.__MakeWhisperDialog(name)
  1524. dlg.OpenWithTarget(name)
  1525. dlg.chatLine.SetFocus()
  1526. dlg.Show()
  1527.  
  1528. self.__CheckGameMaster(name)
  1529. btn = self.__FindWhisperButton(name)
  1530. if 0 != btn:
  1531. self.__DestroyWhisperButton(btn)
  1532.  
  1533. ## ´Ů¸Ą Äł¸ŻĹÍ·ÎşÎĹÍ ¸ŢĽĽÁö¸¦ ąŢľŇŔ»¶§ ŔĎ´Ü ąöĆ°¸¸ ¶çżö µÎ´Â ÇÔĽö
  1534. def RecvWhisper(self, name):
  1535. if not self.whisperDialogDict.has_key(name):
  1536. btn = self.__FindWhisperButton(name)
  1537. if 0 == btn:
  1538. btn = self.__MakeWhisperButton(name)
  1539. btn.Flash()
  1540.  
  1541. chat.AppendChat(chat.CHAT_TYPE_NOTICE, localeInfo.RECEIVE_MESSAGE % (name))
  1542.  
  1543. else:
  1544. btn.Flash()
  1545. elif self.IsGameMasterName(name):
  1546. dlg = self.whisperDialogDict[name]
  1547. dlg.SetGameMasterLook()
  1548.  
  1549. def MakeWhisperButton(self, name):
  1550. self.__MakeWhisperButton(name)
  1551.  
  1552. ## ąöĆ°Ŕ» ´­·¶Ŕ»¶§ âŔ» ż©´Â ÇÔĽö
  1553. def ShowWhisperDialog(self, btn):
  1554. try:
  1555. self.__MakeWhisperDialog(btn.name)
  1556. dlgWhisper = self.whisperDialogDict[btn.name]
  1557. dlgWhisper.OpenWithTarget(btn.name)
  1558. dlgWhisper.Show()
  1559. self.__CheckGameMaster(btn.name)
  1560. except:
  1561. import dbg
  1562. dbg.TraceError("interface.ShowWhisperDialog - Failed to find key")
  1563.  
  1564. ## ąöĆ° ĂʱâČ­
  1565. self.__DestroyWhisperButton(btn)
  1566.  
  1567. ## WhisperDialog ⿡Ľ­ ĂÖĽŇČ­ ¸í·ÉŔ» ĽöÇŕÇßŔ»¶§ ČŁĂâµÇ´Â ÇÔĽö
  1568. ## âŔ» ĂÖĽŇČ­ ÇŐ´Ď´Ů.
  1569. def MinimizeWhisperDialog(self, name):
  1570.  
  1571. if 0 != name:
  1572. self.__MakeWhisperButton(name)
  1573.  
  1574. self.CloseWhisperDialog(name)
  1575.  
  1576. ## WhisperDialog ⿡Ľ­ ´Ý±â ¸í·ÉŔ» ĽöÇŕÇßŔ»¶§ ČŁĂâµÇ´Â ÇÔĽö
  1577. ## âŔ» Áöżó´Ď´Ů.
  1578. def CloseWhisperDialog(self, name):
  1579.  
  1580. if 0 == name:
  1581.  
  1582. if self.dlgWhisperWithoutTarget:
  1583. self.dlgWhisperWithoutTarget.Destroy()
  1584. self.dlgWhisperWithoutTarget = None
  1585.  
  1586. return
  1587.  
  1588. try:
  1589. dlgWhisper = self.whisperDialogDict[name]
  1590. dlgWhisper.Destroy()
  1591. del self.whisperDialogDict[name]
  1592. except:
  1593. import dbg
  1594. dbg.TraceError("interface.CloseWhisperDialog - Failed to find key")
  1595.  
  1596. ## ąöĆ°ŔÇ °łĽö°ˇ ąŮ˛îľúŔ»¶§ ąöĆ°Ŕ» ŔçÁ¤·Ä ÇĎ´Â ÇÔĽö
  1597. def __ArrangeWhisperButton(self):
  1598.  
  1599. screenWidth = wndMgr.GetScreenWidth()
  1600. screenHeight = wndMgr.GetScreenHeight()
  1601.  
  1602. xPos = screenWidth - 70
  1603. yPos = 170 * screenHeight / 600
  1604. yCount = (screenHeight - 330) / 63
  1605. #yCount = (screenHeight - 285) / 63
  1606.  
  1607. count = 0
  1608. for button in self.whisperButtonList:
  1609.  
  1610. button.SetPosition(xPos + (int(count/yCount) * -50), yPos + (count%yCount * 63))
  1611. count += 1
  1612.  
  1613. ## Ŕ̸§Ŕ¸·Î Whisper ąöĆ°Ŕ» ĂŁľĆ ¸®ĹĎÇŘ ÁÖ´Â ÇÔĽö
  1614. ## ąöĆ°Ŕş µńĽĹłĘ¸®·Î ÇĎÁö ľĘ´Â °ÍŔş Á¤·Ä µÇľî ąö·Á ĽřĽ­°ˇ ŔŻÁö µÇÁö ľĘŔ¸¸ç
  1615. ## ŔĚ·Î ŔÎÇŘ ToolTipµéŔĚ ´Ů¸Ą ąöĆ°µéżˇ ŔÇÇŘ °ˇ·ÁÁö±â ¶§ą®ŔĚ´Ů.
  1616. def __FindWhisperButton(self, name):
  1617. for button in self.whisperButtonList:
  1618. if button.name == name:
  1619. return button
  1620.  
  1621. return 0
  1622.  
  1623. ## âŔ» ¸¸µě´Ď´Ů.
  1624. def __MakeWhisperDialog(self, name):
  1625. dlgWhisper = uiWhisper.WhisperDialog(self.MinimizeWhisperDialog, self.CloseWhisperDialog)
  1626. dlgWhisper.BindInterface(self)
  1627. dlgWhisper.LoadDialog()
  1628. dlgWhisper.SetPosition(self.windowOpenPosition*30,self.windowOpenPosition*30)
  1629. self.whisperDialogDict[name] = dlgWhisper
  1630.  
  1631. self.windowOpenPosition = (self.windowOpenPosition+1) % 5
  1632.  
  1633. return dlgWhisper
  1634.  
  1635. ## ąöĆ°Ŕ» ¸¸µě´Ď´Ů.
  1636. def __MakeWhisperButton(self, name):
  1637. whisperButton = uiWhisper.WhisperButton()
  1638. whisperButton.SetUpVisual("d:/ymir work/ui/game/windows/btn_mail_up.sub")
  1639. whisperButton.SetOverVisual("d:/ymir work/ui/game/windows/btn_mail_up.sub")
  1640. whisperButton.SetDownVisual("d:/ymir work/ui/game/windows/btn_mail_up.sub")
  1641. if self.IsGameMasterName(name):
  1642. whisperButton.SetToolTipTextWithColor(name, 0xffffa200)
  1643. else:
  1644. whisperButton.SetToolTipText(name)
  1645. whisperButton.ToolTipText.SetHorizontalAlignCenter()
  1646. whisperButton.SetEvent(ui.__mem_func__(self.ShowWhisperDialog), whisperButton)
  1647. whisperButton.Show()
  1648. whisperButton.name = name
  1649.  
  1650. self.whisperButtonList.insert(0, whisperButton)
  1651. self.__ArrangeWhisperButton()
  1652.  
  1653. return whisperButton
  1654.  
  1655. def __DestroyWhisperButton(self, button):
  1656. button.SetEvent(0)
  1657. self.whisperButtonList.remove(button)
  1658. self.__ArrangeWhisperButton()
  1659.  
  1660. def HideAllWhisperButton(self):
  1661. for btn in self.whisperButtonList:
  1662. btn.Hide()
  1663.  
  1664. def ShowAllWhisperButton(self):
  1665. for btn in self.whisperButtonList:
  1666. btn.Show()
  1667.  
  1668. def __CheckGameMaster(self, name):
  1669. if not self.listGMName.has_key(name):
  1670. return
  1671. if self.whisperDialogDict.has_key(name):
  1672. dlg = self.whisperDialogDict[name]
  1673. dlg.SetGameMasterLook()
  1674.  
  1675. def RegisterGameMasterName(self, name):
  1676. if self.listGMName.has_key(name):
  1677. return
  1678. self.listGMName[name] = "GM"
  1679.  
  1680. def IsGameMasterName(self, name):
  1681. if self.listGMName.has_key(name):
  1682. return True
  1683. else:
  1684. return False
  1685.  
  1686. #####################################################################################
  1687.  
  1688. #####################################################################################
  1689. ### Guild Building ###
  1690.  
  1691. def BUILD_OpenWindow(self):
  1692. self.wndGuildBuilding = uiGuild.BuildGuildBuildingWindow()
  1693. self.wndGuildBuilding.Open()
  1694. self.wndGuildBuilding.wnds = self.__HideWindows()
  1695. self.wndGuildBuilding.SetCloseEvent(ui.__mem_func__(self.BUILD_CloseWindow))
  1696.  
  1697. def BUILD_CloseWindow(self):
  1698. self.__ShowWindows(self.wndGuildBuilding.wnds)
  1699. self.wndGuildBuilding = None
  1700.  
  1701. def BUILD_OnUpdate(self):
  1702. if not self.wndGuildBuilding:
  1703. return
  1704.  
  1705. if self.wndGuildBuilding.IsPositioningMode():
  1706. import background
  1707. x, y, z = background.GetPickingPoint()
  1708. self.wndGuildBuilding.SetBuildingPosition(x, y, z)
  1709.  
  1710. def BUILD_OnMouseLeftButtonDown(self):
  1711. if not self.wndGuildBuilding:
  1712. return
  1713.  
  1714. # GUILD_BUILDING
  1715. if self.wndGuildBuilding.IsPositioningMode():
  1716. self.wndGuildBuilding.SettleCurrentPosition()
  1717. return True
  1718. elif self.wndGuildBuilding.IsPreviewMode():
  1719. pass
  1720. else:
  1721. return True
  1722. # END_OF_GUILD_BUILDING
  1723. return False
  1724.  
  1725. def BUILD_OnMouseLeftButtonUp(self):
  1726. if not self.wndGuildBuilding:
  1727. return
  1728.  
  1729. if not self.wndGuildBuilding.IsPreviewMode():
  1730. return True
  1731.  
  1732. return False
  1733.  
  1734. def BULID_EnterGuildArea(self, areaID):
  1735. # GUILD_BUILDING
  1736. mainCharacterName = player.GetMainCharacterName()
  1737. masterName = guild.GetGuildMasterName()
  1738.  
  1739. if mainCharacterName != masterName:
  1740. return
  1741.  
  1742. if areaID != player.GetGuildID():
  1743. return
  1744. # END_OF_GUILD_BUILDING
  1745.  
  1746. self.wndGameButton.ShowBuildButton()
  1747.  
  1748. def BULID_ExitGuildArea(self, areaID):
  1749. self.wndGameButton.HideBuildButton()
  1750.  
  1751. #####################################################################################
  1752.  
  1753. def IsEditLineFocus(self):
  1754. if self.ChatWindow.chatLine.IsFocus():
  1755. return 1
  1756.  
  1757. if self.ChatWindow.chatToLine.IsFocus():
  1758. return 1
  1759.  
  1760. return 0
  1761.  
  1762. def __OnClickGiftButton(self):
  1763. if self.wndGameButton:
  1764. if not self.wndGiftBox.IsShow():
  1765. self.wndGiftBox.Open()
  1766. else:
  1767. self.wndGiftBox.Close()
  1768.  
  1769. def ClearGift(self):
  1770. if self.wndGameButton:
  1771. self.wndGameButton.HideGiftButton()
  1772. if self.wndGiftBox:
  1773. self.wndGiftBox.Clear()
  1774. self.wndGiftBox.Refresh()
  1775.  
  1776. def OpenGift(self):
  1777. if self.wndGameButton:
  1778. self.wndGameButton.ShowGiftButton()
  1779.  
  1780. def EmptyFunction(self):
  1781. pass
  1782.  
  1783. if __name__ == "__main__":
  1784.  
  1785. import app
  1786. import wndMgr
  1787. import systemSetting
  1788. import mouseModule
  1789. import grp
  1790. import ui
  1791. import localeInfo
  1792.  
  1793. app.SetMouseHandler(mouseModule.mouseController)
  1794. app.SetHairColorEnable(True)
  1795. wndMgr.SetMouseHandler(mouseModule.mouseController)
  1796. wndMgr.SetScreenSize(systemSetting.GetWidth(), systemSetting.GetHeight())
  1797. app.Create(localeInfo.APP_TITLE, systemSetting.GetWidth(), systemSetting.GetHeight(), 1)
  1798. mouseModule.mouseController.Create()
  1799.  
  1800. class TestGame(ui.Window):
  1801. def __init__(self):
  1802. ui.Window.__init__(self)
  1803.  
  1804. localeInfo.LoadLocaleData()
  1805. player.SetItemData(0, 27001, 10)
  1806. player.SetItemData(1, 27004, 10)
  1807.  
  1808. self.interface = Interface()
  1809. self.interface.MakeInterface()
  1810. self.interface.ShowDefaultWindows()
  1811. self.interface.RefreshInventory()
  1812. #self.interface.OpenCubeWindow()
  1813.  
  1814. def __del__(self):
  1815. ui.Window.__del__(self)
  1816.  
  1817. def OnUpdate(self):
  1818. app.UpdateGame()
  1819.  
  1820. def OnRender(self):
  1821. app.RenderGame()
  1822. grp.PopState()
  1823. grp.SetInterfaceRenderState()
  1824.  
  1825. game = TestGame()
  1826. game.SetSize(systemSetting.GetWidth(), systemSetting.GetHeight())
  1827. game.Show()
  1828.  
  1829. app.Loop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement