Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local function dropDraggable(self, x, y)
- self.x, self.y = x or self.x, y or self.y
- dragTargets[self], dragTargets[self.id] = nil
- Runtime:removeEventListener('touch', self)
- self.oldX, self.oldY, self.id = nil
- enableButtons()
- end
- function trackDrag(self, event)
- local checkViewItemX, checkViewItemY
- if event.id == self.id then
- if event.phase == "moved" then
- self:toFront()
- self.x, self.y = (event.x)-(32), (event.y)-32
- checkViewItemX = self.x
- checkViewItemY = self.y
- if (checkViewItemX >= 215 and checkViewItemX <=275) and (checkViewItemY >= 8 and checkViewItemY <=68) then
- ItemInViewBox = true
- else
- ItemInViewBox = false
- --displayInventory()
- group.pack.elements.InventoryBG:play(inventory_background)
- group.pack.elements.InventoryBG:currentFrame(1)
- group.pack.elements.InventoryBG:pause()
- group.pack.groups['TextLayerViewItem'].isVisible = false
- group.pack.elements.theViewDisplay.isVisible = false
- group.pack.elements.ItemUsage.isVisible = false
- --for i = 1, 9 do
- -- group.pack.elements["Equip_".. (i) ].isVisible = true
- --end
- group.pack.elements["Equip_1"].isVisible = true
- group.pack.elements["Equip_2"].isVisible = true
- group.pack.elements["Equip_3"].isVisible = true
- group.pack.elements["Equip_4"].isVisible = true
- group.pack.elements["Equip_5"].isVisible = true
- group.pack.elements["Equip_6"].isVisible = true
- group.pack.elements["Equip_7"].isVisible = true
- group.pack.elements["Equip_8"].isVisible = true
- group.pack.elements["Equip_9"].isVisible = true
- end
- elseif event.phase == "ended" then
- self:Drop(self.oldX, self.oldY)
- end
- end
- end
- function startDrag(event)
- local id, target = event.id, event.target
- target:toFront()
- --atrace(xinspect(event.target))
- if event.phase == "began" then
- displayInventory()
- disableButtons()
- dragTargets[id], dragTargets[target] = target, id
- target.id = id
- target.oldX, target.oldY = target.x, target.y
- Runtime:addEventListener('touch', target)
- return true
- end
- end
- function makeDraggable(object) -- << Turned to local
- object.touch = trackDrag
- object.Drop = dropDraggable
- object:addEventListener('touch', startDrag)
- -- print (object.libraryName)
- return object
- end
- function makeUndraggable(object) -- << Turned to local
- object.touch = nil
- object.Drop = nil
- object:removeEventListener('touch', startDrag)
- return object
- end
- function setDragStates() -- << Turned to local
- for i = 1, 9 do --<--------------------------- Make the Equipped Items Dragable or Undraggable
- if playerData.playerEquipped[i].itemName == "blank" then
- makeUndraggable(group.pack.elements["Equip_" .. i])
- print (" SET DRAG STATES - undraggable equipped items:" .. i )
- else
- makeDraggable(group.pack.elements["Equip_" .. i] )
- print (" SET DRAG STATES - draggable equipped items:" .. i )
- end
- end
- for i = 1, 10 do --<--------------------------- Make the Inventory Items Dragable or Undraggable
- if playerData.playerInventory[i].itemName == "blank" then
- makeUndraggable(group.pack.elements["Item_" .. i])
- --print (" SET DRAG STATES - undraggable Inventory items:" .. i )
- else
- makeDraggable(group.pack.elements["Item_" .. i] )
- --print (" SET DRAG STATES - draggable Inventory items:" .. i )
- end
- end
- --<--------------------------- Make the theDropItem Items Dragable or Undraggable
- if playerItemInPlayerArea.itemName == "blank" then
- --group.pack.elements.DropItemAvailable.isVisible = false
- makeUndraggable(group.pack.elements.theDropItem)
- print (" SET DRAG STATES - undraggable playerArea item: true" )
- else
- --group.pack.elements.theDropItemAvailable.isVisible = true
- makeDraggable(group.pack.elements.theDropItem)
- print (" SET DRAG STATES - draggable playerArea item: true" )
- end
- end
- function Well_DropItem:touch(event)
- local saveTheItemType = "foo"
- local carry = dragTargets[event.id]
- print ("HERE!")
- print (playerItemInPlayerArea.itemName)
- print (xinspect(carry.libraryName))
- if event.phase == "ended" and carry then
- carry:Drop(carry.oldX, carry.oldY)
- transferItem = playerItemInPlayerArea
- if carry.libraryName == "playerInventory" and playerItemInPlayerArea.itemName=="blank" then
- playerItemInPlayerArea = playerData.playerInventory[carry.itemNumber]
- playerData.playerInventory[carry.itemNumber] = transferItem
- playerItemInPlayerArea.itemXY = playerData.playerInfo.playerXY
- table.insert(currentMap.itemList, playerItemInPlayerArea)
- elseif carry.libraryName == "playerInventory" then
- print (replaceItemInitemList)
- print (" WHAT IS THE ITEM IN THE ITEM LIST??")
- determinReplaceItemInitemList()
- print (replaceItemInitemList)
- playerItemInPlayerArea = playerData.playerInventory[carry.itemNumber]
- playerData.playerInventory[carry.itemNumber] = transferItem
- playerItemInPlayerArea.itemXY = playerData.playerInfo.playerXY
- currentMap.itemList[replaceItemInitemList]=playerItemInPlayerArea
- end
- print (carry.libraryName)
- -- Right here... if you need to check if it is armor/shield
- if carry.libraryName == "playerEquipped" and playerItemInPlayerArea.itemName=="blank" then
- atrace(xinspect(transferItem))
- print (" SEE THIS ??? ")
- transferItem.itemType = playerData.playerEquipped[carry.itemNumber].itemType
- playerItemInPlayerArea = playerData.playerEquipped[carry.itemNumber]
- playerItemInPlayerArea.itemXY = playerData.playerInfo.playerXY
- playerData.playerEquipped[carry.itemNumber] = transferItem
- table.insert(currentMap.itemList, playerItemInPlayerArea)
- elseif carry.libraryName == "playerEquipped" and playerItemInPlayerArea.itemType==playerData.playerEquipped[carry.itemNumber].itemType then
- print (" SEE THIS ??? ")
- atrace(xinspect(transferItem))
- transferItem.itemType = playerData.playerEquipped[carry.itemNumber].itemType
- playerItemInPlayerArea = playerData.playerEquipped[carry.itemNumber]
- playerItemInPlayerArea.itemXY = playerData.playerInfo.playerXY
- playerData.playerEquipped[carry.itemNumber] = transferItem
- dropThatItem()
- end
- if carry.libraryName == "playerEquipped" and playerItemInPlayerArea.itemType == "weapon" or playerItemInPlayerArea.ItemType == "armor" then
- print (" SEE THIS ??? ")
- playerVictoryPose = "Yes"
- end
- if carry.libraryName == "playerEquipped" and playerItemInPlayerArea.itemType == "weapon" or playerItemInPlayerArea.ItemType == "armor" then
- print (" SEE THIS ??? ")
- playerVictoryPose = "Yes"
- end
- transferItem = nil
- displayInventory()
- setDragStates()
- return true
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement