Zum Hauptinhalt springen

! Gamepad-Taste betätigen (:press)

Diese Methode ist erst in Versionen nach 20260805 verfügbar.

Deklaration

Status, Fehlermeldung = Gamepad-Objekt:press(Taste [, Drückdauer ])

Parameter

  • Taste Ganzzahl oder Textwert; unterstützte Nummern und Namen siehe Beschreibung des Tastenparameters.
  • Drückdauer Nichtnegative endliche Zahl, optional; Dauer, während der die Taste gedrückt bleibt, in Millisekunden, Standardwert 60

Rückgabewert

  • Status Boolescher Wert; true, wenn das Drücken und Loslassen der Taste erfolgreich war, false bei getrennter oder ausgelasteter Verbindung, bereits gedrückter Zieltaste oder fehlgeschlagenem Senden der Eingabe
  • Fehlermeldung Textwert; Fehlermeldung bei fehlgeschlagener Operation

Beschreibung

  • Drückt und löst nur die Zieltaste und verändert keine anderen bereits gedrückten Tasten.
  • Wenn die Zieltaste bereits gedrückt ist, schlägt der Aufruf fehl.
  • Während press auf die Drückdauer wartet, gibt es den aktuellen Lua-Ausführungsthread frei. Währenddessen geben andere Operationen auf demselben Gamepad false, "hardware gamepad is busy" zurück; verschiedene Gamepad-Objekte können weiterhin unabhängig bedient werden.
  • Typfehler, unbekannte Namen und Werte außerhalb des gültigen Bereichs werden als Lua-Parameterfehler ausgelöst.

Beispiel

local pad = assert(gamepad.connect())

assert(pad:press("a"))
assert(pad:press("menu"))
assert(pad:press(32))
assert(pad:disconnect())