Sound

Mostrar obsoleto

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Un Sound es un objeto que emite sonido.

Sonido 2D y 3D

Un sonido colocado en un BasePart o un Attachment emitará su sonido desde la posición

Un sonido se considera "global" si no está asociado a un BasePart o un Attachment . En este caso, el sonido se reproducirá con el mismo volumen en todo el lugar.

Amostras de código

Music Playing Part

local part = Instance.new("Part")
part.Anchored = true
part.Position = Vector3.new(0, 3, 0)
part.BrickColor = BrickColor.new("Bright red")
part.Name = "MusicBox"
part.Parent = workspace
-- create a sound
local sound = Instance.new("Sound", part)
sound.SoundId = "rbxassetid://9120386436"
sound.EmitterSize = 5 -- decrease the emitter size (for earlier volume drop off)
sound.Looped = true
sound.Parent = part
local clickDetector = Instance.new("ClickDetector")
clickDetector.Parent = part
-- toggle the sound playing / not playing
clickDetector.MouseClick:Connect(function()
if not sound.IsPlaying then
part.BrickColor = BrickColor.new("Bright green")
sound:Play()
else
part.BrickColor = BrickColor.new("Bright red")
sound:Stop()
end
end)
Sound in the Workspace

local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = workspace
sound:Play()

Resumo

Propriedades

  • Somente leitura
    Não replicado
    Não navegável
    Segurança do script Roblox
    Ler Parallel
  • Somente leitura
    Não replicado
    Ler Parallel

    Esta propiedad será cierta cuando el Sound haya sido cargado desde los servidores de Roblox y esté listo para jugar.

  • Oculto
    Somente leitura
    Não replicado
    Ler Parallel

    Esta propiedad de solo lectura devolverá true cuando la Sound no esté reproduciendo.

  • Oculto
    Somente leitura
    Não replicado
    Ler Parallel

    Esta propiedad solo de lectura devolverá true cuando la Sound esté reproduciendo.

  • Un rango que denota el inicio y el final de un ciclo dentro de la Sound.PlaybackRegion, en segundos.

  • Ler Parallel

    Esto establece si el Sound se repite una vez que termina cuando está reproduciendo.

  • Ler Parallel

    Cuando eso es cierto, el Sound jugará cuando se elimine del juego, al padre del Sound o uno si sus antepasados son nulos.

  • Somente leitura
    Não replicado
    Ler Parallel

    Un número entre 0 y 1000 que indica lo volumen de Sound está volver.

  • Un rango que designa un tiempo de inicio deseado (min) y de detención (max) dentro del Sound.TimeLength , en segundos.

  • Si es cierto, esta propiedad le da a su Sound acceso a las propiedades Sound.PlaybackRegion y 2> Class.Sound.LoopRegion2>, que pueden controlar más precisamente su reproducción.

  • Não replicado
    Ler Parallel

    Determina la velocidad a la que un Sound jugar, con valores más altos que hacen que el sonido se reproduzca más rápido y en una mayor tonalidad.

  • Não replicado
    Ler Parallel

    Indica si el Sound está reproduciendo música actualmente.

  • La distancia máxima, en studs, de un cliente que escucha puede ser desde la raíz de Sound\s y aún escucharla. Solo se aplica a los sonidos relacionados con un Part o Attachment (sonidos 3D).

  • La distancia mínima, en studs, en la que un 3D Sound (hijo directo de un BasePart o Attachment ) comenzará a atenuarse (disminuir en volumen).

  • Controla cómo se comporta el volumen de un Sound (padre de un BasePart o Attachment ) entre la distancia entre el oyente y el padre del sonido.

  • El SoundGroup que está vinculado a este Sound . El volumen y los efectos de sonido aplicados a este grupo de sonido se transmitirán al sonido. Un sonido solo puede estar en un grupo de sonido en un momento.

  • SoundId:ContentId
    Ler Parallel

    Esta propiedad es el ID de contenido del archivo de sonido con el que se asocia. Una vez que se ha cargado un sonido en Roblox, el ID de contenido se puede encontrar en la URL del sonido cargado.

  • Somente leitura
    Não replicado
    Ler Parallel

    La longitud del Sound en segundos. Si el Sound no se carga, este valor se establecerá en 0.

  • Não replicado
    Ler Parallel

    Muestra el progreso en segundos del Sound . Se puede cambiar para mover la posición de reproducción del Sound tanto antes como durante la reproducción.

  • Ler Parallel

    El volumen de Class.Sound . Se puede establecer entre 0 y 10. Por defecto, 0.5.

Métodos

Eventos

Propriedades

ChannelCount

Somente leitura
Não replicado
Não navegável
Segurança do script Roblox
Ler Parallel

IsLoaded

Somente leitura
Não replicado
Ler Parallel

Esta propiedad será cierta cuando el Sound haya sido cargado desde los servidores de Roblox y esté listo para jugar.

