Sound
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
Un oggetto Sound è un oggetto che emette un suono.
Suono 2D e 3D
Un suono posizionato in un BasePart o in un Attachment emette il suo suono dalla posizione Class
Un suono è considerato "globale" se non è parented a BasePart o un Attachment . In questo caso, il suono sarà riprodotto allo stesso volume in tutto il Posto.
Campioni di codice
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)
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = workspace
sound:Play()
Sommario
Proprietà
Questa proprietà sarà vera quando il Sound è stato caricato dai server Roblox e è pronto per essere Giocare.
Questa proprietà read-only restituirà true quando il Sound non sta giocando.
Questa proprietà read-only restituirà true quando il Sound sta giocando.
Una gamma che denota l'inizio e la fine del ciclo all'interno della Sound.PlaybackRegion , in secondi.
Questo imposta se o no il Sound si ripetere una volta finito quando sta giocando.
Quando è vero, il Sound si attiverà quando sarà rimosso dal Gioco, affidandosi al genitore del Sound o uno dei suoi antenati per nulla.
Un numero tra 0 e 1000 che indica quanto è rumoroso il Sound attualmente in Indietro.
Una gamma che denota l'inizio desiderato (min) e la fine (max) in un intervallo di tempo Sound.TimeLength , in secondi.
Se vero , questa proprietà dà il tuo accesso Sound alle proprietà Sound.PlaybackRegion e 1> Class.Sound.LoopRegion1>, che possono controllare più esattamente la sua riproduzione.
Determina la velocità con cui un Sound si Giocare, con valori più elevati che fanno si che il suono si esegua più velocemente e ad una nota più alta.
Indica se il Sound sta attualmente giocando.
La distanza massima, in studs, che un client di ascolto può essere dall'origine Sound\s e ascoltarlo ancora. Si applica solo ai suoni legati a un Part o Attachment (suoni 3D).
La distanza minima, in studs, a cui un 3D Sound (figlio diretto di un BasePart o Attachment ) inizierà a diminuire (diminuire in volume).
Controlla il modo in cui il volume di un 3D Sound (genitore di un BasePart o Attachment ) si comporta come la distanza tra il lettore e il genitore del suono.
Il SoundGroup che è collegato a questo Sound . I Volume e SoundEffects applicati a questo gruppo sonoro saranno trasmessi al suono. Un suono può essere in un solo gruppo sonoro alla volta.
Questa proprietà è l'ID del contenuto del file audio a cui un oggetto Sound è associato. Una volta caricato il suono, l'ID del contenuto può essere trovato nell'URL del suono caricato.
La lunghezza del Sound in secondi. Se il Sound non è caricato, questo valore sarà 0.
Mostra il progresso in secondi del Sound . Può essere cambiato per spostare la posizione di riproduzione del Sound sia prima che durante la riproduzione.
Il volume della Sound . Può essere impostato tra 0 e 10. Predefiniti a 0.5.
Metodi
Imposta Sound.Playing su false. Ciò sospende il playback del Sound se il suono è in esecuzione. Come Sound.TimePosition non viene ripristinato, quando il 1> Class.Sound1> è ripreso continuerà dalla sua posizione precedente.
Riproduce il Sound . Imposta Sound.TimePosition su l'ultimo valore impostato da un Script (o 0 se non è stato Impostare), quindi imposta 1> Class.Sound.Playing1> su true.
Ripristina il Sound . Imposta Sound.Playing su verità. Non modifica Sound.TimePosition e quindi può essere utilizzato per riavviare il playback di un suono interrotto utilizzando 1> Class.Sound:Pause()1> .
Interrompe il Sound . Imposta Sound.Playing su false, quindi imposta Sound.TimePosition su 0.
Eventi
Evento che si attiva ogni volta che si esegue il ciclo Sound. Ritorna soundId e numOfTimesLooped, fornendo l'ID contenuto del suono e il numero di volte looped rispettivamente.
Si attiva quando il Sound ha completato il playback e si è fermato.
Si attiva quando il Sound è caricato.
Si attiva ogni volta che Sound è sospeso utilizzando Sound:Pause() .
Si attiva ogni volta che viene riprodotto il Sound utilizzando la funzione Sound:Play() .
Si attiva quando il Sound è ripreso utilizzando Sound:Resume() .
Si attiva quando il Sound è interrotto a causa della funzione Sound:Stop() .
Proprietà
ChannelCount
IsLoaded
Questa proprietà sarà vera quando il Sound è stato caricato dai server Roblox e è pronto per essere Giocare.
In Roblox, i file audio non vengono memorizzati nei giochi stessi, ma vengono hostati nei server Roblox e referenziati dalla ProprietàSound.SoundId. Ciò significa che devono essere scaricati sul dispositivo del client prima di poter essere riprodotti. Ciò può richiedere un po 'di tempo a seconda della connessione Internet dell'utente, della lunghezza del suono e del numero di altri oggetti che devono essere caricati.
Gli sviluppatori possono utilizzare la proprietà Sound.IsLoaded e l'evento Sound.Loaded se desiderano verificare se un suono è stato caricato prima di giocarlo.
Campioni di codice
local sound = script.Parent.Sound
if not sound.IsLoaded then
sound.Loaded:Wait()
end
print("The sound has loaded!")
IsPaused
Questa proprietà read-only restituirà true quando il Sound non sta giocando. Nota che questa proprietà non restituirà true solo una volta che un suono è stato暂停 utilizzando la funzione Sound:Pause() ma anche se non è stato giocato utilizzando la funzione Sound:Stop() o mai giocato.
Questa proprietà sarà vera solo quando Sound.IsPlaying è falso.
Come IsPaused è letto solo, non può essere usato per fermare il suono, Sound:Stop() e Sound:Pause() dovrebbe essere usato invece.
Campioni di codice
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
Questa proprietà read-only restituirà true quando il Sound sta giocando.
Questa proprietà può essere vera solo quando Sound.IsPaused è falsa.
Poiché IsPlaying è in lettura solo, non può essere utilizzato per riprodurre il suono, Sound:Play() dovrebbe essere utilizzato invece.
Campioni di codice
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
Un intervallo che denota l'inizio e la fine di un ciclo all'interno della Sound Sound.PlaybackRegion in secondi.
Se LoopRegion.Min > PlaybackRegion.Min , il loop inizia dal LoopRegion.Min .
Se LoopRegion.Min < PlaybackRegion.Min , il loop inizia dalla PlaybackRegion.Min .
Se LoopRegion.Max > PlaybackRegion.Max , il loop inizia a PlaybackRegion.Max .
Se LoopRegion.Max < PlaybackRegion.Max , il loop inizia a esattamente quel momento.
Se LoopRegion.Min == LoopRegion.Max, il LoopRegion.Max usa la proprietà Sound invece.
Looped
Questo imposta se o no il Sound si ripetere una volta finito quando sta giocando.
I suoni a loop sono adatti a una gamma di applicazioni tra cui musica e suoni ambientali di sottofondo. L'evento Sound.DidLoop può essere utilizzato per tracciare il numero di volte in cui il suono è stato looped.
Campioni di codice
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)
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
Quando è vero, il Sound si attiverà quando verrà rimosso dal Gioco.
Nota che il suono si attiverà quando la proprietà Instance.Parent di Class.Sound o uno dei suoi antenati è impostato su null. Ciò significa che tutto il seguente causerà il suono quando PlayOnRemove è vero. Nota, questo include Sound come la funzione di distruzione imposta il padre su null.
suono: distruggi il suono.Parent = nil suono.Parent.Parent = nil
Campioni di codice
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
Un numero tra 0 e 1000 che indica quanto è rumoroso il Sound attualmente in Indietro.
Questa proprietà riflette l'ampitudine della riproduzione del suono nell'istanza del tempo in cui viene letto. Quindi, per la maggior parte dei suoni, si alternerà costantemente. A causa di questo, può apparire nella finestra delle proprietà Roblox Studio come 0, tuttavia quando viene letto dal codice nella barra di comando o Scripts restituirà il valore corretto.
Campioni di codice
-- 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
Una gamma che denota l'inizio desiderato (min) e la fine (max) in un intervallo di tempo Sound.TimeLength , in secondi.
Se PlaybackRegion.Min > 0, il suono inizia a riprodursi dal PlaybackRegion.Min time.
Se PlaybackRegion.Min < 0, il suono inizia a suonare da 0.
Se PlaybackRegion.Max > Sound.TimeLength , il suono si ferma a Sound.TimeLength .
Se PlaybackRegion.Max < Sound.TimeLength , il suono si ferma a esattamente quel momento.
Se PlaybackRegion.Min == PlaybackRegion.Max, la PlayBackRegion è Inattivo, Inattiva, Inattivi.
PlaybackRegionsEnabled
Se vero , questa proprietà dà il tuo accesso Sound alle proprietà Sound.PlaybackRegion e 1> Class.Sound.LoopRegion1>, che possono controllare più esattamente la sua riproduzione.
PlaybackSpeed
Determina la velocità con cui un Sound riproduce il Giocare. Più grande è il valore, più veloce è il suono che Indietro.
Ad esempio, un valore di 2 farà in modo che il Sound suoni 2x più velocemente, mentre un valore di 0.5 lo farà suonare 2x più lentamente. Quando PlaybackSpeed è pari a 1, il suono richiederà Sound.TimeLength (in secondi) per completarsi.
Nota che l'aumento della velocità di riproduzione di un suono lo farà giocare a un pitch più alto.
Campioni di codice
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
Indica se il Sound sta attualmente giocando. Questo può essere attivato e questa proprietà si replica sempre.
Nell'editor dello studio, Sounds non sono giocabili poiché il tempo è fermato. Impostando Sound.Playing in modo veritiero in modalità modifica non si ottiene nulla. Tuttavia, puoi giocare l'audio da dentro dei plugin impostando il Sounds come discendenti di un 1> Class.PluginGui1>
Questa proprietà non dovrebbe essere confusa con Sound.IsPlaying che è una Proprietàdi lettura. Il giocare può essere impostato su true o false per avviare o interrompere il playback di un suono.
Nota che quando Play è impostato su false, la proprietà Sound.TimePosition del suono non si Ripristina. Ciò significa che quando Play è impostato su true again l'audio continuerà dalla posizione temporale in cui è stato interrotto. Tuttavia, se la funzione Sound:Play() viene utilizzata per riassumere il suono, la posizione temporale sarà ripristata a 0.
Campioni di codice
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
La distanza massima, in studs, di un client's listener può essere dall'origine Sound e comunque ascoltarla. Si applica solo ai suoni legati a un Part o Attachment (suoni 3D).
Come RollOffMaxDistance influisce sulla riduzione di un suono (maniera in cui sbiadisce) è dipendente dalla ProprietàSound.RollOffMode. Quando RollOffMode è impostato per utilizzare un modello di distanza invertito (Inverse o InverseTapered) il RollOffMaxDistance non influisce sulla riduzione del suono. Ciò significa
Quando RollOffMode è impostato su un modello di distanza lineare (Linear o LinearSquared) il suono si attenua tra Sound.EmitterSize e MaxDistance (con volume di riproduzione che raggiunge zero a RollOffMaxDistance). Ciò è meno realistico, ma in alcuni casi consente di gestire l'attenuazione in modo più intuitivo.
RollOffMinDistance
La distanza minima, in studs, a cui un 3D Sound (figlio diretto di un BasePart o Attachment ) inizierà a diminuire (diminuire in volume).
Sembra essere legato a un BasePart o Attachment che sono discendenti di Workspace sono considerati suoni 3D e il loro volume mentre si gioca dipende dalla distanza tra il suono del cliente ( 1>
Il modo in cui il Sound si attenua (disattiene) dopo che la distanza tra il lettore e il suono supera la distanza di RollOffMinDistance è determinata dal RollOffMode.
RollOffMode
Questa proprietà imposta il modo in cui 3D Sounds attenuate (fade out) come la distanza tra il lettore e il padre del suono aumenta. Può essere impostato su uno dei valori dell'Enum.RollOffMode枚.
Il seguente codice imposterà RollOffMode su Linear:
sound.RollOffMode = Enum.RollOffMode.Linear
I diversi modelli
Le seguenti opzioni sono disponibili:
<tbody><tr><td>Inverso</td><td>Il volume si attenua da <code>Sound/RollOffMinDistance</code> in modo inversato.</td></tr><tr><td>InverseTapered</td><td>Un modello ibrido. Segue il modello Inverse quando vicino a <code>RollOffMinDistance</code> e il modello Linear Square quando vicino a <code>Sound/RollOffMaxDistance</code> .</td></tr><tr><td>Lineare</td><td>Il volume si attenua tra <code>RollOffMinDistance</code> e <code>Sound/RollOffMaxDistance</code> con una relazione lineare.</td></tr><tr><td>LineaQuadrata</td><td>Il volume si attenua tra <code>RollOffMinDistance</code> e <code>Sound/RollOffMaxDistance</code> con una relazione lineare quadrata.</td></tr></tbody>
Modalità | Descrizione |
---|
Inversione della distanza inversa vs lineare
Per impostazione predefinita, i suoni sono impostati per utilizzare l'attenuazione della distanza inversa (Enum.RollOffMode.Inverse) che riflette il modo in cui i suoni si attenuano nel Mondoreale. Sotto l'attenuazione della distanza inversa, i suoni inizieranno ad attenuarsi una volta che la distanza tra il lettore e
RollOffMaxDistance non influisce sulla distorsione sotto il modello invertito, ma farà si che il suono si tagli completamente una volta raggiunta questa distanza. Questo può essere particolarmente improvvisato quando si utilizzano valori bassi per la distanza massima.
La distanza lineare attenuata funziona in modo diverso. Under linear distance attenuation il suono attenuirà tra RollOffMinDistance e RollOffMaxDistance, facendo silenzioso una volta raggiunto MaxDistance. RollOffMinDistance mostra ancora il punto in cui il suono inizierà ad attenuarsi. Tuttavia, il volume audibile in qualsiasi punto ora dipende dal punto in cui il ricev
SoundGroup
Il SoundGroup che è linkato a questo Sound . SoundGroup.Volume e 1> Class.SoundEffect|SoundEffects1> applicato a questo gruppo sonoro passa al suono. Un suono può essere in un solo gruppo sonoro alla volta.
SoundGroups vengono utilizzati per gestire il volume e gli effetti di più Sounds contemporaneamente. A Sound viene aggiunto a un 0> Class.SoundGroup0> impostando la proprietà SoundGroup della sound.
Campioni di codice
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
Questa proprietà è l'ID del contenuto del file audio a cui un oggetto Sound è associato. Una volta caricato il suono, l'ID del contenuto può essere trovato nell'URL del suono caricato.
È importante ricordare che l'URL non è lo stesso dell'ID del contenuto. Funzionerà quando viene pastato direttamente nella proprietà SoundId di un Sound in Roblox studio, poiché Studio lo correggerà automaticamente, tuttavia se viene impostato da un Script allora l'ID del contenuto corretto sarà necessario, utilizzando il numero dall'URL. Ad esempio:
"https://www.roblox.com/catalog/9120386436" -- URL del web (non funzionerà)"http://www.roblox.com/asset/?id=9120386436" -- ID del contenuto (funzionerà)"rbxassetid://9120386436" -- Content ID (alternative version, will work)
Campioni di codice
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = workspace
sound:Play()
TimeLength
La lunghezza del Sound in secondi. Se il Sound non è caricato, questo valore sarà 0.
Questa proprietà viene spesso utilizzata in conjunction con Sound.PlaybackSpeed per regolare la velocità di un suono in modo che dura per un periodo di tempo specifico (vedi esempi). Quando Sound.PlaybackSpeed è uguale a 1, il suono richiede TimeLength secondi per completarsi.
Campioni di codice
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
Mostra il progresso in secondi del Sound . Può essere cambiato per spostare la posizione di riproduzione del suono. Se il suono sta già riproducendo, allora la riproduzione si attaccherà alla posizione specificata. Se non sta riproducendo il Sound inizierà la riproduzione al posizione specificata quando il suono viene riprodotto.
Mentre viene riprodotto un Sound, TimePosition aumenta in modo lineare di Sound.PlaybackSpeed per secondo. Una volta che TimePosition raggiunge Sound.TimeLength , il suono si ferma a meno che non sia impostato su 2>Class.Sound.Looped2> in modo che
Nota che impostare TimePosition su un valore maggiore della lunghezza in una pista looped non causerà che si avvolga intorno. Se tale comportamento è desiderato, il sviluppatore dovrebbe fare quanto Seguendo.
Se newPosition >= sound.TimeLength, allora newPosition = newPosition - sound.TimeLength, posizione di fine suono.Position = newPosition
Impostare TimePosition a un valore inferiore a zero non influisce sull'esecuzione, ma questo comportamento non dovrebbe essere affidato.
Campioni di codice
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
Il volume della Sound . Può essere impostato tra 0 e 10. Predefiniti a 0.5
Nota che se il Sound è un membro di un SoundGroup il suo volume di riproduzione (ma non la ProprietàVolume) sarà influenzato dalla proprietà SoundGroup.Volume di quel 2>Class.SoundGroup2> . L'effetto di questo è multi
Campioni di codice
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
Metodi
Pause
Imposta Sound.Playing su false. Ciò sospende il playback del Sound se il suono è in esecuzione. A differenza di Sound:Stop() , non ripristina 1> Class.Sound.TimePosition1> , il che significa che il suono può essere ripreso utilizzando 4> Class.Sound:Resume()</
L'impatto delle diverse funzioni di suono su Sound.Playing e Sound.TimePosition sono mostrati di seguito.
<tbody><tr><td>Suono:Play()</td><td>Ver</td><td>Ultimo valore impostato in Lua (valore predefinito 0)</td></tr><tr><td>Suono:Pausa()</td><td>Falso</td><td>italian:</td></tr><tr><td>Suono: Resume()</td><td>Ver</td><td>italian:</td></tr><tr><td>Suono:Stop()</td><td>Falso</td><td>0</td></tr></tbody>
Funzione | Suono.Giocando | Posizione temporale del suono |
---|
Restituzioni
Campioni di codice
-- 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
Riproduce il Sound . Imposta Sound.TimePosition su l'ultimo valore impostato da un Script (o 0 se non è stato Impostare), quindi imposta 1> Class.Sound.Playing1> su true.
L'impatto delle diverse funzioni Sound su Sound.Playing e Sound.TimePosition sono mostrati di seguito.
<tbody><tr><td>Suono:Play()</td><td>Ver</td><td>Ultimo valore impostato in Lua (valore predefinito 0)</td></tr><tr><td>Suono:Pausa()</td><td>Falso</td><td>italian:</td></tr><tr><td>Suono: Resume()</td><td>Ver</td><td>italian:</td></tr><tr><td>Suono:Stop()</td><td>Falso</td><td>0</td></tr></tbody>
Funzione | Suono.Giocando | Posizione temporale del suono |
---|
Restituzioni
Campioni di codice
-- 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
Ripristina il Sound . Imposta Sound.Playing su verità. Non modifica Sound.TimePosition e quindi può essere utilizzato per riavviare il playback di un suono interrotto utilizzando 1> Class.Sound:Pause()1> .
L'impatto delle diverse funzioni audio su Sound.Playing e Sound.TimePosition sono mostrati di seguito.
<tbody><tr><td>Suono:Play()</td><td>Ver</td><td>Ultimo valore impostato in Lua (valore predefinito 0)</td></tr><tr><td>Suono:Pausa()</td><td>Falso</td><td>italian:</td></tr><tr><td>Suono: Resume()</td><td>Ver</td><td>italian:</td></tr><tr><td>Suono:Stop()</td><td>Falso</td><td>0</td></tr></tbody>
Funzione | Suono.Giocando | Posizione temporale del suono |
---|
Restituzioni
Campioni di codice
-- 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
Interrompe il Sound . Imposta Sound.Playing su false, quindi imposta Sound.TimePosition su 0.
L'impatto delle diverse funzioni audio su Sound.Playing e Sound.TimePosition sono mostrati di seguito.
<tbody><tr><td>Suono:Play()</td><td>Ver</td><td>Ultimo valore impostato in Lua (valore predefinito 0)</td></tr><tr><td>Suono:Pausa()</td><td>Falso</td><td>italian:</td></tr><tr><td>Suono: Resume()</td><td>Ver</td><td>italian:</td></tr><tr><td>Suono:Stop()</td><td>Falso</td><td>0</td></tr></tbody>
Funzione | Suono.Giocando | Posizione temporale del suono |
---|
Restituzioni
Campioni di codice
-- 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
Eventi
DidLoop
Evento che si attiva ogni volta che si esegue il ciclo Sound. Ritorna soundId e numOfTimesLooped, fornendo l'ID contenuto del suono e il numero di volte looped rispettivamente.
Quando il Sound è fermato, il contatore looped resets meaning il prossimo evento DidLoop restituisce 1 for numOfTimesLooped.
Parametri
Il Sound.SoundId della Sound che si è ripetuta.
Campioni di codice
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
Si attiva quando il Sound ha completato il playback e si è fermato. Nota che questo evento non si attiva per i suoni con Sound.Looped impostato su true mentre continuano a giocare quando raggiungono la Terminare.
Questo evento viene spesso utilizzato per distruggere un suono quando ha completato il playback.
sound:Play()sound.Ended:Wait()sound:Destroy()
Questo evento si attiva solo se il suono ha raggiunto la sua Terminare. Ciò significa che non si attiverà anche quando il suono sarà interrotto prima che il playback sia completato, per questo motivo Sound.Stopped .
Parametri
Il Sound.SoundId della Sound che è finita.
Loaded
L'evento Sound.Loaded si attiva quando il Sound è caricato.
Nota che questo evento si attiverà solo quando il suono è caricato. Ciò significa che se viene ascoltato quando il suono è già caricato non Riportare. Quindi è consigliato controllare Sound.IsLoaded prima di connettersi a questo evento.
Parametri
Il Sound.SoundId della Sound che si è caricata.
Campioni di codice
local sound = script.Parent.Sound
if not sound.IsLoaded then
sound.Loaded:Wait()
end
print("The sound has loaded!")
Paused
Si attiva ogni volta che Sound è sospeso utilizzando Sound:Pause() .
Come con Sound.Played , Sound.Resumed e Sound.Stopped , solo la funzione sonora rispettiva causerà l'evento di Lanciare. Ciò significa che Pause non si attiverà mai quando 1> Class.Sound:Pause()1> è chiamato.
Parametri
Il Sound.SoundId della Sound che è stata暂停.
Campioni di codice
-- 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
Si attiva ogni volta che viene riprodotto il Sound utilizzando la funzione Sound:Play() .
Come con Sound.Stopped , Sound.Paused e Sound.Resumed , solo la funzione sonora rispettiva causerà l'evento di Lanciare. Ciò significa che Played non causerà il fuoco
Parametri
Il Sound.SoundId della Sound che è stata riprodotta.
Campioni di codice
-- 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
Si attiva quando il Sound è ripreso utilizzando Sound:Resume() .
Come con Sound.Played , Sound.Paused e Sound.Stopped , solo la funzione audio rispettiva causerà l'evento di Lanciare. Ciò significa che Resume funzionerà solo quando 1> Class.Sound:Resume()1> è chiamato.
Parametri
Il Sound.SoundId della Sound in ripresa.
Campioni di codice
-- 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
Si attiva quando il Sound è interrotto a causa della funzione Sound:Stop() .
Come con Sound.Played , Sound.Paused e Sound.Resumed , solo la funzione sonora rispettiva causerà l'evento di Lanciare. Ciò significa che Stopped non causerà il fuoco quando 1> Class.Sound:Stop()1> è chiamato. Distruendo un suono mentre si esegue non causerà
Parametri
Il Sound.SoundId della Sound che si è fermata.
Campioni di codice
-- 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