plugin: fix portal-highlighter-needs-recharge

also added colour variations to indicate severity at a glance
This commit is contained in:
Jon Atkins 2013-12-01 01:24:45 +00:00
parent 8a6320c44b
commit 436eefd44a

View File

@ -2,11 +2,11 @@
// @id iitc-plugin-highlight-needs-recharge@vita10gy // @id iitc-plugin-highlight-needs-recharge@vita10gy
// @name IITC plugin: hightlight portals that need recharging // @name IITC plugin: hightlight portals that need recharging
// @category Highlighter // @category Highlighter
// @version 0.1.0.@@DATETIMEVERSION@@ // @version 0.1.1.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion // @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@ // @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@ // @downloadURL @@DOWNLOADURL@@
// @description [@@BUILDNAME@@-@@BUILDDATE@@] Uses the fill color of the portals to denote if the portal needs recharging // @description [@@BUILDNAME@@-@@BUILDDATE@@] Uses the fill color of the portals to denote if the portal needs recharging. Colours also indicate severity: yellow: above 85%, orange: above 50%, red: above 15%, magenta: below 15%
// @include https://www.ingress.com/intel* // @include https://www.ingress.com/intel*
// @include http://www.ingress.com/intel* // @include http://www.ingress.com/intel*
// @match https://www.ingress.com/intel* // @match https://www.ingress.com/intel*
@ -22,23 +22,23 @@
window.plugin.portalHighligherNeedsRecharge = function() {}; window.plugin.portalHighligherNeedsRecharge = function() {};
window.plugin.portalHighligherNeedsRecharge.highlight = function(data) { window.plugin.portalHighligherNeedsRecharge.highlight = function(data) {
var d = data.portal.options.details; var d = data.portal.options.data;
var portal_weakness = 0; var portal_health = d.health/100;
if(getTeam(d) !== 0) { if(portal_health > 0 && portal_health < 1) {
if(window.getTotalPortalEnergy(d) > 0 && window.getCurrentPortalEnergy(d) < window.getTotalPortalEnergy(d)) { var fill_opacity = (1-portal_health)*.85 + .15;
portal_weakness = 1 - (window.getCurrentPortalEnergy(d)/window.getTotalPortalEnergy(d)); var color;
} if (portal_health > .85) color = 'yellow';
if(portal_weakness > 0) { else if (portal_health > .5) color = 'orange';
var fill_opacity = portal_weakness*.85 + .15; else if (portal_health > .15) color = 'red';
color = 'red'; else color = 'magenta';
var params = {fillColor: color, fillOpacity: fill_opacity};
data.portal.setStyle(params); var params = {fillColor: color, fillOpacity: fill_opacity};
} data.portal.setStyle(params);
} }
} }
var setup = function() { var setup = function() {
window.addPortalHighlighter('Needs Recharge', window.plugin.portalHighligherNeedsRecharge.highlight); window.addPortalHighlighter('Needs Recharge (Health)', window.plugin.portalHighligherNeedsRecharge.highlight);
} }
// PLUGIN END ////////////////////////////////////////////////////////// // PLUGIN END //////////////////////////////////////////////////////////