En Roblox, los archivos de audio no se almacenan en los juegos en sí mismos, sino que se almacenan en los servidores de Roblox y se referencian por la propiedad Sound.SoundId. Esto significa que deben ser descargados al dispositivo del cliente antes de que se puedan reproducir. Esto puede tardar un tiempo dependiendo de la conexión de Internet del usuario, la duración del sonido y el número de otros objetos que se deben cargar.

Los desarrolladores pueden usar la propiedad Sound.IsLoaded y el evento Sound.Loaded si desean verificar si se ha cargado un sonido antes de reproducirlo.

Amostras de código

Load Sound

local sound = script.Parent.Sound
if not sound.IsLoaded then
sound.Loaded:Wait()
end
print("The sound has loaded!")

IsPaused

Oculto
Somente leitura
Não replicado
Ler Parallel

Esta propiedad de solo lectura devolverá true cuando el Class.Sound no esté reproduciendo. Tenga en cuenta que esta propiedad no solo devolverá true una vez que se haya pausado el sonido usando la función Sound:Pause() sino que también se habrá detenido usando la función Sound:Stop() o nunca se habrá reproducido.

Esta propiedad solo será cierta cuando Sound.IsPlaying es falso.

As IsPaused es solo de lectura, no se puede usar para detener el sonido, Sound:Stop() y Sound:Pause() deberían usarse en su lugar.

Amostras de código

Sound IsPlaying and SoundIsPaused

local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = workspace
if not sound.isLoaded then
sound.Loaded:Wait()
end
sound:Play()
print(sound.IsPlaying, sound.IsPaused) -- true, false
task.wait(2)
sound:Pause()
print(sound.IsPlaying, sound.IsPaused) -- false, true
task.wait(2)
sound:Play()
print(sound.IsPlaying, sound.IsPaused) -- true, false
task.wait(2)
sound:Stop()
print(sound.IsPlaying, sound.IsPaused) -- false, true

IsPlaying

Oculto
Somente leitura
Não replicado
Ler Parallel

Esta propiedad solo de lectura devolverá true cuando la Sound esté reproduciendo.

Esta propiedad solo puede ser cierta cuando Sound.IsPaused es falsa.

Dado que IsPlaying es solo de lectura, no se puede usar para reproducir el sonido, Sound:Play() debería usarse en su lugar.

Amostras de código

Sound IsPlaying and SoundIsPaused

local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = workspace
if not sound.isLoaded then
sound.Loaded:Wait()
end
sound:Play()
print(sound.IsPlaying, sound.IsPaused) -- true, false
task.wait(2)
sound:Pause()
print(sound.IsPlaying, sound.IsPaused) -- false, true
task.wait(2)
sound:Play()
print(sound.IsPlaying, sound.IsPaused) -- true, false
task.wait(2)
sound:Stop()
print(sound.IsPlaying, sound.IsPaused) -- false, true

LoopRegion

Ler Parallel

Un rango que designa un inicio y final de ciclo deseado dentro de la Sound's Sound.PlaybackRegion en segundos.

Looped

Ler Parallel

Esto establece si el Sound se repite una vez que termina cuando está reproduciendo.

Los sonidos de bucle son adecuados para una variedad de aplicaciones, incluidos los sonidos de música y ambiente de fondo. El evento Sound.DidLoop puede usarse para rastrear el número de veces que el sonido se ha repetido.

Amostras de código

Sound Looping

local Players = game:GetService("Players")
local function onPlayerAdded(player)
local function onCharacterAdded(character)
-- wait for the head to be added
local head = character:WaitForChild("Head")
local sound = Instance.new("Sound")
sound.Name = "TestSound"
sound.SoundId = "rbxasset://sounds/uuhhh.mp3" -- oof
sound.Parent = head
sound.Looped = true
sound.DidLoop:Connect(function(_soundId, numOfTimesLooped)
print("oof! " .. tostring(numOfTimesLooped))
end)
sound:Play()
end
player.CharacterAdded:Connect(onCharacterAdded)
end
Players.PlayerAdded:Connect(onPlayerAdded)
Loop a Number of Times

local function loopNTimes(sound, numberOfLoops)
if not sound.IsPlaying then
sound.Looped = true
local connection = nil
connection = sound.DidLoop:Connect(function(_soundId, numOfTimesLooped)
print(numOfTimesLooped)
if numOfTimesLooped >= numberOfLoops then
-- disconnect the connection
connection:Disconnect()
-- stop the sound
sound:Stop()
end
end)
sound:Play()
end
end
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://0"
loopNTimes(sound, 5)

PlayOnRemove

Ler Parallel

Cuando sea verdad, el Sound jugará cuando se le quite del juego.

Nota que el sonido se reproducirá cuando la propiedad Instance.Parent de la propiedad Sound o uno de sus antepasados esté configurado para nulo. Esto significa que todo lo siguiente causará que el sonido se reproduzca cuando PlayOnRemove esté verdadero. Nota, esto incluye Instance:Destroy() como la función de destrucción establece el padre a nulo.

