public static SyncPattern Aim1(ExBPY speed) => Target(GCXF(_ => LPlayer()), new[] { S(GCXU(VTPRepo.RVelocity(TPr.PX(speed)))) });
public static AsyncPattern Eruption(GCXF <float> wait, GCXF <float> times, ExBPY angleOffset, ExBPY speed, ExBPY gravity, GenCtxProperty[] props) => _AsGCR(S(GCXU(VTPRepo.Velocity( TPr.PX(speed), TPr.PY(gravity) ))), props, GenCtxProperty.WT(wait, times), GenCtxProperty.PreLoop(new GCRule[] { new GCRule <float>(ExType.Float, "rv2.a", GCOperator.Assign, GCXF(x => Add(angleOffset(x), RV2A(BRV2(x))))) }));