@Override
	public final void entityTick(double time) {
		if(currAnimation != null){
			animationTime += time * animationSpeed;
			while(animationTime >= currAnimation.times[currAnimationState]){
				animationTime -= currAnimation.times[currAnimationState];
				if(currAnimationState < currAnimation.images.length - 1){
					currAnimationState++;
				} else {
					if(cycleAnimation){
						if(currAnimationSet == null){
							currAnimationState = 0;
						} else {
							startAnimation(currAnimationSet);
						}
						animationCycled();
					} else {
						currAnimation = null;
						animationEnded();
					}
				}
			}
		}
		animatedEntityTick(time);
	}