HapticService

Mostrar obsoleto

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

No creable
Servicio
No replicado

Los controles y dispositivos modernos tienen motores integrados para proporcionar opinióntáctil. Añadir ruidos y vibraciones puede proporcionar una retroalimentación sutil que es difícil de transmitir a través de visuales o sonido, audio.

Roblox soporta hápticos para los siguientes dispositivos:

  • Teléfonos Android y iOS que admiten hápticos, incluidos la mayoría de los iPhone, Pixel y Galaxy
  • Plataformas de juegos de PlayStation
  • Consolas de juegos Xbox
  • Control (ES_MX)de Quest Touch

Resumen

Métodos

Propiedades

Métodos

GetMotor

Devuelve el valor de vibración actual establecido a UserInputType y Enum.VibrationMotor . Esto no devolverá nada si SetMotor no ha sido llamado antes.

Parámetros

El especificado Enum.UserInputType .

vibrationMotor: Enum.VibrationMotor

El especificado Enum.VibrationMotor .


Devuelve

El valor de vibración actual asignado al especificado Enum.UserInputType y Enum.VibrationMotor o nulo si SetMotor no ha sido llamado anteriormente.

IsMotorSupported

Devuelve true si el motor especificado está disponible para ser usado con el especificado Enum.UserInputType .

Parámetros

El tipo de entrada específico Enum.UserInputType que se está verificando para el Soportede Enum.VibrationMotor .

vibrationMotor: Enum.VibrationMotor

El especificado Enum.VibrationMotor verificado para ver si soporta el especificado Enum.UserInputType .


Devuelve

Verdadero si el motor especificado está disponible para usar con el especificado Enum.UserInputType , falso si no.

IsVibrationSupported

Regresa true si el especificado Enum.UserInputType soporta opiniónháptica.

Parámetros

El especificado Enum.UserInputType se ha marcado para ver si soporta opiniónháptica.


Devuelve

Verdadero si el especificado Enum.UserInputType soporta opiniónháptica.

SetMotor

void

Establece la intensidad de vibración del UserInputType y Enum.VibrationMotor . Nota que casi todos los casos de uso especifican Gamepad1 como el 2>Class.InputObject.UserInputType2> .

Parámetros

El especificado Enum.UserInputType .

vibrationMotor: Enum.VibrationMotor

El especificado Enum.VibrationMotor .

vibrationValues: Tuple

Cuán intenso debe vibrar el motor. Solo usa el primer valor en el tupla, que debe ser un número.


Devuelve

void

Muestras de código

HapticService:SetMotor

local UserInputService = game:GetService("UserInputService")
local HapticService = game:GetService("HapticService")
local cachedInputs = {} -- Note that we use a cache so we don't attach a Changed event more than once.
local keyToVibration = {
[Enum.KeyCode.ButtonL2] = Enum.VibrationMotor.Small,
[Enum.KeyCode.ButtonR2] = Enum.VibrationMotor.Large,
}
local function onInputBegan(input)
if not cachedInputs[input] then
local inputType = input.UserInputType
if inputType.Name:find("Gamepad") then
local vibrationMotor = keyToVibration[input.KeyCode]
if vibrationMotor then
-- Watch this InputObject manually so we can accurately update the vibrationMotor.
local function onChanged(property)
if property == "Position" then
HapticService:SetMotor(inputType, vibrationMotor, input.Position.Z)
end
end
cachedInputs[input] = input.Changed:Connect(onChanged)
end
end
end
end
UserInputService.InputBegan:Connect(onInputBegan)

Eventos