Classe do mecanismo
HapticEffect
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
Referência API
Propriedades
Looped
Amostras de código
Repetido
local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.GameplayExplosion
effect.Looped = true
effect.Parent = Workspace
-- Inicie o efeito háptico
effect:Play()
-- Após dois segundos, pare o efeito
task.wait(2)
effect:Stop()Position
Amostras de código
Posição
local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
-- Defina a posição e o raio de impacto
effect.Position = Vector3.new(0.5, 0.5, 0)
effect.Radius = 1
effect.Parent = Workspace
effect:Play()Radius
Amostras de código
Raio
local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
-- Defina a posição e o raio de impacto
effect.Position = Vector3.new(0.5, 0.5, 0)
effect.Radius = 1
effect.Parent = Workspace
-- Reproduza o efeito háptico
effect:Play()Métodos
Play
HapticEffect:Play():()
Devolução
()
Amostras de código
Jogar
local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.GameplayExplosion
effect.Parent = Workspace
-- Reproduzir o efeito háptico
effect:Play()GetWaveformKeys
Devolução
Amostras de código
Obter Chaves de Forma de Onda
local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.Custom
effect.Parent = Workspace
effect:SetWaveformKeys({
FloatCurveKey.new(0, 0.4, Enum.KeyInterpolationMode.Linear),
FloatCurveKey.new(200, 1.0, Enum.KeyInterpolationMode.Linear),
})
-- Leia a forma de onda de volta, escale para metade da força e escreva de volta.
-- O tempo está em milissegundos; o valor varia de 0 (sem háptico) a 1 (intensidade total).
local keys = effect:GetWaveformKeys()
for i, key in keys do
keys[i] = FloatCurveKey.new(key.Time, key.Value * 0.5, key.Interpolation)
end
effect:SetWaveformKeys(keys)SetWaveformKeys
Parâmetros
Devolução
()
Amostras de código
Definir Chaves de Forma de Onda
local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
-- Defina o tipo de efeito como personalizado para definir uma forma de onda
effect.Type = Enum.HapticEffectType.Custom
effect.Parent = Workspace
-- Defina a curva de forma de onda personalizada através de uma tabela de FloatCurveKeys
-- Os valores de tempo estão em milissegundos; os valores variam de 0 (sem háptico) a 1 (intensidade total)
local rampUpWaveform = {
FloatCurveKey.new(0, 0.3, Enum.KeyInterpolationMode.Linear),
FloatCurveKey.new(100, 0.4, Enum.KeyInterpolationMode.Linear),
FloatCurveKey.new(300, 0.8, Enum.KeyInterpolationMode.Linear),
FloatCurveKey.new(400, 1.0, Enum.KeyInterpolationMode.Linear)
}
-- Defina a forma de onda através do método do efeito
effect:SetWaveformKeys(rampUpWaveform)Stop
HapticEffect:Stop():()
Devolução
()
Amostras de código
Parar
local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.GameplayExplosion
effect.Looped = true
effect.Parent = Workspace
-- Inicie o efeito háptico
effect:Play()
-- Após dois segundos, pare o efeito
task.wait(2)
effect:Stop()Eventos