JSFiddle - React, Tailwind, and code Playground
HTML
<div id="wynik" style="margin:0 auto; width:640px;">
<p><button onclick="document.location.reload(true); newGame();" type="button">Nowa Gra!</button></p>
<div id="result"></div>
</div>
<div style="margin:0 auto; width:640px; height:480px; border: 4px solid #000000;">
<img id="sorry" src="sorry.jpg" style="display:none;"/>
<canvas id="myCanvas" width="640" height="480" onclick="onCanvasClick(event);">
</canvas>
</div>
JavaScript
window.onload = onReady;
var can;
var ctx;
var img;
var clickX;
var clickY;
var selected1;
var selected2;
// wielkość kafelka
var blockSize = 160;
var piecesArray// = new Array();
Storage.prototype.setObj = function(key, obj) {
return this.setItem(key, JSON.stringify(obj))
}
Storage.prototype.getObj = function(key) {
return JSON.parse(this.getItem(key))
}
function onReady()
{
if (localStorage["piecesArray"])
{
piecesArray = new Array();
piecesArray.length = 0;
piecesArray = localStorage.getObj("piecesArray");
}
else
{
piecesArray = new Array();
}
can = document.getElementById('myCanvas');
ctx = can.getContext('2d');
img = new Image();
img.onload = onImage1Load;
img.src = "http://www.niagaraparks.com/images/wallpaper/niagarafalls_640x480.jpg";
}
function onImage1Load()
{
if(!piecesArray.length) {
var r;
for(var i = 0; i < 4; i++)
{
for(var j = 0; j < 3; j++)
{
r = new Rectangle(i * blockSize, j * blockSize, i*blockSize + blockSize, j * blockSize + blockSize);
piecesArray.push(r);
}
}
scrambleArray(piecesArray, 30);
}
drawImage();
}
function Rectangle(left, top, right, bottom)
{
this.left = left;
this.top = top;
this.right = right;
this.bottom = bottom;
this.width = right - left;
this.height = bottom - top;
}
function scrambleArray(ar, times)
{
var count = 0;
var temp;
var index1;
var index2;
while(count < times)
{
index1 = Math.floor(Math.random()*piecesArray.length);
index2 = Math.floor(Math.random()*piecesArray.length);
temp = piecesArray[index1];
piecesArray[index1] = piecesArray[index2];
piecesArray[index2] = temp;
count++;
}
}
function drawImage()
{
var r;
for(var i = 0; i < 4; i++)
{
for(var j = 0; j < 3;...