The SHost class represents the scripting runtime.
Invokes a UnityEvent attached to the Scripting Runtime component this script is executing in.
function InvokeExample()
Space.Log("Invoke Event");
end
--Attach the upon function to Scripting Runtime/Unity Interfaces/Events,Named "InvokeExample.
Space.Host.InvokeEvent("InvokeExample");
--Print "Invoke Event" to the console.
Pauses the current script until it is manually restarted, at the end of the current function/method; consider using return as well.
trans.SubscribeToEvents();
function Running()
Space.Log("Running")
end
trans.OnUpdate(Running)
Space.Host.InvokeDelayed(function()
Space.Log("Stop")
Space.Host.Stop()
end,5)
Returns the SGameObject this script is attached to.
Space.Log(obj.Name);
Returns the English name for the users language, e.g. 'English', 'French', 'Chinese'
Space.Log(Space.Host.Language);
--Makes a UIText show a different message according to the client's language TextObject = Space.Host.GetReference("TextObject") --add to references section of Scripting Runtime component language = Space.Host.Language if language == "English" then TextObject.UIText.Text = "Welcome!" elseif language == "Dutch" then TextObject.UIText.Text = "welkom!" elseif language == "French" then TextObject.UIText.Text = "bienvenue!" else TextObject.UIText.Text = "Welcome!" end
Executes the specified function as a coroutine.
local function myCoroutine()
-- The yield statement is a special kind of return, that ensures that the function will continue from the line once the coroutine resumes.
-- Placing a float value inside of the yield will result in a delayed execution.
-- Example: coroutine.yield(0.5) will wait 0.5 seconds before continuing the execution of the coroutine.
-- This will print the current players active time.
Space.Log(Space.Time);
-- Execution of this coroutine will be halted for 10 seconds.
coroutine.yield(10);
-- This will print the current players active time, which will be 10 seconds greater then the previous as a result of the yield
Space.Log(Space.Time);
end
Space.Host.StartCoroutine(myCoroutine);
Invoke the closure after the delayed time.
Space.Host.InvokeDelayed(AFunction, 10)
--Clicking this object makes it destroy itself after 5 seconds thisObject = Space.Host.ExecutingObject function DeleteFunction() thisObject.Destroy() end function OnClickFunction() Space.Host.InvokeDelayed(DeleteFunction,10) end thisObject.AddClickable() thisObject.Clickable.OnClick(OnClickFunction)
Return true when the reference object exists and is not empty.
Space.Log(Space.Host.ReferenceExists("obj"));
--Print "false" to console if didn't set the object named "obj" to the Object Reference.
Return true when the reference object exists and is not empty.
Space.Log(Space.Host.ReferenceExistsAndNotEmpty("obj"));
--Print "false" to console if didn't set the object named "obj" to the Object References or attach the reference to "obj".
Pulls a reference from the scripting runtime component's "References" section by it's name.
theObject = Space.Host.GetReference("referenceName")
--Clicking this object makes it destroy the object we linked in the references section thisObject = Space.Host.ExecutingObject dObject = Space.Host.GetReference("theObjectToBeDestroyed") function OnClickFunction() dObject.Destroy() end thisObject.AddClickable() thisObject.Clickable.OnClick(OnClickFunction)
|