js1k
by path411
HTML
<canvas id="c"></canvas>
<script>
var b = document.body;
var c = document.getElementsByTagName('canvas')[0];
var a = c.getContext('2d');
document.body.clientWidth;
</script>
JavaScript
var mx = 0;
var my = 0;
var cx = 150;
var cy = 50;
c.style.cursor='none';
var keydown = {
w:0,
a:0,
s:0,
d:0
};
function main() {
bindevents();
draw();
}
function bindevents() {
b.addEventListener('mousemove', function(e) {
mx = e.clientX;
my = e.clientY;
}, false);
b.addEventListener('keydown', function(e) {
keydown = e.keyCode;
kdcount++;
}, false);
b.addEventListener('keyup', function(e) {
kdcount--;
if(kdcount == 0) keydown = 0;
}, false);
}
window.setInterval(loop, 16)
function loop() {
update();
draw();
}
function update() {
cx += (keydown == 68) && 1 || keydown == 65 && -1 || 0;
cy += (keydown == 83) && 1 || keydown == 87 && -1 || 0;
}
function draw() {
clear();
drawman();
drawaim();
}
function clear() {
c.width=c.width;
}
function drawman() {
a.fillStyle = "red";
a.fillRect(cx, cy, 8, 8);
}
function drawaim() {
a.fillStyle = 'black';
a.fillRect(mx, my, 5, 5);
}
main();