// Concentration Memory Game with http://so-bonnie.net/images - Head Script
// copyright Stephen Chapman, 28th February 2006
// you may copy this script provided that you retain the copyright notice

var back = 'http://so-bonnie.net/images/memory/back.jpg';
var tile = ['http://so-bonnie.net/images/memory/c01.jpg','http://so-bonnie.net/images/memory/c02.jpg','http://so-bonnie.net/images/memory/c03.jpg','http://so-bonnie.net/images/memory/c04.jpg','http://so-bonnie.net/images/memory/c05.jpg',
'http://so-bonnie.net/images/memory/c06.jpg','http://so-bonnie.net/images/memory/c07.jpg','http://so-bonnie.net/images/memory/c08.jpg','http://so-bonnie.net/images/memory/c09.jpg','http://so-bonnie.net/images/memory/c10.jpg','http://so-bonnie.net/images/memory/c11.jpg',
'http://so-bonnie.net/images/memory/c12.jpg','http://so-bonnie.net/images/memory/c13.jpg','http://so-bonnie.net/images/memory/c14.jpg','http://so-bonnie.net/images/memory/c15.jpg',];

function randOrd(a, b){return (Math.round(Math.random())-0.5);} 
var im = []; 
for (var i = 0; i < 15; i++) {im[i] = new Image(); im[i].src = tile[i]; 
tile[i] = '<img src="'+tile[i]+'" width="50" height="70" style="border: 3px solid #bb2857;">'; 
tile[i+15] = tile[i];} 

function displayBack(i) {document.getElementById('t'+i).innerHTML = '<div onclick="disp('+i+');return false;"><img src="'+back+'" width="50" height="70" style="border: 3px solid #cbcdcd;"><\/div>';}
 var ch1, ch2, tmr, tno, tid, cid, cnt; 
window.onload=start; 

function start() {for (var i = 0; i <= 29 ;i++) displayBack(i);
clearInterval(tid);tmr = tno = cnt = 0;tile.sort( randOrd );cntr();
tid = setInterval('cntr()', 1000);} 

function cntr() {var min = Math.floor(tmr/60);
var sec = tmr%60;mem.cnt.value = min+':'+ (sec<10 ? '0' : '') + sec;tmr++;} 

function disp(sel) {if (tno>1) {clearTimeout(cid); 
conceal();}document.getElementById('t'+sel).innerHTML = tile[sel];
if (tno==0) ch1 = sel;else {ch2 = sel;  
cid = setTimeout('conceal()', 900);}tno++;} 

function conceal() {tno = 0; if (tile[ch1] != tile[ch2]) {displayBack(ch1);displayBack(ch2);} else cnt++; 
if (cnt >= 15) clearInterval(tid);}