63 lines
1.9 KiB
JavaScript
Raw Normal View History

2019-02-01 12:46:38 +01:00
'use strict';
2019-01-20 19:50:24 +01:00
2019-02-01 12:46:38 +01:00
api.getConfig().then(function(cfg){
2019-01-20 19:50:24 +01:00
2019-02-01 12:46:38 +01:00
var wsChannel = new WebSocketChannel();
wsChannel.connect();
2019-01-29 21:07:29 +01:00
2019-02-01 12:46:38 +01:00
var initialZoom = 11;
var initialCenter = [0, 0];
2019-01-22 20:19:04 +01:00
2019-02-01 12:46:38 +01:00
var map = L.map('image-map', {
minZoom: 2,
maxZoom: 12,
center: initialCenter,
zoom: initialZoom,
2019-02-01 13:20:50 +01:00
crs: SimpleCRS
2019-02-01 12:46:38 +01:00
});
2019-01-29 18:00:00 +01:00
2019-02-02 17:28:35 +01:00
map.attributionControl.addAttribution('<a href="https://github.com/thomasrudin-mt/mapserver">Minetest Mapserver</a>');
2019-01-29 18:08:54 +01:00
2019-02-01 12:46:38 +01:00
var layers = {};
var overlays = {}
2019-01-20 19:50:24 +01:00
2019-02-01 13:20:50 +01:00
var layerMgr = new LayerManager(cfg.layers, map);
var tileLayer = new RealtimeTileLayer(wsChannel, 0);
2019-02-01 12:46:38 +01:00
tileLayer.addTo(map);
2019-01-20 19:50:24 +01:00
2019-02-07 07:56:52 +01:00
//TODO: all layers
2019-02-01 12:46:38 +01:00
layers["Base"] = tileLayer;
2019-02-07 07:56:52 +01:00
overlays["Player"] = new PlayerOverlay(wsChannel, layerMgr);
overlays["POI"] = new PoiOverlay(wsChannel, layerMgr);
2019-02-08 15:12:40 +01:00
overlays["Labels"] = new LabelOverlay(wsChannel, layerMgr);
2019-02-01 13:20:50 +01:00
overlays["Travelnet"] = new TravelnetOverlay(wsChannel, layerMgr);
2019-02-12 13:40:33 +01:00
if (cfg.mapobjects.bones) {
overlays["Bones"] = new BonesOverlay(wsChannel, layerMgr);
}
2019-02-08 08:48:34 +01:00
overlays["Digilines LCD"] = new LcdOverlay(wsChannel, layerMgr);
2019-02-08 10:07:59 +01:00
overlays["Digiterms"] = new DigitermOverlay(wsChannel, layerMgr);
overlays["Lua Controller"] = new LuacontrollerOverlay(wsChannel, layerMgr);
2019-02-08 10:13:27 +01:00
overlays["Technic Anchor"] = new TechnicAnchorOverlay(wsChannel, layerMgr);
2019-02-08 13:35:56 +01:00
overlays["Technic Quarry"] = new TechnicQuarryOverlay(wsChannel, layerMgr);
2019-02-08 15:40:30 +01:00
overlays["Technic Switching station"] = new TechnicSwitchOverlay(wsChannel, layerMgr);
2019-02-08 14:35:29 +01:00
overlays["Protector"] = new ProtectorOverlay(wsChannel, layerMgr);
2019-02-08 15:25:37 +01:00
overlays["Missions"] = new MissionOverlay(wsChannel, layerMgr);
2019-01-29 18:08:54 +01:00
2019-02-08 08:27:10 +01:00
//Default enabled overlays
2019-02-07 19:01:00 +01:00
map.addLayer(overlays["Player"]);
2019-02-08 08:27:10 +01:00
map.addLayer(overlays["POI"]);
2019-02-08 15:12:40 +01:00
map.addLayer(overlays["Labels"]);
2019-02-05 21:17:14 +01:00
2019-02-01 12:46:38 +01:00
L.control.layers(layers, overlays).addTo(map);
2019-01-20 19:50:24 +01:00
2019-02-07 07:56:52 +01:00
new CoordinatesDisplay({ position: 'bottomleft' }).addTo(map);
new WorldInfoDisplay(wsChannel, { position: 'bottomright' }).addTo(map);
2019-02-04 21:25:30 +01:00
2019-02-04 21:15:00 +01:00
}).catch(function(e){
console.error(e);
2019-02-01 12:46:38 +01:00
});