//
// Function: load()
// Called by HTML body element's onload event when the web application is ready to start
//
function load()
{
    dashcode.setupParts();
    preloader();
    level = 0;
    spc = 0;
    mvd = new Array();
    shwarw = 0;
    instrbox = 0; // instruction box status. 0 = off, 1 = on
    // All the following alter windows should
    // be brought back to "30px" as needed, unless otherwise indicated
    var bxToChange = document.getElementById("winner1");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px";
        
    var bxToChange = document.getElementById("winner2");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px"; 
        
    var bxToChange = document.getElementById("winner25");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px";
    
    var bxToChange = document.getElementById("winner3");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px"; 
    
    var bxToChange = document.getElementById("winner35");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px";
    
    var bxToChange = document.getElementById("trapped");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px";
    
    var bxToChange = document.getElementById("newgame");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px"; // return to 201 px

    var bxToChange = document.getElementById("backup");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px"; // return to 244 px

    var bxToChange = document.getElementById("instructions");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px"; // return to 12 px
        
    var bxToChange = document.getElementById("chooselevel");
    bxToChange.style.opacity = .98;
    bxToChange.style.left = "30px";
}

//
// Function: preloader()
// Called by HTML body element's onload event when the web application is ready to start
//
function preloader()
{
    picNms=new Array("Images/black.png","Images/white.png","Images/title.png","Images/knightblack.png","Images/knightwhite.png","Images/voidblack.png","Images/voidwhite.png","Images/homeblack.png","Images/homewhite.png","Images/goalblack.png","Images/goalwhite.png");
    Grpx = new Array();
    for (s=0; s<picNms.length; s++){
        Grpx[s] = new Image();
        Grpx[s].src = picNms[s];
    }
}

//
// Function: random(maxValue)
// Randomizing function
// Chooses a number from 0 to (maxValue - 1)
//
function random(maxValue) {
	day = new Date();
	hour = day.getHours();
	min = day.getMinutes();
	sec = day.getSeconds();
	mili = day.getTime();
	return(((hour*3600)+(min*60)+(sec)+mili) % maxValue);
}

//
// Function: ranom(maxValue)
// 2nd randomizing function for level 3
// Chooses a number from 0 to (maxValue - 1)
//
function ranom(maxValue) {
day = new Date();
mil = day.getTime();
return((mil) % maxValue);
}

//
// Function: clrboard()
// Clears the chessboard in preparation for a new game
//
function clrboard()
{
    for (i = 0; i <= 63; i++) {
        mvd[i] = 0; // list of visited squares
    }
    for (i = 0; i <= 6; i++) {
        var bxToChange = document.getElementById("square" + i);
        bxToChange.style.backgroundImage = "url(" + Grpx[1].src + ")";
        var bxToChange = document.getElementById("square" + (i+1));
        bxToChange.style.backgroundImage = "url(" + Grpx[0].src + ")";
        var bxToChange = document.getElementById("square" + (i+9));
        bxToChange.style.backgroundImage = "url(" + Grpx[1].src + ")";
        var bxToChange = document.getElementById("square" + (i+8));
        bxToChange.style.backgroundImage = "url(" + Grpx[0].src + ")";
        var bxToChange = document.getElementById("square" + (i+16));
        bxToChange.style.backgroundImage = "url(" + Grpx[1].src + ")";
        var bxToChange = document.getElementById("square" + (i+17));
        bxToChange.style.backgroundImage = "url(" + Grpx[0].src + ")";
        var bxToChange = document.getElementById("square" + (i+25));
        bxToChange.style.backgroundImage = "url(" + Grpx[1].src + ")";
        var bxToChange = document.getElementById("square" + (i+24));
        bxToChange.style.backgroundImage = "url(" + Grpx[0].src + ")";
        var bxToChange = document.getElementById("square" + (i+32));
        bxToChange.style.backgroundImage = "url(" + Grpx[1].src + ")";
        var bxToChange = document.getElementById("square" + (i+33));
        bxToChange.style.backgroundImage = "url(" + Grpx[0].src + ")";
        var bxToChange = document.getElementById("square" + (i+41));
        bxToChange.style.backgroundImage = "url(" + Grpx[1].src + ")";
        var bxToChange = document.getElementById("square" + (i+40));
        bxToChange.style.backgroundImage = "url(" + Grpx[0].src + ")";
        var bxToChange = document.getElementById("square" + (i+48));
        bxToChange.style.backgroundImage = "url(" + Grpx[1].src + ")";
        var bxToChange = document.getElementById("square" + (i+49));
        bxToChange.style.backgroundImage = "url(" + Grpx[0].src + ")";
        var bxToChange = document.getElementById("square" + (i+57));
        bxToChange.style.backgroundImage = "url(" + Grpx[1].src + ")";
        var bxToChange = document.getElementById("square" + (i+56));
        bxToChange.style.backgroundImage = "url(" + Grpx[0].src + ")";
        i = i + 1;
    }
}

