Draw Square
by Nathan Piper
HTML
<body>
<canvas id='game' height=400 width=400 align='center' style='border: 1px solid black'> </canvas>
</body>
JavaScript
var width = 400 ;
var height = 400;
var FPS = 60;
var canvas = document.getElementById('game');
var g = canvas.getContext('2d');
var x = 50;
var y = 50;
var player = { //the player object
x: 50,
y: 50,
speed: 5,
tick: function() {
if(Key.up && this.y > 0) this.y -= this.speed;
if(Key.down && this.y < height-8) this.y += this.speed;
if(Key.left && this.x > 0) this.x -= this.speed;
if(Key.right && this.x < width-8) this.x += this.speed;
},
render: function () {
g.fillRect(this.x, this.y, 8, 8);
}
};
var Key = {
up: false,
down: false,
left: false,
right: false
};
addEventListener("keydown", function (e) {
var keyCode = (e.keyCode) ? e.keyCode: e.which;
switch(keyCode){
case 38: //up
Key.up = true;
break;
case 40: //down
Key.down = true;
break;
case 37: //left
Key.left = true;
break;
case 39: //right
Key.right = true;
break;
}
}, false);
addEventListener("keyup", function (e) {var keyCode = (e.keyCode) ? e.keyCode: e.which;
switch(keyCode){
case 38: //up
Key.up = false;
break;
case 40: //down
Key.down = false;
break;
case 37: //left
Key.left = false;
break;
case 39: //right
Key.right = false;
break;
}
}, false);
function render () { // render object to canvas
player.render();
}
function tick () { //update
player.tick();
}
setInterval(function () { //frames per second
render();
tick();
}, 1000/FPS);