Interface for entity visual behaviors (movement, rotation, animations, etc.). Behaviors are ticked ev...
virtual float minDuration() const =0
Minimum duration below which this behavior is skipped entirely.
virtual void update(float dt)=0
virtual bool isDone() const =0
Returns true when the behavior has completed and can be removed.
virtual float getDuration() const =0
Total duration of this behavior in seconds.
virtual ~IBehavior()=default