Drag[en]gine Script Module DragonScript
1.23
|
Behavior element behavior adding navigation space and blocker support. More...
Classes | |
class | Instance |
Behavior instance. More... | |
Public Member Functions | |
ECBehaviorInstance | createInstance (BehaviorElement element) |
Create Behavior instance. More... | |
void | dispose () |
Dispose of behavior. More... | |
ECComposeAttachResource | getAttach () |
Attach resource. More... | |
ECBehaviorCollider | getCollider () |
Collider behavior or null to not attach. More... | |
ECComposeNavigationSpace | getNavigationSpace () |
Composeable navigation space for element class. More... | |
Instance | instance (BehaviorElement element) |
Get instance in element from owner element class. More... | |
ECBehaviorNavigationSpace | new (BehaviorElementClass eclass, ECBehaviorCollider collider) |
Create behavior element class. More... | |
ECBehaviorNavigationSpace | new (BehaviorElementClass eclass, ECBehaviorCollider collider, Loaders loaders) |
ECBehaviorNavigationSpace | new (BehaviorElementClass eclass, ECBehaviorCollider collider, Loaders loaders, String id) |
ECBehaviorNavigationSpace | new (BehaviorElementClass eclass, ECBehaviorCollider collider, Loaders loaders, String id, String prefix) |
ECBehaviorNavigationSpace | new (BehaviorElementClass eclass, ECBehaviorCollider collider, String id) |
void | setBlockerBox (int layer, int priority, Vector center, Vector halfExtents) |
Set blocker parameters quickly. More... | |
void | setBlockerBox (int layer, int priority, Vector center, Vector halfExtents, Quaternion orientation) |
Public Member Functions inherited from Dragengine.Scenery.DefaultECBehavior | |
void | assignInstanceIndex (int instanceIndex) |
Assign instance index. More... | |
String | getBehaviorID () |
Unique identifier of behavior. More... | |
String | getID () |
Identifier. More... | |
int | getInstanceIndex () |
Instance index. More... | |
void | loadSupportedData (String identifier, PersistencyEnvironment env, FileReader reader, ECBehaviorInstance instance) |
Load instance data of another behavior. More... | |
bool | supportsBehaviorID (String identifier) |
Behavior supports loading instance data of another behavior. More... | |
Static Public Member Functions | |
static Array | getAllBehaviorsIn (BehaviorElementClass eclass) |
Get list of all behaviors in element. More... | |
static Array | getAllInstancesIn (BehaviorElement element) |
Get list of all instances in element. More... | |
static ECBehaviorNavigationSpace | getBehaviorIn (BehaviorElementClass eclass) |
Get behavior in element class or null if absent. More... | |
static ECBehaviorNavigationSpace | getBehaviorIn (BehaviorElementClass eclass, String id) |
Get behavior with id in element class or null if absent. More... | |
static Instance | getInstanceIn (BehaviorElement element) |
Get instance in element or null if absent. More... | |
static Instance | getInstanceIn (BehaviorElement element, String id) |
Get instance with id in element or null if absent. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Dragengine.Scenery.DefaultECBehavior | |
DefaultECBehavior | new (BehaviorElementClass eclass) |
Create default composeable behavior with empty identifier. More... | |
DefaultECBehavior | new (BehaviorElementClass eclass, String id) |
Create default composeable behavior. More... | |
void | setBehaviorID (String identifier) |
Set behavior identifier. More... | |
void | useClassNameAsBehaviorID () |
Set behavior identifier to "<class-name>:<identifier>". More... | |
void | useFullyQualifiedClassNameAsBehaviorID () |
Set behavior identifier to "<fully-qualified-class-name>:<identifier>". More... | |
Behavior element behavior adding navigation space and blocker support.
Behavior adds a NavigationSpace resource to the the behavior element. This allow elements using Navigator resource to move around the element. Actors have a navigator by default. Other elements can use ECBehaviorNavigator to interact with ECBehaviorNavigationSpace.
This behavior can be added multiple times to an element. Each instance creates one navigation space attached to the element collider which can be individually modified. To distinguish the navigation spaces each instance has an identifier which can be used to retrieve a specific instance. By default navigation space class properties have no prefix. If the identifier is not empty the navigation space element class properties have the prefix "{id}.". This can be overwritten if required. Hence to use more than one navigation space use code like this in your subclass constructor:
You can now define the parameters to use for both navigation spaces using for example the properties "navigationSpace" for the first navigation space and "subNavSpace.navigationSpace" for the second navigation space.
Using more than one navigation space for behavior elements can be required if different actors have different spacing requirements or to support different navigation space types.
If the ECBehaviorCollider behavior is present in the behavior element before this behavior is added the light is attached. The light is attached to the named bone if defined otherwise it is attached statically.
Element class properties have the prefix "navigationSpace{(id)}.".
This behavior does require the element class to be persistable (setPersistable).
ECBehaviorInstance Dragengine.Scenery.ECBehaviorNavigationSpace.createInstance | ( | BehaviorElement | element | ) |
Create Behavior instance.
Implements Dragengine.Scenery.ECBehavior.
void Dragengine.Scenery.ECBehaviorNavigationSpace.dispose | ( | ) |
Dispose of behavior.
Reimplemented from Dragengine.Scenery.DefaultECBehavior.
|
static |
Get list of all behaviors in element.
Returns list contains ECBehaviorNavigationSpace behaviors in the order they have been created in the element.
|
static |
Get list of all instances in element.
Returns list contains ECBehaviorNavigationSpace.Instance instances in the order they have been created in the element.
ECComposeAttachResource Dragengine.Scenery.ECBehaviorNavigationSpace.getAttach | ( | ) |
Attach resource.
|
static |
Get behavior in element class or null if absent.
Use this method to check if a particular BehaviorElementClass contains a behavior of type ECBehaviorCollider.
|
static |
Get behavior with id in element class or null if absent.
Use this method to check if a particular BehaviorElementClass contains a behavior of type ECBehaviorNavigationSpace with specific identifier.
ECBehaviorCollider Dragengine.Scenery.ECBehaviorNavigationSpace.getCollider | ( | ) |
Collider behavior or null to not attach.
|
static |
Get instance in element or null if absent.
Use this method to check if a particular BehaviorElement contains a behavior instance of type ECBehaviorNavigationSpace.Instance . If more than one instance is present returns the first instance.
|
static |
Get instance with id in element or null if absent.
Use this method to check if a particular BehaviorElement contains a behavior instance of type ECBehaviorNavigationSpace.Instance with specific identifier.
ECComposeNavigationSpace Dragengine.Scenery.ECBehaviorNavigationSpace.getNavigationSpace | ( | ) |
Composeable navigation space for element class.
Instance Dragengine.Scenery.ECBehaviorNavigationSpace.instance | ( | BehaviorElement | element | ) |
Get instance in element from owner element class.
ECBehaviorNavigationSpace Dragengine.Scenery.ECBehaviorNavigationSpace.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider | ||
) |
Create behavior element class.
These values are optional and can be null: collider.
ECBehaviorNavigationSpace Dragengine.Scenery.ECBehaviorNavigationSpace.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
Loaders | loaders | ||
) |
ECBehaviorNavigationSpace Dragengine.Scenery.ECBehaviorNavigationSpace.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
Loaders | loaders, | ||
String | id | ||
) |
ECBehaviorNavigationSpace Dragengine.Scenery.ECBehaviorNavigationSpace.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
Loaders | loaders, | ||
String | id, | ||
String | prefix | ||
) |
ECBehaviorNavigationSpace Dragengine.Scenery.ECBehaviorNavigationSpace.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
String | id | ||
) |
void Dragengine.Scenery.ECBehaviorNavigationSpace.setBlockerBox | ( | int | layer, |
int | priority, | ||
Vector | center, | ||
Vector | halfExtents | ||
) |
Set blocker parameters quickly.
void Dragengine.Scenery.ECBehaviorNavigationSpace.setBlockerBox | ( | int | layer, |
int | priority, | ||
Vector | center, | ||
Vector | halfExtents, | ||
Quaternion | orientation | ||
) |