Update player-tracker to spiderfy players when they are close or stacked
This commit is contained in:
parent
ee4be2503e
commit
c7e94a1a25
@ -31,6 +31,10 @@ window.plugin.playerTracker.setup = function() {
|
|||||||
plugin.playerTracker.drawnTraces = new L.LayerGroup();
|
plugin.playerTracker.drawnTraces = new L.LayerGroup();
|
||||||
window.layerChooser.addOverlay(plugin.playerTracker.drawnTraces, 'Player Tracker');
|
window.layerChooser.addOverlay(plugin.playerTracker.drawnTraces, 'Player Tracker');
|
||||||
map.addLayer(plugin.playerTracker.drawnTraces);
|
map.addLayer(plugin.playerTracker.drawnTraces);
|
||||||
|
window.plugin.playerTracker.oms = new OverlappingMarkerSpiderfier(map);
|
||||||
|
window.plugin.playerTracker.oms.legColors = {'usual': '#FFFF00', 'highlighted': '#FF0000'};
|
||||||
|
window.plugin.playerTracker.oms.legWeight = 3.5;
|
||||||
|
|
||||||
addHook('publicChatDataAvailable', window.plugin.playerTracker.handleData);
|
addHook('publicChatDataAvailable', window.plugin.playerTracker.handleData);
|
||||||
|
|
||||||
window.map.on('zoomend', function() {
|
window.map.on('zoomend', function() {
|
||||||
@ -237,10 +241,11 @@ window.plugin.playerTracker.drawData = function() {
|
|||||||
|
|
||||||
// marker itself
|
// marker itself
|
||||||
var icon = playerData.team === 'ALIENS' ? new window.iconEnl() : new window.iconRes();
|
var icon = playerData.team === 'ALIENS' ? new window.iconEnl() : new window.iconRes();
|
||||||
var m = L.marker(gllfe(last), {title: title, clickable: false, icon: icon});
|
var m = L.marker(gllfe(last), {title: title, icon: icon});
|
||||||
// ensure tooltips are closed, sometimes they linger
|
// ensure tooltips are closed, sometimes they linger
|
||||||
m.on('mouseout', function() { $(this._icon).tooltip('close'); });
|
m.on('mouseout', function() { $(this._icon).tooltip('close'); });
|
||||||
m.addTo(layer);
|
m.addTo(layer);
|
||||||
|
window.plugin.playerTracker.oms.addMarker(m);
|
||||||
// jQueryUI doesn’t automatically notice the new markers
|
// jQueryUI doesn’t automatically notice the new markers
|
||||||
window.setupTooltips($(m._icon));
|
window.setupTooltips($(m._icon));
|
||||||
});
|
});
|
||||||
@ -270,6 +275,7 @@ window.plugin.playerTracker.handleData = function(data) {
|
|||||||
plugin.playerTracker.drawnTraces.eachLayer(function(layer) {
|
plugin.playerTracker.drawnTraces.eachLayer(function(layer) {
|
||||||
if(layer._icon) $(layer._icon).tooltip('destroy');
|
if(layer._icon) $(layer._icon).tooltip('destroy');
|
||||||
});
|
});
|
||||||
|
window.plugin.playerTracker.oms.clearMarkers();
|
||||||
plugin.playerTracker.drawnTraces.clearLayers();
|
plugin.playerTracker.drawnTraces.clearLayers();
|
||||||
plugin.playerTracker.drawData();
|
plugin.playerTracker.drawData();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user