Bom dia, beleza?
Fiz o meu bem parecido, mas dei uma "enxugada", mas acredito que dá pra refaturar ainda mais.
//cars
let xCars = [600, 600, 600, -73, -73, -73];
let yCars = [40, 96, 150, 210, 264, 320];
let speedCars = [2, 3.5, 5, -5, -3.5, -2];
let widthCar = 73;
let heightCar = 40;
function showCar() {
for(let i = 0; i < carsAssets.length; i++) {
image(carsAssets[i], xCars[i], yCars[i], widthCar, heightCar);
}
}
function moveCar() {
for(let i = 0; i < xCars.length; i++) {
xCars[i] -= speedCars[i];
}
}
function loopCar() {
for(let i = 0; i < xCars.length; i++) {
if(carOffScreenLeft(xCars[i])) {
xCars[i] = 600;
}
if(carOffScreenRight(xCars[i])) {
xCars[i] = -73;
}
}
}
function carOffScreenLeft(xCars) {
return xCars < -93;
}
function carOffScreenRight(xCars) {
return xCars >620;
}
Abraços.