/*
 * Licenced under WTFPL.
 * 
 * @author: Roman Mařák | Ideadesign studio s.r.o.
 */
//########################################################
//########################################################
var pukVyska = 30;
var pukSirka = 30;
var speed = 100; //méně je někdy více
var arena = "#arena";
var brana = "#brana";
var pukId = "#puk1";
//########################################################
//########################################################
//############!!!!CAN'T TOUCH THIS!!!!!!##################

var startX,startY,konecX,konecY,sbX,sbY,kbX,kbY,delka,gol=0;

$(document).ready(function(){
    loadArena();
    loadBrana();
    $(pukId).click(function(e){
        vystrel(e.pageX,e.pageY);
    });
});

function loadArena(){
    startX = parseFloat($(arena).offset().left);
    startY = parseFloat($(arena).offset().top);
    konecX = startX + parseFloat($(arena).css("width"))-pukVyska;
    konecY = startY + parseFloat($(arena).css("height"))-pukSirka;

}
function loadBrana(){
    sbX = parseFloat($(brana).offset().left);
    sbY = parseFloat($(brana).offset().top);
    kbX = sbX + parseFloat($(brana).css("width"))-pukVyska;
    kbY = sbY + parseFloat($(brana).css("height"))-pukSirka;
}
function pukDraw(x,y,puk) {
    $(puk).css("top", y);
    $(puk).css("left", x);
}

function strela(vecX,vecY,power,poc){
    aktX =  parseFloat($("#puk1").css("left"));
    aktY =  parseFloat($("#puk1").css("top"));
    //Debug: $("#info").append("<li>Aktualni pozice: X:"+aktX+" Y:"+aktY+" vecX:"+vecX+" vecY:"+vecY+" Power:"+power+" poc:"+poc+" delka:"+delka+"</li>");
    if(poc < delka) {
        if(aktX>startX && aktX+vecX<startX ){
            vecX = startX-1*aktX;
        }
        if(aktX<=startX){
            vecX = Math.abs(vecX);

        }
        if(aktX<konecX && aktX+vecX>konecX ){
            vecX = konecX-1*aktX;
        }
        if(aktX>=konecX){
            vecX = -Math.abs(vecX);

        }
        if(aktY>startY && aktY+vecY<startY ){
            vecY = startY-1*aktY;
        }
        if(aktY<=startY){
            vecY = Math.abs(vecY);
        }
        if(aktY<konecY && aktY+vecY>konecY ){
            vecY = konecY-1*aktY;
        }
        if(aktY>=konecY){
            vecY = -Math.abs(vecY);
        }
        //BRANA
        if((aktX>=sbX && aktX<=kbX )&&(aktY>=sbY && aktY<=kbY) ){
            if(gol == 0)  window.alert("Gooooooool!");
            gol = 1;
        }else{
            gol = 0;
        }
        $(pukId).animate({
            "left": "+="+vecX+"px",
            "top": "+="+vecY+"px"
        }, power,"linear",function(){
            strela(vecX,vecY,power+10,poc+1)
        });
    }
}




function vystrel(x,y){
    xp =  parseFloat($("#puk1").css("left"))+pukSirka/2;
    yp =  parseFloat($("#puk1").css("top"))+pukVyska/2;
    vecX = (xp - x)*2;
    vecY = (yp - y)*2;
    delka = Math.round(Math.sqrt(vecY*vecY+vecX*vecX)/3)*2;
    strela(vecX,vecY,speed,0);
}