//
// Function: lvl1()
// Level 1 is chosen
//
function lvl1(event)
{
    moves = 0;
    spc = random(64);
    clrboard();
    drwKnight(spc);
    var bxToChange = document.getElementById("chooselevel");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px"; // Bring back to "30px"
    var bxToChange = document.getElementById("newgame");
    bxToChange.style.opacity = 1;
    bxToChange.style.left = "201px";
    moves = moves + 1;
    mvd[spc] = moves;
    t=setTimeout("",2000);
    level = 1;
}

//
// Function: lvl2()
// Level 2 is chosen
//
function lvl2(event)
{
    moves = 0;
    spc = random(64);
    strt = spc;
    clrboard();
    drwKnight(spc);
    var bxToChange = document.getElementById("chooselevel");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px"; // Bring back to "30px"
    var bxToChange = document.getElementById("newgame");
    bxToChange.style.opacity = 1;
    bxToChange.style.left = "201px";
    moves = moves + 1;
    mvd[spc] = moves;
    t=setTimeout("",2000);
    level = 2;
}

//
// Function: lvl3()
// Level 3 is chosen
//
function lvl3(event)
{
    moves = 0;
    spc = random(64);
    t=setTimeout("",237);
    sameclr = 0; // used to determine if starting and ending squares are different colors
    while (sameclr == 0) {
        goal = ranom(64);
        if ((spc == 0) || (spc == 2) || (spc == 4) || (spc == 6) || (spc == 9) || (spc == 11) || (spc == 13) || (spc == 15) || (spc == 16) || (spc == 18) || (spc == 20) || (spc == 22) || (spc == 25) || (spc == 27) || (spc == 29) || (spc == 31) || (spc == 32) || (spc == 34) || (spc == 36) || (spc == 38) || (spc == 41) || (spc == 43) || (spc == 45) || (spc == 47) || (spc == 48) || (spc == 50) || (spc == 52) || (spc == 54) || (spc == 57) || (spc == 59) || (spc == 61) || (spc == 63)) {
            if ((goal == 1) || (goal == 3) || (goal == 5) || (goal == 7) || (goal == 8) || (goal == 10) || (goal == 12) || (goal == 14) || (goal == 17) || (goal == 19) || (goal == 21) || (goal == 23) || (goal == 24) || (goal == 26) || (goal == 28) || (goal == 30) || (goal == 33) || (goal == 35) || (goal == 37) || (goal == 39) || (goal == 40) || (goal == 42) || (goal == 44) || (goal == 46) || (goal == 49) || (goal == 51) || (goal == 53) || (goal == 55) || (goal == 56) || (goal ==  58) || (goal ==  60) || (goal ==  62)) {
               sameclr = 1;
            }
        }
        if ((spc == 1) || (spc == 3) || (spc == 5) || (spc == 7) || (spc == 8) || (spc == 10) || (spc == 12) || (spc == 14) || (spc == 17) || (spc == 19) || (spc == 21) || (spc == 23) || (spc == 24) || (spc == 26) || (spc == 28) || (spc == 30) || (spc == 33) || (spc == 35) || (spc == 37) || (spc == 39) || (spc == 40) || (spc == 42) || (spc == 44) || (spc == 46) || (spc == 49) || (spc == 51) || (spc == 53) || (spc == 55) || (spc == 56) || (spc ==  58) || (spc ==  60) || (spc ==  62)) {
            if ((goal == 0) || (goal == 2) || (goal == 4) || (goal == 6) || (goal == 9) || (goal == 11) || (goal == 13) || (goal == 15) || (goal == 16) || (goal == 18) || (goal == 20) || (goal == 22) || (goal == 25) || (goal == 27) || (goal == 29) || (goal == 31) || (goal == 32) || (goal == 34) || (goal == 36) || (goal == 38) || (goal == 41) || (goal == 43) || (goal == 45) || (goal == 47) || (goal == 48) || (goal == 50) || (goal == 52) || (goal == 54) || (goal == 57) || (goal == 59) || (goal == 61) || (goal == 63)) {
               sameclr = 1;
            }
        }
    }
    clrboard();
    drwKnight(spc);
    drwGoal(goal);
    var bxToChange = document.getElementById("chooselevel");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px"; // Bring back to "30px"
    var bxToChange = document.getElementById("newgame");
    bxToChange.style.opacity = 1;
    bxToChange.style.left = "201px";
    moves = moves + 1;
    mvd[spc] = moves;
    t=setTimeout("",2000);
    level = 3;
}

