Pressionar um botão do controle (:down)
Este método está disponível somente a partir da versão 20260805.
Declaração
status, mensagem_de_erro = objeto_do_controle:down(botao)
Parâmetro
- botão
Inteiro ou texto: pode receber um inteiro de
1a32, um nome de botão da tabela abaixo ou"start"e"menu"; não há distinção entre maiúsculas e minúsculas
| Número | Nome do botão | Aliases |
|---|---|---|
| 1 | a | - |
| 2 | b | - |
| 3 | x | - |
| 4 | y | - |
| 5 | left_shoulder | left_bumper、lb、l1 |
| 6 | right_shoulder | right_bumper、rb、r1 |
| 7 | left_trigger | lt、l2 |
| 8 | right_trigger | rt、r2 |
| 9 | left_stick | l3 |
| 10 | right_stick | r3 |
| 11 | l4 | left_paddle |
| 12 | r4 | right_paddle |
| 13 | m1 | - |
| 14 | m2 | - |
| 15 | m3 | - |
| 16 | m4 | - |
Valores de retorno
- status Booleano: retorna true quando a operação é bem-sucedida; retorna false se o dispositivo estiver desconectado, ocupado ou se o envio da entrada falhar
- mensagem de erro Texto: mensagem de erro quando a operação falha
Descrição
- Os números
1a32representam botões numéricos, não códigos de botões de jogo uniformes entre dispositivos; normalmente, prefira os nomes de botão da tabela acima. - Os números
17a32não têm nomes predefinidos e só produzem efeito quando o app de destino é compatível com os botões estendidos correspondentes. "start"e"menu"são aliases da mesma entrada de menu e não correspondem a nenhum número de1a32.- Os nomes de botão
select,back,options,home,sharee do touchpad ainda não são compatíveis. left_triggereright_triggeraceitam somente pressionar ou soltar, sem simulação de valor de pressão;menunão aciona a ação de tela inicial do sistema.- Tipos de parâmetro inválidos, nomes desconhecidos e valores fora do intervalo são lançados como erros de parâmetro Lua, em vez de retornar
false, error.
Exemplo
local pad = assert(gamepad.connect())
assert(pad:down("left_shoulder"))
assert(pad:up("left_shoulder"))
assert(pad:down(13)) -- botão numérico 13
assert(pad:up(13))
assert(pad:disconnect())