Provo ad interpretare usando JS (standard):
codice:
var nomi = new Array("i1.jpg", "i2.jpg", "i3.jpg", "i4.jpg", ...);

var arr_img = new Array()
for(var i=0; i<immagini.length; i++) {
  arr_img[i] = new Image()
  arr_img[i].src = nomi[i]
}
Questo e` corretto; il tuo ha un po' di confusione ...


Vorresti poter sostituire la prima array con un loop che genera automaticamente i nomi.

Ad esempio:
codice:
var arr_img = new Array()
for(var i=0; i<MAX; i++) {
  var nome = "i" + (i+1) + ".jpg";
  arr_img[i] = new Image()
  arr_img[i].src = nome;
}
Nota che con questo metodo NON ci sono gli zeri davanti ai numeri brevi. E` una cosa che si puo` implementare, ma che comporta piu` lavoro, quindi non conoscendo i tuoi vincoli non lo ho fatto.