AgentScript

AgentScript Class

Extend AgentScript to create a script to be attached directly to an agent. For future use: Sansar does not currently support adding scripts to agents.

Syntax

[Sansar.Script.Interface]
public abstract class AgentScript : Sansar.Script.ScriptBase

Remarks

Override Sansar.Script.ScriptBase.Init() for script initialization, primarily event subscriptions.

Use AgentScript.ObjectPrivate to access the ObjectPrivate the object that represents the Agent.

Use AgentScript.ScenePublic to access the a limited API for the Scene the agent is in.

Use AgentScript.AgentPrivate to access the Agent the object is attached to.

Requirements

Namespace: Sansar.Simulation
Assembly: Sansar.Simulation (in Sansar.Simulation.dll)
Assembly Versions: 1.1.0.0

Members

See Also: Inherited members from Sansar.Script.ScriptBase.

Protected Constructors

 
This constructor is called before any properties have been set. Override Sansar.Script.ScriptBase.Init() to initialize the script after properties have been set.

Public Properties

 
AgentPrivate AgentPrivate . The Agent API for the agent this script is attached to.
 
Log Sansar.Script.Log . Gets the script console. (Inherited from Sansar.Script.ScriptBase.)
 
Memory Sansar.Script.Memory . Memory information for the pool this script is in. (Inherited from Sansar.Script.ScriptBase.)
 
ObjectPrivate ObjectPrivate . The ObjectPrivate this script is attached to if it is attached to an object.
 
ScenePublic ScenePublic . Basic scene information for the current scene.
 
Script Sansar.Script.ScriptHandle . Script handle to this script. (Inherited from Sansar.Script.ScriptBase.)

Protected Properties

[read-only]
 
AllowedContexts Sansar.Script.Reflective.Context . Internal Use Only. Overridden by subclasses to return only those contexts requested which are allowed for that type of script. (Inherited from Sansar.Script.Reflective.)
[read-only]
 
CurrentCoroutine Sansar.Script.ICoroutine . Gets the ICoroutine interface for the current coroutine. (Inherited from Sansar.Script.ScriptBase.)
[read-only]
 
MaxCoroutines int . The maximum number of coroutines that a single script can run. (Inherited from Sansar.Script.ScriptBase.)
[read-only]
 
PendingEventCount int . The number of events currently waiting to be processed. (Inherited from Sansar.Script.ScriptBase.)
[read-only]
 
ReflectiveContexts Sansar.Script.Reflective.Context . Override ReflectiveContexts to limit which contexts this Reflective interface is available in when registered with. (Inherited from Sansar.Script.Reflective.)
[read-only]
 
ReflectiveName string . Override ReflectiveName to change which name this class will be registered as in the Reflective system. (Inherited from Sansar.Script.Reflective.)

Public Methods

 
AsInterface<TInterface> () : TInterface
Returns a TInterface object if one can be created, null otherwise (Inherited from Sansar.Script.Reflective.)
 
FullInterface (string) : string
Generates a string which shows all the members which can be reflected. (Inherited from Sansar.Script.Reflective.)
abstract
Init ()
Init() is called after all interfaces have been initialized. (Inherited from Sansar.Script.ScriptBase.)
 
Register ()
Register this object to be found with ScenePrivate.FindReflective(string) (Inherited from Sansar.Script.Reflective.)
 
Unregister ()
Unregister this object so it will not be found with ScenePrivate.FindReflective(string) (Inherited from Sansar.Script.Reflective.)
 
Yield ()
Yield to let other coroutines or events run. (Inherited from Sansar.Script.ScriptBase.)

Protected Methods

 
GetAllCoroutines () : IReadOnlyList<Sansar.Script.ICoroutine>
A list of all coroutines for this script. (Inherited from Sansar.Script.ScriptBase.)
 
GetCoroutineCount () : int
The total number of coroutines running on this script. (Inherited from Sansar.Script.ScriptBase.)
 
Lock (object) : IDisposable
Use to create a critical section with a using statement, ensuring that no other coroutines or scripts (via Reflective) may enter this code section while one coroutine or script is in it. (Inherited from Sansar.Script.ScriptBase.)
 
PostScriptEvent (string)
Post the event for all scripts. (Inherited from Sansar.Script.ScriptBase.)
 
