如何在es_extended 1.9.4中将默认esx_progressbar替换为ox_lib进度条
替换ESX 1.9.4默认进度条为ox_lib进度条
直接修改es_extended/client/functions.lua文件中65-71行的ESX.Progressbar函数,替换为以下代码:
function ESX.Progressbar(message, length, Options) if GetResourceState("ox_lib") ~= "missing" then -- 适配原Options参数到ox_lib的进度条配置 local progressOpts = type(Options) == "table" and Options or {} return lib.progressBar({ duration = length, label = message, useWhileDead = progressOpts.useWhileDead or false, canCancel = progressOpts.canCancel or true, disable = { car = progressOpts.disableCar or false, move = progressOpts.disableMove or false, combat = progressOpts.disableCombat or false } }) end print("[^1ERROR^7] ^5ox_lib^7 is Missing!") end
关键说明
- 替换原有的
esx_progressbar依赖检查为ox_lib,确保资源加载正常 - 对原函数的
Options参数做了适配映射,保证原有调用逻辑无需大幅修改:- 原
disableMove→ ox_lib的disable.move - 原
disableCar→ ox_lib的disable.car - 原
disableCombat→ ox_lib的disable.combat - 保留了
useWhileDead、canCancel等常用参数的适配
- 原
lib.progressBar会返回布尔值,代表进度条是否被用户主动取消,和原函数的返回逻辑保持一致
注意事项
- 确保服务器已安装并启动
ox_lib,且在server.cfg中配置为优先于es_extended启动 - 若原有脚本调用
ESX.Progressbar时传递了其他自定义参数,可根据ox_lib进度条的配置项自行补充映射规则
内容的提问来源于stack exchange,提问作者Suii
相关产品推荐
相关产品推荐

