wiki.sine.space | sinespace

Difference between revisions of "Scripting/SGameObject"

From wiki.sine.space
Jump to: navigation, search
(Fixed the markup error in Active, Name, Duplicate code examples)
(Added examples to properties/member functions: AddLight, AddAudioSource, AddRigidbody, Light, Animator, Audio, Renderer, Rigidbody)
Line 12: Line 12:
  
 
==Components==
 
==Components==
{{ScriptFunction|SLight|Light|{ get; }|Returns a reference to a Light component on the object. Will return null if it does not exist.}}
+
 
{{ScriptFunction|SAnimator|Animator|{ get; }|Returns a reference to a Animator component on the object. Will return null if it does not exist.}}
+
{{ScriptFunction|SLight|AddLight|()|Adds a Light component to the object.|5=
{{ScriptFunction|SAudioSource|Audio|{ get; }|Returns a reference to a AudioSource component on the object. Will return null if it does not exist.}}
+
local obj = Space.Host.ExecutingObject;<br><br>
{{ScriptFunction|SRenderer|Renderer|{ get; }|Returns a reference to a Renderer component on the object. Will return null if it does not exist.}}
+
''-- add the Light component to the object if there is none''<br>
{{ScriptFunction|SRigidbody|Rigidbody|{ get; }|Returns a reference to a Rigidbody component on the object. Will return null if it does not exist.}}
+
if obj.Light == null then<br>
 +
:obj.AddLight();<br>
 +
end<br><br>
 +
Space.Log(obj.Light);<br>
 +
''-- prints "SLight" to the console. Now we can work with the Light component on this object.''}}
 +
 
 +
{{ScriptFunction|SAudioSource|AddAudioSource|()|Adds an AudioSource component to the object.|5=
 +
local obj = Space.Host.ExecutingObject;<br><br>
 +
''-- add the AudioSource component to the object if there is none''<br>
 +
if obj.Audio == null then<br>
 +
:obj.AddAudioSource();<br>
 +
end<br><br>
 +
Space.Log(obj.Audio);<br>
 +
''-- prints "SAudioSource" to the console. Now we can work with the AudioSource component on this object.''}}
 +
 
 +
{{ScriptFunction|SRigidbody|AddRigidbody|()|Adds a Rigidbody component to the object.|5=
 +
local obj = Space.Host.ExecutingObject;<br><br>
 +
''-- add the Rigidbody component to the object if there is none''<br>
 +
if obj.Rigidbody == null then<br>
 +
:obj.AddRigidbody();<br>
 +
end<br><br>
 +
Space.Log(obj.Rigidbody);<br>
 +
''-- prints "SRigidbody" to the console. Now we can work with the Rigidbody component on this object.''}}
 +
 
 +
{{ScriptFunction|SLight|Light|{ get; }|Returns a reference to a Light component on the object. Will return null if it does not exist.|5=
 +
local obj = Space.Host.ExecutingObject;<br><br>
 +
''-- add the Light component to the object if there is none''<br>
 +
if obj.Light == null then<br>
 +
:obj.AddLight ();<br>
 +
end<br><br>
 +
Space.Log(obj.Light);<br>
 +
''-- prints "SLight" to the console. Now we can work with the Light component on this object.''}}
 +
 
 +
{{ScriptFunction|SAnimator|Animator|{ get; }|Returns a reference to a Animator component on the object. Will return null if it does not exist.|5=
 +
local obj = Space.Host.ExecutingObject;<br><br>
 +
Space.Log(obj.Animator);<br>
 +
''-- prints "SAnimator" to the console if there is an Animator component on this object, or "" if there is none.''}}
 +
 
 +
{{ScriptFunction|SAudioSource|Audio|{ get; }|Returns a reference to a AudioSource component on the object. Will return null if it does not exist.|5=
 +
local obj = Space.Host.ExecutingObject;<br><br>
 +
''-- add the AudioSource component to the object if there is none''<br>
 +
if obj.Audio == null then<br>
 +
:obj.AddAudioSource();<br>
 +
end<br><br>
 +
Space.Log(obj.Audio);<br>
 +
''-- prints "SAudioSource" to the console. Now we can work with the AudioSource component on this object.''}}
 +
 
 +
{{ScriptFunction|SRenderer|Renderer|{ get; }|Returns a reference to a Renderer component on the object. Will return null if it does not exist.|5=
 +
local obj = Space.Host.ExecutingObject;<br><br>
 +
Space.Log(obj.Renderer);<br>
 +
''-- prints "SRenderer" to the console if there is an Renderer component on this object, or "" if there is none.''}}
 +
 
 +
{{ScriptFunction|SRigidbody|Rigidbody|{ get; }|Returns a reference to a Rigidbody component on the object. Will return null if it does not exist.|5=
 +
local obj = Space.Host.ExecutingObject;<br><br>
 +
''-- add the Rigidbody component to the object if there is none''<br>
 +
if obj.Rigidbody == null then<br>
 +
:obj.AddRigidbody();<br>
 +
end<br><br>
 +
Space.Log(obj.Rigidbody);<br>
 +
''-- prints "SRigidbody" to the console. Now we can work with the Rigidbody component on this object.''}}
 +
 
 
{{ScriptFunction|SUIText|UIText|{ get; }|Returns a reference to a UI.Text component on the object. Will return null if it does not exist.}}
 
