Drag[en]gine Script Module DragonScript
1.23
|
Behavior element behavior adding navigation 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... | |
ECComposeNavigationBlocker | getNavigationBlocker () |
Composeable navigation blocker for element class. More... | |
Instance | instance (BehaviorElement element) |
Get instance in element from owner element class. More... | |
ECBehaviorNavigationBlocker | new (BehaviorElementClass eclass, ECBehaviorCollider collider) |
Create behavior element class. More... | |
ECBehaviorNavigationBlocker | new (BehaviorElementClass eclass, ECBehaviorCollider collider, Loaders loaders) |
ECBehaviorNavigationBlocker | new (BehaviorElementClass eclass, ECBehaviorCollider collider, Loaders loaders, String id) |
ECBehaviorNavigationBlocker | new (BehaviorElementClass eclass, ECBehaviorCollider collider, Loaders loaders, String id, String prefix) |
ECBehaviorNavigationBlocker | new (BehaviorElementClass eclass, ECBehaviorCollider collider, String id) |
void | setBox (int layer, int priority, Vector center, Vector halfExtents) |
Set parameters quickly. More... | |
void | setBox (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 ECBehaviorNavigationBlocker | getBehaviorIn (BehaviorElementClass eclass) |
Get behavior in element class or null if absent. More... | |
static ECBehaviorNavigationBlocker | 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 blocker support.
Behavior adds a NavigationBlocker resource to the the behavior element. This allow elements using Navigator resource to avoid moving into the blocked space. Actors have a navigator by default. Other elements can use ECBehaviorNavigator to interact with ECBehaviorNavigationBlocker.
This behavior can be added multiple times to an element. Each instance creates one navigation blocker attached to the element collider which can be individually modified. To distinguish the navigation blockers each instance has an identifier which can be used to retrieve a specific instance. By default navigation blocker class properties have no prefix. If the identifier is not empty the navigation blocker element class properties have the prefix "{id}.". This can be overwritten if required. Hence to use more than one navigation blocker use code like this in your subclass constructor:
You can now define the parameters to use for both navigation blockers using for example the properties "navigationBlocker" for the first navigation blocker and "subNavBlocker.navigationBlocker" for the second navigation blocker.
Using more than one navigation blocker for behavior elements can be required if different actors have different spacing requirements or to support different navigation blocker 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 "navigationBlocker{(id)}.".
This behavior does not require the element class to be persistable (setPersistable).
ECBehaviorInstance Dragengine.Scenery.ECBehaviorNavigationBlocker.createInstance | ( | BehaviorElement | element | ) |
Create Behavior instance.
Implements Dragengine.Scenery.ECBehavior.
void Dragengine.Scenery.ECBehaviorNavigationBlocker.dispose | ( | ) |
Dispose of behavior.
Reimplemented from Dragengine.Scenery.DefaultECBehavior.
|
static |
Get list of all behaviors in element.
Returns list contains ECBehaviorNavigationBlocker behaviors in the order they have been created in the element.
|
static |
Get list of all instances in element.
Returns list contains ECBehaviorNavigationBlocker.Instance instances in the order they have been created in the element.
ECComposeAttachResource Dragengine.Scenery.ECBehaviorNavigationBlocker.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 ECBehaviorNavigationBlocker with specific identifier.
ECBehaviorCollider Dragengine.Scenery.ECBehaviorNavigationBlocker.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 ECBehaviorNavigationBlocker.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 ECBehaviorNavigationBlocker.Instance with specific identifier.
ECComposeNavigationBlocker Dragengine.Scenery.ECBehaviorNavigationBlocker.getNavigationBlocker | ( | ) |
Composeable navigation blocker for element class.
Instance Dragengine.Scenery.ECBehaviorNavigationBlocker.instance | ( | BehaviorElement | element | ) |
Get instance in element from owner element class.
ECBehaviorNavigationBlocker Dragengine.Scenery.ECBehaviorNavigationBlocker.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider | ||
) |
Create behavior element class.
These values are optional and can be null: collider.
ECBehaviorNavigationBlocker Dragengine.Scenery.ECBehaviorNavigationBlocker.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
Loaders | loaders | ||
) |
ECBehaviorNavigationBlocker Dragengine.Scenery.ECBehaviorNavigationBlocker.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
Loaders | loaders, | ||
String | id | ||
) |
ECBehaviorNavigationBlocker Dragengine.Scenery.ECBehaviorNavigationBlocker.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
Loaders | loaders, | ||
String | id, | ||
String | prefix | ||
) |
ECBehaviorNavigationBlocker Dragengine.Scenery.ECBehaviorNavigationBlocker.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
String | id | ||
) |
void Dragengine.Scenery.ECBehaviorNavigationBlocker.setBox | ( | int | layer, |
int | priority, | ||
Vector | center, | ||
Vector | halfExtents | ||
) |
Set parameters quickly.
void Dragengine.Scenery.ECBehaviorNavigationBlocker.setBox | ( | int | layer, |
int | priority, | ||
Vector | center, | ||
Vector | halfExtents, | ||
Quaternion | orientation | ||
) |