Я провел много исследований по системе инвентаризации для игры «укажи и щелкни» в Lua и Corona. Я наткнулся на этот пример, я делаю что-то похожее на это, но мне нужна система динамического инвентаря. Я имею в виду, что если у меня есть 4 слота, и все они заполнены, пятый объект переходит к следующему слоту, поэтому справа будет стрелка, чтобы я мог щелкнуть и перейти на следующую страницу. И представьте, что есть 5 предметов, и у меня есть 4 слота, пятый слот будет на следующей странице. Я использую третий элемент, и тогда третий слот будет пуст, поэтому я хочу, чтобы четвертый и пятый элементы автоматически перемещались обратно в третий и четвертый слоты. Мне трудно в этом разобраться. Спасибо за аванс.
local myInventoryBag={}
local maxItems = 10 -- change this to how many you want
myInventoryBag[5]=3 -- Hammer for instance
myInventoryBag[4]=7 -- A metal Pipe for instance
local function getImageForItem(thisItem)
local itemNumber = tonumber(thisItem)
local theImage=""
if itemNumber==3 then
theImage="hammer.png"
elseif itemNumber == 7 then
theImage="metalpipe.png"
elseif ... -- for other options
...
else
return nil
end
local image = display.newImage(theImage)
return image
end
local function displayItems()
local i
for i=1,#myInventoryBag do
local x = 0 -- calculate based on the i
local y = 0 -- calculate based on the i
local image = getImageForItem(myInventoryBag[i])
if image==nil then return end
image.setReferencePoint(display.TopLeftReferencePoint)
image.x = x
image.y = y
end
end