GentrifiedAppsUtil Help

Setup

The generic setup for this is incredibly easy, just create the OpModeRepeaterRegistrar class and copy in this code. Then, rename your drive motors in the Driver constructor to match your robot. Then, change the name variable to the name of your recording if you want to.

Then you're ready to start repeating teleop modes!

import com.qualcomm.robotcore.eventloop.opmode.OpMode; import com.qualcomm.robotcore.eventloop.opmode.OpModeManager; import com.qualcomm.robotcore.eventloop.opmode.OpModeRegistrar; import com.qualcomm.robotcore.hardware.DcMotorSimple; import org.firstinspires.ftc.robotcore.internal.opmode.OpModeMeta; import org.gentrifiedApps.gentrifiedAppsUtil.heatseeker.Driver; import org.gentrifiedApps.gentrifiedAppsUtil.heatseeker.teleopTracker.TeleOpCopyRunner; import org.gentrifiedApps.gentrifiedAppsUtil.heatseeker.teleopTracker.TeleOpTrackerOpMode; public final class OpModeRepeaterRegistrar { static String name = "MyFirstRecording"; static Driver driver = new Driver("fl", "fr", "bl", "br", DcMotorSimple.Direction.FORWARD, DcMotorSimple.Direction.REVERSE, DcMotorSimple.Direction.FORWARD, DcMotorSimple.Direction.REVERSE); static boolean isEnabled = true; private OpModeRepeaterRegistrar() { } private static OpModeMeta metaForClass(Class<? extends OpMode> cls, OpModeMeta.Flavor flavor) { return new OpModeMeta.Builder() .setName(cls.getSimpleName()) .setGroup("Repeater") .setFlavor(flavor) .build(); } @OpModeRegistrar public static void register(OpModeManager manager) { if (!isEnabled) return; manager.register(metaForClass(TeleOpCopyRunner.class, OpModeMeta.Flavor.AUTONOMOUS), new TeleOpCopyRunner(name, driver)); manager.register(metaForClass(TeleOpTrackerOpMode.class, OpModeMeta.Flavor.TELEOP), new TeleOpTrackerOpMode(name, driver)); } }
Last modified: 09 April 2025