AnimComposer: added getTime() and setTime() methods (#1201)

Resolves #1200
fix-openal-soft-deadlink
Ali-RS 5 years ago committed by Stephen Gold
parent 96b16884ce
commit 5c75af1d38
  1. 30
      jme3-core/src/main/java/com/jme3/anim/AnimComposer.java

@ -104,6 +104,36 @@ public class AnimComposer extends AbstractControl {
l.time = 0; l.time = 0;
l.currentAction = null; l.currentAction = null;
} }
/**
* Returns current time of the specified layer.
*/
public double getTime(String layerName) {
Layer l = layers.get(layerName);
if (l == null) {
throw new IllegalArgumentException("Unknown layer " + layerName);
}
return l.time;
}
/**
* Sets current time on the specified layer.
*/
public void setTime(String layerName, double time) {
Layer l = layers.get(layerName);
if (l == null) {
throw new IllegalArgumentException("Unknown layer " + layerName);
}
if (l.currentAction == null) {
throw new RuntimeException("There is no action running in layer " + layerName);
}
double length = l.currentAction.getLength();
if (time >= 0) {
l.time = time % length;
} else {
l.time = time % length + length;
}
}
/** /**
* *

Loading…
Cancel
Save