[NEW] Implementada pausa
[FIX] Corregit un segon arranc de partida [NEW] Afegida controller:keypressed
This commit is contained in:
@@ -59,6 +59,8 @@ function controller:check(action)
|
||||
elseif action=="jump" then
|
||||
result = key.down(keyJump) or pad.down(btnJump)
|
||||
elseif action=="shoot" then
|
||||
-- No gaste key.press perque no vull "metralleta"
|
||||
-- s'obliga a alçar la pulsació
|
||||
result = key.down(keyShoot) or pad.down(btnShoot)
|
||||
if result then
|
||||
if self.keysdown[keyShoot] then
|
||||
@@ -92,4 +94,90 @@ function controller:key_release(keyid)
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
function controller:onKeyUp(action)
|
||||
local resultKey = false
|
||||
local resultPad = false
|
||||
local keyDown = false
|
||||
local buttDown = false
|
||||
local keyid = nil
|
||||
local buttid = nil
|
||||
|
||||
action = string.upper(action)
|
||||
|
||||
if action=="UP" then
|
||||
keyid = keyUp
|
||||
buttid = btnUp
|
||||
elseif action=="DOWN" then
|
||||
keyid = keyDown
|
||||
buttid = btnDown
|
||||
elseif action=="LEFT" then
|
||||
keyid = keyLeft
|
||||
buttid = btnLeft
|
||||
elseif action=="RIGHT" then
|
||||
keyid = keyRight
|
||||
buttid = btnRight
|
||||
elseif action=="JUMP" then
|
||||
keyid = keyJump
|
||||
buttid = btnJump
|
||||
elseif action=="SHOOT" then
|
||||
keyid = keyShoot
|
||||
buttid = btnShoot
|
||||
elseif action=="ESC" then
|
||||
keyid = key
|
||||
buttid = btn
|
||||
end
|
||||
|
||||
|
||||
if keyid~=nil then resultKey = key.down(keyid) end
|
||||
if buttid~=nil then resultButt = pad.down(buttid) end
|
||||
|
||||
result = resultKey or resultPad
|
||||
if result then
|
||||
if keyid~=nil then keyDown = self.keysdown[keyid] end
|
||||
if buttid~=nil then buttDown = self.keysdown[buttid] end
|
||||
|
||||
result = true
|
||||
if keyDown or buttDown then result = false end
|
||||
|
||||
-- self.keysdown[keyid] = true
|
||||
if keyid~=nil then self.keysdown[keyid]=true end
|
||||
if buttid~=nil then self.keysdown[buttid]=true end
|
||||
else
|
||||
-- self.keysdown[keyid] = false
|
||||
if keyid~=nil then self.keysdown[keyid]=false end
|
||||
if buttid~=nil then self.keysdown[buttid]=false end
|
||||
end
|
||||
|
||||
return result
|
||||
end
|
||||
|
||||
function controller:keypressed(action)
|
||||
action = string.upper(action)
|
||||
|
||||
if action=="UP" then
|
||||
keyid = keyUp
|
||||
buttid = btnUp
|
||||
elseif action=="DOWN" then
|
||||
keyid = keyDown
|
||||
buttid = btnDown
|
||||
elseif action=="LEFT" then
|
||||
keyid = keyLeft
|
||||
buttid = btnLeft
|
||||
elseif action=="RIGHT" then
|
||||
keyid = keyRight
|
||||
buttid = btnRight
|
||||
elseif action=="JUMP" then
|
||||
keyid = keyJump
|
||||
buttid = btnJump
|
||||
elseif action=="SHOOT" then
|
||||
keyid = keyShoot
|
||||
buttid = btnShoot
|
||||
elseif action=="ESC" then
|
||||
keyid = key.ESCAPE
|
||||
buttid = btnPause
|
||||
end
|
||||
|
||||
return key.press(keyid) or pad.press(buttid)
|
||||
end
|
||||
Reference in New Issue
Block a user