flSpeed = lf.get_actual_velocity();
blSpeed = lb.get_actual_velocity();
frSpeed = rf.get_actual_velocity();
brSpeed = rb.get_actual_velocity();
armSpeed = arm.get_actual_velocity();
clawSpeed = claw.get_target_velocity();
flenc = lf.get_position();
blenc = lb.get_position();
frenc = rf.get_position();
brenc = rb.get_position();
armenc = arm.get_position();
clawenc = claw.get_position();
if (flSpeedold != flSpeed) {
flenco = flenc;
mfl = true;
}
else {
mfl = false;
}
if (blSpeedold != blSpeed) {
blenco = blenc;
mbl = true;
}
else {
mbl = false;
}
if (frSpeedold != frSpeed) {
frenco = frenc;
mfr = true;
}
else {
mfr = false;
}
if (brSpeedold != brSpeed) {
brenco = brenc;
mbr = true;
}
else {
mbr = false;
}
if (armSpeedold != armSpeed) {
armenco = armenc;
marm = true;
}
else {
marm = false;
}
if (clawSpeedold != clawSpeed) {
mclaw = true;
}
else {
mclaw = false;
}
if (mfl || mbl || mfr || mbr || mclaw || marm) {
FILE* usd_file_write = fopen("/usd/rerun.txt", "a");
fprintf(usd_file_write, "claw.move_velocity(%i); \n", clawSpeed);
clawSpeedold = clawSpeed;
fprintf(usd_file_write, "arm.move_velocity(%i); \n", armSpeed);
armSpeedold = armSpeed;
fprintf(usd_file_write, "rb.move_velocity(%i); \n", brSpeed);
brSpeedold = brSpeed;
fprintf(usd_file_write, "rf.move_velocity(%i); \n", frSpeed);
frSpeedold = frSpeed;
fprintf(usd_file_write, "lb.move_velocity(%i); \n", blSpeed);
blSpeedold = blSpeed;
fprintf(usd_file_write, "lf.move_velocity(%i); \n", flSpeed);
flSpeedold = flSpeed;
timeNew = pros::millis();
deltaTime = timeNew - timeOld;
timeOld = pros::millis();
fprintf(usd_file_write, "delay(%d); \n", deltaTime);
fclose(usd_file_write);
}
This is much more complicated
But the output is much shorter.