Skip to content
Snippets Groups Projects
Commit 550ce276 authored by dg's avatar dg
Browse files

Dropping (destroying) and item from the inventory will correctly update inventory

git-svn-id: http://svn.net-core.org/repos/t-engine4@3010 51575b47-30f0-44d4-a5cc-537603b46e54
parent 7354858a
No related branches found
No related tags found
No related merge requests found
......@@ -633,7 +633,7 @@ function _M:showEquipInven(title, filter, action)
end)
end
function _M:doDrop(inven, item)
function _M:doDrop(inven, item, on_done)
if game.zone.wilderness then
Dialog:yesnoLongPopup("Warning", "You cannot drop items on the world map.\nIf you drop it, it will be lost forever.", 300, function(ret)
-- The test is reversed because the buttons are reversed, to prevent mistakes
......@@ -642,6 +642,7 @@ function _M:doDrop(inven, item)
game.logPlayer(self, "You destroy %s.", o:getName{do_colour=true, do_count=true})
self:sortInven()
self:useEnergy()
if on_done then on_done() end
end
end, "Cancel", "Destroy")
return
......@@ -650,6 +651,7 @@ function _M:doDrop(inven, item)
self:sortInven(inven)
self:useEnergy()
self.changed = true
if on_done then on_done() end
end
function _M:doWear(inven, item, o)
......
......@@ -60,13 +60,18 @@ function _M:use(item)
local act = item.action
local stop = false
if act == "use" then self.actor:playerUseItem(self.object, self.item, self.inven, self.onuse) stop = true
elseif act == "drop" then self.actor:doDrop(self.inven, self.item)
elseif act == "wear" then self.actor:doWear(self.inven, self.item, self.object)
elseif act == "takeoff" then self.actor:doTakeoff(self.inven, self.item, self.object)
if act == "use" then
self.actor:playerUseItem(self.object, self.item, self.inven, self.onuse) stop = true
self.onuse(self.inven, self.item, self.object, stop)
elseif act == "drop" then
self.actor:doDrop(self.inven, self.item, function() self.onuse(self.inven, self.item, self.object, stop) end)
elseif act == "wear" then
self.actor:doWear(self.inven, self.item, self.object)
self.onuse(self.inven, self.item, self.object, stop)
elseif act == "takeoff" then
self.actor:doTakeoff(self.inven, self.item, self.object)
self.onuse(self.inven, self.item, self.object, stop)
end
self.onuse(self.inven, self.item, self.object, stop)
end
function _M:generateList()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment