function clickTile(x, y)
{
    if (didInit) {
        var elm = document.getElementById("tile_" + x + "_" + y);
        var i = getImageNumber(elm);

        switch (i * 1) {
            case 1: case 3: case 4: case 5: case 7: case 8: case 9: case 11: case 12: case 13: i++; break;
            case 2: i = 1; break;
            case 6: i = 3; break;
            case 2: i = 1; break;
            case 10: i = 7; break;
            case 14: i = 11; break;
        }

        setPipeNumber(x, y, i, elm);

        if ( didWin() ) {
            unhoverTile(elm);
            didInit = false;
            showAnimation(x, y);
            var elmIsCorrect = document.getElementById("isCorrect");
            elmIsCorrect.value = "1";
            var elmIsTimeOut = document.getElementById("isTimeOut");
            elmIsTimeOut.value = 0;

            setTimeout("doContinue()", 3000);
        }
    }
}

function doContinue()
{
    document.mainForm.submit();
}

function showAnimation(tileX, tileY)
{
    if (starsAnimation == 0) {
        starsAnimation++;
        for (var i = 0; i < maxStars; i++) {
            star[i].x = tileX * g_blockSize + g_blockSize / 2;
            star[i].y = tileY * g_blockSize + g_blockSize / 2;
            star[i].speedX = ( getRandomInt(0, 4) - 2 ) / 2;
            star[i].speedY = - ( getRandomInt(1, 20) / 10 );
            star[i].show();
        }
        setTimeout("continueAnimation()", 35);
    }
}

function continueAnimation()
{
    if (++starsAnimation < starsAnimationEnd) {
        for (var i = 0; i < maxStars; i++) {
            star[i].opacity -= 1;
            star[i].move();
            star[i].render();
        }
        setTimeout("continueAnimation()", 35);
    }
    else {
        for (var i = 0; i < maxStars; i++) {
            star[i].hide();
        }
        starsAnimation = 0;
    }
}
