Sinespace Client 2025.3.19431
Client-side scripting for Sinespace
SineSpace.Scripting.Scene.SScene Class Reference

Public Member Functions

 SScene (SScript script)
 
SGameObject Find (string name)
 Find a GameObject by name and returns it.
 
SGameObject FindID (string id)
 Find a GameObject by id in Scene Object Database and returns it.
 
void MarkObjectTemporary (SGameObject obj)
 Mark a GameObject as temporary.
 
SAvatar GetAvatar (long id)
 Return an avatar with id.
 
SAvatar GetAvatar (string name)
 Return an avatar with Name.
 
SGameObject CreateGameObject (string name)
 Create a GameObject with name.
 
SGameObject CreateGameObject (SResource resource)
 Create a GameObject with Resources.
 
void SwitchToInstance (uint id)
 Switch to a shard region of current region with its id.
 
void OnPlayerJoin (Action< SAvatar > e)
 An event which fires whenever a new avatar joins the scene, first argument is the avatar.
 
void OnPlayerJoin (Closure e)
 An event which fires whenever a new avatar joins the scene, first argument is the avatar.
 
void OnPlayerLeave (Action< long > e)
 An event which fires whenever a new avatar joins the scene, first argument is the avatar.
 
void OnPlayerLeave (Closure e)
 An event which fires whenever a new avatar joins the scene, first argument is the avatar.
 
void OnEditModeStart (Closure e)
 An event which fires whenever enter the edit mode.
 
void OnEditModeEnd (Closure e)
 An event which fires whenever leave the edit mode.
 
void OnEditModeAdd (Closure e)
 
void OnEditModeRemove (Closure e)
 

Properties

SAvatar PlayerAvatar [get]
 Return current PlayerAvatar.
 
SAvatar[] Avatars [get]
 Return all avatars in the scene (except self)
 
List< SAvatarAllAvatars [get]
 Return all avatars in the scene.
 
int Population [get]
 Return the total number of avatars currently in the scene.
 
SGameObject[] Objects [get]
 Returns all objects in the scene.
 
string Name [get]
 Return the name of current region.
 
string Url [get]
 Return the Url of current region.
 
long RegionID [get]
 Return the RegionID of current region.
 
long InstanceID [get]
 Return the InstanceID of current region.
 
long Owner [get]
 Returns the OwnerID of current region.
 
bool PlayerIsOwner [get]
 Return true if current player is the region owner.
 
bool PlayerIsAdmin [get]
 Return true if current player is the region admin.
 
bool PlayerIsModerator [get]
 Return true if the current player is Moderator.
 
bool PlayerIsDeveloper [get]
 
bool PlayerIsTrusted [get]
 Return true if the current player is Trusted.
 
bool IsInEditMode [get]
 Return true if the current player is in edit mode.
 
SGameObject[] Floors [get]
 Return an array of all floors in the region.
 
SLandmark[] Landmarks [get]
 

Constructor & Destructor Documentation

◆ SScene()

SineSpace.Scripting.Scene.SScene.SScene ( SScript script)

Member Function Documentation

◆ CreateGameObject() [1/2]

SGameObject SineSpace.Scripting.Scene.SScene.CreateGameObject ( SResource resource)

Create a GameObject with Resources.

Parameters
resourceThe resource GameObject of created GameObject
local obj=Space.Scene.CreateGameObject(Space.Resources[1]) &ndash;Resources[1] is a GameObject named "Cube"
&ndash;See the hierarchy you will find "Cube(Clone)"

◆ CreateGameObject() [2/2]

SGameObject SineSpace.Scripting.Scene.SScene.CreateGameObject ( string name)

Create a GameObject with name.

Parameters
nameThe name of created GameObject
local objs=Space.Scene.CreateGameObject("TempTest")
&ndash;See the hierarchy you will find "TempTest"

◆ Find()

SGameObject SineSpace.Scripting.Scene.SScene.Find ( string name)

Find a GameObject by name and returns it.

Parameters
nameThe name of the GameObject.
local obj=Space.Scene.Find("Cube")
Space.Log(obj.Name)
&ndash;Print "Cube" if the object exists.

