Mercurial > hg > batmud > gmap2
changeset 2:5b88dda3e6c9 gmap2
sääd
author | jeskko |
---|---|
date | Fri, 29 May 2009 01:50:00 +0000 |
parents | 30acd4d3a8ca |
children | ab56103cd3b9 |
files | css/mapstyle.css i/left.gif i/right.gif i/slide.jpg icons.js index.html js/icons.js js/map.js js/markers.js js/nav.js left.gif map.js mapstyle.css markers.js nav.js right.gif slide.jpg |
diffstat | 17 files changed, 283 insertions(+), 283 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/css/mapstyle.css Fri May 29 01:50:00 2009 +0000 @@ -0,0 +1,89 @@ +body { + background: #acc; +} + +#footer { + background: #8aa; + position: absolute; + bottom: 0px; + height: 1.5em; + left: 0px; + right: 300px; + padding-top: 0.25em; + padding-left: 0.25em; + margin: 0px; +} + +#sidebar { + background-color: #8aa; + background-image: url(i/slide.jpg); + background-repeat: repeat-x; + position: absolute; + right: 0px; + top: 3em; + bottom: 0px; + width: 290px; + padding: 0px; + margin: 0px; + +} + +#sidecontent { + width: 100%; + height: 100%; + padding: 0px; + margin: 0px; +} + +#sidecoll { + width: 8px; + position : absolute; + right: 290px; + top: 3em; + bottom: 0px; + min-height: 50px; + background-color: #8aa; + background-repeat: repeat-x; + background-image: url(i/slide.jpg); + padding-left: 1px; + padding-right: 1px; + padding-top: 0px; + padding-bottom: 0px; + margin: 0px; + } + +#collbuttondiv { + position: relative; + width: auto; + height: 16px; + top: 50%; + margin-top: -8px; + padding: 0px; + +} + +#collbutton { + border: 0px; +} + +#header { + background: #cee; + position: absolute; + left: 0px; + right: 0px; + top: 0px; + height: 3em; + padding-left: 0.25em; + padding-top: 0.25em; +} + +#map { + position: absolute; + left: 0px; + top: 3em; + right: 300px; + bottom: 1.5em; + padding: 0px; + margin: 0px; +} +
--- a/icons.js Fri May 29 01:43:46 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ -var icon = new GIcon(); -icon.iconSize=new GSize(32,32); -icon.shadowSize=new GSize(56,32); -icon.iconAnchor=new GPoint(16,16); -icon.infoWindowAnchor=new GPoint(16,16); - -var icons=[]; - -icons["tradelane"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon13.png","http://maps.google.com/mapfiles/kml/pal2/icon13s.png"); -icons["guild"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon14.png","http://maps.google.com/mapfiles/kml/pal2/icon14s.png"); -icons["default"]=new GIcon(icon,"http://maps.google.com/mapfiles/ms/micons/blue-pushpin.png","http://maps.google.com/mapfiles/ms/micons/pushpin_shadow.png"); -icons["ferry"]=new GIcon(icon,"http://maps.google.com/mapfiles/ms/micons/sailing.png","http://maps.google.com/mapfiles/ms/micons/sailing.shadow.png"); -icons["default"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal3/icon31.png","http://maps.google.com/mapfiles/kml/pal3/icon31s.png"); -icons["pcity"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon28.png","http://maps.google.com/mapfiles/kml/pal2/icon28s.png"); -icons["city"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal3/icon21.png","http://maps.google.com/mapfiles/kml/pal3/icon21s.png"); -icons["ss"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon14.png","http://maps.google.com/mapfiles/kml/pal2/icon14s.png"); -icons["shrine"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon11.png","http://maps.google.com/mapfiles/kml/pal2/icon11s.png"); \ No newline at end of file
--- a/index.html Fri May 29 01:43:46 2009 +0000 +++ b/index.html Fri May 29 01:50:00 2009 +0000 @@ -4,7 +4,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> - <link rel="stylesheet" href="mapstyle.css" type="text/css"/> + <link rel="stylesheet" href="css/mapstyle.css" type="text/css"/> <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> <title>BatMUD: The Age of Exiles - Google Maps hack by Jeskko</title> <meta name="description" content="BatMUD - The Age of Exiles - Google Maps hack by Jeskko"/> @@ -28,7 +28,7 @@ <div id="sidecoll"> <div id="collbuttondiv"> <a href="javascript:docoll()"> - <img src="right.gif" id="collbutton"> + <img src="i/right.gif" id="collbutton"> </a> </div> </div> @@ -38,9 +38,9 @@ y: <span id="ycoord">1234</span> continent: <span id="continent">Laenor</span> </div> - <script type="text/javascript" src="map.js"></script> - <script type="text/javascript" src="icons.js"></script> - <script type="text/javascript" src="markers.js"></script> - <script type="text/javascript" src="nav.js"></script> + <script type="text/javascript" src="js/map.js"></script> + <script type="text/javascript" src="js/icons.js"></script> + <script type="text/javascript" src="js/markers.js"></script> + <script type="text/javascript" src="js/nav.js"></script> </body> </html> \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/js/icons.js Fri May 29 01:50:00 2009 +0000 @@ -0,0 +1,17 @@ +var icon = new GIcon(); +icon.iconSize=new GSize(32,32); +icon.shadowSize=new GSize(56,32); +icon.iconAnchor=new GPoint(16,16); +icon.infoWindowAnchor=new GPoint(16,16); + +var icons=[]; + +icons["tradelane"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon13.png","http://maps.google.com/mapfiles/kml/pal2/icon13s.png"); +icons["guild"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon14.png","http://maps.google.com/mapfiles/kml/pal2/icon14s.png"); +icons["default"]=new GIcon(icon,"http://maps.google.com/mapfiles/ms/micons/blue-pushpin.png","http://maps.google.com/mapfiles/ms/micons/pushpin_shadow.png"); +icons["ferry"]=new GIcon(icon,"http://maps.google.com/mapfiles/ms/micons/sailing.png","http://maps.google.com/mapfiles/ms/micons/sailing.shadow.png"); +icons["default"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal3/icon31.png","http://maps.google.com/mapfiles/kml/pal3/icon31s.png"); +icons["pcity"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon28.png","http://maps.google.com/mapfiles/kml/pal2/icon28s.png"); +icons["city"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal3/icon21.png","http://maps.google.com/mapfiles/kml/pal3/icon21s.png"); +icons["ss"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon14.png","http://maps.google.com/mapfiles/kml/pal2/icon14s.png"); +icons["shrine"]=new GIcon(icon,"http://maps.google.com/mapfiles/kml/pal2/icon11.png","http://maps.google.com/mapfiles/kml/pal2/icon11s.png"); \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/js/map.js Fri May 29 01:50:00 2009 +0000 @@ -0,0 +1,73 @@ +var map = new GMap2(document.getElementById("map"),{draggableCursor: 'crosshair', draggingCursor: 'pointer'}); + +map.enableContinuousZoom(); +map.enableScrollWheelZoom(); +map.addControl(new GSmallZoomControl3D()); + +var copyright = new GCopyright(1, + new GLatLngBounds(new GLatLng(-90, -180), + new GLatLng(90, 180)), + 0, "Map data by BAT ry, Ooga, Ggr, Slobber and Jeskko"); +var cc = new GCopyrightCollection('BatMUD'); +cc.addCopyright(copyright); + +var tl = [new GTileLayer(cc, 2, 10), + new GTileLayer(cc, 2, 10)]; + +tl[0].getTileUrl=function(a,b){ return "/map/tiles/"+(b)+"/"+a.y+"/"+a.x+".png"; } +tl[1].getTileUrl=function(a,b){ return "/map/overlay.php?x="+a.x+"&y="+a.y+"&zoom="+(b); } + +var custommap = new GMapType(tl, new GMercatorProjection(12),"BatMud", {errorMessage:"No data available"}); +map.addMapType(custommap); +map.setCenter(new GLatLng(-20.2828,16.0620),3,custommap); + +var proj=map.getCurrentMapType().getProjection(); + +google.maps.Event.addListener(map, "mousemove", function(point) { + var p=proj.fromLatLngToPixel(point,7); + tx=Math.round((p.x-16383)/2)-1; + ty=Math.round((p.y-16383)/2)-1; + xx=tx; + yy=ty; + cont="Deep Sea"; + if (tx>0&&tx<829&&ty>0&&ty<783) + { + cont="Laenor"; + xx=tx; + yy=ty; + } + if (tx>1210&&tx<1653&&ty>1154&&ty<1655) + { + cont="Furnachia"; + xx=tx-1210; + yy=ty-1154; + } + if (tx>1310&&tx<1792&&ty>-1256&&ty<-774) + { + cont="Rothikgen"; + xx=tx-1310; + yy=ty-1256; + } + if (tx>-635&&tx<68&&ty>2344&&ty<2847) + { + cont="Lucentium"; + xx=tx+635; + yy=ty-2344; + } + if (tx>-1211&&tx<-669&&ty>819&&ty<1352) + { + cont="Desolathya"; + xx=tx+1211; + yy=ty-819; + } + if (tx>2066&&tx<2238&&ty>-912&&ty<-825) + { + cont="Renardy"; + xx=tx-2068; + yy=ty+910; + } + document.getElementById("xcoord").innerHTML=xx; + document.getElementById("ycoord").innerHTML=yy; + document.getElementById("continent").innerHTML=cont; +}); +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/js/markers.js Fri May 29 01:50:00 2009 +0000 @@ -0,0 +1,75 @@ +function createMarker(point,name, html,icon,type,continent,sidebar) { + var marker = new GMarker(point,{icon:icon}); + GEvent.addListener(marker,"click",function() { + marker.openInfoWindowHtml("<div style=\"color:#000;\">"+html+"</div>"); + }); + gmarkers[i]=point; + if (sidebar=="builtin") { + builtin_type[bi]=type; + builtin_cont[bi]=continent; + side_builtin_html += '<span id="marker'+bi+'"><a href="javascript:myclick(' + i + ')">' + name + '</a><br></span>'; + bi++; + } + if (sidebar=="private") side_private_html += '<a href="javascript:myclick(' + i + ')">' + name + '</a><br>'; + if (sidebar=="public") side_public_html += '<a href="javascript:myclick(' + i + ')">' + name + '</a><br>'; + + i++; + return marker; +} + +var mgr = new GMarkerManager(map); +var areas=[]; +var tlane=[]; +var gmarkers=[]; +var i; +var bi; +var builtin_type= []; +var builtin_cont= []; +var side_builtin_html; + +GDownloadUrl("markers.xml", function(data,responseCode) { + var xml = GXml.parse(data); + var markers = xml.documentElement.getElementsByTagName("marker"); + for (var j = 0; j< markers.length; j++) { + var name = markers[j].getAttribute("name"); + var html = markers[j].getAttribute("html"); + var x = markers[j].getAttribute("x"); + var y = markers[j].getAttribute("y"); + var type = markers[j].getAttribute("type"); + if (type=="") type="default"; + if (name.indexOf('FERRY')==0) type="ferry"; + if (name.indexOf('CITY')==0) type="city"; + var continent=markers[j].getAttribute("continent"); + var p = proj.fromPixelToLatLng(new GPoint(x*2+1,y*2+1),7); + var marker=createMarker(p,name,html,icons[type],type,continent,"builtin"); + if (areas[type]==undefined) areas[type]=[]; + areas[type].push(marker); + } + mgr.addMarkers(areas["default"],7,11); + mgr.addMarkers(areas["pcity"],7,11); + mgr.addMarkers(areas["guild"],6,11); + mgr.addMarkers(areas["shrine"],7,11); + mgr.addMarkers(areas["ferry"],4,11); + mgr.addMarkers(areas["city"],4,11); + mgr.refresh(); +}); + +GDownloadUrl("tradelane.xml", function(data,responseCode) { + var xml = GXml.parse(data); + var markers = xml.documentElement.getElementsByTagName("marker"); + for (var j = 0; j< markers.length; j++) { + var name = markers[j].getAttribute("name"); + var html = markers[j].getAttribute("html"); + var x = markers[j].getAttribute("x"); + var y = markers[j].getAttribute("y"); + var type = markers[j].getAttribute("type"); + if (type=="") type="default"; + var continent=markers[j].getAttribute("continent"); + var p = proj.fromPixelToLatLng(new GPoint(x*2+1,y*2+1),7); + var marker=createMarker(p,name,html,icons[type],type,continent,"builtin"); + if (areas[type]==undefined) areas[type]=[]; + areas[type].push(marker); + } + mgr.addMarkers(areas["tradelane"],5,11); + mgr.refresh(); +});
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/js/nav.js Fri May 29 01:50:00 2009 +0000 @@ -0,0 +1,23 @@ +var collapsed=0; + +function docoll() +{ + if (collapsed==0) + { + document.getElementById("sidebar").style.display="none"; + document.getElementById("sidecoll").style.right="0px"; + document.getElementById("footer").style.right="0px"; + document.getElementById("map").style.right="8px"; + document.getElementById("collbutton").src="i/left.gif"; + collapsed=1; + } + else + { + document.getElementById("sidebar").style.display=""; + document.getElementById("sidecoll").style.right="290px"; + document.getElementById("footer").style.right="300px"; + document.getElementById("map").style.right="300px"; + document.getElementById("collbutton").src="i/right.gif"; + collapsed=0; + } +}
--- a/map.js Fri May 29 01:43:46 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -var map = new GMap2(document.getElementById("map"),{draggableCursor: 'crosshair', draggingCursor: 'pointer'}); - -map.enableContinuousZoom(); -map.enableScrollWheelZoom(); -map.addControl(new GSmallZoomControl3D()); - -var copyright = new GCopyright(1, - new GLatLngBounds(new GLatLng(-90, -180), - new GLatLng(90, 180)), - 0, "Map data by BAT ry, Ooga, Ggr, Slobber and Jeskko"); -var cc = new GCopyrightCollection('BatMUD'); -cc.addCopyright(copyright); - -var tl = [new GTileLayer(cc, 2, 10), - new GTileLayer(cc, 2, 10)]; - -tl[0].getTileUrl=function(a,b){ return "/map/tiles/"+(b)+"/"+a.y+"/"+a.x+".png"; } -tl[1].getTileUrl=function(a,b){ return "/map/overlay.php?x="+a.x+"&y="+a.y+"&zoom="+(b); } - -var custommap = new GMapType(tl, new GMercatorProjection(12),"BatMud", {errorMessage:"No data available"}); -map.addMapType(custommap); -map.setCenter(new GLatLng(-20.2828,16.0620),3,custommap); - -var proj=map.getCurrentMapType().getProjection(); - -google.maps.Event.addListener(map, "mousemove", function(point) { - var p=proj.fromLatLngToPixel(point,7); - tx=Math.round((p.x-16383)/2)-1; - ty=Math.round((p.y-16383)/2)-1; - xx=tx; - yy=ty; - cont="Deep Sea"; - if (tx>0&&tx<829&&ty>0&&ty<783) - { - cont="Laenor"; - xx=tx; - yy=ty; - } - if (tx>1210&&tx<1653&&ty>1154&&ty<1655) - { - cont="Furnachia"; - xx=tx-1210; - yy=ty-1154; - } - if (tx>1310&&tx<1792&&ty>-1256&&ty<-774) - { - cont="Rothikgen"; - xx=tx-1310; - yy=ty-1256; - } - if (tx>-635&&tx<68&&ty>2344&&ty<2847) - { - cont="Lucentium"; - xx=tx+635; - yy=ty-2344; - } - if (tx>-1211&&tx<-669&&ty>819&&ty<1352) - { - cont="Desolathya"; - xx=tx+1211; - yy=ty-819; - } - if (tx>2066&&tx<2238&&ty>-912&&ty<-825) - { - cont="Renardy"; - xx=tx-2068; - yy=ty+910; - } - document.getElementById("xcoord").innerHTML=xx; - document.getElementById("ycoord").innerHTML=yy; - document.getElementById("continent").innerHTML=cont; -}); -
--- a/mapstyle.css Fri May 29 01:43:46 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,89 +0,0 @@ -body { - background: #acc; -} - -#footer { - background: #8aa; - position: absolute; - bottom: 0px; - height: 1.5em; - left: 0px; - right: 300px; - padding-top: 0.25em; - padding-left: 0.25em; - margin: 0px; -} - -#sidebar { - background-color: #8aa; - background-image: url(slide.jpg); - background-repeat: repeat-x; - position: absolute; - right: 0px; - top: 3em; - bottom: 0px; - width: 290px; - padding: 0px; - margin: 0px; - -} - -#sidecontent { - width: 100%; - height: 100%; - padding: 0px; - margin: 0px; -} - -#sidecoll { - width: 8px; - position : absolute; - right: 290px; - top: 3em; - bottom: 0px; - min-height: 50px; - background-color: #8aa; - background-repeat: repeat-x; - background-image: url(slide.jpg); - padding-left: 1px; - padding-right: 1px; - padding-top: 0px; - padding-bottom: 0px; - margin: 0px; - } - -#collbuttondiv { - position: relative; - width: auto; - height: 16px; - top: 50%; - margin-top: -8px; - padding: 0px; - -} - -#collbutton { - border: 0px; -} - -#header { - background: #cee; - position: absolute; - left: 0px; - right: 0px; - top: 0px; - height: 3em; - padding-left: 0.25em; - padding-top: 0.25em; -} - -#map { - position: absolute; - left: 0px; - top: 3em; - right: 300px; - bottom: 1.5em; - padding: 0px; - margin: 0px; -} -
--- a/markers.js Fri May 29 01:43:46 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,75 +0,0 @@ -function createMarker(point,name, html,icon,type,continent,sidebar) { - var marker = new GMarker(point,{icon:icon}); - GEvent.addListener(marker,"click",function() { - marker.openInfoWindowHtml("<div style=\"color:#000;\">"+html+"</div>"); - }); - gmarkers[i]=point; - if (sidebar=="builtin") { - builtin_type[bi]=type; - builtin_cont[bi]=continent; - side_builtin_html += '<span id="marker'+bi+'"><a href="javascript:myclick(' + i + ')">' + name + '</a><br></span>'; - bi++; - } - if (sidebar=="private") side_private_html += '<a href="javascript:myclick(' + i + ')">' + name + '</a><br>'; - if (sidebar=="public") side_public_html += '<a href="javascript:myclick(' + i + ')">' + name + '</a><br>'; - - i++; - return marker; -} - -var mgr = new GMarkerManager(map); -var areas=[]; -var tlane=[]; -var gmarkers=[]; -var i; -var bi; -var builtin_type= []; -var builtin_cont= []; -var side_builtin_html; - -GDownloadUrl("markers.xml", function(data,responseCode) { - var xml = GXml.parse(data); - var markers = xml.documentElement.getElementsByTagName("marker"); - for (var j = 0; j< markers.length; j++) { - var name = markers[j].getAttribute("name"); - var html = markers[j].getAttribute("html"); - var x = markers[j].getAttribute("x"); - var y = markers[j].getAttribute("y"); - var type = markers[j].getAttribute("type"); - if (type=="") type="default"; - if (name.indexOf('FERRY')==0) type="ferry"; - if (name.indexOf('CITY')==0) type="city"; - var continent=markers[j].getAttribute("continent"); - var p = proj.fromPixelToLatLng(new GPoint(x*2+1,y*2+1),7); - var marker=createMarker(p,name,html,icons[type],type,continent,"builtin"); - if (areas[type]==undefined) areas[type]=[]; - areas[type].push(marker); - } - mgr.addMarkers(areas["default"],7,11); - mgr.addMarkers(areas["pcity"],7,11); - mgr.addMarkers(areas["guild"],6,11); - mgr.addMarkers(areas["shrine"],7,11); - mgr.addMarkers(areas["ferry"],4,11); - mgr.addMarkers(areas["city"],4,11); - mgr.refresh(); -}); - -GDownloadUrl("tradelane.xml", function(data,responseCode) { - var xml = GXml.parse(data); - var markers = xml.documentElement.getElementsByTagName("marker"); - for (var j = 0; j< markers.length; j++) { - var name = markers[j].getAttribute("name"); - var html = markers[j].getAttribute("html"); - var x = markers[j].getAttribute("x"); - var y = markers[j].getAttribute("y"); - var type = markers[j].getAttribute("type"); - if (type=="") type="default"; - var continent=markers[j].getAttribute("continent"); - var p = proj.fromPixelToLatLng(new GPoint(x*2+1,y*2+1),7); - var marker=createMarker(p,name,html,icons[type],type,continent,"builtin"); - if (areas[type]==undefined) areas[type]=[]; - areas[type].push(marker); - } - mgr.addMarkers(areas["tradelane"],5,11); - mgr.refresh(); -});
--- a/nav.js Fri May 29 01:43:46 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -var collapsed=0; - -function docoll() -{ - if (collapsed==0) - { - document.getElementById("sidebar").style.display="none"; - document.getElementById("sidecoll").style.right="0px"; - document.getElementById("footer").style.right="0px"; - document.getElementById("map").style.right="8px"; - document.getElementById("collbutton").src="left.gif"; - collapsed=1; - } - else - { - document.getElementById("sidebar").style.display=""; - document.getElementById("sidecoll").style.right="290px"; - document.getElementById("footer").style.right="300px"; - document.getElementById("map").style.right="300px"; - document.getElementById("collbutton").src="right.gif"; - collapsed=0; - } -}