Merge pull request #608 from fkloft/portal_details
Tweaks regarding portal details
This commit is contained in:
commit
94fd2a092b
@ -90,6 +90,17 @@ window.renderPortalDetails = function(guid) {
|
||||
portalDetailedDescription += '</table>';
|
||||
}
|
||||
|
||||
var levelDetails = getPortalLevel(d);
|
||||
if(levelDetails != 8) {
|
||||
if(levelDetails==Math.ceil(levelDetails))
|
||||
levelDetails += "\n8";
|
||||
else
|
||||
levelDetails += "\n" + (Math.ceil(levelDetails) - levelDetails)*8;
|
||||
levelDetails += " resonator level(s) needed for next portal level";
|
||||
} else {
|
||||
levelDetails += "\nfully upgraded";
|
||||
}
|
||||
levelDetails = "Level " + levelDetails;
|
||||
|
||||
$('#portaldetails')
|
||||
.attr('class', TEAM_TO_CSS[getTeam(d)])
|
||||
@ -98,7 +109,7 @@ window.renderPortalDetails = function(guid) {
|
||||
+ '<span class="close" onclick="renderPortalDetails(null); if(isSmartphone()) show(\'map\');" title="Close">X</span>'
|
||||
// help cursor via ".imgpreview img"
|
||||
+ '<div class="imgpreview" '+imgTitle+' style="background-image: url('+img+')">'
|
||||
+ '<span id="level">'+Math.floor(getPortalLevel(d))+'</span>'
|
||||
+ '<span id="level" title="'+levelDetails+'">'+Math.floor(getPortalLevel(d))+'</span>'
|
||||
+ '<div class="portalDetails">'+ portalDetailedDescription + '</div>'
|
||||
+ '<img class="hide" src="'+img+'"/></div>'
|
||||
+ '</div>'
|
||||
@ -134,9 +145,14 @@ window.setPortalIndicators = function(d) {
|
||||
|
||||
var range = getPortalRange(d);
|
||||
var coord = [d.locationE6.latE6/1E6, d.locationE6.lngE6/1E6];
|
||||
portalRangeIndicator = (range > 0
|
||||
? L.geodesicCircle(coord, range, { fill: false, color: RANGE_INDICATOR_COLOR, weight: 3, clickable: false })
|
||||
: L.circle(coord, range, { fill: false, stroke: false, clickable: false })
|
||||
portalRangeIndicator = (range.range > 0
|
||||
? L.geodesicCircle(coord, range.range, {
|
||||
fill: false,
|
||||
color: RANGE_INDICATOR_COLOR,
|
||||
weight: 3,
|
||||
dashArray: range.isLinkable ? undefined : "10,10",
|
||||
clickable: false })
|
||||
: L.circle(coord, range.range, { fill: false, stroke: false, clickable: false })
|
||||
).addTo(map);
|
||||
|
||||
portalAccessIndicator = L.circle(coord, HACK_RANGE,
|
||||
|
@ -5,11 +5,20 @@
|
||||
// returns displayable text+link about portal range
|
||||
window.getRangeText = function(d) {
|
||||
var range = getPortalRange(d);
|
||||
|
||||
var title = 'Base range:\t' + digits(Math.floor(range.base))+'m'
|
||||
+ '\nLink amp boost:\t×'+range.boost
|
||||
+ '\nRange:\t'+digits(Math.floor(range.range))+'m';
|
||||
|
||||
if(!range.isLinkable) title += '\nPortal is missing resonators,\nno new links can be made';
|
||||
|
||||
return ['range',
|
||||
'<a onclick="window.rangeLinkClick()">'
|
||||
+ (range > 1000
|
||||
? Math.floor(range/1000) + ' km'
|
||||
: Math.floor(range) + ' m')
|
||||
'<a onclick="window.rangeLinkClick()"'
|
||||
+ (range.isLinkable ? '' : ' style="text-decoration:line-through;"')
|
||||
+ ' title="'+title+'">'
|
||||
+ (range.range > 1000
|
||||
? Math.floor(range.range/1000) + ' km'
|
||||
: Math.floor(range.range) + ' m')
|
||||
+ '</a>'];
|
||||
}
|
||||
|
||||
|
@ -47,18 +47,20 @@ window.getPortalRange = function(d) {
|
||||
$.each(d.resonatorArray.resonators, function(ind, reso) {
|
||||
if(!reso) {
|
||||
resoMissing = true;
|
||||
return false;
|
||||
return;
|
||||
}
|
||||
lvl += parseInt(reso.level);
|
||||
});
|
||||
if(resoMissing) return 0;
|
||||
|
||||
var range = 160*Math.pow(getPortalLevel(d), 4);
|
||||
var range = {
|
||||
base: 160*Math.pow(getPortalLevel(d), 4),
|
||||
boost: getLinkAmpRangeBoost(d)
|
||||
};
|
||||
|
||||
var boost = getLinkAmpRangeBoost(d);
|
||||
|
||||
return range*boost;
|
||||
range.range = range.boost * range.base;
|
||||
range.isLinkable = !resoMissing;
|
||||
|
||||
return range;
|
||||
}
|
||||
|
||||
window.getLinkAmpRangeBoost = function(d) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user