PostScriptEvent (string, Sansar.Script.Reflective)
Post the event for all scripts. (Inherited from Sansar.Script.ScriptBase.)
 
PostScriptEvent (Sansar.Script.ScriptId, string, Sansar.Script.Reflective)
Post the event for the target script. (Inherited from Sansar.Script.ScriptBase.)
 
PostSimpleScriptEvent (string, object)
Deprecated. Use Sansar.Script.ScriptBase.PostScriptEvent(Sansar.Script.ScriptId, string, Sansar.Script.Reflective) (Inherited from Sansar.Script.ScriptBase.)
 
PostSimpleScriptEvent (Sansar.Script.ScriptId, string, object)
Deprecated. Use Sansar.Script.ScriptBase.PostScriptEvent(Sansar.Script.ScriptId, string, Sansar.Script.Reflective) (Inherited from Sansar.Script.ScriptBase.)
 
ReleaseLock (object)
Release a lock if held. (Inherited from Sansar.Script.ScriptBase.)
 
StartCoroutine (Action, Action<Sansar.Script.OperationCompleteEvent>) : Sansar.Script.ICoroutine
Starts a coroutine on the current script. (Inherited from Sansar.Script.ScriptBase.)
 
StartCoroutine<T> (Action<T>, T, Action<Sansar.Script.OperationCompleteEvent>) : Sansar.Script.ICoroutine
Starts a coroutine on the current script. (Inherited from Sansar.Script.ScriptBase.)
 
StartCoroutine<T,T1> (Action<T, T1>, T, T1, Action<Sansar.Script.OperationCompleteEvent>) : Sansar.Script.ICoroutine
Starts a coroutine on the current script. (Inherited from Sansar.Script.ScriptBase.)
 
StartCoroutine<T,T1,T2> (Action<T, T1, T2>, T, T1, T2, Action<Sansar.Script.OperationCompleteEvent>) : Sansar.Script.ICoroutine
Starts a coroutine on the current script. (Inherited from Sansar.Script.ScriptBase.)
 
StartCoroutine<T,T1,T2,T3> (Action<T, T1, T2, T3>, T, T1, T2, T3, Action<Sansar.Script.OperationCompleteEvent>) : Sansar.Script.ICoroutine
Starts a coroutine on the current script. (Inherited from Sansar.Script.ScriptBase.)
 
SubscribeToScriptEvent (string, Action<Sansar.Script.ScriptEventData>, bool) : Sansar.Script.IEventSubscription
Subscribes to events sent by other scripts (Inherited from Sansar.Script.ScriptBase.)
 
SubscribeToScriptEvent (Sansar.Script.ScriptId, string, Action<Sansar.Script.ScriptEventData>, bool) : Sansar.Script.IEventSubscription
Subscribes to events sent only by a specific script. (Inherited from Sansar.Script.ScriptBase.)
 
Terminate (string)
Terminates this script immediately. (Inherited from Sansar.Script.ScriptBase.)
 
Wait (double)
Delays execution of the current coroutine for the specified time. (Inherited from Sansar.Script.ScriptBase.)
 
