En este tutorial usaremos ContextActionService para detectar pulsaciones de teclas / botones para acciones específicas.
¿Qué es ContextActionService?
ContextActionService es un servicio que es útil para realizar acciones cuando ocurren entradas específicas. Este servicio puede detectar una pulsación de botón hecha por el sistema, así como acciones, pulsaciones de teclas y más.
ContextActionService SOLO se puede utilizar en LocalScripts, no Guiones.
Ejemplo: alternar una GUI
Para este tutorial, usaremos ContextActionService para hacer que una interfaz gráfica de usuario se abra / cierre. Vamos a empezar creando un ScreenGui, nombrándolo "Toggle" y colocando un LocalScript dentro de él.
- StarterGui
- palanca
- Inicio
- palanca
Comenzaremos definiendo ContextActionService, Player, Player's PlayerGui y Toggle gui.
CAS local = juego: GetService ("ContextActionService") jugador local = juego.Players.LocalPlayer local pGui = jugador: WaitForChild ("PlayerGui") local t = pGui: WaitForChild ("Alternar")
Para hacer que esta interfaz gráfica de usuario cambie, vamos a utilizar la propiedad Enabled de la interfaz gráfica de usuario, dentro de una función.
local CAS = juego: GetService ("ContextActionService") jugador local = juego.Players.LocalPlayer local pGui = jugador: WaitForChild ("PlayerGui") local t = pGui: WaitForChild ("Toggle") función Main () t.Enabled = not t.Final habilitado
Por último, necesitamos usar ContextActionService para vincular la acción. ContextActionService tiene un método llamado "BindAction" que usaremos en este tutorial. Digamos que queremos que la tecla "T" cambie esta interfaz gráfica de usuario.
local CAS = juego: GetService ("ContextActionService") jugador local = juego.Players.LocalPlayer local pGui = jugador: WaitForChild ("PlayerGui") local t = pGui: WaitForChild ("Toggle") función Main () t.Enabled = not t.Enabled end CAS: BindAction ("ToggleGUI", Main, true, Enum.KeyCode.T)
La 'BindAction' toma un mínimo de 4 parámetros, pero puede tener cualquier número de parámetros. Comencemos con el primer parámetro, que usamos "ToggleGUI" en este escenario. El primer parámetro se llama "actionName", y este parámetro se usa como un nombre en el sistema para diferentes métodos en el futuro. El segundo parámetro es la función que se ejecuta cuando se lleva a cabo esta acción vinculada. En este caso, la función Main que hicimos. El tercer parámetro es un bool que indica si se creará un botón en los dispositivos móviles para alternar esta acción. El cuarto parámetro es una tupla que define qué acciones desencadenarán esta acción vinculada. En este caso, usamos el botón "T".