|
|
(28 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
− | The SScene class represents the region the user is currently in.
| + | This page has moved to: https://docs.sine.space/v/scripting/client-scripting/scene/sscene |
− | | + | |
− | ==Members==
| + | |
− | {{ScriptFunction|SGameObject|Find|(string name);|Finds a single Game Object matching 'Name' and returns it. Can use '/' characters to designate a path (e.g. 'Parent/Child' returns Child with 'Parent')|5=
| + | |
− | <pre> hand = Space.Scene.Find("Hand");
| + | |
− | --This returns the GameObject named Hand.
| + | |
− | | + | |
− | hand = Space.Scene.Find("/Hand");
| + | |
− | --This returns the GameObject named Hand.
| + | |
− | --Hand must not have a parent in the Hierarchy view.
| + | |
− | | + | |
− | hand = Space.Scene.Find("/Monster/Arm/Hand");
| + | |
− | --This returns the GameObject named Hand,
| + | |
− | --which is a child of Arm > Monster.
| + | |
− | --Monster must not have a parent in the Hierarchy view.
| + | |
− | | + | |
− | hand = Space.Scene.Find("Monster/Arm/Hand");
| + | |
− | --This returns the GameObject named Hand,
| + | |
− | --which is a child of Arm > Monster. </pre>}}
| + | |
− | {{ScriptFunction|SAvatar|PlayerAvatar|{ get; }|Returns the current player avatar. If this script is calling this upon initialisation, the Player may not exist yet, and you will want to wait a few frames until the avatar is present before continuing.|5=
| + | |
− | <pre> CurrentPlayer = Space.Scene.PlayerAvatar </pre>}}
| + | |
− | {{ScriptFunction|SAvatar|Avatars[]|{ get; }|Returns a list of Avatars in the scene|5=
| + | |
− | <pre>avatars = Space.Scene.Avatars </pre>}}
| + | |
− | {{ScriptFunction|SGameObject|Objects[]|{ get; }|Returns a list of Objects in the scene. '''IMPORTANT: This function is slow, you should cache the result and avoid calling this every frame.'''|5=
| + | |
− | <pre> objects = Space.Scene.Objects </pre>}}
| + | |
− | {{ScriptFunction|SGameObject|CreateGameObject|(string name);|Creates a new empty game object with the name 'Name' and returns a reference|5=
| + | |
− | <pre>newObject = Space.Scene.CreateGameObject("potato")</pre>}}
| + | |
− | {{ScriptFunction|SGameObject|CreateGameObject|([[Scripting/SResource|SResource]] resource);|Creates a game object from the specified resource}}
| + | |
− | {{ScriptFunction|string|Name|{ get; }|Returns the name of the current region|5=
| + | |
− | <pre>RegionName = Space.Scene.Name </pre>}}
| + | |
− | {{ScriptFunction|string|Url|{ get; }|Returns the URL of the current region|5=
| + | |
− | <pre>RegionUrl = Space.Scene.Url </pre>}}
| + | |
− | {{ScriptFunction|long|Owner|{ get; }|Returns the avatar ID of the regions owner|5=
| + | |
− | <pre>RegionOwner = Space.Scene.Owner</pre>}}
| + | |
− | {{ScriptFunction|bool|PlayerIsOwner|{ get; }|Returns whether the current player is the owner of the region|5=
| + | |
− | <pre>isOwner = Space.Scene.PlayerIsOwner </pre>}}
| + | |
− | {{ScriptFunction|void|OnPlayerJoin|(Action<[[Scripting/SAvatar|SAvatar]]> callback)|Event which fires whenever a player joins the region|5=
| + | |
− | <pre>--Place this script in a UIText object and it will
| + | |
− | --update itself with the name of the last player joined
| + | |
− | | + | |
− | function updateText(Av) --we include "Av" here because the event gives us a reference to the Avatar that joined
| + | |
− | Space.Host.ExecutingObject.UIText.Text= "Last player joined: " .. Av.Username
| + | |
− | end
| + | |
− | | + | |
− | Space.Scene.OnPlayerJoin(updateText) -- updateText will now be called everytime a player joins
| + | |
− | | + | |
− | | + | |
− | --Note that this is client side, you will not trigger this event,
| + | |
− | --the player that joins next will trigger it.</pre>}} | + | |
− | {{ScriptFunction|void|OnPlayerLeave|(Action<long> callback)|Event which fires whenever a player leaves the region}}
| + | |
− | | + | |
− | {{Scripting Navbox}}
| + | |