public FloatChoreographyKeyFrame(float s, float v, EaseOperation e) { start = s; value = v; ease_operation = e; }
static public float InOut(float x, EaseOperation in_operation, EaseOperation out_operation) { if (x < 0.5f) { return(in_operation(x * 2.0f) * 0.5f); } return(out_operation((x - 0.5f) * 2.0f) * 0.5f + 0.5f); }
static public float Delay(float x, float start, EaseOperation operation) { if (x <= start) { return(0.0f); } return(operation((x - start) / (1.0f - start))); }
public Easer(EaseOperation o, TemporalDuration t) { operation = o; timer = t; }
public ConductorOrder_GameObject_EaseToLocalPlanarPosition(GameObject t, Vector2 e, EaseOperation o, float d, TimeType tt) : base(t) { end = e; easer = new GameEaser(o, d, tt); }
static public float Evaluate(this EaseOperation item, float time, float start_time, float end_time, float start_value, float end_value) { return(item(time.ConvertFromRangeToPercent(start_time, end_time)) .ConvertFromPercentToRange(start_value, end_value)); }
public ConductorOrder_GameObject_EaseToPlanarRotation(GameObject t, float e, EaseOperation o, float d, TimeType tt) : base(t) { end = e; easer = new GameEaser(o, d, tt); }
static public EaseOperation Inverse(EaseOperation operation) { return(delegate(float x) { return Inverse(x, operation); }); }
static public float Inverse(float x, EaseOperation operation) { return(1.0f - operation(1.0f - x)); }
static public EaseOperation InOut(EaseOperation in_operation, EaseOperation out_operation) { return(delegate(float x) { return InOut(x, in_operation, out_operation); }); }
static public EaseOperation Delay(float start, EaseOperation operation) { return(delegate(float x) { return Delay(x, start, operation); }); }
public GameEaser(EaseOperation o, float d, TimeType t) : base(o, new GameTimer(d, t)) { }
public ConductorOrder_MotionManualNode_EaseTo(MotionManualNode n, float e, EaseOperation o, float d, TimeType tt) : base(n) { end = e; easer = new GameEaser(o, d, tt); }