2p support
This commit is contained in:
parent
97f91fb298
commit
12edf6cb9a
|
@ -32,15 +32,19 @@ self.inputType = {
|
||||||
Action8 = 27
|
Action8 = 27
|
||||||
}
|
}
|
||||||
|
|
||||||
---@type table<inputType, number>
|
---@type table<integer, table<inputType, number>>
|
||||||
--- -1 for not pressed, time for time of press
|
--- -1 for not pressed, time for time of press
|
||||||
self.inputs = {}
|
self.inputs = {}
|
||||||
---@type table<inputType, number>
|
---@type table<integer, table<inputType, number>>
|
||||||
self.rawInputs = {}
|
self.rawInputs = {}
|
||||||
|
|
||||||
for _, v in pairs(self.inputType) do
|
for pn = 1, 2 do
|
||||||
self.inputs[v] = -1
|
self.inputs[pn] = {}
|
||||||
self.rawInputs[v] = -1
|
self.rawInputs[pn] = {}
|
||||||
|
for _, v in pairs(self.inputType) do
|
||||||
|
self.inputs[pn][v] = -1
|
||||||
|
self.rawInputs[pn][v] = -1
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
self.directions = {
|
self.directions = {
|
||||||
|
@ -80,15 +84,26 @@ function self.getInputName(i)
|
||||||
end
|
end
|
||||||
|
|
||||||
---@param i string
|
---@param i string
|
||||||
|
---@param pn number | nil
|
||||||
---@return number
|
---@return number
|
||||||
function self.getInput(i)
|
function self.getInput(i, pn)
|
||||||
return self.inputs[self.inputType[i]]
|
if not pn then
|
||||||
|
for plr = 1, 2 do
|
||||||
|
if self.inputs[plr][self.inputType[i]] ~= -1 then
|
||||||
|
return self.inputs[plr][self.inputType[i]]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return -1
|
||||||
|
else
|
||||||
|
return self.inputs[pn][self.inputType[i]]
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
---@param i string
|
---@param i string
|
||||||
|
---@param pn number | nil
|
||||||
---@return boolean
|
---@return boolean
|
||||||
function self.isDown(i)
|
function self.isDown(i, pn)
|
||||||
return self.getInput(i) ~= -1
|
return self.getInput(i, pn) ~= -1
|
||||||
end
|
end
|
||||||
|
|
||||||
function uranium.init()
|
function uranium.init()
|
||||||
|
@ -98,14 +113,14 @@ function uranium.init()
|
||||||
local v = v
|
local v = v
|
||||||
|
|
||||||
_main:addcommand('StepP' .. pn .. j .. 'PressMessage', function()
|
_main:addcommand('StepP' .. pn .. j .. 'PressMessage', function()
|
||||||
self.rawInputs[v] = t
|
self.rawInputs[pn][v] = t
|
||||||
if uranium:call('press', v) then return end
|
if uranium:call('press', v, pn) then return end
|
||||||
self.inputs[v] = t
|
self.inputs[pn][v] = t
|
||||||
end)
|
end)
|
||||||
_main:addcommand('StepP' .. pn .. j .. 'LiftMessage', function()
|
_main:addcommand('StepP' .. pn .. j .. 'LiftMessage', function()
|
||||||
if uranium:call('release', v) then return end
|
self.rawInputs[pn][v] = -1
|
||||||
self.inputs[v] = -1
|
if uranium:call('release', v, pn) then return end
|
||||||
self.rawInputs[v] = -1
|
self.inputs[pn][v] = -1
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue