@Override
  public void update() {

    super.update();

    if (paused && listener != null) {
      listener.onComplete(curAnim);
    }

    if (flashTime > 0 && (flashTime -= Game.elapsed) <= 0) {
      resetColor();
    }

    boolean visible = getVisible();

    if (burning != null) {
      burning.setVisible(visible);
    }
    if (levitation != null) {
      levitation.setVisible(visible);
    }
    if (iceBlock != null) {
      iceBlock.setVisible(visible);
    }
    if (sleeping) {
      showSleep();
    } else {
      hideSleep();
    }

    if (controlled) {
      showMindControl();
    }

    if (emo != null) {
      emo.setVisible(visible);
    }
  }
 private void removeEmo() {
   if (emo != null) {
     emo.killAndErase();
     emo = null;
   }
 }