- Game.py aratılır def __DropItem(self, attachedType, attachedItemIndex satır içinde tekrar aratılır (aynı işlem 2 kere yapılır)
- questionText = localeInfo.HOW_MANY_ITEM_DO_YOU_DROP(dropItemName, attachedItemCount) ve alttaki ile değiştirilir
- if app.WJ_NEW_DROP_DIALOG:
- questionText = localeInfo.HOW_MANY_ITEM_DO_YOU_DROP_NEW(dropItemName, attachedItemCount, localeInfo.NumberToMoneyString(player.GetISellItemPrice(attachedItemSlotPos)))
- else:
- questionText = localeInfo.HOW_MANY_ITEM_DO_YOU_DROP(dropItemName, attachedItemCount)
- Tekrar aratılır: itemDropQuestionDialog = uiCommon.QuestionDialog() alttaki ile değiştirilir
- if app.WJ_NEW_DROP_DIALOG:
- itemDropQuestionDialog = uiCommon.QuestionDialogItem()
- else:
- itemDropQuestionDialog = uiCommon.QuestionDialog()
- Aratılır: itemDropQuestionDialog.SetAcceptEvent(lambda arg=True: self.RequestDropItem(arg)) altına eklenir
- if app.WJ_NEW_DROP_DIALOG:
- itemDropQuestionDialog.SetDestroyEvent(lambda arg=True: self.RequestDestroyItem(arg))
- itemDropQuestionDialog.SetSellEvent(lambda arg=True: self.RequestSellItem(arg))
- Game.py içinde uygun bir yere eklenir;
- if app.WJ_NEW_DROP_DIALOG:
- def __SendDestroyItemPacket(self, itemVNum, itemInvenType = player.INVENTORY):
- if uiPrivateShopBuilder.IsBuildingPrivateShop():
- chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.DROP_ITEM_FAILURE_PRIVATE_SHOP)
- return
- net.SendItemDestroyPacket(itemVNum)
- def __SendSellItemPacket(self, itemVNum, itemInvenTyoe = player.INVENTORY):
- if uiPrivateShopBuilder.IsBuildingPrivateShop():
- chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.DROP_ITEM_FAILURE_PRIVATE_SHOP)
- return
- net.SendItemSellPacket(itemVNum)
- def RequestDestroyItem(self, answer):
- if not self.itemDropQuestionDialog:
- return
- if answer:
- dropType = self.itemDropQuestionDialog.dropType
- dropNumber = self.itemDropQuestionDialog.dropNumber
- if player.SLOT_TYPE_INVENTORY == dropType:
- if dropNumber == player.ITEM_MONEY:
- return
- else:
- self.__SendDestroyItemPacket(dropNumber)
- self.itemDropQuestionDialog.Close()
- self.itemDropQuestionDialog = None
- constInfo.SET_ITEM_QUESTION_DIALOG_STATUS(0)
- def RequestSellItem(self, answer):
- if not self.itemDropQuestionDialog:
- return
- if answer:
- dropType = self.itemDropQuestionDialog.dropType
- dropNumber = self.itemDropQuestionDialog.dropNumber
- if player.SLOT_TYPE_INVENTORY == dropType:
- if dropNumber == player.ITEM_MONEY:
- return
- else:
- self.__SendSellItemPacket(dropNumber)
- self.itemDropQuestionDialog.Close()
- self.itemDropQuestionDialog = None
- constInfo.SET_ITEM_QUESTION_DIALOG_STATUS(0)
- localeinfo.py içinde aratılır: def NumberToMoneyString(n) : satır sonuna eklenir
- if app.WJ_NEW_DROP_DIALOG:
- def HOW_MANY_ITEM_DO_YOU_DROP_NEW(dropItemName, dropItemCount, sellItemPrice) :
- if dropItemCount > 1 :
- return HOW_MANY_ITEM_DO_YOU_DROP_NEW2 % (dropItemName, dropItemCount, sellItemPrice)
- else :
- return HOW_MANY_ITEM_DO_YOU_DROP_NEW1 % (dropItemName, sellItemPrice)
- uicommon.py aratılır : class MoneyInputDialog(ui.ScriptWindow): satır sonuna eklenir
- if app.WJ_NEW_DROP_DIALOG:
- class QuestionDialogItem(ui.ScriptWindow):
- def __init__(self):
- ui.ScriptWindow.__init__(self)
- self.__CreateDialog()
- def __del__(self):
- ui.ScriptWindow.__del__(self)
- def __CreateDialog(self):
- pyScrLoader = ui.PythonScriptLoader()
- pyScrLoader.LoadScriptFile(self, "uiscript/questiondialog_item.py")
- self.board = self.GetChild("board")
- self.textLine = self.GetChild("message")
- self.acceptButton = self.GetChild("drop")
- self.destroyButton = self.GetChild("destroy")
- self.sellButton = self.GetChild("sell")
- self.cancelButton = self.GetChild("cancel")
- self.itemPic = self.GetChild("image")
- try:
- self.itemPic.LoadImage(item.GetIconImageFileName())
- except:
- dbg.TraceError("AttachMetinDialog.Open.LoadImage - Failed to find item data")
- def Open(self):
- self.SetCenterPosition()
- self.SetTop()
- self.Show()
- def Close(self):
- self.Hide()
- def SetWidth(self, width):
- height = self.GetHeight()
- self.SetSize(width, height)
- self.board.SetSize(width, height)
- self.SetCenterPosition()
- self.UpdateRect()
- def SAFE_SetAcceptEvent(self, event):
- self.acceptButton.SAFE_SetEvent(event)
- def SAFE_SetCancelEvent(self, event):
- self.cancelButton.SAFE_SetEvent(event)
- def SetAcceptEvent(self, event):
- self.acceptButton.SetEvent(event)
- def SetDestroyEvent(self, event):
- self.destroyButton.SetEvent(event)
- def SetSellEvent(self, event):
- self.sellButton.SetEvent(event)
- def SetCancelEvent(self, event):
- self.cancelButton.SetEvent(event)
- def SetText(self, text):
- self.textLine.SetText(text)
- def SetAcceptText(self, text):
- self.acceptButton.SetText(text)
- def SetCancelText(self, text):
- self.cancelButton.SetText(text)
- def OnPressEscapeKey(self):
- self.Close()
- return True
- locale_tr packında locale_game.txt eklenir
- HOW_MANY_ITEM_DO_YOU_DROP_NEW1 [ |cff8BBDFF|H|h%s|h|r ] Nesnesi ne yapılsın? (%s)
- HOW_MANY_ITEM_DO_YOU_DROP_NEW2 [ |cff8BBDFF|H|h%s|h|r |cffBCE55C|H|hx%d|h|r ] Nesneleri ne yapılsın? (%s)