Salut-les-khey3
2022-01-07 23:25:03
Toujours considérer comme une variable local avec les corrections
https://image.noelshack.com/fichiers/2022/01/5/1641594287-sans-titre.jpghttps://image.noelshack.com/fichiers/2022/01/5/1641594300-sans-titre2.jpg
Whinot2
2022-01-07 23:28:27
Le 07 janvier 2022 à 23:25:03 :
Toujours considérer comme une variable local avec les corrections
https://image.noelshack.com/fichiers/2022/01/5/1641594287-sans-titre.jpghttps://image.noelshack.com/fichiers/2022/01/5/1641594300-sans-titre2.jpg
ça devrait rien changer dans ton cas si c'est comme en java, mais par soucis de visibilité et pour éviter des erreurs tu devrais rajouter this systématiquement quand il s'agit d'un attribut de classe ( c'est une convention ), donc par exemple systématiquement mettre this.ctx
amongnous
2022-01-07 23:58:04
window.onload = function() {
var canvas;
var canvasWidth = 900;
var canvaHeight = 600;
var blockSize = 30;
var ctx;
var iSave;
var iRestore;
var delay = 1000;
var snakee;
init();
function init() {
canvas = document.createElement('canvas');
canvas.width = canvasWidth;
canvas.height = canvaHeight;
canvas.style.border = "5px solid";
document.body.appendChild(canvas);
ctx = canvas.getContext('2d');
ctx.fillStyle = "#ff0000";
iSave = ctx.save();
iRestore = ctx.restore();
snakee = new snake([[6,4],[5,4],[4,4]]);
snakee.draw();
// refreshCanvas();
// function refreshCanvas(){
// ctx.clearRect(0,0,canvas.width,canvas.height);
// setTimeout(refreshCanvas,delay);
// }
function drawBlock(ctx, position){
var x = position[0] * blockSize;
var y = position[1] * blockSize;
ctx.fillRect(x, y, blockSize, blockSize);
};
function snake(body){
this.body = body;
this.draw = function(){
ctx.fillStyle = "#ff0000";
for(var i = 0; i < this.body.lenght; i++) {
drawBlock(ctx, this.body[i]);
};
iRestore();
iSave()
};
}
}
}