Diria que este condicional no tien mucho sentido
if (balls[i])
balls[i]={ speed : 100 };
y eso no es un booleano, no?
O lo lee siempre como true o siempre como false con lo que no tiene sentido....
???
Código Javascript
:
Ver originalfor (i = 0; i < numberOfFireballs; i++) {
if (balls[i].y > canvas.height) {
resetFire(i);
} else {
balls[i].y += balls[i].speed * modifier;
}
}
function resetFire(i) {
do {
balls[i].x = 32 + (Math.random() * (canvas.width - 64));
} while ((balls[i].x + 30) > (canvas.width - 30)
&& (balls[i].x) > (30));
balls[i].y = 0;
}
Con el codigo completo te podriamos ayudar con mas seguirdad....