Template:Fragoria Map

From FragoriaWiki

(Difference between revisions)
Jump to: navigation, search
 
(201 intermediate revisions not shown)
Line 1: Line 1:
<html>
<html>
-
        <title>Fragoria Map</title>   
 
-
<link rel="stylesheet" href="/maps/documentation/javascript/examples/default.css" /> 
 
<link rel="stylesheet" href="/maptiles/noimageshadow.css">
<link rel="stylesheet" href="/maptiles/noimageshadow.css">
-
<script src="/maptiles/js?v=3.exp&sensor=false"></script>
 
-
<script>
+
<script type="text/javascript" src="/maptiles/js?v=3.exp&sensor=false"></script>
-
var moonTypeOptions = {
+
<script type="text/javascript" src="/mapdata/markerwithlabel.js"></script>
-
        getTileUrl: function(coord, zoom) {
+
<script type="text/javascript" src="/wiki/skins/common/fmap.js"></script>
-
var normalizedCoord = getNormalizedCoord(coord, zoom);
+
-
if (!normalizedCoord) {
+
-
return null;
+
-
            }
+
-
            var bound = Math.pow(2, zoom);
+
-
            return '/maptiles/' + zoom + '/' + normalizedCoord.y + '_' + normalizedCoord.x + '.jpg';
+
-
        },
+
-
        tileSize: new google.maps.Size(256, 256),
+
-
        maxZoom: 3,
+
-
        minZoom: 1,
+
-
        radius: 1738000,
+
-
        name: 'Fragoria'
+
-
};
+
-
 
+
-
var moonMapType = new google.maps.ImageMapType(moonTypeOptions);
+
-
 
+
-
function initialize() {
+
-
var Fragotown = new google.maps.LatLng(-89.623848,33.001326);
+
-
var mapOptions = {
+
-
center: Fragotown,
+
-
zoom: 4,
+
-
streetViewControl: false,
+
-
mapTypeControlOptions: {
+
-
mapTypeIds: ['moon']
+
-
}
+
-
};
+
-
var map = new google.maps.Map(document.getElementById('map_canvas'),
+
-
mapOptions);
+
-
map.mapTypes.set('moon', moonMapType);
+
-
map.setMapTypeId('moon');
+
-
 
+
-
// Bounds
+
-
var strictBounds = new google.maps.LatLngBounds(
+
-
new google.maps.LatLng(-89.957,-65),
+
-
new google.maps.LatLng(65,65)
+
-
);
+
-
// Listen for the CENTER_CHANGED event
+
-
google.maps.event.addListener(map, 'center_changed', function() {
+
-
if (strictBounds.contains(map.getCenter())) return;
+
-
// We're out of bounds - Move the map back within the bounds
+
-
var c = map.getCenter(),
+
-
x = c.lng(),
+
-
y = c.lat(),
+
-
maxX = strictBounds.getNorthEast().lng(),
+
-
maxY = strictBounds.getNorthEast().lat(),
+
-
minX = strictBounds.getSouthWest().lng(),
+
-
minY = strictBounds.getSouthWest().lat();
+
-
if (x < minX) x = minX;
+
-
if (x > maxX) x = maxX;
+
-
if (y < minY) y = minY;
+
-
if (y > maxY) y = maxY;
+
-
map.setCenter(new google.maps.LatLng(y, x));
+
-
});
+
-
// Limit the zoom level
+
-
google.maps.event.addListener(map, 'zoom_changed', function() {
+
-
if (map.getZoom() < minZoomLevel) map.setZoom(minZoomLevel);
+
-
});
+
-
 
+
-
setMarkers (map, dungeons);
+
-
+
-
var FragotownMarker = new google.maps.Marker({
+
-
position: new google.maps.LatLng(-89.623848,33.001326),
+
-
map: map,
+
-
draggable:true,
+
-
optimized: false,
+
-
title:"Fragotown"
+
-
});
+
-
 
+
-
 
+
-
+
-
//Report Coordinates
+
-
google.maps.event.addListener(FragotownMarker, 'dragend', function(evt){
+
-
document.getElementById('current').innerHTML = '(' + evt.latLng.lat().toFixed(6) + ',' + evt.latLng.lng().toFixed(6) + ')</p>';
+
-
});
+
-
google.maps.event.addListener(FragotownMarker, 'dragstart', function(evt){
+
-
document.getElementById('current').innerHTML = '<p>Locating...</p>';
+
-
});
+
-
}
+
-
 
