! Pressionar e soltar um botão do controle (:press)
Este método está disponível somente a partir da versão 20260805.
Declaração
status, mensagem_de_erro = objeto_do_controle:press(botao [, tempo_de_pressionamento ])
Parâmetros
- botão Inteiro ou texto: consulte os números e nomes compatíveis em Descrição do parâmetro de botão
- tempo de pressionamento Número finito não negativo, opcional: quantidade de milissegundos em que o botão permanece pressionado; o padrão é 60
Valores de retorno
- status Booleano: retorna true quando pressionar e soltar o botão é bem-sucedido; retorna false se o dispositivo estiver desconectado, ocupado, se o botão já estiver pressionado ou se o envio da entrada falhar
- mensagem de erro Texto: mensagem de erro quando a operação falha
Descrição
- Pressiona e solta somente o botão de destino, sem alterar outros botões já pressionados.
- A chamada falha quando o botão de destino já está pressionado.
- Enquanto
pressaguarda o tempo de pressionamento, cede a thread de execução Lua atual; nesse período, outras operações no mesmo controle retornamfalse, "hardware gamepad is busy", enquanto objetos de controle diferentes continuam operando de forma independente. - Tipos de parâmetro inválidos, nomes desconhecidos e valores fora do intervalo são lançados como erros de parâmetro Lua.
Exemplo
local pad = assert(gamepad.connect())
assert(pad:press("a"))
assert(pad:press("menu"))
assert(pad:press(32))
assert(pad:disconnect())