(function(){function p(b){return j.createElement(b||"DIV")}function q(b){b.parentNode.removeChild(b)}function U(b,c,d,e,h){var f
a:if(window.XMLHttpRequest)f=new XMLHttpRequest
else{if(window.a)try{f=new ActiveXObject("Microsoft.XMLHTTP")
break a}catch(l){}f=void 0}if(f){f.open(e||"GET",b,1)
f.onreadystatechange=function(){if(f.readyState==4)f.status==200?c(f.responseText):d()}
h&&f.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
f.send(h||"")
return f}else d()}function ka(b){j.body.appendChild(b)
var c=p()
c.style.cssText="background:#000;filter:alpha(opacity=10);height:"+(b.offsetHeight+8)+";left:"+(b.offsetLeft-4)+";opacity:.1;position:absolute;top:"+(b.offsetTop-4)+";width:"+(b.offsetWidth+8)
b.parentNode.insertBefore(c,b)
return c}function la(){V--
V||ma()}function W(b){var c=new Image
c.onload=la
c.src=b
return c}function K(b){var c=X[b]
if(!c){c=[b,Y,0]
X[b]=c
var d=new Image
d.onload=function(){c[1]=d
c[2]=90-d.height
m()}
d.src="http://setrak.se/hex/"+b+".png"}return c}function F(b){return[b,function(){return b}]}function z(b,c,d){return[b+c,function(){return b+Math.floor(d*Math.random()+c)}]}function L(b){var c=b=="water"
return[c?b:b+1,function(){function d(s){s+=A
return s>0&&s<i.length&&i[s][0][0].substr(0,b.length)==b}var e=A%g%2?0:-g,h=d(-g),f=d(g),l=d(e-1),r=d(e+1),v=d(e+g-1)
e=d(e+g+1)
return b+(h&&v&&e?c&&l&&r&&f?12:10:l&&r&&f?11:l&&r?4:h&&e?5:r&&f?6:e&&v?7:f&&l?8:v&&h?9:l||e?2:r||v?3:h||f||!c?1:"")}]}function Z(b){var c=$[b]
if(!c){c=[b,0,0,0]
$[b]=c
var d=new Image
d.onload=function(){c[1]=d
c[2]=d.width
c[3]=d.height
m()}
d.src="http://setrak.se/doodad/"+b+".png"}return c}function M(b){var c=b.clientX+n
b=b.clientY+o
var d=Math.floor((c+28)/83),e=Math.floor(b/48)
d-=c<83*d+((d+e)%2*2-1)*(b-48*e-24)*111/192+13.75
e=Math.floor((e-d%2)/2)
return d>=0&&d<g&&e>=0&&e<k&&[d,e]}function N(b){function c(d){if(d=M(d)){d=d[1]*g+d[0]
if(d!=A){A=d
i[d][0]=K(b())
m()}}}b=b[1]
return function(d){A=-1
B=c
c(d)}}function na(b){var c=Z(b)
return function(d){var e=M(d)
if(e){var h=n+d.clientX-83*e[0]
d=o+d.clientY-96*e[1]-e[0]%2*48
e=i[e[1]*g+e[0]][1]
for(var f=0;f<e.length;f++)if([Math.floor(e[f][2]+e[f][0][3]/2),Math.floor(e[f][1]+e[f][0][2]/2)]>[d,h])break
e.splice(f,0,[c,h-Math.floor(c[2]/2),d-Math.floor(c[3]/2)])
m()}}}function oa(b){var c=M(b)
if(c){var d=n+b.clientX-83*c[0]
b=o+b.clientY-96*c[1]-c[0]%2*48
c=i[c[1]*g+c[0]][1]
for(var e=c.length;e;){e--
if(d>=c[e][1]&&d<c[e][1]+c[e][0][2]&&b>=c[e][2]&&b<c[e][2]+c[e][0][3]){c.splice(e,1)
m()
break}}}}function pa(b,c,d,e){function h(){var G=i[v*g+s],aa=83*s-n,ba=96*v+s%2*48-o
O.drawImage(G[0][1],aa,ba+G[0][2])
for(var qa in G[1]){var P=G[1][qa],ca=P[0][1]
ca&&O.drawImage(ca,aa+P[1],ba+P[2])}}for(var f=c-((c+o)%192+192)%192,l=b-((b+n)%166+166)%166;l<d;l+=166)for(var r=f;r<e;r+=192)O.drawImage(ra,l,r)
f=Math.floor((b+n)/83)
d=Math.min(g,Math.floor((d+n)/83)+1)
b=Math.max(0,f-f%2)
f=Math.max(1,f+f%2-1)
e=Math.min(2*k,Math.floor((e+o)/48)+2)
for(c=Math.max(0,Math.floor((c+o)/48)-1);c<e;c++)for(var v=Math.floor(c/2),s=c%2?f:b;s<d;s+=2)h()}function m(){pa(0,0,da,ea)}function fa(){t.width=da=innerWidth
t.height=ea=innerHeight
m()}function sa(b){if(b.keyCode==32){b=u
u=C
C=b}else if(b.keyCode==37){n-=50
m()}else if(b.keyCode==38){o-=50
m()}else if(b.keyCode==39){n+=50
m()}else if(b.keyCode==40){o+=50
m()}}function ga(b){if(!b.button){u(b)
return false}if(b.button==1){B=ta
Q=b.clientX
R=b.clientY
return false}if(b.button==2){ua(b)
return false}}function va(b){B&&B(b)}function wa(){B=0}function ta(b){var c=b.clientY
n+=Q-b.clientX
o+=R-c
Q=b.clientX
R=b.clientY
m()}function ma(){fa()
window.onresize=fa
j.body.style.margin=0
j.body.replaceChild(t,j.body.firstChild)
j.oncontextmenu=function(){return false}
j.onkeydown=sa
t.onmousedown=ga
t.onmousemove=va
t.onmouseup=wa
ha()}function ua(b){function c(){j.onclick=null
q(e)
q(r)
t.onmousedown=ga}function d(v){return function(){c()
h[v][1](b)}}var e=p()
e.className="menu"
var h=[["Hexagongenerator\u2026",xa],["Hexagon\u2026",ya],["Dekoration\u2026",za],["Avl\u00e4gsna dekoration",oa],["\u00c4ndra storlek\u2026",Aa],["Spara",Ba],["Spara som\u2026",ia],["Hj\u00e4lp\u2026",ha],["Avsluta",Ca]]
for(var f in h){var l=p()
l.innerHTML=h[f][0]
l.onclick=d(f)
e.appendChild(l)}e.onmousedown=function(){return false}
e.style.cssText="left:"+(b.clientX+4)+";top:"+(b.clientY+4)
var r=ka(e)
t.onmousedown=c}function w(b){var c=p()
c.className="dialog"
c.innerHTML=b+"<p><input type=button value=St\u00e4ng></p>"
c.getElementsByTagName("INPUT")[0].onclick=function(){q(c)}
j.body.appendChild(c)}function xa(){function b(h){return function(){C=u
u=N(H[h])
q(c)}}var c=p()
c.className="hex_dialog"
for(var d in H){var e=new Image
e.src="http://setrak.se/hex/"+H[d][0]+".png"
e.onclick=b(d)
c.appendChild(e)}j.body.appendChild(c)}function ya(){function b(h){return function(){C=u
u=N(F(S[h]))
q(c)}}var c=p()
c.className="hex_dialog"
for(var d in S){var e=new Image
e.src="http://setrak.se/hex/"+S[d]+".png"
e.onclick=b(d)
c.appendChild(e)}j.body.appendChild(c)}function za(){function b(h){return function(){C=u
u=na(T[h])
q(c)}}var c=p()
c.className="hex_dialog"
for(var d in T){var e=new Image
e.src="http://setrak.se/doodad/"+T[d]+".png"
e.onclick=b(d)
c.appendChild(e)}j.body.appendChild(c)}function Aa(){function b(){c.getElementsByTagName("TD")[3].innerHTML=g+" \u2a2f "+k
m()}var c=p()
c.className="dialog"
c.innerHTML="<table><tr><td><td><input type=button value=\u2191 style=height:2.5em;width:5em><br><input type=button value=\u2193 style=height:2.5em;width:5em><tr><td><input type=button value=\u2190 style=height:5em;width:2.5em><input type=button value=\u2192 style=height:5em;width:2.5em><td align=center>"+g+" \u2a2f "+k+"<td><input type=button value=\u2190 style=height:5em;width:2.5em><input type=button value=\u2192 style=height:5em;width:2.5em><tr><td><td><input type=button value=\u2191 style=height:2.5em;width:5em><br><input type=button value=\u2193 style=height:2.5em;width:5em><td align=center><input type=button value=St\u00e4ng></table>"
var d=[function(){for(var f=0;f<g;f++)i.splice(0,0,[x,[]])
k++
o+=96
b()},function(){if(k>4){i.splice(0,g)
k--
o-=96
b()}},function(){g++
for(var f=0;f<k;f++)i.splice(f*g,0,[x,[]])
n+=86
b()},function(){if(g>4){g--
for(var f=0;f<k;f++)i.splice(f*g,1)
n-=86
b()}},function(){if(g>4){g--
for(var f=1;f<=k;f++)i.splice(f*g,1)
b()}},function(){g++
for(var f=1;f<=k;f++)i.splice(f*g-1,0,[x,[]])
b()},function(){if(k>4){i.splice(i.length-g,g)
k--
b()}},function(){for(var f=0;f<g;f++)i.push([x,[]])
k++
b()},function(){q(c)}],e=c.getElementsByTagName("INPUT")
for(var h in d)e[h].onclick=d[h]
j.body.appendChild(c)}function ja(){var b=[]
for(var c in i){var d=i[c],e=[i[c][0][0],[]]
for(c in d[1])e[1].push([d[1][c][0][0],d[1][c][1],d[1][c][2]])
b.push(e)}return"title="+encodeURIComponent(I)+"&data="+encodeURIComponent(JSON.stringify([g,b]))}function Ba(){if(D)if(window.JSON){var b=p()
b.className="dialog"
b.innerHTML="Sparar\u2026"
j.body.appendChild(b)
U(J+"create",function(c){if(1*c)D=c
else w(c)
q(b)},function(){q(b)
w("Ett fel uppstod vid kontakt med servern.")},"POST",ja()+"&id="+D)}else w("Din webbl\u00e4sare st\u00f6djer inte JSON.")
else ia()}function ia(){if(window.JSON){var b=p()
b.className="dialog"
b.innerHTML="<form method=post>Titel: <input><div style=margin-top:.25em><input type=submit value=Spara><input type=submit value=Avbryt></div></form>"
var c=b.firstChild
c.childNodes[1].value=I
c.childNodes[2].childNodes[1].onclick=function(){q(b)
return false}
c.onsubmit=function(){I=c.childNodes[1].value
U(J+"create",function(d){if(1*d){q(b)
D=d}else w(d)},function(){w("Ett fel uppstod vid kontakt med servern.")},"POST",ja())
return false}
j.body.appendChild(b)}else w("Din webbl\u00e4sare st\u00f6djer inte JSON.")}function ha(){w("<p>V\u00e4nster musknapp - Rita<br>Mittenmusknappen - Panorera<br>H\u00f6ger musknapp - \u00d6ppna meny<br>Blanksteg - V\u00e4xla till f\u00f6reg\u00e5ende ritverktyg<br>F11 - Helsk\u00e4rm (Fungerar i de flesta webbl\u00e4sare.)</p>")}function Ca(){location=J+"../map_editor"}var j=document,t=p("CANVAS")
if(t.getContext){var O=t.getContext("2d"),da,ea
j.body.innerHTML="Laddar bilder\u2026"
var V=2,ra=W("http://setrak.se/board/admin_background.png"),Y=W("http://setrak.se/hex/cave_wall.png"),x=["cave_wall",Y,0],X={cave_wall:x},S=["cave1","cave2","cave3","cave4","cave_exit","cave_wall","dense_forest1","dense_forest2","dense_forest3","farm","forest1","forest2","forest3","forest4","forest5","forest6","forest7","grass1","grass2","grass3","grass4","mountain1","mountain2","mountain3","path1","path2","path3","path4","path5","path6","path7","path8","path9","path10","path11","trail1","trail2",
"trail3","trail4","trail5","trail6","trail7","trail8","trail9","trail10","trail11","water","water1","water2","water3","water4","water5","water6","water7","water8","water9","water10","water11","water12","vordners_market"],H=[z("grass",1,4),z("mountain",1,3),z("forest",1,3),z("forest",4,3),z("dense_forest",1,3),L("path"),L("trail"),z("cave",1,4),F("cave_wall"),F("cave_exit"),L("water"),F("farm")],$={},T=["bridge1","bridge2","bridge3","building1","building2","building3","building7","building_large1",
"building_large2","building_large3","cave_entrance","flag","mushrooms1","mushrooms2","mushrooms3","rock1","rock2","rock3","white_flag","windmill","vordners_bank","01","02","03","04","05","06","07","08","09","10","11","12"]
x=K("cave_wall")
var i=[],g=18,k=10,n=0,o=0,B,Q,R,u=N(H[0]),C=u,A,J="",D,I=""
if(window._){J="../"
D=_[0]
I=_[1]
i=_[3]
g=_[2]
k=i.length/g
for(var y in i){var E=i[y]
E[0]=K(E[0])
for(y in E[1])E[1][y][0]=Z(E[1][y][0])}}else for(y=0;y<g*k;y++)i.push([x,[]])}else j.body.innerHTML="Din webbl\u00e4sare st\u00f6djer inte canvas-elementet. <a href=http://www.google.com/chrome/>Skaffa en nyare webbl\u00e4sare</a>."})()

