Drag[en]gine Script Module DragonScript
1.23
|
Behavior element behavior adding support to define grab spot for actors. More...
Classes | |
class | BlockListenerFactory |
Factory creating listeners using block. More... | |
class | DefaultListener |
Default implementation of behavior instance listener. More... | |
class | Instance |
Behavior instance. More... | |
interface | Listener |
Listener for behavior instance events. More... | |
interface | ListenerFactory |
Factory creating listeners. More... | |
Public Member Functions | |
void | addListenerFactory (Block blockFactory) |
Add listener factory using block. More... | |
void | addListenerFactory (ListenerFactory factory) |
Add listener factory. More... | |
void | createListeners (Instance instance) |
Create listeners from factories adding them to behavior instance. More... | |
void | dispose () |
Dispose of behavior. More... | |
void | forEachListenerFactory (Block ablock) |
Visit listener factories with block with argument ListenerFactory. More... | |
ECComposeAttachResource | getAttachTouchCollider () |
Attach touch collider. More... | |
ECBehaviorCollider | getCollider () |
Collider behavior or null. More... | |
ECComposeCollider | getTouchCollider () |
Composeable touch collider. More... | |
ECBehaviorGrabSpot | new (BehaviorElementClass eclass, ECBehaviorCollider collider) |
Create behavior element class. More... | |
ECBehaviorGrabSpot | new (BehaviorElementClass eclass, ECBehaviorCollider collider, String id) |
ECBehaviorGrabSpot | new (BehaviorElementClass eclass, ECBehaviorCollider collider, String id, String prefix) |
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... | |
Public Member Functions inherited from Dragengine.Scenery.ECBehavior | |
ECBehaviorInstance | createInstance (BehaviorElement element) |
Create Behavior instance. More... | |
Static Public Member Functions | |
static ECBehaviorGrabSpot | getBehaviorIn (BehaviorElementClass eclass) |
Get behavior in element class 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 support to define grab spot for actors.
Defines position and orientation where the actor can grab the owner element. Grab spots are typically used for physics interaction like VR hand use but can be used also with mouse interaction. The actual grabbing interaction, exact grab location and orientation as well as attaching logic is handled by other behaviors using listening. This behavior also tracks if an actor is grabbing the grab spot. Hence at most one actor can grab an grab spot at each time.
Elements able to grab a grab spot have to use the ECBehaviorGrabber behavior. Both the grab spot and the grabber have to persist the other behavior. During restoring no notifications are triggered this way.
Element class properties have the prefix "grabSpot{(id)}.".
This behavior uses no other behaviors.
This behavior does require the element class to be persistable (setPersistable).
void Dragengine.Scenery.ECBehaviorGrabSpot.addListenerFactory | ( | Block | blockFactory | ) |
void Dragengine.Scenery.ECBehaviorGrabSpot.addListenerFactory | ( | ListenerFactory | factory | ) |
Add listener factory.
void Dragengine.Scenery.ECBehaviorGrabSpot.createListeners | ( | Instance | instance | ) |
Create listeners from factories adding them to behavior instance.
void Dragengine.Scenery.ECBehaviorGrabSpot.dispose | ( | ) |
Dispose of behavior.
Reimplemented from Dragengine.Scenery.DefaultECBehavior.
void Dragengine.Scenery.ECBehaviorGrabSpot.forEachListenerFactory | ( | Block | ablock | ) |
Visit listener factories with block with argument ListenerFactory.
ECComposeAttachResource Dragengine.Scenery.ECBehaviorGrabSpot.getAttachTouchCollider | ( | ) |
Attach touch collider.
|
static |
Get behavior in element class or null if absent.
Use this method to check if a particular BehaviorElementClass contains a behavior of type ECBehaviorGrabSpot.
ECBehaviorCollider Dragengine.Scenery.ECBehaviorGrabSpot.getCollider | ( | ) |
Collider behavior or null.
ECComposeCollider Dragengine.Scenery.ECBehaviorGrabSpot.getTouchCollider | ( | ) |
Composeable touch collider.
ECBehaviorGrabSpot Dragengine.Scenery.ECBehaviorGrabSpot.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider | ||
) |
Create behavior element class.
These behaviors can be null:
ECBehaviorGrabSpot Dragengine.Scenery.ECBehaviorGrabSpot.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
String | id | ||
) |
ECBehaviorGrabSpot Dragengine.Scenery.ECBehaviorGrabSpot.new | ( | BehaviorElementClass | eclass, |
ECBehaviorCollider | collider, | ||
String | id, | ||
String | prefix | ||
) |