JSFiddle - React, Tailwind, and code Playground
by unsign3d
HTML
<canvas id="a" width="640" height="480"></canvas>
JavaScript
var box = document.getElementById('a');
var keys = [65536];
var xMouse, yMouse, mouseButton;
// mouse released
box.onmouseup = function (event) {
mouseButton = 0;
};
// mouse pressed
box.onmousedown = function (event) {
mouseButton = event.button;
};
// mouse moved
box.onmousemove = function (event) {
xMouse = event.clientX;
yMouse = event.clientY;
};
// key released
box.onkeyup = function (event) {
keys[event.keyCode] = false;
};
// key pressed
box.onkeydown = function (event) {
keys[event.keyCode] = true;
};
var sprites = (
'' +
' !!!! ' +
' !oooo ' +
' !oooo ' +
' ** ' +
' **XX ' +
' o*XX ' +
' ** ' +
' ** ' +
' ** ' +
' ooo ' +
' ! ' +
' !!!! ' +
' !oooo ' +
' oooo ' +
' **XXX' +
' *oXXX' +
' **** ' +
' ** ** ' +
'** oo' +
'oo ' +
' !!! ' +
' !oooo ' +
'!!oooo ' +
' ** XX' +
' ***oX' +
' ** XX' +
' *** ' +
' ***** ' +
'o** ** ' +
'o oo' +
' !!!! ' +
'!!oooo ' +
' !oooo ' +
' ** ' +
' **XXX' +
' *oXXX' +
' ** ' +
' o*** ' +
' o** ' +
' oo ' +
' ' +
' ' +
' !!!! ' +
' !oooo ' +
' !oooo ' +
' ** ' +
' **XX ' +
' o*XX ' +
' #*# # ' +
' ### ' +
' ' +
' ' +
' ' +
' ' +
' ' +
' # ' +
'#!!!! #' +
' !oooo ' +
' #o#o# ' +
' ##### ' +
' ' +
' ' +
' ' +
' ' +
' ' +
' ' +
' ' +
' ' +
' # ' +
'# #').split('');
var ctx = box.getContext('2d');
var level = [1024 * 2048];
var levelNames = new Array('Level 1: Miners4k', 'Level 2: Rocks', 'Level 3: Descent', 'Level 4: Slime', 'Level 5: Massive', 'Level 6: Riiiight', 'You won!');
var infoStrings = new Array('Bring the gold home!', 'Rocks are...