hud observation for generic game objects
This commit is contained in:
@@ -26,6 +26,8 @@ class MotionEngine {
|
||||
return target;
|
||||
}
|
||||
|
||||
// a = {o-object, a-action, t-time, f-finish event, d-delay, m-mode, r-repeat,
|
||||
// rd-repeat the delay, rf-reset on finish}
|
||||
this.add = function (a) {
|
||||
a = Array.isArray(a) ? a : [a];
|
||||
a.forEach(e => {
|
||||
@@ -35,7 +37,7 @@ class MotionEngine {
|
||||
|
||||
this.clear = function (object) {
|
||||
for (var i = aq.length - 1; i >= 0; i--) {
|
||||
if (object && aq[i].o == object || !object && aq[i].ct == aq[i].t) {
|
||||
if (object && aq[i].o == object || !object && (aq[i].ct == aq[i].t || aq[i].rr)) {
|
||||
aq.splice(i, 1);
|
||||
}
|
||||
}
|
||||
@@ -75,7 +77,11 @@ class MotionEngine {
|
||||
e.ct = e.ct + t;
|
||||
if (e.ct > e.t) {
|
||||
e.ct = e.t;
|
||||
e.f && e.f();
|
||||
e.f?.();
|
||||
if (e.rf){
|
||||
e.ct = t = 0;
|
||||
e.rr = true;
|
||||
}
|
||||
}
|
||||
calcValues(e.o, e.a, e.iv, e.ct / e.t, e.m || 'value');
|
||||
if (e.ct == e.t && e.r) {
|
||||
|
||||
Reference in New Issue
Block a user