mirror of
https://github.com/CommunityOx/ox_lib.git
synced 2026-08-17 06:56:03 +01:00
refactor: rename imports
BREAKING! Since the folder name determines the import name (i.e. lib.callbacks), use better names and lowerCamelCase.
This commit is contained in:
54
imports/disableControls/client.lua
Normal file
54
imports/disableControls/client.lua
Normal file
@@ -0,0 +1,54 @@
|
||||
--- Call on frame to disable all stored keys.
|
||||
--- ```
|
||||
--- disableControls()
|
||||
--- ```
|
||||
local disableControls = {}
|
||||
|
||||
---@param ... number
|
||||
function disableControls:Add(...)
|
||||
local keys = type(...) == 'table' and ... or {...}
|
||||
for i=1, #keys do
|
||||
local key = keys[i]
|
||||
if self[key] then
|
||||
self[key] += 1
|
||||
else
|
||||
self[key] = 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
---@param ... number
|
||||
function disableControls:Remove(...)
|
||||
local keys = type(...) == 'table' and ... or {...}
|
||||
for i=1, #keys do
|
||||
local key = keys[i]
|
||||
local exists = self[key]
|
||||
if exists and exists > 1 then
|
||||
self[key] -= 1
|
||||
else
|
||||
self[key] = nil
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
---@param ... number
|
||||
function disableControls:Clear(...)
|
||||
local keys = type(...) == 'table' and ... or {...}
|
||||
for i=1, #keys do
|
||||
self[keys[i]] = nil
|
||||
end
|
||||
end
|
||||
|
||||
local keys = {}
|
||||
local DisableControlAction = DisableControlAction
|
||||
local pairs = pairs
|
||||
|
||||
return setmetatable(disableControls, {
|
||||
__index = keys,
|
||||
__newindex = keys,
|
||||
__call = function()
|
||||
for k in pairs(keys) do
|
||||
DisableControlAction(0, k, true)
|
||||
end
|
||||
end
|
||||
})
|
||||
Reference in New Issue
Block a user