0

所以我正在为 FiveM 服务器编写脚本,我有一个问题。我对LUA有点陌生,所以请记住这一点。据我了解,这行代码是这样做的,它检查库存中的项目是否大于 0,然后插入 x 项目。问题是玩家可以插入比库存中更多的物品。我的意思是什么?玩家有 10 块巧克力,但他可以在桌子上添加 20 块。有没有办法检查他想放多少物品,然后检查他的库存,然后将其添加到表格中?这是执行此操作的代码行。

local elements = {}

   for i=1, #inventory.items, 1 do

     local item = inventory.items[i]

     if item.count > 0 then
       table.insert(elements, {label = item.label .. ' x' .. item.count, type = 'item_standard', value = item.name})
     end

   end
4

1 回答 1

0
-- create an empty table
local elements = {}
-- for each item in some inventory list
for i=1, #inventory.items, 1 do
  -- reference that item
  local item = inventory.items[i]
   -- I assume you can have more than one of each items so if you have at least one
   if item.count > 0 then
     -- insert a new table with info about that item into elements
     table.insert(elements, {label = item.label .. ' x' .. item.count, type = 'item_standard', value = item.name})
   end

end

此代码不管理任何计数。让这段代码可以添加比玩家更多的项目的唯一方法是多次运行该循环。它只是将信息从一个列表传输到另一个列表。当您从玩家库存中添加这些物品时,没有必要将他们的数量与他的库存进行比较

于 2021-06-02T17:09:31.730 回答