//
// Function: drwKnight(nmbr)
// Draw knight with correct color background at space (nmbr)
//
function drwKnight(nmbr)
{
    if ((nmbr == 0)||(nmbr == 2)||(nmbr == 4)||(nmbr == 6)||(nmbr == 9)||(nmbr == 11)||(nmbr == 13)||(nmbr == 15)||(nmbr == 16)||(nmbr == 18)||(nmbr == 20)||(nmbr == 22)||(nmbr == 25)||(nmbr == 27)||(nmbr == 29)||(nmbr == 31)||(nmbr == 32)||(nmbr == 34)||(nmbr == 36)||(nmbr == 38)||(nmbr == 41)||(nmbr == 43)||(nmbr == 45)||(nmbr == 47)||(nmbr == 48)||(nmbr == 50)||(nmbr == 52)||(nmbr == 54)||(nmbr == 57)||(nmbr == 59)||(nmbr == 61)||(nmbr == 63)) {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[4].src + ")";
    }
    else {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[3].src + ")";
    }
}

//
// Function: drwVoid(nmbr)
// Draw void with correct color background at space (nmbr)
//
function drwVoid(nmbr)
{
    if ((nmbr == 0)||(nmbr == 2)||(nmbr == 4)||(nmbr == 6)||(nmbr == 9)||(nmbr == 11)||(nmbr == 13)||(nmbr == 15)||(nmbr == 16)||(nmbr == 18)||(nmbr == 20)||(nmbr == 22)||(nmbr == 25)||(nmbr == 27)||(nmbr == 29)||(nmbr == 31)||(nmbr == 32)||(nmbr == 34)||(nmbr == 36)||(nmbr == 38)||(nmbr == 41)||(nmbr == 43)||(nmbr == 45)||(nmbr == 47)||(nmbr == 48)||(nmbr == 50)||(nmbr == 52)||(nmbr == 54)||(nmbr == 57)||(nmbr == 59)||(nmbr == 61)||(nmbr == 63)) {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[6].src + ")";
    }
    else {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[5].src + ")";
    }
}

//
// Function: drwHome(nmbr)
// Draw home with correct color background at space (nmbr)
//
function drwHome(nmbr)
{
    if ((nmbr == 0)||(nmbr == 2)||(nmbr == 4)||(nmbr == 6)||(nmbr == 9)||(nmbr == 11)||(nmbr == 13)||(nmbr == 15)||(nmbr == 16)||(nmbr == 18)||(nmbr == 20)||(nmbr == 22)||(nmbr == 25)||(nmbr == 27)||(nmbr == 29)||(nmbr == 31)||(nmbr == 32)||(nmbr == 34)||(nmbr == 36)||(nmbr == 38)||(nmbr == 41)||(nmbr == 43)||(nmbr == 45)||(nmbr == 47)||(nmbr == 48)||(nmbr == 50)||(nmbr == 52)||(nmbr == 54)||(nmbr == 57)||(nmbr == 59)||(nmbr == 61)||(nmbr == 63)) {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[8].src + ")";
    }
    else {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[7].src + ")";
    }
}

//
// Function: drwGoal(nmbr)
// Draw goal with correct color background at space (nmbr)
//
function drwGoal(nmbr)
{
    if ((nmbr == 0)||(nmbr == 2)||(nmbr == 4)||(nmbr == 6)||(nmbr == 9)||(nmbr == 11)||(nmbr == 13)||(nmbr == 15)||(nmbr == 16)||(nmbr == 18)||(nmbr == 20)||(nmbr == 22)||(nmbr == 25)||(nmbr == 27)||(nmbr == 29)||(nmbr == 31)||(nmbr == 32)||(nmbr == 34)||(nmbr == 36)||(nmbr == 38)||(nmbr == 41)||(nmbr == 43)||(nmbr == 45)||(nmbr == 47)||(nmbr == 48)||(nmbr == 50)||(nmbr == 52)||(nmbr == 54)||(nmbr == 57)||(nmbr == 59)||(nmbr == 61)||(nmbr == 63)) {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[10].src + ")";
    }
    else {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[9].src + ")";
    }
}