Wait (TimeSpan)
Delays execution of the current coroutine for the specified time. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor (Sansar.Script.ICoroutine)
Block the current coroutine until otherCoroutine finishes. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor (Action<Action<Sansar.Script.OperationCompleteEvent>>) : Sansar.Script.OperationCompleteEvent
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor (Func<Action<Sansar.Script.EventData>, Action<Sansar.Script.CancelData>,System.Boolean,Sansar.Script.IEventSubscription>) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor (Func<Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor (Func<Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, Action) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1> (Func<ARG1, Action<Sansar.Script.EventData>, Action<Sansar.Script.CancelData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1> (Func<ARG1, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1> (Func<ARG1, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, Action) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<T1> (Action<T1, Action<Sansar.Script.OperationCompleteEvent>>, T1) : Sansar.Script.OperationCompleteEvent
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2> (Func<ARG1, ARG2, Action<Sansar.Script.EventData>, Action<Sansar.Script.CancelData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2> (Func<ARG1, ARG2, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2> (Func<ARG1, ARG2, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, Action) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<T1,T2> (Action<T1, T2, Action<Sansar.Script.OperationCompleteEvent>>, T1, T2) : Sansar.Script.OperationCompleteEvent
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2,ARG3> (Func<ARG1, ARG2, ARG3, Action<Sansar.Script.EventData>, Action<Sansar.Script.CancelData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, ARG3) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2,ARG3> (Func<ARG1, ARG2, ARG3, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, ARG3) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2,ARG3> (Func<ARG1, ARG2, ARG3, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, ARG3, Action) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<T1,T2,T3> (Action<T1, T2, T3, Action<Sansar.Script.OperationCompleteEvent>>, T1, T2, T3) : Sansar.Script.OperationCompleteEvent
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2,ARG3,ARG4> (Func<ARG1, ARG2, ARG3, ARG4, Action<Sansar.Script.EventData>, Action<Sansar.Script.CancelData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, ARG3, ARG4) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2,ARG3,ARG4> (Func<ARG1, ARG2, ARG3, ARG4, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, ARG3, ARG4) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2,ARG3,ARG4> (Func<ARG1, ARG2, ARG3, ARG4, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, ARG3, ARG4, Action) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<T1,T2,T3,T4> (Action<T1, T2, T3, T4, Action<Sansar.Script.OperationCompleteEvent>>, T1, T2, T3, T4) : Sansar.Script.OperationCompleteEvent
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2,ARG3,ARG4,ARG5> (Func<ARG1, ARG2, ARG3, ARG4, ARG5, Action<Sansar.Script.EventData>, Action<Sansar.Script.CancelData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, ARG3, ARG4, ARG5) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2,ARG3,ARG4,ARG5> (Func<ARG1, ARG2, ARG3, ARG4, ARG5, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, ARG3, ARG4, ARG5) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitFor<ARG1,ARG2,ARG3,ARG4,ARG5> (Func<ARG1, ARG2, ARG3, ARG4, ARG5, Action<Sansar.Script.EventData>,System.Boolean,Sansar.Script.IEventSubscription>, ARG1, ARG2, ARG3, ARG4, ARG5, Action) : Sansar.Script.EventData
Use to pause the script until an event happens. (Inherited from Sansar.Script.ScriptBase.)
 
WaitForLock (object)
WaitFor and take a lock on Token (Inherited from Sansar.Script.ScriptBase.)
 
WaitForSignal () : int
Wait the current coroutine until at least 1 signal is sent to it through the ICoroutine interface. (Inherited from Sansar.Script.ScriptBase.)

Member Details

AgentScript Constructor

This constructor is called before any properties have been set. Override Sansar.Script.ScriptBase.Init() to initialize the script after properties have been set.

Syntax

[Sansar.Script.Interface]
protected AgentScript ()

Remarks

 

Requirements

Namespace: Sansar.Simulation
Assembly: Sansar.Simulation (in Sansar.Simulation.dll)
Assembly Versions: 1.1.0.0

AgentPrivate Property

The Agent API for the agent this script is attached to.

Syntax

[Sansar.Script.NonReflective]
[get: Sansar.Script.Interface]
public AgentPrivate AgentPrivate { protected get; set; }

Value

The Agent this script is attached to if the script is on an avatar, null otherwise.

Remarks

The Agent will be set before Sansar.Script.ScriptBase.Init is called.

Requirements

Namespace: Sansar.Simulation
Assembly: Sansar.Simulation (in Sansar.Simulation.dll)
Assembly Versions: 1.1.0.0

ObjectPrivate Property

The ObjectPrivate this script is attached to if it is attached to an object.

Syntax

[Sansar.Script.NonReflective]
[get: Sansar.Script.Interface]
public ObjectPrivate ObjectPrivate { protected get; set; }

Value

The scene object this script is attached to if it is attached to an object, null otherwise.

Remarks

For AgentScripts this is the Agent's ObjectPrivate of their avatar.

Requirements

Namespace: Sansar.Simulation
Assembly: Sansar.Simulation (in Sansar.Simulation.dll)
Assembly Versions: 1.1.0.0

ScenePublic Property

Basic scene information for the current scene.

Syntax

[Sansar.Script.NonReflective]
[get: Sansar.Script.Interface]
public ScenePublic ScenePublic { protected get; set; }

Value

The Scene this object is in.

Remarks

This value will be set before Init is called.

Requirements

Namespace: Sansar.Simulation
Assembly: Sansar.Simulation (in Sansar.Simulation.dll)
Assembly Versions: 1.1.0.0


Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

0 Comments

Article is closed for comments.