跳到主要内容

SSceneBackgroundMusic

Index

Functions Index

Function Name
void Play ()
void PlayMP3Stream (string url)
void PlayVorbisStream (string url)
void Stop ()

void OnTrackChange (Closure o)
void OnTrackChange (Action< STrackInfo > trackInfoCallback)

void OnUpcomingTrackChange (Closure o)
void OnUpcomingTrackChange (Action< STrackInfo > trackInfoCallback)

Properties Index

Property Name
bool Enabled get set
string URL get
SGameObject GameObject get

Functions

Play

void Play ()

Plays the radio stream

Space.Host.ExecutingObject.Radio.Play()
--this script will let us click a radio to make it start playing
--(Example: clicking a light switch toggle's a parent light bulb's intensity)
--[Requires a "Shoutcast Streaming" component on the parent of this object]

thisGameObject = Space.Host.ExecutingObject
IsPlaying = false


StartPlaying = function()
thisGameObject.Radio.Play()
IsPlaying = true
end

StopPlaying = function()
thisGameObject.Radio.Stop()
IsPlaying = false
end


OnClick = function()
if IsPlaying then
StopPlaying()
else
StartPlaying()
end
end

thisGameObject.AddClickable()
thisGameObject.Clickable.Tooltip="Toggle Play/Stop"
thisGameObject.Clickable.OnClick(OnClick)

PlayMP3Stream

void PlayMP3Stream (string url)

Sets the given MP3 stream url as current stream

ParameterTypeDescription
Space.Host.ExecutingObject.Radio.PlayMP3Stream("http://stream.example.org:1234/")

PlayVorbisStream

void PlayVorbisStream (string url)

Sets the given Vorbis stream url as current stream

ParameterTypeDescription
Space.Host.ExecutingObject.Radio.PlayVorbisStream("http://stream.example.org:1234/")

Stop

void Stop ()

Stops playing the radio stream

Space.Host.ExecutingObject.Radio.Stop()
--this script will let us click a radio to make it start playing
--(Example: clicking a light switch toggle's a parent light bulb's intensity)
--[Requires a "Shoutcast Streaming" component on the parent of this object]

thisGameObject = Space.Host.ExecutingObject
IsPlaying = false


StartPlaying = function()
thisGameObject.Radio.Play()
IsPlaying = true
end

StopPlaying = function()
thisGameObject.Radio.Stop()
IsPlaying = false
end


OnClick = function()
if IsPlaying then
StopPlaying()
else
StartPlaying()
end
end

thisGameObject.AddClickable()
thisGameObject.Clickable.Tooltip="Toggle Play/Stop"
thisGameObject.Clickable.OnClick(OnClick)

OnTrackChange

void OnTrackChange (Closure o)
void OnTrackChange (Action< STrackInfo > trackInfoCallback)

Function will be called when track changes.

ParameterTypeDescription
otc = function(trackInfo)
end
Space.Host.ExecutingObject.Radio.OnTrackChange(otc)
--this script will update a UIText object with the track title on track change
--[this GameObject needs a "Shoutcast Streaming"/"SceneBackgroundMusic" component]

thisObj = Space.Host.ExecutingObject

text = Space.Host.GetReference("Text") -- set in Scripting Runtime references

otc = function(trackInfo)
text.UIText.Text = "Track: " .. trackInfo.Title .. " by " .. trackInfo.Artist
end

thisObj.Radio.OnTrackChange(otc)

OnUpcomingTrackChange

void OnUpcomingTrackChange (Closure o)
void OnUpcomingTrackChange (Action< STrackInfo > trackInfoCallback)

Function will be called when there's an upcoming track change

ParameterTypeDescription
otc = function(trackInfo)

end
Space.Host.ExecutingObject.Radio.OnUpcomingTrackChange(otc)
--this script will update a UIText object with the track title on upcoming track change
--[this GameObject needs a "Shoutcast Streaming"/"SceneBackgroundMusic" component]

thisObj = Space.Host.ExecutingObject

text = Space.Host.GetReference("Text") -- set in Scripting Runtime references

outc = function(upcomingTrackInfo)
text.UIText.Text = "Track: " .. upcomingTrackInfo.Title .. " by " .. upcomingTrackInfo.Artist
end

thisObj.Radio.OnUpcomingTrackChange(outc)

Properties

Enabled

bool Enabled get set

Is this component Enabled?

Space.Host.ExecutingObject.Radio.Enabled = true
--clicking this object will Enable/Disable it's Scene Background Music component
thisGameObject = Space.Host.ExecutingObject
component = thisGameObject.Radio

OnClick = function()
component.Enabled = not component.Enabled
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)

URL

string URL get

URL of the current stream

streamURL = Space.Host.ExecutingObject.Radio.URL
--this script will update a UIText object with the current stream URL
--[this GameObject needs a "Shoutcast Streaming"/"SceneBackgroundMusic" component]

thisObj = Space.Host.ExecutingObject

text = Space.Host.GetReference("Text") -- set in Scripting Runtime references


OnUpdate = function()
text.UIText.Text = thisObj.Radio.URL
end

thisObj.OnUpdate(OnUpdate)

GameObject

SGameObject GameObject get

Property Description

theGameObject = Space.Host.ExecutingObject.Floor.GameObject