#pragma once CLASS(Animation, Object) METHOD(Animation, configureAnimation, void(Animation this, entity, void(entity, float), float, float, float, float)); METHOD(Animation, update, void(Animation this, float, float, float)); METHOD(Animation, setTimeStartEnd, void(Animation this, float, float)); METHOD(Animation, setTimeStartDuration, void(Animation this, float, float)); METHOD(Animation, setValueStartEnd, void(Animation this, float, float)); METHOD(Animation, setObjectSetter, void(Animation this, entity, void(entity, float))); METHOD(Animation, tick, void(Animation this, float)); METHOD(Animation, calcValue, float(Animation this, float, float, float, float)); METHOD(Animation, isStopped, float(Animation this)); METHOD(Animation, stopAnim, void(Animation this)); METHOD(Animation, resumeAnim, void(Animation this)); METHOD(Animation, isFinished, float(Animation this)); METHOD(Animation, finishAnim, void(Animation this)); ATTRIB(Animation, object, entity); void setterDummy(Animation this, float) {} ATTRIB(Animation, setter, void(Animation this, float), setterDummy); ATTRIB(Animation, value, float, 0); ATTRIB(Animation, startTime, float, 0); ATTRIB(Animation, duration, float, 0); ATTRIB(Animation, startValue, float, 0); ATTRIB(Animation, delta, float, 0); ATTRIB(Animation, stopped, float, false); ATTRIB(Animation, finished, float, false); ENDCLASS(Animation)