◆ FindID()

SGameObject SineSpace.Scripting.Scene.SScene.FindID ( string id)

Find a GameObject by id in Scene Object Database and returns it.

Parameters
idThe id of the GameObject in the database
&ndash;Add Scene Object Database to a Gameobject, set "123" to IDs and name the GameObject "Cube".
local obj=Space.Scene.FindID("123")
Space.Log(obj.Name)
&ndash;Print "Cube" if the object exists.
Definition SAudioAnalyser.cs:4

◆ GetAvatar() [1/2]

SAvatar SineSpace.Scripting.Scene.SScene.GetAvatar ( long id)

Return an avatar with id.

Parameters
idThe id of avatar
local cur=Space.Scene.GetAvatar(43)
Space.Log(cur.Username)

◆ GetAvatar() [2/2]

SAvatar SineSpace.Scripting.Scene.SScene.GetAvatar ( string name)

Return an avatar with Name.

Parameters
nameThe name of avatar
local cur=Space.Scene.GetAvatar("TestUser")
Space.Log(cur.ID)

◆ MarkObjectTemporary()

void SineSpace.Scripting.Scene.SScene.MarkObjectTemporary ( SGameObject obj)

Mark a GameObject as temporary.

Parameters
objThe GameObject you want to mark
local obj=Space.Scene.Find("Cube")
Space.Scene.MarkObjectTemporary(obj)
&ndash;The obj will be destroyed when ScriptingRuntime is destroyed or reset.

◆ OnEditModeAdd()

void SineSpace.Scripting.Scene.SScene.OnEditModeAdd ( Closure e)

◆ OnEditModeEnd()

void SineSpace.Scripting.Scene.SScene.OnEditModeEnd ( Closure e)

An event which fires whenever leave the edit mode.

Parameters
eA valid event handler delegate
Space.Scene.OnEditModeEnd(function ()
Space.Log("End Edit Mode")
end)

◆ OnEditModeRemove()

void SineSpace.Scripting.Scene.SScene.OnEditModeRemove ( Closure e)

◆ OnEditModeStart()

void SineSpace.Scripting.Scene.SScene.OnEditModeStart ( Closure e)

An event which fires whenever enter the edit mode.

Parameters
eA valid event handler delegate
Space.Scene.OnEditModeStart(function ()
Space.Log("Enter Edit Mode")
end)

◆ OnPlayerJoin() [1/2]

void SineSpace.Scripting.Scene.SScene.OnPlayerJoin ( Action< SAvatar > e)

An event which fires whenever a new avatar joins the scene, first argument is the avatar.

Parameters
eA valid event handler delegate

◆ OnPlayerJoin() [2/2]

void SineSpace.Scripting.Scene.SScene.OnPlayerJoin ( Closure e)

An event which fires whenever a new avatar joins the scene, first argument is the avatar.

Parameters
eA valid event handler delegate
Space.Scene.OnPlayerJoin(function (avatar)
Space.Log(avatar.Username)
end)

◆ OnPlayerLeave() [1/2]

void SineSpace.Scripting.Scene.SScene.OnPlayerLeave ( Action< long > e)

An event which fires whenever a new avatar joins the scene, first argument is the avatar.

Parameters
eA valid event handler delegate

◆ OnPlayerLeave() [2/2]

void SineSpace.Scripting.Scene.SScene.OnPlayerLeave ( Closure e)

An event which fires whenever a new avatar joins the scene, first argument is the avatar.

Parameters
eA valid event handler delegate
Space.Scene.OnPlayerLeave(function (avatar)
Space.Log(avatar.Username)
end)

◆ SwitchToInstance()

void SineSpace.Scripting.Scene.SScene.SwitchToInstance ( uint id)

Switch to a shard region of current region with its id.

Parameters
idThe shard region id
Space.Scene.SwitchToInstance(2)

Property Documentation

◆ AllAvatars

List<SAvatar> SineSpace.Scripting.Scene.SScene.AllAvatars
get

Return all avatars in the scene.

