Difference between revisions of "DOMControllerExtended"

From Virtual World Web Wiki
Jump to: navigation, search
(Documentation for the DOMControllerExtended class)
(Documentation for the DOMControllerExtended class)
 
(5 intermediate revisions by the same user not shown)
Line 4: Line 4:
 
* This is a JavaScript visible object
 
* This is a JavaScript visible object
 
===Remarks <nowiki>[</nowiki>[{{fullurl:DOMControllerExtended Remarks|action=edit}} edit]<nowiki>]</nowiki>===
 
===Remarks <nowiki>[</nowiki>[{{fullurl:DOMControllerExtended Remarks|action=edit}} edit]<nowiki>]</nowiki>===
{{:DOMControllerExtended Remarks}}
+
{{#ifexist:DOMControllerExtended Remarks|{{:DOMControllerExtended Remarks}}|}}
  
 
===Properties===
 
===Properties===
Line 30: Line 30:
 
::
 
::
 
::The ID of another node in the same type that contains blendshape configuration
 
::The ID of another node in the same type that contains blendshape configuration
 +
 +
:{{CSharp|bool ControlLocked {get; set;} // Via attribution on DOMController }}
 +
::
 +
::True if this avatar is control locked, meaning that it should not submit position or rotation updates. This is very similar to PositionLocked except the server will still accept updates from clients. This property is essentially a request.
 +
 +
:{{CSharp|DOMPhysicsPace CurrentPace {get; set;} // Via attribution on DOMController }}
 +
::
 +
::Pace value for the speed of the controller
  
 
:{{CSharp|int Direction {get; set;} // Via attribution on DOMController }}
 
:{{CSharp|int Direction {get; set;} // Via attribution on DOMController }}
Line 69: Line 77:
 
:{{CSharp|bool PositionLocked {get; set;} // Via attribution on DOMController }}
 
:{{CSharp|bool PositionLocked {get; set;} // Via attribution on DOMController }}
 
::
 
::
::True if this avatar is position locked, meaning that it should be restricted from moving by the client application
+
::True if this avatar is position locked, meaning that the client application should not submit position or rotation updates, and also that the server will not accept changes from any connected clients (eg. the physics host)
 
+
:{{CSharp|int Running {get; set;} // Via attribution on DOMController }}
+
::
+
::True if this avatar is running
+
  
 
:{{CSharp|float Speed {get; set;} // Via attribution on DOMController }}
 
:{{CSharp|float Speed {get; set;} // Via attribution on DOMController }}
 
::
 
::
 
::The speed this controller is moving (in units per second)
 
::The speed this controller is moving (in units per second)
 +
 +
:{{CSharp|bool StrafeLocked {get; set;} // Via attribution on DOMController }}
 +
::
 +
::True if this avatar is using strafing movement
 +
 +
===Events===
 +
:{{CSharp|OnBreakout(ParticipantExtended who, DOMObjectExtended source)}}
 +
::Parameters:
 +
:::{{CSharp|who}} : The participant who's trying to break out
 +
:::{{CSharp|source}} : The participant's DOMController (this object)
 +
::
 +
::Fires when a user tries to break out of a PositionLocked or ControlLocked interaction. Who is the Participant doing the breaking out.
  
 
===Methods===
 
===Methods===
Line 98: Line 114:
 
:{{CSharp|bool StartAnimation(string layerName, string animKey, bool looping {{=}} false, int timeOffset {{=}} 0)}}
 
:{{CSharp|bool StartAnimation(string layerName, string animKey, bool looping {{=}} false, int timeOffset {{=}} 0)}}
 
::
 
::
::Creates a DOMAnimation node and puts it on the specified DOMAnimationLayer. This function is in the wrong place. Should be on DOMController
+
::Creates a DOMAnimation node and puts it on the specified DOMAnimationLayer.
  
 
:{{CSharp|bool StartAnimationWithEventCallback(string layerName, string animKey, JSFlexibleFunction animationEventCallback, bool looping {{=}} false, int timeOffset {{=}} 0)}}
 
:{{CSharp|bool StartAnimationWithEventCallback(string layerName, string animKey, JSFlexibleFunction animationEventCallback, bool looping {{=}} false, int timeOffset {{=}} 0)}}
 
::
 
::
::Creates a DOMAnimation node and puts it on the specified DOMAnimationLayer. This function is in the wrong place. Should be on DOMController
+
::Creates a DOMAnimation node and puts it on the specified DOMAnimationLayer.
  
 
:{{CSharp|void StartLookAt(DOMTransformExtended target, string boneName)}}
 
:{{CSharp|void StartLookAt(DOMTransformExtended target, string boneName)}}
Line 120: Line 136:
 
::Clears the LookAt and BoneName properties in a single update
 
::Clears the LookAt and BoneName properties in a single update
  
 +
===Methods (From Game Cloud)===
 +
:{{CSharp|AvatarExtended GetAvatar()}}
 +
::
 +
::Gets the [[AvatarExtended]] associated with this [[DOMController]] if any.
 +
 +
__NOTOC____NOEDITSECTION__
 
__NOTOC____NOEDITSECTION__
 
__NOTOC____NOEDITSECTION__

Latest revision as of 19:22, 5 February 2019

Represents a DOMController in JavaScript

Remarks [edit]

Properties

DOMControllerExtended ActiveController {get; set;}
Returns the DOMController that this controller should use to overide control. If none is specified this DOMController controls itself.
long ActiveControllerID {get; set;} // Via attribution on DOMController
The ID of an object to be set as the ActiveController (See the ActiveController property)
DOMObjectExtended AnimationController {get; set;}
Returns the DOMAnimationController that this controller should use for animation. If none is specified an immediate child DOMAnimationController will be used instead.
long AnimationControllerID {get; set;} // Via attribution on DOMController
The ID of an object to be set as the AnimationController (See the AnimationController property)
int AnimationControllerSlot {get; set;} // Via attribution on DOMController
Specifies which animation controller slot this avatar should be in. When an animation controller is animating multiple avatars, this number chooses your slot or role in the animation
int BlendshapeTypeNodeID {get; set;} // Via attribution on DOMController
The ID of another node in the same type that contains blendshape configuration
bool ControlLocked {get; set;} // Via attribution on DOMController
True if this avatar is control locked, meaning that it should not submit position or rotation updates. This is very similar to PositionLocked except the server will still accept updates from clients. This property is essentially a request.
DOMPhysicsPace CurrentPace {get; set;} // Via attribution on DOMController
Pace value for the speed of the controller
int Direction {get; set;} // Via attribution on DOMController
The direction this controller is facing (in degrees)
bool GroundSitting {get; set;} // Via attribution on DOMController
True if this avatar is sitting on the ground
bool Grounded {get; set;} // Via attribution on DOMController
True if this avatar is touching the ground
bool IsParticipant {get;}
Returns true if this object is in a persona document.
bool Jumping {get; set;} // Via attribution on DOMController
True if this object is jumping
DOMTransformExtended LookAt {get; set;}
Returns the DOMTransform object that this controller should try to “look at” if any
string LookAtBone {get; set;} // Via attribution on DOMController
The name of a bone in the LookAt object that this avatar should "Look At"
long LookAtID {get; set;} // Via attribution on DOMController
The ID of an object to be set as the LookAt target (See the LookAt property)
ParticipantExtended Participant {get;}
Returns the Participant object associated with the persona document in which this controller resides.
bool PositionLocked {get; set;} // Via attribution on DOMController
True if this avatar is position locked, meaning that the client application should not submit position or rotation updates, and also that the server will not accept changes from any connected clients (eg. the physics host)
float Speed {get; set;} // Via attribution on DOMController
The speed this controller is moving (in units per second)
bool StrafeLocked {get; set;} // Via attribution on DOMController
True if this avatar is using strafing movement

Events

OnBreakout(ParticipantExtended who, DOMObjectExtended source)
Parameters:
who : The participant who's trying to break out
source : The participant's DOMController (this object)
Fires when a user tries to break out of a PositionLocked or ControlLocked interaction. Who is the Participant doing the breaking out.

Methods

bool AddIKTarget(DOMTransformExtended target, string goal, JSFlexibleFunction eventCallback = NULL, float positionWeight = 1.0, float positionBlendTime = 0.0, float rotationWeight = 0.0, float rotationBlendTime = 0.0, float timeout = -1.0, JSVector3 positionOffset = NULL)
bool IsAnimationPlaying(string layerName, string animKey)
Tests to see if the specified animation is playing
void LockPosition(bool locked)
Position locks this object so it can’t move or be controlled to move. Useful for playing animations where locked position is necessary.
bool RemoveIKTarget(string goal)
bool SetAnimationInt(string name, int value)
Sets the specified name and integer value of a property on the first child animation controller. This is super cheesy and should be replaced.
bool StartAnimation(string layerName, string animKey, bool looping = false, int timeOffset = 0)
Creates a DOMAnimation node and puts it on the specified DOMAnimationLayer.
bool StartAnimationWithEventCallback(string layerName, string animKey, JSFlexibleFunction animationEventCallback, bool looping = false, int timeOffset = 0)
Creates a DOMAnimation node and puts it on the specified DOMAnimationLayer.
void StartLookAt(DOMTransformExtended target, string boneName)
Sets the LookAt and BoneName properties in a single update
bool StopAnimation(string layerName, string animKey)
Stops an animation from playing.
bool StopAnimationLayer(string layerName)
Stops all animations on the specified animation layer from playing.
void StopLookAt()
Clears the LookAt and BoneName properties in a single update

Methods (From Game Cloud)

AvatarExtended GetAvatar()
Gets the AvatarExtended associated with this DOMController if any.