{{ScriptFunction|SUIText|UIText|{ get; }|Returns a reference to a UI.Text component on the object. Will return null if it does not exist.}}
 
==Events==
 
==Events==

Revision as of 20:34, 17 July 2017

The SGameObject class refers a single Game Object active within the scene.

Members

Miscellaneous

Active

bool Active { get; set; }

Is this object Active in the scene

Object.Active = true;


Layer

int Layer { get; set; }

Gets/Sets the object onto a particular layer (0-31)

Space.Log("This object is on the layer " .. Object.Layer);


Tag

string Tag { get; }

Gets this objects Tag

Space.Log("Object Tag is " .. Object.Tag);


Name

string Name { get; set; }

Gets/sets the name of this object

Object.Name = "Hello World!";


Exists

bool Exists { get; }

Does this object still exist in the scene (returns false if the object has been deleted via Destroy();)

if(!Object.Exists) return;


Duplicate

SGameObject Duplicate ();

Copies the object and returns a reference to the copy. Equivalent to calling Instantiate() in Unity

local copy = Object.Duplicate();


Destroy

void Destroy ();

Schedules this object for deletion at the end of the frame

Object.Destroy();


Components

AddLight

SLight AddLight ()

Adds a Light component to the object.

local obj = Space.Host.ExecutingObject;

-- add the Light component to the object if there is none
if obj.Light == null then

obj.AddLight();

end

Space.Log(obj.Light);

-- prints "SLight" to the console. Now we can work with the Light component on this object.


AddAudioSource

SAudioSource AddAudioSource ()

Adds an AudioSource component to the object.

local obj = Space.Host.ExecutingObject;

-- add the AudioSource component to the object if there is none
if obj.Audio == null then

obj.AddAudioSource();

end

Space.Log(obj.Audio);

-- prints "SAudioSource" to the console. Now we can work with the AudioSource component on this object.


AddRigidbody

SRigidbody AddRigidbody ()

Adds a Rigidbody component to the object.

local obj = Space.Host.ExecutingObject;

-- add the Rigidbody component to the object if there is none
if obj.Rigidbody == null then

obj.AddRigidbody();

end

Space.Log(obj.Rigidbody);

-- prints "SRigidbody" to the console. Now we can work with the Rigidbody component on this object.


Light

SLight Light { get; }

Returns a reference to a Light component on the object. Will return null if it does not exist.

local obj = Space.Host.ExecutingObject;

-- add the Light component to the object if there is none
if obj.Light == null then

obj.AddLight ();

end

Space.Log(obj.Light);

-- prints "SLight" to the console. Now we can work with the Light component on this object.


Animator

SAnimator Animator { get; }

Returns a reference to a Animator component on the object. Will return null if it does not exist.

local obj = Space.Host.ExecutingObject;

Space.Log(obj.Animator);

-- prints "SAnimator" to the console if there is an Animator component on this object, or "" if there is none.