//
// Function: drwEmpty(nmbr)
// Draw empty space with correct color background at space (nmbr)
//
function drwEmpty(nmbr)
{
    if ((nmbr == 0)||(nmbr == 2)||(nmbr == 4)||(nmbr == 6)||(nmbr == 9)||(nmbr == 11)||(nmbr == 13)||(nmbr == 15)||(nmbr == 16)||(nmbr == 18)||(nmbr == 20)||(nmbr == 22)||(nmbr == 25)||(nmbr == 27)||(nmbr == 29)||(nmbr == 31)||(nmbr == 32)||(nmbr == 34)||(nmbr == 36)||(nmbr == 38)||(nmbr == 41)||(nmbr == 43)||(nmbr == 45)||(nmbr == 47)||(nmbr == 48)||(nmbr == 50)||(nmbr == 52)||(nmbr == 54)||(nmbr == 57)||(nmbr == 59)||(nmbr == 61)||(nmbr == 63)) {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[1].src + ")";
    }
    else {
        var bxToChange = document.getElementById("square" + nmbr);
        bxToChange.style.backgroundImage = "url(" + Grpx[0].src + ")";
    }
}

//
// Function: knightMove(nmbr)
// Check if moving to (nmbr) is a legal move
// If legal, move knight and update move counter
//
function knightMove(nmbr)
{
    hlt = 0;

    if (nmbr == spc) {
        hlt = 1; // you're already there
    }
    
    if (mvd[nmbr] != 0) {
        hlt = 1; // you've already been there
    }
    
    rqs = lglMove(nmbr); // boolean variable to determine if move is legal
    if (rqs == 1) {
        hlt = 1; // you've can't get there from here
    }
    
    if (hlt == 0) {
        if ((level == 2) && (moves == 1)) {
            drwHome(spc);
        }
        else {
            drwVoid(spc);
        }
        spc = nmbr;
        drwKnight(spc);
        moves = moves + 1;
        mvd[spc] = moves;
        if (moves > 1) {
            shwarw = 1;
            var bxToChange = document.getElementById("backup");
            bxToChange.style.opacity = 1;
            bxToChange.style.left = "244px";
        }
        if (moves == 64) {
            endGame();
        }
        if (moves < 64) {
            rqs = isTrapped(spc);
            if (rqs == 0) {
                var bxToChange = document.getElementById("trapped");
                bxToChange.style.opacity = .98;
                bxToChange.style.left = "30px";
            }
        }
    }
}

//
// Function: lglMove(nmbr)
// Tests if moving to (nmbr) is a legal move
// If legal, return z as 0, otherwise 1
//
function lglMove(whr)
{
    z = 0; // boolean variable to determine if move is legal
    y1 = Math.floor(spc / 8);
    x1 = spc - (y1 * 8);
    y2 = Math.floor(whr / 8);
    x2 = whr - (y2 * 8);
    tstx = Math.abs(x2 - x1);
    tsty = Math.abs(y2 - y1);
    tst = tstx + tsty;
    if ((tstx < 1) || (tstx > 2) || (tsty < 1) || (tsty > 2)) {
        z = 1; // you can't get there from here
    }
    if ((z == 0) && (tst != 3)) {
        z = 1; // you can't get there from here
    }
    return z;
}

//
// Function: isTrapped()
// Check if player is trapped
//
function isTrapped(whr)
{
    posMoves = 0; // Number of possible moves available
    y = Math.floor(whr / 8);
    x = whr - (y * 8);
    if (((y - 1) >= 0) && ((x - 2) >= 0)) {
        tst = ((y - 1) * 8) + (x - 2);
        if (mvd[tst] == 0) {
            posMoves = posMoves + 1;
        }
    }
    if (((y - 2) >= 0) && ((x - 1) >= 0)) {
        tst = ((y - 2) * 8) + (x - 1);
        if (mvd[tst] == 0) {
            posMoves = posMoves + 1;
        }
    }
    if (((y + 1) < 8) && ((x - 2) >= 0)) {
        tst = ((y + 1) * 8) + (x - 2);
        if (mvd[tst] == 0) {
            posMoves = posMoves + 1;
        }
    }
    if (((y + 2) < 8) && ((x - 1) >= 0)) {
        tst = ((y + 2) * 8) + (x - 1);
        if (mvd[tst] == 0) {
            posMoves = posMoves + 1;
        }
    }
    if (((y - 1) >= 0) && ((x + 2) < 8)) {
        tst = ((y - 1) * 8) + (x + 2);
        if (mvd[tst] == 0) {
            posMoves = posMoves + 1;
        }
    }
    if (((y - 2) >= 0) && ((x + 1) < 8)) {
        tst = ((y - 2) * 8) + (x + 1);
        if (mvd[tst] == 0) {
            posMoves = posMoves + 1;
        }
    }
    if (((y + 1) < 8) && ((x + 2) < 8)) {
        tst = ((y + 1) * 8) + (x + 2);
        if (mvd[tst] == 0) {
            posMoves = posMoves + 1;
        }
    }
    if (((y + 2) < 8) && ((x + 1) < 8)) {
        tst = ((y + 2) * 8) + (x + 1);
        if (mvd[tst] == 0) {
            posMoves = posMoves + 1;
        }
    }
    return posMoves
}

