pyxen.input
Accede a la entrada en tiempo real desde teclado, ratón, pantalla táctil y gamepads.
input = pyxen.input
Ver también: Entrada.
Módulos
| Módulo | Descripción |
|---|---|
keyboard | Teclas y entrada de texto |
mouse | Posición, movimiento, botones |
touches | Entrada multitáctil |
gamepads | Mandos |
El modelo de botón
Las teclas del teclado, los botones del ratón y los botones del gamepad usan la misma interfaz Button:
button.down
button.pressed
button.released
button.value
| Propiedad | Significado |
|---|---|
down | True mientras se mantiene pulsado |
pressed | True solo en el fotograma en que se pulsó |
released | True solo en el fotograma en que se soltó |
value | Valor analógico (0.0 a 1.0) |
Comportamiento basado en fotogramas
La entrada se evalúa por fotograma.
pressed y released solo son true durante un fotograma, luego se resetean automáticamente.
if input.keyboard.space.pressed:
player.jump()
Para comportamiento continuo:
if input.keyboard.space.down:
charge_power()
Ejemplos rápidos
Movimiento con teclado
kbd = input.keyboard
if kbd.left.down:
player.x -= 1
if kbd.right.down:
player.x += 1
Clic de ratón
mouse = input.mouse
if mouse.left.pressed:
x, y = mouse.pos
spawn_explosion(x, y)
Entrada táctil
for t in input.touches:
if t.started:
print("Touch at", t.pos)
Movimiento analógico con gamepad
pad = input.gamepads[0]
if pad.connected:
x, y = pad.left_stick
player.x += x * 2
player.y += y * 2
Seguridad de solo lectura
Todos los objetos de entrada son solo lectura. El estado de entrada es gestionado por el motor.