github链接:
整体修改为
然后更改文件夹名为 qb-inventory 替换到框架里的 qb-inventory 即可
如果你也喜欢QBCORE框架的开发,相信你在找插件的时候(比如使用ps-inventorty)会发现很多问题,原因是 QB框架函数的更新导致。你使用新QB框架后使用旧的qb插件自然会导致很多问题,所以你需要找最新框架适配的插件,具体可以看作者的更新日期和说明。
同样,如果你想使用PS库存这类旧库存,你需要使用旧QB框架的文件。
我自己在测试的时候发现一个问题,当警察查扣你的库存时,会导致被查的人的库存打不开,简单解决方案:
在 server/main.lua 中 找到
lua:
local function OpenInventoryById(source, targetId)
local QBPlayer = QBCore.Functions.GetPlayer(source)
local TargetPlayer = QBCore.Functions.GetPlayer(tonumber(targetId))
if not QBPlayer or not TargetPlayer then return end
if Player(targetId).state.inv_busy then TriggerClientEvent("pappu-inventorynp:client:closeinv", targetId) end
Wait(1500)
Player(targetId).state.inv_busy = true
OpenInventory("otherplayer", targetId, nil, source)
end
exports('OpenInventoryById', OpenInventoryById)
整体修改为
lua:
local function OpenInventoryById(source, targetId)
local QBPlayer = QBCore.Functions.GetPlayer(source)
local TargetPlayer = QBCore.Functions.GetPlayer(tonumber(targetId))
if not QBPlayer or not TargetPlayer then return end
if Player(targetId).state.inv_busy then TriggerClientEvent("qb-inventory:client:closeinv", targetId) end
Wait(1500)
Player(targetId).state.inv_busy = true
OpenInventory("otherplayer", targetId, nil, source)
--by app
Wait(10000)
TriggerClientEvent("qb-inventory:client:closeinv",source)
Player(targetId).state.inv_busy = false
QBCore.Functions.Notify(source,'你只能打开10秒的库存', 'error')
end
exports('OpenInventoryById', OpenInventoryById)
这只是简单的修改,通过给警察10秒的检查时间后 关闭警察的库存 让被查的人的库存可以打开自己的库存。BUG关键点在于设置
lua:
state.inv_busy
顺便说一句,你只需要把 所有 pappu-inventorynp 更改为 qb-inventory即可
使用VSCODE 按下 ctrl+shift+H然后更改文件夹名为 qb-inventory 替换到框架里的 qb-inventory 即可
最后编辑: