'GET_ITEM_DROP' Problem

06/10/2015 01:13 シスイ#1
Guten Abend ^-^

Ich habe leztens den Achievementshop von Lord iRemix eingefügt.
Und irgendwo musste man die
Code:
def SelectEmptySlot
Funktion durch eine andere ersetzen.

Normal
Code:
	def SelectEmptySlot(self, selectedSlotPos):
		if constInfo.GET_ITEM_QUESTION_DIALOG_STATUS() == 1:
			return

		selectedSlotPos = self.__InventoryLocalSlotPosToGlobalSlotPos(selectedSlotPos)

		if mouseModule.mouseController.isAttached():

			attachedSlotType = mouseModule.mouseController.GetAttachedType()
			attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
			attachedItemCount = mouseModule.mouseController.GetAttachedItemCount()
			attachedItemIndex = mouseModule.mouseController.GetAttachedItemIndex()

			if player.SLOT_TYPE_INVENTORY == attachedSlotType:
				itemCount = player.GetItemCount(attachedSlotPos)
				attachedCount = mouseModule.mouseController.GetAttachedItemCount()
				self.__SendMoveItemPacket(attachedSlotPos, selectedSlotPos, attachedCount)

				if item.IsRefineScroll(attachedItemIndex):
					self.wndItem.SetUseMode(False)

			elif player.SLOT_TYPE_PRIVATE_SHOP == attachedSlotType:
				mouseModule.mouseController.RunCallBack("INVENTORY")

			elif player.SLOT_TYPE_SHOP == attachedSlotType:
				net.SendShopBuyPacket(attachedSlotPos)

			elif player.SLOT_TYPE_SAFEBOX == attachedSlotType:

				if player.ITEM_MONEY == attachedItemIndex:
					net.SendSafeboxWithdrawMoneyPacket(mouseModule.mouseController.GetAttachedItemCount())
					snd.PlaySound("sound/ui/money.wav")

				else:
					net.SendSafeboxCheckoutPacket(attachedSlotPos, selectedSlotPos)
					
			elif player.SLOT_TYPE_GUILD_SAFEBOX == attachedSlotType:
				if player.ITEM_MONEY == attachedItemIndex:
					net.SendGuildSafeboxTakeGoldPacket(mouseModule.mouseController.GetAttachedItemCount())
					snd.PlaySound("sound/ui/money.wav")

				else:
					net.SendGuildSafeboxCheckoutPacket(attachedSlotPos, selectedSlotPos)

			elif player.SLOT_TYPE_MALL == attachedSlotType:
				net.SendMallCheckoutPacket(attachedSlotPos, selectedSlotPos)

			mouseModule.mouseController.DeattachObject()
Die von Lord iRemix
Code:
	def SelectEmptySlot(self, selectedSlotPos):
		if constInfo.GET_ITEM_DROP_QUESTION_DIALOG_STATUS() == 1:
			return
 
		selectedSlotPos = self.__InventoryLocalSlotPosToGlobalSlotPos(selectedSlotPos)
 
		if mouseModule.mouseController.isAttached():
 
			attachedSlotType = mouseModule.mouseController.GetAttachedType()
			attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
			attachedItemCount = mouseModule.mouseController.GetAttachedItemCount()
			attachedItemIndex = mouseModule.mouseController.GetAttachedItemIndex()
 
			if player.SLOT_TYPE_INVENTORY == attachedSlotType:
				itemCount = player.GetItemCount(attachedSlotPos)
				attachedCount = mouseModule.mouseController.GetAttachedItemCount()
				self.__SendMoveItemPacket(attachedSlotPos, selectedSlotPos, attachedCount)
 
				if item.IsRefineScroll(attachedItemIndex):
					self.wndItem.SetUseMode(FALSE)
 
			elif player.SLOT_TYPE_PRIVATE_SHOP == attachedSlotType:
				mouseModule.mouseController.RunCallBack("INVENTORY")
 
			elif player.SLOT_TYPE_SHOP == attachedSlotType:
				if constInfo.IsItemShop == 0:
					net.SendShopBuyPacket(attachedSlotPos)
				else:
					import uiShop
					self.wndShop = uiShop.ShopDialog()
					self.wndShop.BuyFromIS(attachedSlotPos)
 
			elif player.SLOT_TYPE_SAFEBOX == attachedSlotType:
 
				if player.ITEM_MONEY == attachedItemIndex:
					net.SendSafeboxWithdrawMoneyPacket(mouseModule.mouseController.GetAttachedItemCount())
					snd.PlaySound("sound/ui/money.wav")
 
				else:
					net.SendSafeboxCheckoutPacket(attachedSlotPos, selectedSlotPos)
 
			elif player.SLOT_TYPE_MALL == attachedSlotType:
				net.SendMallCheckoutPacket(attachedSlotPos, selectedSlotPos)
				mouseModule.mouseController.DeattachObject()
