fix(qb-core): post-update recovery + centralizare notify 17mov_Hud
Restaurat jobs.lua din git (Quasar fork a suprascris joburile 17mov). Adăugat item map în items.lua (lipsea, rupt rv-maphold). Setat licences.driver = false în config.lua. Override QBCore.Functions.Notify + QBCore:Notify event → 17mov_Hud:ShowNotification (toate notificările merg automat prin 17mov_Hud).
This commit is contained in:
@@ -6,12 +6,19 @@
|
||||
|
||||
-- Add car keys
|
||||
function WSB.giveCarKeys(plate, _model, _vehicle)
|
||||
exports['qs-vehiclekeys']:GiveKeys(plate, _model, true)
|
||||
if GetResourceState('wasabi_carlock') == 'started' then
|
||||
return exports.wasabi_carlock:GiveKey(plate) -- Leave like this if using wasabi_carlock
|
||||
end
|
||||
|
||||
if GetResourceState('qb-vehiclekeys') == 'started' then
|
||||
return TriggerServerEvent('qb-vehiclekeys:server:AcquireVehicleKeys', plate)
|
||||
end
|
||||
end
|
||||
|
||||
function WSB.removeCarKeys(plate, _model, _vehicle)
|
||||
exports['qs-vehiclekeys']:RemoveKeys(plate, _model)
|
||||
if GetResourceState('wasabi_carlock') == 'started' then
|
||||
return exports.wasabi_carlock:RemoveKey(plate)
|
||||
end
|
||||
end
|
||||
|
||||
exports('giveCarKeys', WSB.giveCarKeys) -- Export for use in other scripts
|
||||
|
||||
@@ -12,11 +12,57 @@ if wasabi_uikit == 'started' or wasabi_uikit == 'starting' then uikitFound = tru
|
||||
|
||||
-- Notifications
|
||||
function WSB.showNotification(title, desc, style, icon, id)
|
||||
local QBCore = exports['qb-core']:GetCoreObject()
|
||||
local message = desc and (title .. ' - ' .. desc) or title
|
||||
local notifyType = style or 'primary'
|
||||
|
||||
QBCore.Functions.Notify(message, notifyType)
|
||||
-- Edit code below to use your own notification system
|
||||
|
||||
-- (This supports wasabi_notify, bridge's built-in notify, and ox_lib is commented out if desired!)
|
||||
-- Get wasabi_notify here: https://wasabiscripts.com/product/6215100
|
||||
|
||||
if GetResourceState('wasabi_notify') == 'started' then -- If using wasabi_notify, automatic detection
|
||||
if style == 'inform' or style == 'primary' then style = 'info' end
|
||||
|
||||
return exports.wasabi_notify:notify(title, desc, Config.Notifications.defaults.time or 3500, style or 'info',
|
||||
Config.NotificationSound or Config.Notifications.defaults.sound or false, icon, id)
|
||||
end
|
||||
|
||||
if uikitFound then
|
||||
return exports.wasabi_uikit:Notification(title, desc, style or 'info', id, icon)
|
||||
end
|
||||
|
||||
--[[ Remove this line if you are using lation_ui: https://lationscripts.com/product/modern-ui
|
||||
if GetResourceState('lation_ui') == 'started' then -- If using lation_ui and not wasabi_notify automatic detection
|
||||
if style == 'inform' or style == 'primary' then style = 'info' end
|
||||
|
||||
return exports.lation_ui:notify({
|
||||
title = title,
|
||||
message = desc or nil,
|
||||
id = id or nil,
|
||||
position = 'top-right',
|
||||
icon = icon or nil,
|
||||
duration = 3500,
|
||||
type = style or 'info'
|
||||
})
|
||||
end
|
||||
]] -- Remove this line if you are using lation_ui
|
||||
|
||||
--[[
|
||||
if GetResourceState('ox_lib') == 'started' then -- If using ox_lib and not wasabi_notfy automatic detection
|
||||
if style == 'info' then style = 'inform' end
|
||||
exports.ox_lib:notify({
|
||||
title = title,
|
||||
description = desc or false,
|
||||
id = id or false,
|
||||
position = 'top-right',
|
||||
icon = icon or false,
|
||||
duration = 3500,
|
||||
type = style or 'inform'
|
||||
})
|
||||
return
|
||||
end
|
||||
]] --
|
||||
|
||||
return ShowNotification(title, desc, style, icon, id) -- Default bridge built-in notification system
|
||||
|
||||
-- Edit Code above to use your own notification system
|
||||
end
|
||||
|
||||
RegisterNetEvent('wasabi_bridge:notify', function(title, desc, style, icon, id)
|
||||
|
||||
@@ -15,25 +15,38 @@ if wasabi_uikit == 'started' or wasabi_uikit == 'starting' then uikitFound = tru
|
||||
---@param data table Same data as used in ox_lib progress bar/circle. Subject to change.
|
||||
---@return boolean
|
||||
function WSB.progressUI(data, type)
|
||||
local QBCore = exports['qb-core']:GetCoreObject()
|
||||
local success = false
|
||||
|
||||
QBCore.Functions.Progressbar(data.name or 'progress', data.label or 'Loading...', data.duration or 5000, data.useWhileDead or false, data.canCancel or false, {
|
||||
disableMovement = data.disable and data.disable.move or false,
|
||||
disableCarMovement = data.disable and data.disable.car or false,
|
||||
disableMouse = data.disable and data.disable.mouse or false,
|
||||
disableCombat = data.disable and data.disable.combat or false,
|
||||
}, data.anim or {}, data.prop or {}, data.propTwo or {}, function()
|
||||
success = true
|
||||
end, function()
|
||||
success = false
|
||||
end)
|
||||
|
||||
while success == false do
|
||||
Wait(100)
|
||||
|
||||
-- Remove under this line to use your own progress bar/circle system or ox_lib
|
||||
if not data.color then data.color = Config.DefaultColor end
|
||||
if uikitFound then
|
||||
type = type == 'progressCircle' and 'circle' or 'bar'
|
||||
return exports.wasabi_uikit:ProgressBar(data, type) or false
|
||||
end
|
||||
|
||||
return success
|
||||
return ProgressUI(data, type) or false
|
||||
-- Remove above this line if you are using your own progress bar/circle system or ox_lib
|
||||
|
||||
--[[ Remove this line if you are using lation_ui: https://lationscripts.com/product/modern-ui
|
||||
local lation_ui = GetResourceState('lation_ui')
|
||||
if lation_ui ~= 'started' and lation_ui ~= 'starting' then
|
||||
print('^0[^3WARNING^0] ^1lation_ui^0 is not running, please ensure it is started before using ^wsb.progressUI or use default!^0')
|
||||
return false
|
||||
end
|
||||
return exports.lation_ui:progressBar(data)
|
||||
]] -- Remove this line if you are using lation_ui
|
||||
|
||||
--[[
|
||||
local oxLib = GetResourceState('ox_lib')
|
||||
if oxLib ~= 'started' and oxLib ~= 'starting' then
|
||||
print(
|
||||
'^0[^3WARNING^0] ^1ox_lib^0 is not running, please ensure it is started before using ^wsb.progressUI or use default!^0')
|
||||
return false
|
||||
end
|
||||
if type == 'progressBar' then
|
||||
return exports.ox_lib:progressBar(data)
|
||||
else
|
||||
return exports.ox_lib:progressCircle(data)
|
||||
end
|
||||
]]
|
||||
end
|
||||
|
||||
-- Compatibility functions for ox_lib
|
||||
|
||||
@@ -40,7 +40,7 @@ function WSB.skillCheck(data)
|
||||
if not data.keys then data.keys = 'e' end
|
||||
|
||||
if uikitFound then
|
||||
return exports.wasabi_uikit:SkillCircle(data.difficulty, type(data.keys) == 'table' and data.keys or {data.keys}) or false
|
||||
return exports.wasabi_uikit:SkillCircle({data.difficulty}, type(data.keys) == 'table' and data.keys or {data.keys}) or false
|
||||
end
|
||||
|
||||
return SkillCheck(data.difficulty, data.keys, data.color) or false
|
||||
|
||||
@@ -14,16 +14,88 @@ local textUI = false
|
||||
|
||||
-- Show text UI
|
||||
function WSB.showTextUI(msg, options)
|
||||
local QBCore = exports['qb-core']:GetCoreObject()
|
||||
-- Customize this logic with your own text UI or ox_lib
|
||||
-- msg = string, the message to display
|
||||
-- options = { -- Optional, data to pass to text UI system
|
||||
-- position = string - either 'right-center', 'left-center', 'top-center', or bottom-center,
|
||||
-- icon = string - icon name,
|
||||
-- iconColor = string - icon color,
|
||||
-- textColor = string - text color,
|
||||
-- backgroundColor = string - background color,
|
||||
-- iconAnimation = 'pulse', -- currently only pusle available
|
||||
-- }
|
||||
|
||||
-- Remove under this to use your own text UI --
|
||||
textUI = msg
|
||||
exports["17mov_Hud"]:ShowHelpNotification(msg)
|
||||
if uikitFound then
|
||||
-- Function to extract a single key in the format [E] - Text or [E] Text
|
||||
local function extractKeyAndText(str)
|
||||
if type(str) ~= "string" then return nil, str end
|
||||
local key, rest = str:match("^%[([%w])%]%s*%-?%s*(.+)$")
|
||||
if key and rest then
|
||||
return key, rest
|
||||
end
|
||||
return nil, str
|
||||
end
|
||||
local key, text = extractKeyAndText(msg)
|
||||
return exports.wasabi_uikit:OpenTextUI(text, key)
|
||||
end
|
||||
return ShowTextUI(msg, options)
|
||||
-- Remove above this if you are using your own menu system / want to use ox_lib
|
||||
|
||||
--[[ Remove this line if you are using lation_ui: https://lationscripts.com/product/modern-ui
|
||||
local lation_ui = GetResourceState('lation_ui')
|
||||
if lation_ui ~= 'started' and lation_ui ~= 'starting' then
|
||||
print('^0[^3WARNING^0] ^1lation_ui^0 is not running, please ensure it is started before using ^wsb.showTextUI or use default!^0')
|
||||
return
|
||||
end
|
||||
exports.lation_ui:showText({description = msg})
|
||||
textUI = msg
|
||||
]] -- Remove this line if you are using lation_ui
|
||||
|
||||
|
||||
--[[
|
||||
local oxLib = GetResourceState('ox_lib')
|
||||
if oxLib ~= 'started' and oxLib ~= 'starting' then
|
||||
print(
|
||||
'^0[^3WARNING^0] ^1ox_lib^0 is not running, please ensure it is started before using ^wsb.showTextUI or use default!^0')
|
||||
return
|
||||
end
|
||||
exports.ox_lib:showTextUI(msg)
|
||||
textUI = msg
|
||||
]]
|
||||
end
|
||||
|
||||
-- Hide text UI
|
||||
function WSB.hideTextUI()
|
||||
local QBCore = exports['qb-core']:GetCoreObject()
|
||||
-- Remove under this to use your own text UI --
|
||||
textUI = false
|
||||
exports["17mov_Hud"]:HideHelpNotification()
|
||||
if uikitFound then
|
||||
return exports.wasabi_uikit:CloseTextUI()
|
||||
end
|
||||
return HideTextUI()
|
||||
-- Remove above this if you are using your own menu system / want to use ox_lib
|
||||
|
||||
--[[ Remove this line if you are using lation_ui: https://lationscripts.com/product/modern-ui
|
||||
local lation_ui = GetResourceState('lation_ui')
|
||||
if lation_ui ~= 'started' and lation_ui ~= 'starting' then
|
||||
print('^0[^3WARNING^0] ^1lation_ui^0 is not running, please ensure it is started before using ^wsb.hideTextUI or use default!^0')
|
||||
return
|
||||
end
|
||||
exports.lation_ui:hideText()
|
||||
textUI = false
|
||||
]] -- Remove this line if you are using lation_ui
|
||||
|
||||
--[[
|
||||
local oxLib = GetResourceState('ox_lib')
|
||||
if oxLib ~= 'started' and oxLib ~= 'starting' then
|
||||
print(
|
||||
'^0[^3WARNING^0] ^1ox_lib^0 is not running, please ensure it is started before using ^wsb.showTextUI or use default!^0')
|
||||
return
|
||||
end
|
||||
exports.ox_lib:hideTextUI()
|
||||
textUI = false
|
||||
]]
|
||||
end
|
||||
|
||||
-- Checking for text UI
|
||||
|
||||
Reference in New Issue
Block a user