+
-
// Normalizes the coords that tiles repeat across the x axis (horizontally)
+
-
// like the standard Google map tiles.
+
-
function getNormalizedCoord(coord, zoom) {
+
-
var y = coord.y;
+
-
var x = coord.x;
+
-
// tile range in one direction range is dependent on zoom level
+
-
// 0 = 1 tile, 1 = 2 tiles, 2 = 4 tiles, 3 = 8 tiles, etc
+
-
var tileRange = 2 << zoom;
+
-
// repeat across y-axis (vertically)
+
-
if (y < 0 || y >= tileRange) {
+
-
// y = (y % tileRange + tileRange) % tileRange;
+
-
return null;
+
-
}
+
-
// repeat across x-axis
+
-
if (x < 0 || x >= tileRange) {
+
-
x = (x % tileRange + tileRange) % tileRange;
+
-
// return null;
+
-
}
+
-
return {
+
-
x: x,
+
-
y: y
+
-
};
+
-
 
+
-
}
+
-
+
-
var dungeons = [
+
-
['Dark Konung's Tomb',-89.128166,16.829451,2],
+
-
['Robber's Vault',-89.089905,47.766951,3],
+
-
['Savage Dens',-89.221718,29.309920,4],
+
-
['Wolf's Lair',-89.931470,45.657576,5],
+
-
['Castle Pantry',-89.870076,-49.527971,6],
+
-
['Poisoned Spring',-89.848769,-88.551408,7],
+
-
['Robber's Camp',-88.900931,-51.901018,8],
+
-
['Underwater Temple / Grandmother's Cave',-87.884290,-87.760393,9],
+
-
['Yard of the Red Witch',-82.335838,-100.152971,10],
+
-
['Abandoned Bonekeep',-62.927026,-64.293596,11],
+
-
['White Worm's Lair',24.423564,-113.072893,12],
+
-
['Winter Castle',32.450837,-79.059221,13],
+
-
['Gates of Night',65.319363,-104.108049,14],
+
-
['Prison of the Ancient Gods',67.329878,-103.844377,15]
+
-
];
+
-
+
-
function setMarkers(map, locations) {
+
-
var image = {
+
-
url: '/wiki/images/c/c3/Greendungeon.png',
+
-
size: new google.maps.Size(21, 20), /* Marker size (pixel width, pixel length) */
+
-
origin: new google.maps.Point(10.5,10), /* Image origin */
+
-
anchor: new google.maps.Point(10.5, 10) /* Point affixed onto map */
+
-
};
+
-
var shape = {
+
-
coords: [0, 0, 0, 20, 21, 20 , 20, 0], /* Clickable region of map. Increases X to the right and Y down. */
+
-
type: 'poly'
+
-
};
+
-
for (var i = 0; i < locations.length; i++) {
+
-
var dungeon = locations[i];
+
-
var myLatLng = new google.maps.LatLng(dungeon[1], dungeon[2]);
+
-
var marker = new google.maps.Marker({
+
-
position: myLatLng,
+
-
map: map,
+
-
icon: image,
+
-
shape: shape,
+
-
title: dungeon[0],
+
-
zIndex: dungeon[3]
+
-
});
+
-
}
+
-
}
+
-
 
+
-
google.maps.event.addDomListener(window, 'load', initialize);
+
 +
<style>
 +
    .maplabels {
 +
        color: #000;
 +
//        font-family: 'Comic Sans MS', cursive, sans-serif;
 +
        line-height: 1em;
 +
        font-size: 13px;
 +
        text-shadow: 0px 0px 2px white;
 +
        font-weight: bold;
 +
        border: 0px solid black;
 +
        background: transparent url('/wiki/images/e/eb/Backgroundgradient.png');
 +
        background-size: 100% 100%;
 +
        background: radial-gradient(white, rgba(255, 255, 255, .6), rgba(255, 255, 255, .0), rgba(255, 255, 255, 0));
 +
    }
 +
</style>
 +
<script>
 +
$('.map_canvas').css('width', '100%').css('width', '+=1px');
</script>
</script>
-
 
-
<body onload="initialize()"> 
 
<center>
<center>
-
<div id="current">&nbsp;</div>
+
<div>
-
<div style="box-shadow: 2px 2px 5px #999999;border: 1px solid black;width: 97%; height: 610px;background-image:url('/wiki/images/1/1f/Background.jpg');" id="map_canvas">
+
<div style="border:33px solid transparent;border-image: url(/wiki/images/d/d9/Mapborder.png) 36 round;z-index:9999999999;">
-
</div>
+
    <div style="border:1px solid black;border-radius: 18px;border: width: 100%; height: 530px;background-image:url('/wiki/images/1/1f/Background.jpg');margin: -23px -24px -24px -24px;" id="map_canvas">
 +
    </div></div>
 +
    <div id="current">&nbsp;</div>
 +
    <input type="button" value="Show All" onclick="showallMarkers();showallPolylines(999);">
 +
    <input type="button" value="Road Stones" onclick="displayMarkers(100);showallPolylines(999);">
 +
    <input type="button" value="Green Dungeons" onclick="displayMarkers(10);hideallPolylines();">
 +
    <input type="button" value="Red Dungeons" onclick="displayMarkers(20);hideallPolylines();">
 +
    <input type="button" value="Hide All" onclick="hideallMarkers();hideallPolylines();">
</center>
</center>
-
</body>
+
 
</html>
</html>

Current revision as of 10:31, 25 April 2015

 

Personal tools
Date/Time
Server & Cross

Super-Cross Server