syserr Fehler:
Code:
0610 00:54:32361 :: Traceback (most recent call last):

0610 00:54:32361 ::   File "ui.py", line 1458, in OnSelectEmptySlot

0610 00:54:32361 ::   File "ui.py", line 87, in __call__

0610 00:54:32362 ::   File "ui.py", line 78, in __call__

0610 00:54:32362 ::   File "uiInventory.py", line 656, in SelectEmptySlot

0610 00:54:32362 :: AttributeError
0610 00:54:32362 :: : 
0610 00:54:32362 :: 'module' object has no attribute 'GET_ITEM_DROP_QUESTION_DIALOG_STATUS'
0610 00:54:32362 ::
Mein Problem ist jetzt dass ich Items in Inventar zwar ancklicken kann,
jedoch kann ich die dann nicht irgendwo anders ablegen.
Könnte mir jemand vielleicht behilfhlich sein? :confused:
06/11/2015 07:30 シスイ#2
Suche immer noch nach Hilfe :s
06/11/2015 07:44 .K0rí#3
Code:
	def SelectEmptySlot(self, selectedSlotPos):
		if constInfo.GET_ITEM_QUESTION_DIALOG_STATUS() == 1:
			return
 
		selectedSlotPos = self.__InventoryLocalSlotPosToGlobalSlotPos(selectedSlotPos)
 
		if mouseModule.mouseController.isAttached():
 
			attachedSlotType = mouseModule.mouseController.GetAttachedType()
			attachedSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
			attachedItemCount = mouseModule.mouseController.GetAttachedItemCount()
			attachedItemIndex = mouseModule.mouseController.GetAttachedItemIndex()
 
			if player.SLOT_TYPE_INVENTORY == attachedSlotType:
				itemCount = player.GetItemCount(attachedSlotPos)
				attachedCount = mouseModule.mouseController.GetAttachedItemCount()
				self.__SendMoveItemPacket(attachedSlotPos, selectedSlotPos, attachedCount)
 
				if item.IsRefineScroll(attachedItemIndex):
					self.wndItem.SetUseMode(FALSE)
 
			elif player.SLOT_TYPE_PRIVATE_SHOP == attachedSlotType:
				mouseModule.mouseController.RunCallBack("INVENTORY")
 
			elif player.SLOT_TYPE_SHOP == attachedSlotType:
				if constInfo.IsItemShop == 0:
					net.SendShopBuyPacket(attachedSlotPos)
				else:
					import uiShop
					self.wndShop = uiShop.ShopDialog()
					self.wndShop.BuyFromIS(attachedSlotPos)
 
			elif player.SLOT_TYPE_SAFEBOX == attachedSlotType:
 
				if player.ITEM_MONEY == attachedItemIndex:
					net.SendSafeboxWithdrawMoneyPacket(mouseModule.mouseController.GetAttachedItemCount())
					snd.PlaySound("sound/ui/money.wav")
 
				else:
					net.SendSafeboxCheckoutPacket(attachedSlotPos, selectedSlotPos)
 
			elif player.SLOT_TYPE_MALL == attachedSlotType:
				net.SendMallCheckoutPacket(attachedSlotPos, selectedSlotPos)
				mouseModule.mouseController.DeattachObject()

.Kori