From 9035e966f1445e61b01f1dd032f9decc55a6a379 Mon Sep 17 00:00:00 2001 From: vita10gy Date: Sat, 23 Feb 2013 16:01:38 -0600 Subject: [PATCH] Portal Weakness Colors --- plugins/README.md | 2 +- plugins/show-portal-weakness.user.js | 44 ++++++++++++++++------------ 2 files changed, 27 insertions(+), 19 deletions(-) diff --git a/plugins/README.md b/plugins/README.md index 25d781fd..db11bac2 100644 --- a/plugins/README.md +++ b/plugins/README.md @@ -12,7 +12,7 @@ Available Plugins - [**Compute AP Stats**](https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/compute-ap-stats.user.js) Shows the potential AP an agent could obtain by destroying and rebuilding all the portals in the current zoom area. - [**Draw Tools**](https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/draw-tools.user.js) allows to draw circles and lines on the map to aid you with planning your next big field. [View screenshot](http://breunigs.github.com/ingress-intel-total-conversion/screenshots/plugin_draw_tools.png) - [**Guess Player Level**](https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/guess-player-levels.user.js) looks for the highest placed resonator per player in the current view to guess the player level. -- [**Highlight Weakened Portals**](https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/show-portal-weakness.user.js) fill portals with red to indicate portal's state of disrepair. The brighter the color the more attention needed (recharge, shields, resonators). A dashed portal means a resonator is missing. +- [**Highlight Weakened Portals**](https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/show-portal-weakness.user.js) fill portals with red to indicate portal's state of disrepair. The brighter the color the more attention needed (recharge, shields, resonators). A dashed portal means a resonator is missing. Red, needs energy and shields. Orange, only needs energy (either recharge or resonators). Yellow, only needs shields. - [**Player Tracker**](https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/player-tracker.user.js) Draws trails for user actions in the last hour. At the last known location there’s a tooltip that shows the data in a table. [View screenshot](http://breunigs.github.com/ingress-intel-total-conversion/screenshots/plugin_player_tracker.png). - [**Render Limit Increase**](https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/render-limit-increase.user.js) increases render limits. Good for high density areas (e.g. London, UK) and faster PCs. - [**Resonator Display Zoom Level Decrease**](https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/resonator-display-zoom-level-decrease.user.js) Resonator start displaying earlier. diff --git a/plugins/show-portal-weakness.user.js b/plugins/show-portal-weakness.user.js index 332605d8..d52ac658 100644 --- a/plugins/show-portal-weakness.user.js +++ b/plugins/show-portal-weakness.user.js @@ -1,11 +1,11 @@ // ==UserScript== // @id iitc-plugin-show-portal-weakness@vita10gy // @name iitc: show portal weakness -// @version 0.2 +// @version 0.3 // @namespace https://github.com/breunigs/ingress-intel-total-conversion // @updateURL https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/show-portal-weakness.user.js // @downloadURL https://raw.github.com/breunigs/ingress-intel-total-conversion/gh-pages/plugins/show-portal-weakness.user.js -// @description Uses the fill color of the portals to denote if the portal is weak (Needs recharging, missing a resonator, needs shields) +// @description Uses the fill color of the portals to denote if the portal is weak (Needs recharging, missing a resonator, needs shields) Red, needs energy and shields. Orange, only needs energy (either recharge or resonators). Yellow, only needs shields. // @include http://www.ingress.com/intel* // @match http://www.ingress.com/intel* // ==/UserScript== @@ -24,26 +24,26 @@ window.plugin.portalWeakness.portalAdded = function(data) { var d = data.portal.options.details; var portal_weakness = 0; - if(getTeam(d) != 0) - { - if(window.getTotalPortalEnergy(d)> 0 && window.getCurrentPortalEnergy(d) < window.getTotalPortalEnergy(d)) - { + if(getTeam(d) != 0) { + var only_shields = true; + var missing_shields = 0; + if(window.getTotalPortalEnergy(d)> 0 && window.getCurrentPortalEnergy(d) < window.getTotalPortalEnergy(d)) { portal_weakness = 1 - (window.getCurrentPortalEnergy(d)/window.getTotalPortalEnergy(d)); + only_shields = false; } //Ding the portal for every missing sheild. - $.each(d.portalV2.linkedModArray, function(ind, mod) - { - if(mod == null) - { - portal_weakness += .03; + $.each(d.portalV2.linkedModArray, function(ind, mod) { + if(mod == null) { + missing_shields++; + portal_weakness += .08; } }); //Ding the portal for every missing resonator. var resCount = 0; - $.each(d.resonatorArray.resonators, function(ind, reso) - { + $.each(d.resonatorArray.resonators, function(ind, reso) { if(reso == null) { portal_weakness += .125; + only_shields = false; } else { resCount++; @@ -57,11 +57,19 @@ window.plugin.portalWeakness.portalAdded = function(data) { portal_weakness = 1; } - if(portal_weakness>0) - { - var color = 'red'; - var fill_opacity = Math.round((portal_weakness*.8 + .2)*100)/100; - var params = {fillColor: color, fillOpacity: fill_opacity, radius: data.portal.options.radius+1}; + if(portal_weakness>0) { + var fill_opacity = portal_weakness*.7 + .3; + var color = 'orange'; + if(only_shields) { + color = 'yellow'; + //If only shields are missing, make portal yellow, but fill more than usual since pale yellow is basically invisible + fill_opacity = missing_shields*.15 + .1; + } + else if(missing_shields>0) { + color = 'red'; + } + fill_opacity = Math.round(fill_opacity*100)/100; + var params = {fillColor: color, fillOpacity: fill_opacity}; if(resCount<8) { // Hole per missing resonator