29 lines
546 B
Lua
29 lines
546 B
Lua
-- input utils
|
|
|
|
keyheld = {}
|
|
onkey = {}
|
|
onkeypress = {}
|
|
inputmap = {}
|
|
|
|
local function processcontrol(control, press)
|
|
if press then
|
|
keyheld[control] = true
|
|
else
|
|
keyheld[control] = nil
|
|
end
|
|
|
|
if onkey[control] then
|
|
onkey[control](press)
|
|
end
|
|
|
|
if press and onkeypress[control] then
|
|
onkeypress[control]()
|
|
end
|
|
end
|
|
|
|
i_setcontrolcallback(function (control, press)
|
|
processcontrol(control, press)
|
|
if (inputmap[control]) then
|
|
processcontrol(inputmap[control], press)
|
|
end
|
|
end) |