sonido:Destroy() sonido.Padre = nil sonido.Padre.Padre = nil

Amostras de código

Sound PlayOnRemove

local sound = Instance.new("Sound")
sound.Name = "TestSound"
sound.SoundId = "rbxasset://sounds/uuhhh.mp3" -- oof
sound.Parent = workspace
sound.PlayOnRemove = true
task.wait(3)
sound:Destroy()

PlaybackLoudness

Somente leitura
Não replicado
Ler Parallel

Un número entre 0 y 1000 que indica lo volumen de Sound está volver.

Esta propiedad refleja la amplitud de la reproducción del sonido en la instancia del tiempo que se leído. Por lo tanto, para la mayoría de los sonidos, fluirá constantemente. Debido a esto, puede aparecer en la ventana de propiedades de Roblox Studio como 0, pero cuando se lee por código en la barra de comandos o Scripts retornará el valor correcto.

Amostras de código

Volume Amplitude Bar

-- to be placed in StarterPlayer > StarterPlayerScripts
local Players = game:GetService("Players")
-- wait for local player PlayerGui
local LocalPlayer = Players.LocalPlayer
local playerGui = LocalPlayer:WaitForChild("PlayerGui")
-- create a ScreenGui
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = playerGui
-- create a holder for our bar
local frame = Instance.new("Frame")
frame.AnchorPoint = Vector2.new(0.5, 0.5)
frame.Position = UDim2.new(0.5, 0, 0.5, 0)
frame.Size = UDim2.new(0.3, 0, 0.05, 0)
frame.Parent = screenGui
-- create a bar
local bar = Instance.new("Frame")
bar.Position = UDim2.new(0, 0, 0, 0)
bar.Size = UDim2.new(1, 0, 1, 0)
bar.BackgroundColor3 = Color3.new(0, 1, 0)
bar.Parent = frame
-- create a sound
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = screenGui
sound:Play()
-- define a max loudness
local maxLoudness = 30
-- animate the amplitude bar
while true do
local amplitude = math.clamp(sound.PlaybackLoudness / maxLoudness, 0, 1)
bar.Size = UDim2.new(amplitude, 0, 1, 0)
wait(0.05)
end

PlaybackRegion

Ler Parallel

Un rango que designa un tiempo de inicio deseado (min) y de detención (max) dentro del Sound.TimeLength , en segundos.

  • Si PlaybackRegion.Min > 0, el sonido comienza a reproducirse desde el tiempo de PlaybackRegion.Min.

  • Si PlaybackRegion.Min < 0, el sonido comienza a reproducirse desde 0.

  • Si PlaybackRegion.Max > Sound.TimeLength , el sonido se detiene en Sound.TimeLength .

  • Si PlaybackRegion.Max < Sound.TimeLength, el sonido se detiene en exactamente esa hora.

  • Si PlaybackRegion.Min == PlaybackRegion.Max, la PlayBackRegion está inactivo.

PlaybackRegionsEnabled

Ler Parallel

Si es cierto, esta propiedad le da a su Sound acceso a las propiedades Sound.PlaybackRegion y 2> Class.Sound.LoopRegion2>, que pueden controlar más precisamente su reproducción.

PlaybackSpeed

Não replicado
Ler Parallel

Determina la velocidad a la que se jugarun Sound. Cuanto mayor sea el valor, más rápido se reproducirá el sonido.

Por ejemplo, un valor de 2 causará que el Sound reproduzca el doble de rápido, mientras que un valor de 0.5 lo hará reproducir el doble de lento. Cuando PlaybackSpeed esté igual a 1, el sonido tomará Sound.TimeLength (en segundos) para completar.

Nota que aumentar la PlaybackSpeed de un sonido la hará rebotar a un tono más alto.

Amostras de código

Sound PlaybackSpeed

local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = workspace
sound:Play()
task.wait(10)
sound.PlaybackSpeed = 3 -- 3x faster
task.wait(5)
sound.PlaybackSpeed = 0.5 -- 2x slower
task.wait(5)
sound.PlaybackSpeed = 1 -- default

Playing

Não replicado
Ler Parallel

Indica si el Sound está reproduciendo actualmente. Esto se puede alternar, y esta propiedad siempre se replicará.

En el editor de estudio, Sounds no se pueden reproducir porque el tiempo se detiene. Establecer Sound.Playing en verdadero en modo de edición no hace nada. Sin embargo, puede reproducir audio desde dentro de los plugins al configurar el Sounds como descendientes de un 1> Class.PluginGui1> .

Esta propiedad no debe confundirse con Sound.IsPlaying que es una propiedad de lectura solo. El jugar se puede configurar para que sea verdadero o falso para iniciar o dejar el reproducción de un sonido.