Audio

SAudioSource Audio { get; }

Returns a reference to a AudioSource component on the object. Will return null if it does not exist.

local obj = Space.Host.ExecutingObject;

-- add the AudioSource component to the object if there is none
if obj.Audio == null then

obj.AddAudioSource();

end

Space.Log(obj.Audio);

-- prints "SAudioSource" to the console. Now we can work with the AudioSource component on this object.


Renderer

SRenderer Renderer { get; }

Returns a reference to a Renderer component on the object. Will return null if it does not exist.

local obj = Space.Host.ExecutingObject;

Space.Log(obj.Renderer);

-- prints "SRenderer" to the console if there is an Renderer component on this object, or "" if there is none.


Rigidbody

SRigidbody Rigidbody { get; }

Returns a reference to a Rigidbody component on the object. Will return null if it does not exist.

local obj = Space.Host.ExecutingObject;

-- add the Rigidbody component to the object if there is none
if obj.Rigidbody == null then

obj.AddRigidbody();

end

Space.Log(obj.Rigidbody);

-- prints "SRigidbody" to the console. Now we can work with the Rigidbody component on this object.


UIText

SUIText UIText { get; }

Returns a reference to a UI.Text component on the object. Will return null if it does not exist.

No example provided yet


Events

SubscribeToEvents

void SubscribeToEvents ();

Causes this script to start listening to events on the object. Only use if you need to.

No example provided yet


OnAwake

void OnAwake (Action callback)

Binds a event to the Awake() event. Requires SubscribeToEvents be called first.

No example provided yet


OnStart

void OnStart (Action callback)

Binds a event to the Start() event. Requires SubscribeToEvents be called first.

No example provided yet


OnEnable

void OnEnable (Action callback)

Binds a event to the OnEnable() event. Requires SubscribeToEvents be called first.

No example provided yet


OnDisable

void OnDisable (Action callback)

Binds a event to the OnDisable() event. Requires SubscribeToEvents be called first.

No example provided yet


OnFixedUpdate

void OnFixedUpdate (Action callback)

Binds a event to the OnFixedUpdate() event. Requires SubscribeToEvents be called first.

No example provided yet


OnLateUpdate

void OnLateUpdate (Action callback)

Binds a event to the OnLateUpdate() event. Requires SubscribeToEvents be called first.

No example provided yet


OnUpdate

void OnUpdate (Action callback)

Binds a event to the OnUpdate() event. Requires SubscribeToEvents be called first.

No example provided yet


OnMouseDown

void OnMouseDown (Action callback)

Binds a event to the OnMouseDown() event. Requires SubscribeToEvents be called first.

No example provided yet


Hierarchy

Parent

SGameObject Parent { get; set; }

Gets/sets the parent GameObject of this object. Assign nil/null to set this as the root.

No example provided yet


Root

SGameObject Root { get; }

Gets the root of this object group - may be this object.

No example provided yet


Children[]

SGameObject Children[] { get; }

Returns the list of direct children of this object

No example provided yet


Transform

WorldPosition

SVector WorldPosition { get; set; }

Gets or sets the current position of this object relative to the scene

No example provided yet


LocalPosition

SVector LocalPosition { get; set; }

Gets or sets the current position of this object relative to the objects parent, taking into account local position/scale/rotation

No example provided yet


WorldRotation

SQuaternion WorldRotation { get; set; }

Gets or sets the current rotation of this object relative to the scene

No example provided yet


LocalRotation

SQuaternion LocalRotation { get; set; }

Gets or sets the current rotation of this object relative to the parent object

No example provided yet


LocalScale

SVector LocalScale { get; set; }

Gets or sets the current scale of this object relative to the parent

No example provided yet


WorldScale

SVector WorldScale { get; }

Gets the current scale of this object relative to the scene

No example provided yet


Forward

SVector Forward { get; }

Returns the forward direction vector of this game object (blue arrow)

No example provided yet


Up

SVector Up { get; }

Returns the up direction vector of this game object (green arrow)

No example provided yet


Right

SVector Right { get; }

Returns the right direction vector of this game object (red arrow)

No example provided yet