Fix ta4 chest take_item bug
This commit is contained in:
parent
72d01ef925
commit
6e54f2b820
@ -91,15 +91,15 @@ end
|
|||||||
|
|
||||||
function inv_lib.take_item(pos, inv, listname, num, stacks)
|
function inv_lib.take_item(pos, inv, listname, num, stacks)
|
||||||
local mem = techage.get_mem(pos)
|
local mem = techage.get_mem(pos)
|
||||||
local size = #stacks
|
|
||||||
mem.ta_startpos = mem.ta_startpos or 1
|
mem.ta_startpos = mem.ta_startpos or 1
|
||||||
for idx = mem.ta_startpos, mem.ta_startpos + size do
|
local size = #stacks
|
||||||
idx = (idx % size) + 1
|
for i = 1, size do
|
||||||
|
local idx = stacks[((i + mem.ta_startpos) % size) + 1]
|
||||||
local stack = inv:get_stack(listname, idx)
|
local stack = inv:get_stack(listname, idx)
|
||||||
local taken = stack:take_item(num)
|
local taken = stack:take_item(num)
|
||||||
if taken:get_count() > 0 then
|
if taken:get_count() > 0 then
|
||||||
inv:set_stack(listname, idx, stack)
|
inv:set_stack(listname, idx, stack)
|
||||||
mem.ta_startpos = idx
|
mem.ta_startpos = mem.ta_startpos + i
|
||||||
return taken
|
return taken
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user