Verkaufsdialog bug?

02/28/2018 00:40 FettKopf22#1
Hallo erstmal,
vorweg möchte ich sagen, dass ich schon länger nach einer lösung suche. Da ich aber nicht weiß wie ich diesen "bug" nennen soll oder wie der heißt, habe ich nichts gefunden was mir helfen könnte.

Hier das problem
..
Es wird nur das Item auf der 1. Seite und 2. Slot im Dialog angezeigt.
Gruß FettKopf
03/08/2018 23:17 FettKopf22#2
Hat niemand eine Idee woran es liegen könnte? :(
08/11/2020 18:30 G.I Duke#3
Der Thread ist zwar älter dennoch finde ich nichts hierzu. Ich schlage mich
mit dem selben Problem rum. Kennt ja jemand eine Lösung zu bzw. wieso es
so ist und wie man das fixxen kann ?

kind regards
08/11/2020 18:36 ThaRielFliege#4
Poste mal deine def SellAttachedItem(self): aus der uishop.py oder lad die uishop.py hoch.
08/11/2020 21:30 G.I Duke#5
Quote:
Originally Posted by ThaRielFliege View Post
Poste mal deine def SellAttachedItem(self): aus der uishop.py oder lad die uishop.py hoch.
hier die ganze uishop.py und danke für die Antwort!
08/11/2020 21:59 ThaRielFliege#6
Tausch das:
HTML Code:
            if localeInfo.IsBRAZIL():
                itemIndex = player.GetItemIndex(attachedSlotPos)
                item.SelectItem(itemIndex)
            else:
                item.SelectItem(attachedItemIndex)
damit aus:

HTML Code:
if player.SLOT_TYPE_INVENTORY == attachedSlotType:
			itemIndex = player.GetItemIndex(attachedSlotPos)
			item.SelectItem(itemIndex)

[Only registered and activated users can see links. Click Here To Register...]
08/11/2020 22:06 G.I Duke#7
Quote:
Originally Posted by ThaRielFliege View Post
Tausch das:
HTML Code:
            if localeInfo.IsBRAZIL():
                itemIndex = player.GetItemIndex(attachedSlotPos)
                item.SelectItem(itemIndex)
            else:
                item.SelectItem(attachedItemIndex)
damit aus:

HTML Code:
if player.SLOT_TYPE_INVENTORY == attachedSlotType:
			itemIndex = player.GetItemIndex(attachedSlotPos)
			item.SelectItem(itemIndex)

[Only registered and activated users can see links. Click Here To Register...]
Leider immernoch, egal welches Item auf Slot 2 liegt wird angezeigt
08/11/2020 22:20 ThaRielFliege#8
Lad mal deine mousemodule.py hoch.
Ich hab das vor ewigkeiten mal gefixxt weiß nur nicht mehr genau an was es lag, war glaube weil er den slot nicht richtig bekommen hat.
08/11/2020 22:21 G.I Duke#9
Quote:
Originally Posted by ThaRielFliege View Post
Lad mal deine mousemodule.py hoch.
Ich hab das vor ewigkeiten mal gefixxt weiß nur nicht mehr genau an was es lag, war glaube weil er den slot nicht richtig bekommen hat.
Hier die mousemodule.py , und echt danke man dass du mir da hilfst !

08/11/2020 22:32 ThaRielFliege#10
oke uiinventory brauch ich noch
08/11/2020 22:35 G.I Duke#11
Quote:
Originally Posted by ThaRielFliege View Post
oke uiinventory brauch ich noch

hier bitteschön
08/12/2020 00:09 ThaRielFliege#12
Für die, die den Bug auch haben einfach die 2 funktionen in der uishop.py ersetzen.

HTML Code:
	def SellAttachedItem(self):

		if shop.IsPrivateShop():
			mouseModule.mouseController.DeattachObject()
			return

		attachedSlotType = mouseModule.mouseController.GetAttachedType()
		attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
		attachedCount = mouseModule.mouseController.GetAttachedItemCount()

		if player.SLOT_TYPE_INVENTORY == attachedSlotType:
			itemIndex = player.GetItemIndex(attachedSlotPos)
			item.SelectItem(itemIndex)
			
			if item.IsAntiFlag(item.ANTIFLAG_SELL):
				popup = uiCommon.PopupDialog()
				popup.SetText(localeInfo.SHOP_CANNOT_SELL_ITEM)
				popup.SetAcceptEvent(self.__OnClosePopupDialog)
				popup.Open()
				self.popup = popup
				return

			if player.IsValuableItem(attachedSlotPos):

				itemPrice = item.GetISellItemPrice()

				if item.Is1GoldItem():
					itemPrice = attachedCount / itemPrice / 5
				else:
					itemPrice = itemPrice * max(1, attachedCount) / 5

				itemName = item.GetItemName()

				questionDialog = uiCommon.QuestionDialog()
				questionDialog.SetText(localeInfo.DO_YOU_SELL_ITEM(itemName, attachedCount, itemPrice))

				questionDialog.SetAcceptEvent(lambda arg1=attachedSlotPos, arg2=attachedCount: self.OnSellItem(arg1, arg2))
				questionDialog.SetCancelEvent(ui.__mem_func__(self.OnCloseQuestionDialog))
				questionDialog.Open()
				self.questionDialog = questionDialog
		
				constInfo.SET_ITEM_QUESTION_DIALOG_STATUS(1)

			else:
				self.OnSellItem(attachedSlotPos, attachedCount)

		else:
			snd.PlaySound("sound/ui/loginfail.wav")

		mouseModule.mouseController.DeattachObject()

	def OnSellItem(self, slotPos, count):
		net.SendShopSellPacketNew(slotPos, count)
		snd.PlaySound("sound/ui/money.wav")
		self.OnCloseQuestionDialog()