J'ai un tableau qui fait partie d'un petit jeu JS sur lequel je travaille J'ai besoin de vérifier (aussi souvent que possible) que chacun des éléments du tableau n'a pas quitté la "scène" ou "aire de jeux", donc je peux les enlever et enregistrer le script chargerComparaison plus efficace des nombres
J'ai codé le ci-dessous et je me demandais si quelqu'un connaissait une manière plus rapide/plus efficace de le calculer. Ceci est exécuté toutes les 50ms (il s'agit du mouvement).
Où bots[i][1]
est le mouvement dans X et bots[i][2]
est le mouvement dans Y (s'excluant mutuellement).
for (var i in bots) {
var left = parseInt($("#" + i).css("left"));
var top = parseInt($("#" + i).css("top"));
var nextleft = left + bots[i][1];
var nexttop = top + bots[i][2];
if(bots[i][1]>0&&nextleft>=PLAYGROUND_WIDTH) { remove_bot(i); }
else if(bots[i][1]<0&&nextleft<=-GRID_SIZE) { remove_bot(i); }
else if(bots[i][2]>0&&nexttop>=PLAYGROUND_HEIGHT) { remove_bot(i); }
else if(bots[i][2]<0&&nexttop<=-GRID_SIZE) { remove_bot(i); }
else {
//alert(nextleft + ":" + nexttop);
$("#" + i).css("left", ""+(nextleft)+"px");
$("#" + i).css("top", ""+(nexttop)+"px");
}
}
Sur une note similaire, remove_bot (i); fonction est comme ci-dessous, est-ce correct (je ne peux pas épissure car il change tous les ID de des éléments du tableau.
function remove_bot(i) {
$("#" + i).remove();
bots[i] = false;
}
Un grand merci pour tous les conseils donnés!
Un conseil vraiment utile, je posterai le code mis à jour sous peu. Cependant, je ne comprends pas vraiment ce que vous entendez par # 3 pourriez-vous conseiller davantage? Un grand merci, –
@PezCuckow: J'ai étendu mon explication pour # 3 – Matt