public void update() { // Update movement m.update(); // If distance from first element if too big if (m.getPosition().dist(elements[0]) > elementChangeDist) { // Change values of all elements for (int i = elements.length - 1; i > 0; i--) { elements[i].set(elements[i - 1]); elementColors[i] = elementColors[i - 1]; } // Set position and color of first element elementColors[0] = getColor(); elements[0].set(m.getPosition()); elementChangeDist = p.random(elementMinDist, elementMaxDist); } }