//
// Function: endGame()
// All 64 squares have been hit, so how did they do?
//
function endGame()
{
    if (level == 1) {
        level = 0;
        var bxToChange = document.getElementById("winner1");
        bxToChange.style.opacity = .98;
        bxToChange.style.left = "30px";
    }
    if (level == 2) {
        level = 0;
        rqs = lglMove(strt);
        if (rqs == 1) {
            var bxToChange = document.getElementById("winner25");
            bxToChange.style.opacity = .98;
            bxToChange.style.left = "30px";
        }
        else {
            var bxToChange = document.getElementById("winner2");
            bxToChange.style.opacity = .98;
            bxToChange.style.left = "30px";
        }
    }
    if (level == 3) {
        level = 0;
        if (goal != spc) {
            var bxToChange = document.getElementById("winner35");
            bxToChange.style.opacity = .98;
            bxToChange.style.left = "30px";
        }
        else {
            var bxToChange = document.getElementById("winner3");
            bxToChange.style.opacity = .98;
            bxToChange.style.left = "30px";
        }
    }
}

//
// Function: undoMove()
// Move knight back after undo button is hit
//
function undoMove(event)
{
    if (shwarw == 1) {
        drwEmpty(spc);
        mvd[spc] = 0;
        moves = moves - 1;
        for (i = 0; i <= 63; i++) {
            if (mvd[i] == moves) {
                spc = i;
                i = 66;
            }
        }
        drwKnight(spc);
    }
    if (moves == 1) {
        shwarw == 1;
        var bxToChange = document.getElementById("backup");
        bxToChange.style.opacity = 0;
        bxToChange.style.left = "330px";
    }
}

//
// Function: undoTrpdMove()
// Move knight back after getting trapped error
//
function undoTrpdMove(event)
{
    var bxToChange = document.getElementById("trapped");
    bxToChange.style.opacity = 0;
    bxToChange.style.left = "330px";
    drwEmpty(spc);
    mvd[spc] = 0;
    moves = moves - 1;
    for (i = 0; i <= 63; i++) {
        if (mvd[i] == moves) {
            spc = i;
            i = 66;
        }
    }
    drwKnight(spc);
}

//
// Function: bkToBeg()
// Start over again
//
function bkToBeg(event)
{
    load();
    moves = 0;
    clrboard();
}

//
// Function: shdbox()
// Show instruction box when info is clicked
//
function shdbox(event)
{
    if (instrbox == 0) {
        instrbox = 1;
        var bxToChange = document.getElementById("instructions");
        bxToChange.style.opacity = 1;
        bxToChange.style.left = "12px";
    }
    else {
        instrbox = 0;
        var bxToChange = document.getElementById("instructions");
        bxToChange.style.opacity = 0;
        bxToChange.style.left = "330px";
    }
}

//
// Function: click0-63()
// These handle the squares when clicked
//
function click0(event)
{
    if (level != 0) {
        knightMove(0);
    }
}


function click1(event)
{
    if (level != 0) {
        knightMove(1);
    }
}


function click2(event)
{
    if (level != 0) {
        knightMove(2);
    }
}


function click3(event)
{
    if (level != 0) {
        knightMove(3);
    }
}


function click4(event)
{
    if (level != 0) {
        knightMove(4);
    }
}


function click5(event)
{
    if (level != 0) {
        knightMove(5);
    }
}


function click6(event)
{
    if (level != 0) {
        knightMove(6);
    }
}


function click7(event)
{
    if (level != 0) {
        knightMove(7);
    }
}


function click8(event)
{
    if (level != 0) {
        knightMove(8);
    }
}


function click9(event)
{
    if (level != 0) {
        knightMove(9);
    }
}


