var move=0 

var moves=new Array(35)

var from_field="f00"

function soli()

{

window.status='Solitair'

}



function storemove(st,en)

{

this.start=st

this.end=en

}function is_a_dot(imgname)

{

eval("fn=window.document.storeform."+imgname+".src")

l=fn.length

filename=fn.substring(l-7,l)

if (filename=="dot.gif")

 {return 1}

else {return 0}

}



function switcher(pos)

{

if (is_a_dot(pos))

        {eval("window.document.storeform."+pos+".src='hole.gif'")}

else{eval("window.document.storeform."+pos+".src='dot.gif'")}

}



function move_not_of_board(a,b)

{

for(n=0;n<2;n++)

        {

        if (n==1) {ck=a}

                else {ck=b}

        d=Math.floor(ck/10)

        s=ck-d*10

        if (!(((s>2 && s<6) && (d>0 && d<8)) || ((s>0 && s<8) && (d>2 && d<6))))

                {return false}

        }

return true

}



function more_moves()

{

for (i=0; i<33; i++)

        {

        imgname=window.document.images[i].name

        if (is_a_dot(imgname))

                {

                sfn=imgname.substring(1,3)*1

                for (direct=0; direct<4; direct++)

                        {

                        k=0

                        if (direct==0) {k=-10}

                        if (direct==1) {k=1}

                        if (direct==2) {k=10}

                        if (direct==3) {k=-1}

                        mfn=sfn*1+k*1

                        ;//middlefieldnumber

                        mft="F"+mfn

                        ;//middlefieldnametext

                        efn=sfn*1+2*k

                        ;//endfieldnumber

                        eft="F"+efn

                        ;//endfieldnametext

                        if(move_not_of_board(mfn,efn))

                                {

                                if(is_a_dot(mft)&& !(is_a_dot(eft)))

                                        {

                                        return true

                                        }

                                }

                        }

                }

        }

return false

}



function finish()

{

if(move==31) {m="Spitzen Leistung!"}

if(move==30) {m="Sehr Gutes Spiel!"}

if(move==29 ||move==28) {m="Gut gespielt!"}

if(move<28 && move>21) {m="Übung macht den Meister."}

if(move<22) {m="naja, Probier es noch einmal!"}



window.alert("Kein Zug Mehr. "+m)



if(move==31)

        {

        stg=""

        for(co=0;co<(move);co++)

                {

                stg=stg+"s"+moves[co].start+"e"+moves[co].end

                }

        window.document.movearray.data.value=stg

        window.document.movearray.submit()

        }

}



function click_on_field (feld)

{

if (is_a_dot(feld))

        {from_field=feld}

        else

        {

        sp=from_field                           ;//Startpoint

        ep=feld                                 ;//endpoint

        er=ep.substring(1,2)                    ;//row of endpoint

        ec=ep.substring(2,3)                    ;//colum of enpoint

        sr=sp.substring(1,2)

        sc=sp.substring(2,3)

        if ((er==sr && Math.abs(ec-sc)==2) || (ec==sc && Math.abs(er-sr)==2) )

                {

                middlefield="F"+((sr*1+1*er)/2)+((1*sc+1*ec)/2)

                if (is_a_dot(middlefield))

                        {

                        switcher(sp)

                        switcher(middlefield)

                        switcher(ep)

                        moves[move]=new storemove(sp,ep)

                        move=move+1

                        from_field=""

                        if (move==31 || !more_moves())

                                {

                                finish(move)

                                }

                        }

                }

        }

}



function moveback()

{

if (move>0)

        {

        move=move-1

        sp=moves[move].start

        ep=moves[move].end

        er=ep.substring(1,2)                    ;//row of endpoint

        ec=ep.substring(2,3)                    ;//colum of enpoint

        sr=sp.substring(1,2)

        sc=sp.substring(2,3)

        middlefield="F"+((sr*1+1*er)/2)+((1*sc+1*ec)/2)

        switcher(sp)

        switcher(middlefield)

        switcher(ep)

        }

}