QB制作台 合成台 蓝图 工作台

QB制作台 合成台 蓝图 工作台

QB制作台 合成台 蓝图 工作作台

此脚本创建了制作台,并允许玩家使用蓝图来解锁新的工艺品。每个长凳最多可容纳 5 个蓝图。玩家可以通过使用 qb-target 与制作台互动来移除蓝图。这将打开制作 UI,他们可以在其中右键单击要删除的蓝图。在这里,玩家还可以右键单击制作配方来制作这些物品。

制作台还附带不需要蓝图的默认工艺品。这些工艺品可以使用 qb-core 的制作代表系统锁定,并且只有在满足这些代表要求时才会出现在玩家面前。

每个替补席的蓝图都不是玩家独有的,而是全局设定的。这意味着,如果玩家 A 添加了蓝图,如果玩家 B 访问同一个制作台,他们也会看到蓝图。

添加蓝图项

  • 将蓝图项添加到 qb-core 的 items.lua 中,设置 [‘useable] = true
  • 要向蓝图添加功能,请使用 server.lua 中的 CreateUseableItem 函数

用于制作高级锁锁器物品的blueprint_advancedlockpick示例。确保 craftItem 与配置配方表中的键匹配。

QBCore.Functions.CreateUseableItem("blueprint_advancedlockpick", function(source)
    local Player = QBCore.Functions.GetPlayer(source)
    if Player.Functions.GetItemByName("blueprint_advancedlockpick") then
        local craftItem = "advancedlockpick"
        local addedBlueprint = blueprintUsed(source, craftItem)
        if addedBlueprint then
            Player.Functions.RemoveItem("blueprint_advancedlockpick", 1)
        end
    end
end)

创建制作台

  • 在 Config.lua 中编辑 Config.craftingBenches,确保每个 id 都是唯一的。按照下面的格式,为每个制作台添加坐标和标题
Config.craftingBenches = {
    {id = "exampleId", coords = vector3(1950.95, 3768.83, 32.21), heading = 48.92},
    {id = "exampleId1", coords = vector3(1948.14, 3765.95, 32.21), heading = 25.53},
}

添加配方

  • Config.defaultRecipes 中的物品不需要蓝图即可制作,如果玩家有足够的制作代表超过物品的阈值,则会自动出现在制作 UI 中

  • Config.blueprintRecipes 中的项目使用蓝图解锁。这些配方没有任何制作代表要求,也没有阈值。但是,此表需要附加值来存储蓝图图像

Config.defaultRecipes 的条目示例

drill = {
    item = "drill",
    label = "Drill",
    image = "drill.png",
    isAttachment = false,
    threshold = 0,
    points = 1,
    components = {
        {item = "aluminum", label = "Aluminum", amount = 10, image = "aluminum.png"},
        {item = "rubber", label = "Rubber", amount = 10, image = "rubber.png"},
        {item = "plastic", label = "Plastic", amount = 10, image = "plastic.png"},
    }
},

Config.blueprintRecipes 的条目示例

drill = {
    item = "drill",
    label = "Drill",
    image = "drill.png",
    isAttachment = false,
    points = 1,
    components = {
        {item = "aluminum", label = "Aluminum", amount = 10, image = "aluminum.png"},
        {item = "rubber", label = "Rubber", amount = 10, image = "rubber.png"},
        {item = "plastic", label = "Plastic", amount = 10, image = "plastic.png"},
    },
    blueprintImage = "blueprint.png" --Additional Value Required
},

添加图像

  • 可以将图像设置为从库存脚本中提取。有关如何执行此操作,请参阅 config.lua。确保清单资源的名称与配置中使用的名称匹配

 

 

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容