Nota que cuando se establece Play en falso, la propiedad Sound.TimePosition del sonido no se restablecerá. Esto significa que cuando se establece Play de nuevo en verdadero el audio continuará desde la posición de tiempo en la que se detuvo cuando se detuvo. Sin embargo, si la función Sound:Play() se usa para resumir el sonido, la posición del tiempo se restablecerá a 0.

Amostras de código

Sound Playing

local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = workspace
print("playing sound")
sound.Playing = true
task.wait(10)
print("stopping sound")
sound.Playing = false
task.wait(5)
sound.Playing = true
local timePosition = sound.TimePosition
print("resumed at time position: " .. tostring(timePosition)) -- c. 10 seconds

RollOffMaxDistance

Ler Parallel

La distancia máxima, en studs, que un cliente escucha puede ser desde la raíz de Class.Sound y todavía escucharla. Solo se aplica a los sonidos relacionados con un padre de Class.Part o Class.Attachment (sonidos 3D).

Cómo RollOffMaxDistance afecta la atenuación de un sonido (manera en que se desvanecen) depende de la propiedad Sound.RollOffMode. Cuando RollOffMode está configurado para usar un modelo de distancia de tipo invertido (Inverse o InverseTapered) el RollOffMaxDistance no afectará la atenuación del

Cuando RollOffMode está configurado como un modelo de distancia de tipo lineal (Linear o LinearSquared) el sonido se atenuará entre Sound.EmitterSize y MaxDistance (con el volumen de reproducción alcanzando cero en el máximo alcance de distancia). Esto es menos realista, pero en algunos casos permite manejar la atenuación de manera más intuitiva.

RollOffMinDistance

Ler Parallel

La distancia mínima, en studs, en la que un 3D Sound (hijo directo de un BasePart o Attachment ) comenzará a atenuarse (disminuir en volumen).

