update method

  1. @override
bool update(
  1. double dt
)
override

Implementation

@override
bool update(double dt) {
  _accum += dt;
  _frames++;
  _sinceLast += dt;

  final trigger = frameInterval != null
    ? _frames >= frameInterval!
    : _accum >= interval;

  if (trigger) {
    actionUpdate(this, _sinceLast);
    _sinceLast = 0;
    _accum = frameInterval != null ? _accum : _accum - interval;
    _frames = 0;
  }

  if (remaining != null) {
    remaining = remaining! - dt;
    if (remaining! <= 0) {
      actionFinish?.call(this);
      return true;
    }
  }

  return false;
}