local avatars=Space.Scene.AllAvatars
Space.Log(#avatars)
&ndash;Print the length of AllAvatars
List< SAvatar > AllAvatars
Return all avatars in the scene.
Definition SScene.cs:154

◆ Avatars

SAvatar [] SineSpace.Scripting.Scene.SScene.Avatars
get

Return all avatars in the scene (except self)

local avatars=Space.Scene.Avatars
Space.Log(#avatars)
&ndash;Print the length of Avatars
SAvatar[] Avatars
Return all avatars in the scene (except self)
Definition SScene.cs:130

◆ Floors

SGameObject [] SineSpace.Scripting.Scene.SScene.Floors
get

Return an array of all floors in the region.

for i=1,#Space.Scene.Floors do
Space.Log(Space.Scene.Floors[i].Name)
end
&ndash;Print all floor names in the region

◆ InstanceID

long SineSpace.Scripting.Scene.SScene.InstanceID
get

Return the InstanceID of current region.

Space.Log(Space.Scene.InstanceID)

◆ IsInEditMode

bool SineSpace.Scripting.Scene.SScene.IsInEditMode
get

Return true if the current player is in edit mode.

Space.Log(Space.Scene. IsInEditMode)
bool IsInEditMode
Return true if the current player is in edit mode.
Definition SScene.cs:428

◆ Landmarks

SLandmark [] SineSpace.Scripting.Scene.SScene.Landmarks
get

◆ Name

string SineSpace.Scripting.Scene.SScene.Name
get

Return the name of current region.

Space.Log(Space.Scene.Name)

◆ Objects

SGameObject [] SineSpace.Scripting.Scene.SScene.Objects
get

Returns all objects in the scene.

local objs=Space.Scene.Objects
Space.Log(#objs)
&ndash;Print the length of Objects
SGameObject[] Objects
Returns all objects in the scene.
Definition SScene.cs:232

◆ Owner

long SineSpace.Scripting.Scene.SScene.Owner
get

Returns the OwnerID of current region.

Space.Log(Space.Scene. Owner)
long Owner
Returns the OwnerID of current region.
Definition SScene.cs:359

◆ PlayerAvatar

SAvatar SineSpace.Scripting.Scene.SScene.PlayerAvatar
get

Return current PlayerAvatar.

local avatar=Space.Scene.PlayerAvatar
Space.Log(avatar.Username)

◆ PlayerIsAdmin

bool SineSpace.Scripting.Scene.SScene.PlayerIsAdmin
get

Return true if current player is the region admin.

Space.Log(Space.Scene. PlayerIsAdmin)
bool PlayerIsAdmin
Return true if current player is the region admin.
Definition SScene.cs:385

◆ PlayerIsDeveloper

bool SineSpace.Scripting.Scene.SScene.PlayerIsDeveloper
get

◆ PlayerIsModerator

bool SineSpace.Scripting.Scene.SScene.PlayerIsModerator
get

Return true if the current player is Moderator.

Space.Log(Space.Scene. PlayerIsModerator)
bool PlayerIsModerator
Return true if the current player is Moderator.
Definition SScene.cs:397

◆ PlayerIsOwner

bool SineSpace.Scripting.Scene.SScene.PlayerIsOwner
get

Return true if current player is the region owner.

Space.Log(Space.Scene. PlayerIsOwner)
bool PlayerIsOwner
Return true if current player is the region owner.
Definition SScene.cs:372

◆ PlayerIsTrusted

bool SineSpace.Scripting.Scene.SScene.PlayerIsTrusted
get

Return true if the current player is Trusted.

Space.Log(Space.Scene. PlayerIsTrusted)
bool PlayerIsTrusted
Return true if the current player is Trusted.
Definition SScene.cs:415

◆ Population

int SineSpace.Scripting.Scene.SScene.Population
get

Return the total number of avatars currently in the scene.

local pop=Space.Scene.Population
Space.Log(tostring(pop))
&ndash;Print the number of avatars in the scene to the console.

◆ RegionID

long SineSpace.Scripting.Scene.SScene.RegionID
get

Return the RegionID of current region.

Space.Log(Space.Scene.RegionID)

◆ Url

string SineSpace.Scripting.Scene.SScene.Url
get

Return the Url of current region.

Space.Log(Space.Scene.Url)