Ir al contenido
Descargar

Entrada

Dentro de un objeto, usa estas funciones directamente, sin prefijo.

Una acción es un nombre unido a teclas y a botones del mando, creado en Configuración del proyecto. Mira Teclado y mando con acciones.

Función Qué hace Ejemplo
bool held(std::string_view action) const La acción está mantenida, en el teclado o en el mando. if (held("atirar")) ...
bool pressed(std::string_view action) const La acción se pulsó en este paso. Vale una vez por toque. if (pressed("pular")) vspeed = -4;
bool released(std::string_view action) const La acción se soltó en este paso. if (released("pular")) ...
float axis(std::string_view negative, std::string_view positive) const De -1 a 1: la acción positiva menos la negativa. El stick analógico tiene una zona muerta de 0,25. hspeed = axis("esquerda", "direita") * 2;

Una acción con el nombre equivocado aparece una vez como error en la Salida.

Función Qué hace Ejemplo
bool held(Key key) const La tecla está mantenida. if (held(Key::Left)) x -= 2;
bool pressed(Key key) const La tecla se pulsó en este paso. Vale una vez por toque. if (pressed(Key::Space)) vspeed = -6;
bool released(Key key) const La tecla se soltó en este paso. if (released(Key::Space)) charge = 0;
Función Qué hace Ejemplo
float mouseX() const X del mouse en el mundo (tiene en cuenta la cámara). angleTo(mouseX(), mouseY())
float mouseY() const Y del mouse en el mundo.
bool mouseHeld(MouseButton button) const El botón está mantenido. if (mouseHeld(MouseButton::Left)) ...
bool mousePressed(MouseButton button) const El botón se pulsó en este paso. if (mousePressed(MouseButton::Right)) ...
bool mouseReleased(MouseButton button) const El botón se soltó en este paso.
float Input::mouseWheel() Cuánto giró la rueda del mouse en este paso: positivo hacia arriba, negativo hacia abajo, 0 quieta. zoom += Input::mouseWheel();

Botones: MouseButton::Left, MouseButton::Middle, MouseButton::Right.

Para menús y botones dibujados en el onRenderGui, que no se mueven con la cámara, usa Input::mouseGuiX() e Input::mouseGuiY(): la posición del mouse en la pantalla.

Grupo Valores
Letras Key::A … Key::Z
Números Key::Num0 … Key::Num9
Flechas Key::Left, Key::Right, Key::Up, Key::Down
Especiales Key::Space, Key::Enter, Key::Escape, Key::Tab, Key::Backspace
Modificadores Key::LShift, Key::RShift, Key::LCtrl, Key::RCtrl
Funciones Key::F1 … Key::F12

El mando se usa mediante las acciones: en la configuración del proyecto, une un botón a una acción. Vale el primer mando conectado.

Grupo Nombres
Botones Pad:A, Pad:B, Pad:X, Pad:Y, Pad:Start, Pad:Back, Pad:LB, Pad:RB
Cruceta Pad:Up, Pad:Down, Pad:Left, Pad:Right
Stick izquierdo Pad:LeftX-, Pad:LeftX+, Pad:LeftY-, Pad:LeftY+