Suena padre a un BasePart o Attachment que son descendientes del Workspace son considerados sonidos 3D y su volumen mientras se reproduce depende de la distancia entre el oyente de sonido del cliente (

La forma en que el Sound se atenuiza (desaparece) después de que la distancia entre el oyente y el sonido exceda la distancia de desplazamiento determinada por el modo de desplazamiento.

RollOffMode

Ler Parallel

Esta propiedad establece cómo 3D Sounds atenuate (fade out) a medida que la distancia entre el oyente y el padre del sonido aumenta. Se puede establecer a uno de los valores del Enum.RollOffMode enum.

El siguiente código establecerá RollOffMode a Linear:


sound.RollOffMode = Enum.RollOffMode.Linear

Los diferentes modos

Las siguientes opciones están disponibles:


<tbody>
<tr>
<td>Inversa</td>
<td>El volumen disminuye de <code>Sonido/RollOffMinDistance</code> de manera inversa.</td>
</tr>
<tr>
<td>InvertidoTapered</td>
<td>Un aplicación de modeladohíbrido. Sigue el modelo Inverse cuando está cerca de <code>RollOffMinDistance</code> y el modelo Linear Square cuando está cerca de <code>Sound/RollOffMaxDistance</code> .</td>
</tr>
<tr>
<td>Lineal</td>
<td>El volumen se atenúa entre <code>RollOffMinDistance</code> y <code>Sound/RollOffMaxDistance</code> con una relación lineal.</td>
</tr>
<tr>
<td>Cuadrado lineal</td>
<td>El volumen se atenúa entre <code>RollOffMinDistance</code> y <code>Sound/RollOffMaxDistance</code> con una relación lineal cuadrada.</td>
</tr>
</tbody>
ModoDescripción

Inversa vs Distorsión de Rango Lineal

Por defecto, los sonidos se configuran para usar la atenuación de distancia inversa (enum.rolloffmode.逆) que se basa en cómo los sonidos se atenuan en el mundo real. Bajo la atenuación de distancia inversa, los sonidos comenzarán a atenuarse una vez que la distancia entre el oyente y el padre del sonido exceda la dist

RollOffMaxDistance no afectará la atenuación bajo el modelo inverso, pero causará que el sonido se corte completamente una vez que se alcanza esta distancia. Esto puede ser particularmente brusco cuando se utilizan valores bajos para la máxima distancia.

La distorsión de distancia lineal funciona de manera diferente. Bajo la distorsión de distancia lineal, el sonido se atenuará entre RollOffMinDistance y RollOffMaxDistance, cayendo en silencio una vez que se alcanza MaxDistance. RollOffMinDistance todavía representa el punto en el que el sonido comenzará a atenuarse. Sin embargo, el volumen auditivo en cualquier momento a

SoundGroup

Ler Parallel

El SoundGroup que está vinculado a este Sound . SoundGroup.Volume y 2>Class.SoundEffect|SoundEffects2> aplicado a este grupo de sonido solo se pasará al sonido. Un sonido sólo puede estar en un grupo de sonido en el tiempo.

SoundGroups se usan para administrar el volumen y los efectos de múltiples Sounds a la vez. Se agrega un Sound a un 0> Class.SoundGroup0> al configurar la propiedad de Sonido del sonido.

Amostras de código

SoundGroups

local SoundService = game:GetService("SoundService")
-- create a sound group
local soundGroup = Instance.new("SoundGroup")
soundGroup.Parent = SoundService
-- create a sound
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.PlaybackSpeed = 2
sound.SoundGroup = soundGroup
sound.Parent = workspace
-- play the sound
sound:Play()
task.wait(10)
-- change the volume
soundGroup.Volume = 0.1
task.wait(3)
-- return the volume
soundGroup.Volume = 0.5
task.wait(4)
-- add a sound effect
local reverb = Instance.new("ReverbSoundEffect")
reverb.Parent = soundGroup

SoundId

ContentId
Ler Parallel

Esta propiedad es el ID de contenido del archivo de sonido con el que se asocia. Una vez que se ha cargado un sonido en Roblox, el ID de contenido se puede encontrar en la URL del sonido cargado.

Es importante recordar que la URL no es la misma que el ID de contenido. Funcionará cuando se pegue directamente en la propiedad SoundId de un Sound en Roblox Studio, ya que Studio lo corregirá automáticamente, sin embargo, si se establece desde un Script entonces se necesitará el ID de contenido correcto. Para obtener más información, consulte la sección Roblox Studio de esta página.


"https://www.roblox.com/catalog/9120386436" -- URL de la web (no funcionará)
"http://www.roblox.com/asset/?id=9120386436" -- ID de contenido ( funcionará )
"rbxassetid://9120386436" -- Content ID (alternative version, will work)

Amostras de código

Sound in the Workspace

local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = workspace
sound:Play()

TimeLength

Somente leitura
Não replicado
Ler Parallel

La longitud del Sound en segundos. Si el Sound no se carga, este valor se establecerá en 0.

Esta propiedad se usa a menudo en conjunción con Sound.PlaybackSpeed para ajustar la velocidad de un sonido para que dure durante una duración específica (ver ejemplos). Cuando Sound.PlaybackSpeed es igual a 1, el sonido tomará TimeLength segundos para completarse.

Amostras de código

Play a Sound for a Specific Duration

local function playForDuration(sound, duration)
if not sound.IsLoaded then
sound.Loaded:wait()
end
local speed = sound.TimeLength / duration
sound.PlaybackSpeed = speed
sound:Play()
end
local sound = script.Parent
playForDuration(sound, 5)

TimePosition

Não replicado
Ler Parallel

Muestra el progreso en segundos del Sound . Se puede cambiar para mover la posición de reproducción del sonido. Si el sonido ya está reproduciendo, entonces la reproducción se ajustará a la posición especificada. Si no está reproduciendo el Sound , comenzará la reproducción en la posición establecida cuando el sonido se reproduzca.

A medida que se reproduce un Sound, TimePosition aumenta en un Sound.PlaybackSpeed por segundo. Una vez que TimePosition alcanza Sound.TimeLength, el sonido se detendrá a menos que se haya establecido 2>Class.Sound.Looped2> como verdadero estableciendo

Tenga en cuenta que establecer TimePosition a un valor mayor que la longitud en una pista en bucle no lo hará envuelto. Si ese comportamiento se desea, el desarrollador deberá hacer lo siguiendo.

si newPosition >= sound.TimeLength entonces newPosition = newPosition - sound.TimeLength end sound.Position = newPosition

Establecer TimePosition a un valor menor a cero no afecta el tiempo de reproducción, pero este comportamiento no debería confiarse.

Amostras de código

Sound TimePosition

local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Parent = workspace
sound.TimePosition = 30
sound:Play()
task.wait(5)
sound.TimePosition = 100
task.wait(5)
sound.TimePosition = 0

Volume

Ler Parallel

El volumen de Class.Sound . Se puede establecer entre 0 y 10. Por defecto, 0.5

Nota que si el Sound es un miembro de un SoundGroup su volumen de reproducción (pero no la propiedad Volumen) se verá afectado por la propiedad SoundGroup.Volume de ese 2>Class.SoundGroup2> . El efecto de esto

Amostras de código

Sound Volume

local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.PlaybackSpeed = 2
sound.Parent = workspace
sound.Volume = 2
sound:Play()
task.wait(7)
sound.Volume = 0.2

Métodos

Pause

void

Establece Sound.Playing a falso. Esto permite que el reproductor de Sound deje de reproducir el sonido si el sonido está en reproducción. A diferencia de Sound:Stop(), no restablece 1> Class.Sound.TimePosition1>, lo que significa que el sonido se puede reanudar usando 4> Class.Sound:

El impacto de las diferentes funciones de sonido en Sound.Playing y Sound.TimePosition se muestran a continuación.


<tbody>
<tr>
<td>Sonido:Reproducir()</td>
<td>Veraz</td>
<td>Último valor establecido en Lua (por defecto 0)</td>
</tr>
<tr>
<td>Sonido:Pausa()</td>
<td>Falso</td>
<td></td>
</tr>
<tr>
<td>Sonido:Resume()</td>
<td>Veraz</td>
<td></td>
</tr>
<tr>
<td>Sonido:Parar()</td>
<td>Falso</td>
<td>0</td>
</tr>
</tbody>
FunciónSonido.JugandoPosición de sonido.

Devolução

void

Amostras de código

Sound Functions

-- create a sound
local sound = Instance.new("Sound", game.Workspace)
sound.SoundId = "rbxassetid://9120386436"
if not sound.IsLoaded then
sound.Loaded:Wait()
end
-- listen for events
sound.Played:Connect(function(_soundId)
print("Sound.Played event")
end)
sound.Paused:Connect(function(_soundId)
print("Sound.Paused event")
end)
sound.Resumed:Connect(function(_soundId)
print("Sound.Resumed event")
end)
sound.Stopped:Connect(function(_soundId)
print("Sound.Stopped event")
end)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0
task.wait(10)
sound:Pause()
print("pause", sound.Playing, sound.TimePosition) -- pause false 10
task.wait(3)
sound:Resume()
print("play", sound.Playing, sound.TimePosition) -- play true 10
task.wait(3)
sound:Stop()
print("stop", sound.Playing, sound.TimePosition) -- stop false 0
task.wait(3)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0

Play

void

Reproduce el Sound . Establece Sound.TimePosition al último valor establecido por un Script (o 0 si no se ha establecer), y luego establece 2>Class.Sound.Playing2> a la verdad.

El impacto de las diferentes funciones de Sound en Sound.Playing y Sound.TimePosition se muestran a continuación.


<tbody>
<tr>
<td>Sonido:Reproducir()</td>
<td>Veraz</td>
<td>Último valor establecido en Lua (por defecto 0)</td>
</tr>
<tr>
<td>Sonido:Pausa()</td>
<td>Falso</td>
<td></td>
</tr>
<tr>
<td>Sonido:Resume()</td>
<td>Veraz</td>
<td></td>
</tr>
<tr>
<td>Sonido:Parar()</td>
<td>Falso</td>
<td>0</td>
</tr>
</tbody>
FunciónSonido.JugandoPosición de sonido.

Devolução

void

Amostras de código

Sound Functions

-- create a sound
local sound = Instance.new("Sound", game.Workspace)
sound.SoundId = "rbxassetid://9120386436"
if not sound.IsLoaded then
sound.Loaded:Wait()
end
-- listen for events
sound.Played:Connect(function(_soundId)
print("Sound.Played event")
end)
sound.Paused:Connect(function(_soundId)
print("Sound.Paused event")
end)
sound.Resumed:Connect(function(_soundId)
print("Sound.Resumed event")
end)
sound.Stopped:Connect(function(_soundId)
print("Sound.Stopped event")
end)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0
task.wait(10)
sound:Pause()
print("pause", sound.Playing, sound.TimePosition) -- pause false 10
task.wait(3)
sound:Resume()
print("play", sound.Playing, sound.TimePosition) -- play true 10
task.wait(3)
sound:Stop()
print("stop", sound.Playing, sound.TimePosition) -- stop false 0
task.wait(3)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0

Resume

void

Resume el Sound. Establece Sound.Playing para que sea verdadero. No cambia Sound.TimePosition y, por lo tanto, se puede usar para reanudar la reproducción de un sonido detenido usando 2>Class.Sound:Pause2>.

El impacto de las diferentes funciones de sonido en Sound.Playing y Sound.TimePosition se muestran a continuación.


<tbody>
<tr>
<td>Sonido:Reproducir()</td>
<td>Veraz</td>
<td>Último valor establecido en Lua (por defecto 0)</td>
</tr>
<tr>
<td>Sonido:Pausa()</td>
<td>Falso</td>
<td></td>
</tr>
<tr>
<td>Sonido:Resume()</td>
<td>Veraz</td>
<td></td>
</tr>
<tr>
<td>Sonido:Parar()</td>
<td>Falso</td>
<td>0</td>
</tr>
</tbody>
FunciónSonido.JugandoPosición de sonido.

Devolução

void

Amostras de código

Sound Functions

-- create a sound
local sound = Instance.new("Sound", game.Workspace)
sound.SoundId = "rbxassetid://9120386436"
if not sound.IsLoaded then
sound.Loaded:Wait()
end
-- listen for events
sound.Played:Connect(function(_soundId)
print("Sound.Played event")
end)
sound.Paused:Connect(function(_soundId)
print("Sound.Paused event")
end)
sound.Resumed:Connect(function(_soundId)
print("Sound.Resumed event")
end)
sound.Stopped:Connect(function(_soundId)
print("Sound.Stopped event")
end)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0
task.wait(10)
sound:Pause()
print("pause", sound.Playing, sound.TimePosition) -- pause false 10
task.wait(3)
sound:Resume()
print("play", sound.Playing, sound.TimePosition) -- play true 10
task.wait(3)
sound:Stop()
print("stop", sound.Playing, sound.TimePosition) -- stop false 0
task.wait(3)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0

Stop

void

Detiene el Sound . Establece Sound.Playing a falso y luego establece Sound.TimePosition en 0.

El impacto de las diferentes funciones de sonido en Sound.Playing y Sound.TimePosition se muestran a continuación.


<tbody>
<tr>
<td>Sonido:Reproducir()</td>
<td>Veraz</td>
<td>Último valor establecido en Lua (por defecto 0)</td>
</tr>
<tr>
<td>Sonido:Pausa()</td>
<td>Falso</td>
<td></td>
</tr>
<tr>
<td>Sonido:Resume()</td>
<td>Veraz</td>
<td></td>
</tr>
<tr>
<td>Sonido:Parar()</td>
<td>Falso</td>
<td>0</td>
</tr>
</tbody>
FunciónSonido.JugandoPosición de sonido.

Devolução

void

Amostras de código

Sound Functions

-- create a sound
local sound = Instance.new("Sound", game.Workspace)
sound.SoundId = "rbxassetid://9120386436"
if not sound.IsLoaded then
sound.Loaded:Wait()
end
-- listen for events
sound.Played:Connect(function(_soundId)
print("Sound.Played event")
end)
sound.Paused:Connect(function(_soundId)
print("Sound.Paused event")
end)
sound.Resumed:Connect(function(_soundId)
print("Sound.Resumed event")
end)
sound.Stopped:Connect(function(_soundId)
print("Sound.Stopped event")
end)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0
task.wait(10)
sound:Pause()
print("pause", sound.Playing, sound.TimePosition) -- pause false 10
task.wait(3)
sound:Resume()
print("play", sound.Playing, sound.TimePosition) -- play true 10
task.wait(3)
sound:Stop()
print("stop", sound.Playing, sound.TimePosition) -- stop false 0
task.wait(3)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0

Eventos

DidLoop

Evento que se activa cuando se ejecutan los ciclos de Sound. Devuelve el ID de sonido y el número de veces que se repite, que se traduce en el ID de contenido del sonido y el número de veces que se repite respectivamente.

Cuando el Sound es detenido, el contador de bucles se reinicia, lo que significa que el próximo evento de DidLoop devolverá 1 para numOfTimesLooped.

Parâmetros

soundId: string

El Sound.SoundId de Class.Sound que se repitió.

numOfTimesLooped: number

El número de veces que el Sound ha repetido.


Amostras de código

Loop a Number of Times

local function loopNTimes(sound, numberOfLoops)
if not sound.IsPlaying then
sound.Looped = true
local connection = nil
connection = sound.DidLoop:Connect(function(_soundId, numOfTimesLooped)
print(numOfTimesLooped)
if numOfTimesLooped >= numberOfLoops then
-- disconnect the connection
connection:Disconnect()
-- stop the sound
sound:Stop()
end
end)
sound:Play()
end
end
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://0"
loopNTimes(sound, 5)

Ended

Se activa cuando el Sound ha completado la reproducción y se ha detenido. Tenga en cuenta que este evento no se activará para los sonidos con Sound.Looped configurado como verdadero mientras siguen reproduciendo al llegar a su finalizar.

Este evento a menudo se usa para destruir un sonido cuando ha completado la reproducción.


sound:Play()
sound.Ended:Wait()
sound:Destroy()

Este evento solo se activa si el sonido ha llegado a su finalizar. Esto significa que también no se activará cuando el sonido se detenga antes de que se complete el reproducción, para este uso Sound.Stopped .

Parâmetros

soundId: string

El Sound.SoundId del Sound que ha terminado.


Loaded

El evento Sound.Loaded se activa cuando se carga el Sound .

Tenga en cuenta que este evento solo se activará cuando se cargue el sonido. Esto significa que si se escucha cuando el sonido ya está cargado, no se devolverá. Por lo tanto, se recomienda verificar Sound.IsLoaded antes de conectarse a este evento.

Parâmetros

soundId: string

El Sound.SoundId de Class.Sound que se cargó.


Amostras de código

Load Sound

local sound = script.Parent.Sound
if not sound.IsLoaded then
sound.Loaded:Wait()
end
print("The sound has loaded!")

Paused

Dispara cuando el Sound está en pausa usando Sound:Pause() .

Al igual que con Sound.Played , Sound.Resumed y Sound.Stopped , sólo la función de sonido respectiva causará el evento de desencadenar. Esto significa que Pause sólo se disparará cuando se llama 1> Class.Sound:Pause1> .

Parâmetros

soundId: string

El Sound.SoundId de Class.Sound que fue pausado.


Amostras de código

Sound Functions

-- create a sound
local sound = Instance.new("Sound", game.Workspace)
sound.SoundId = "rbxassetid://9120386436"
if not sound.IsLoaded then
sound.Loaded:Wait()
end
-- listen for events
sound.Played:Connect(function(_soundId)
print("Sound.Played event")
end)
sound.Paused:Connect(function(_soundId)
print("Sound.Paused event")
end)
sound.Resumed:Connect(function(_soundId)
print("Sound.Resumed event")
end)
sound.Stopped:Connect(function(_soundId)
print("Sound.Stopped event")
end)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0
task.wait(10)
sound:Pause()
print("pause", sound.Playing, sound.TimePosition) -- pause false 10
task.wait(3)
sound:Resume()
print("play", sound.Playing, sound.TimePosition) -- play true 10
task.wait(3)
sound:Stop()
print("stop", sound.Playing, sound.TimePosition) -- stop false 0
task.wait(3)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0

Played

Se activa cuando el Sound se reproduce usando la función Sound:Play().

Al igual que con Sound.Stopped , Sound.Paused y Sound.Resumed , sólo la función de sonido respectiva causará el evento de desencadenar. Esto significa que Played sólo disparará

Parâmetros

soundId: string

El Sound.SoundId de la Sound que se ha reproducido.


Amostras de código

Sound Functions

-- create a sound
local sound = Instance.new("Sound", game.Workspace)
sound.SoundId = "rbxassetid://9120386436"
if not sound.IsLoaded then
sound.Loaded:Wait()
end
-- listen for events
sound.Played:Connect(function(_soundId)
print("Sound.Played event")
end)
sound.Paused:Connect(function(_soundId)
print("Sound.Paused event")
end)
sound.Resumed:Connect(function(_soundId)
print("Sound.Resumed event")
end)
sound.Stopped:Connect(function(_soundId)
print("Sound.Stopped event")
end)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0
task.wait(10)
sound:Pause()
print("pause", sound.Playing, sound.TimePosition) -- pause false 10
task.wait(3)
sound:Resume()
print("play", sound.Playing, sound.TimePosition) -- play true 10
task.wait(3)
sound:Stop()
print("stop", sound.Playing, sound.TimePosition) -- stop false 0
task.wait(3)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0

Resumed

Se activa cuando el Sound se reanuda con el uso de Sound:Resume().

Al igual que con Sound.Played , Sound.Paused y Sound.Stopped , sólo la función de sonido respectiva causará el evento de desencadenar. Esto significa que Resume sólo se disparará cuando se llama 1> Class.Sound:Resume()1>.

Parâmetros

soundId: string

El Sound.SoundId de Class.Sound se está reanudando.


Amostras de código

Sound Functions

-- create a sound
local sound = Instance.new("Sound", game.Workspace)
sound.SoundId = "rbxassetid://9120386436"
if not sound.IsLoaded then
sound.Loaded:Wait()
end
-- listen for events
sound.Played:Connect(function(_soundId)
print("Sound.Played event")
end)
sound.Paused:Connect(function(_soundId)
print("Sound.Paused event")
end)
sound.Resumed:Connect(function(_soundId)
print("Sound.Resumed event")
end)
sound.Stopped:Connect(function(_soundId)
print("Sound.Stopped event")
end)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0
task.wait(10)
sound:Pause()
print("pause", sound.Playing, sound.TimePosition) -- pause false 10
task.wait(3)
sound:Resume()
print("play", sound.Playing, sound.TimePosition) -- play true 10
task.wait(3)
sound:Stop()
print("stop", sound.Playing, sound.TimePosition) -- stop false 0
task.wait(3)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0

Stopped

Se activa cuando el Sound es detenido debido a la función Sound:Stop()

Al igual que con Sound.Played , Sound.Paused y Sound.Resumed , sólo la función de sonido respectiva causará que se desencadenarel evento. Esto significa que Stopped sólo se disparará cuando se llama 1> Class.Sound:Stop1>. Destruir un sonido mientras está reproduciendo no causará que se desencadenar

Parâmetros

soundId: string

El Sound.SoundId de Class.Sound que se detuvo.


Amostras de código

Sound Functions

-- create a sound
local sound = Instance.new("Sound", game.Workspace)
sound.SoundId = "rbxassetid://9120386436"
if not sound.IsLoaded then
sound.Loaded:Wait()
end
-- listen for events
sound.Played:Connect(function(_soundId)
print("Sound.Played event")
end)
sound.Paused:Connect(function(_soundId)
print("Sound.Paused event")
end)
sound.Resumed:Connect(function(_soundId)
print("Sound.Resumed event")
end)
sound.Stopped:Connect(function(_soundId)
print("Sound.Stopped event")
end)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0
task.wait(10)
sound:Pause()
print("pause", sound.Playing, sound.TimePosition) -- pause false 10
task.wait(3)
sound:Resume()
print("play", sound.Playing, sound.TimePosition) -- play true 10
task.wait(3)
sound:Stop()
print("stop", sound.Playing, sound.TimePosition) -- stop false 0
task.wait(3)
sound:Play()
print("play", sound.Playing, sound.TimePosition) -- play true 0