/// <summary> /// Empty-guided fire that points in the same direction as the empty bullet. /// <br/>Note: when following polar bullets, you should use this. /// </summary> public static SyncPattern DS(ReflectEx.Hoist <Vector2> hoistLoc, ReflectEx.Hoist <Vector2> hoistDir, ExBPY indexer, ExTP offset) => Simple(GCXU(VTPRepo.DTPOffset(hoistLoc, hoistDir, indexer, offset)), new SBOptions(new[] { SBOption.Dir2(GCXUSB(RetrieveHoisted(hoistDir, indexer))) }));
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))))) }));