public virtual void initWithDuration(float d){
base.init ();
_duration = d;
// prevent division by 0
// This comparison could be in step:, but it might decrease the performance
// by 3% in heavy based action games.
if (FloatUtils.EQ(_duration, 0))
_duration = float.Epsilon;
_elapsed = 0;
_firstTick = true;
}