vous faites un peu compliqué pour un débutant.
pour commencer très simple, on va dire que tu as 2 sprites.
on va les faire se déplacer vers la droite, avec le sprite2 qui suit automatiquement le sprite1.
initialisation des positions des 2 sprites en utilisant des variables de type tableau :
Vector2[] spritePosition = new Vector2[2] { Vector2.Zero, Vector2.Zero };
maintenant si tu déplace le sprite1 vers la droite :
spritePosition[0].X += 1f;
si tu fais la même chose pour le sprite2 ça ne sera pas bon puisqu'il se déplacera en même temps que le sprite1.
du coup tu dois créer une valeur tampon de l'ancienne position du sprite1, ce qui donnera pour l'initialisation :
Vector2[] spritePosition = new Vector2[2] { Vector2.Zero, Vector2.Zero };
Vector2[] spritePositionTampon = new Vector2[2] { Vector2.Zero, Vector2.Zero };
maintenant dans ta boucle principale tu feras :
spritePosition[0].X += 1f;
spritePosition[1] = spritePositionTampon[0];
spritePositionTampon[0] = spritePosition[0];
j'ai pas vérifié, mais ça devrait marcher. après à toi d'améliorer le code si tu veux ajouter plus de sprites 