// -------------------------------------------------------------------------- Behavior <float> ToSingle() { return(Behavior.Create(ctx => Convert.ToSingle(this.BehaviorFunc(ctx)))); }
public static Behavior <T> Wait <T>(this Behavior <T> v, float delay) { return(Behavior.Create(ctx => v.BehaviorFunc(new BehaviorContext(ctx.Time + delay)))); }
// Extension method for floats only public static Behavior <float> Forever(this float v) { return(Behavior.Create(ctx => v)); }
public static Behavior <T> Faster <T>(this Behavior <T> v, float speed) { return(Behavior.Create(ctx => v.BehaviorFunc(new BehaviorContext(ctx.Time * speed)))); }
// Create constant behavior from a value public static Behavior <T> Forever <T>(T v) { return(Behavior.Create(ctx => v)); }