function click10(event)
{
    if (level != 0) {
        knightMove(10);
    }
}


function click11(event)
{
    if (level != 0) {
        knightMove(11);
    }
}


function click12(event)
{
    if (level != 0) {
        knightMove(12);
    }
}


function click13(event)
{
    if (level != 0) {
        knightMove(13);
    }
}


function click14(event)
{
    if (level != 0) {
        knightMove(14);
    }
}


function click15(event)
{
    if (level != 0) {
        knightMove(15);
    }
}


function click16(event)
{
    if (level != 0) {
        knightMove(16);
    }
}


function click17(event)
{
    if (level != 0) {
        knightMove(17);
    }
}


function click18(event)
{
    if (level != 0) {
        knightMove(18);
    }
}


function click19(event)
{
    if (level != 0) {
        knightMove(19);
    }
}


function click20(event)
{
    if (level != 0) {
        knightMove(20);
    }
}


function click21(event)
{
    if (level != 0) {
        knightMove(21);
    }
}


function click22(event)
{
    if (level != 0) {
        knightMove(22);
    }
}


function click23(event)
{
    if (level != 0) {
        knightMove(23);
    }
}


function click24(event)
{
    if (level != 0) {
        knightMove(24);
    }
}


function click25(event)
{
    if (level != 0) {
        knightMove(25);
    }
}


function click26(event)
{
    if (level != 0) {
        knightMove(26);
    }
}


function click27(event)
{
    if (level != 0) {
        knightMove(27);
    }
}


function click28(event)
{
    if (level != 0) {
        knightMove(28);
    }
}


function click29(event)
{
    if (level != 0) {
        knightMove(29);
    }
}


function click30(event)
{
    if (level != 0) {
        knightMove(30);
    }
}


function click31(event)
{
    if (level != 0) {
        knightMove(31);
    }
}


function click32(event)
{
    if (level != 0) {
        knightMove(32);
    }
}


function click33(event)
{
    if (level != 0) {
        knightMove(33);
    }
}


function click34(event)
{
    if (level != 0) {
        knightMove(34);
    }
}


function click35(event)
{
    if (level != 0) {
        knightMove(35);
    }
}


function click36(event)
{
    if (level != 0) {
        knightMove(36);
    }
}


function click37(event)
{
    if (level != 0) {
        knightMove(37);
    }
}


function click38(event)
{
    if (level != 0) {
        knightMove(38);
    }
}


function click39(event)
{
    if (level != 0) {
        knightMove(39);
    }
}


function click40(event)
{
    if (level != 0) {
        knightMove(40);
    }
}


function click41(event)
{
    if (level != 0) {
        knightMove(41);
    }
}


function click42(event)
{
    if (level != 0) {
        knightMove(42);
    }
}


function click43(event)
{
    if (level != 0) {
        knightMove(43);
    }
}


function click44(event)
{
    if (level != 0) {
        knightMove(44);
    }
}


function click45(event)
{
    if (level != 0) {
        knightMove(45);
    }
}


function click46(event)
{
    if (level != 0) {
        knightMove(46);
    }
}


function click47(event)
{
    if (level != 0) {
        knightMove(47);
    }
}


function click48(event)
{
    if (level != 0) {
        knightMove(48);
    }
}


function click49(event)
{
    if (level != 0) {
        knightMove(49);
    }
}


function click50(event)
{
    if (level != 0) {
        knightMove(50);
    }
}


function click51(event)
{
    if (level != 0) {
        knightMove(51);
    }
}


function click52(event)
{
    if (level != 0) {
        knightMove(52);
    }
}


function click53(event)
{
    if (level != 0) {
        knightMove(53);
    }
}


function click54(event)
{
    if (level != 0) {
        knightMove(54);
    }
}


function click55(event)
{
    if (level != 0) {
        knightMove(55);
    }
}


function click56(event)
{
    if (level != 0) {
        knightMove(56);
    }
}


function click57(event)
{
    if (level != 0) {
        knightMove(57);
    }
}


function click58(event)
{
    if (level != 0) {
        knightMove(58);
    }
}


function click59(event)
{
    if (level != 0) {
        knightMove(59);
    }
}


function click60(event)
{
    if (level != 0) {
        knightMove(60);
    }
}


function click61(event)
{
    if (level != 0) {
        knightMove(61);
    }
}


function click62(event)
{
    if (level != 0) {
        knightMove(62);
    }
}


function click63(event)
{
    if (level != 0) {
        knightMove(63);
    }
}