Pular para o conteúdo
Baixar

Entrada

Dentro de um objeto, use estas funções direto, sem prefixo.

Uma ação é um nome ligado a teclas e a botões do controle, criado em Configurações do projeto. Veja Teclado e controle com ações.

Função O que faz Exemplo
bool held(std::string_view action) const A ação está segurada, no teclado ou no controle. if (held("atirar")) ...
bool pressed(std::string_view action) const A ação foi apertada neste passo. Vale uma vez por toque. if (pressed("pular")) vspeed = -4;
bool released(std::string_view action) const A ação foi solta neste passo. if (released("pular")) ...
float axis(std::string_view negative, std::string_view positive) const De -1 a 1: a ação positiva menos a negativa. O analógico tem zona morta de 0,25. hspeed = axis("esquerda", "direita") * 2;

Uma ação com o nome errado aparece uma vez como erro na Saída.

Função O que faz Exemplo
bool held(Key key) const A tecla está segurada. if (held(Key::Left)) x -= 2;
bool pressed(Key key) const A tecla foi apertada neste passo. Vale uma vez por toque. if (pressed(Key::Space)) vspeed = -6;
bool released(Key key) const A tecla foi solta neste passo. if (released(Key::Space)) charge = 0;
Função O que faz Exemplo
float mouseX() const X do mouse no mundo (considera a câmera). angleTo(mouseX(), mouseY())
float mouseY() const Y do mouse no mundo.
bool mouseHeld(MouseButton button) const O botão está segurado. if (mouseHeld(MouseButton::Left)) ...
bool mousePressed(MouseButton button) const O botão foi apertado neste passo. if (mousePressed(MouseButton::Right)) ...
bool mouseReleased(MouseButton button) const O botão foi solto neste passo.
float Input::mouseWheel() Quanto a roda do mouse girou neste passo: positivo para cima, negativo para baixo, 0 parada. zoom += Input::mouseWheel();

Botões: MouseButton::Left, MouseButton::Middle, MouseButton::Right.

Para menus e botões desenhados no onRenderGui, que não andam com a câmera, use Input::mouseGuiX() e Input::mouseGuiY(): a posição do mouse na tela.

Grupo Valores
Letras Key::A … Key::Z
Números Key::Num0 … Key::Num9
Setas Key::Left, Key::Right, Key::Up, Key::Down
Especiais Key::Space, Key::Enter, Key::Escape, Key::Tab, Key::Backspace
Modificadores Key::LShift, Key::RShift, Key::LCtrl, Key::RCtrl
Funções Key::F1 … Key::F12

O controle é usado pelas ações: nas Configurações do projeto, ligue um botão a uma ação. Vale o primeiro controle conectado.

Grupo Nomes
Botões Pad:A, Pad:B, Pad:X, Pad:Y, Pad:Start, Pad:Back, Pad:LB, Pad:RB
Direcional Pad:Up, Pad:Down, Pad:Left, Pad:Right
Analógico esquerdo Pad:LeftX-, Pad:LeftX+, Pad:LeftY-, Pad:LeftY+