Merge pull request #284 from vita10gy/weak-colors
Portal Weakness Colors
This commit is contained in:
commit
6e6060876d
@ -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.
|
- [**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)
|
- [**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.
|
- [**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).
|
- [**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.
|
- [**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.
|
- [**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.
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
// ==UserScript==
|
// ==UserScript==
|
||||||
// @id iitc-plugin-show-portal-weakness@vita10gy
|
// @id iitc-plugin-show-portal-weakness@vita10gy
|
||||||
// @name iitc: show portal weakness
|
// @name iitc: show portal weakness
|
||||||
// @version 0.2
|
// @version 0.3
|
||||||
// @namespace https://github.com/breunigs/ingress-intel-total-conversion
|
// @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
|
// @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
|
// @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*
|
// @include http://www.ingress.com/intel*
|
||||||
// @match http://www.ingress.com/intel*
|
// @match http://www.ingress.com/intel*
|
||||||
// ==/UserScript==
|
// ==/UserScript==
|
||||||
@ -24,46 +24,51 @@ window.plugin.portalWeakness.portalAdded = function(data) {
|
|||||||
|
|
||||||
var d = data.portal.options.details;
|
var d = data.portal.options.details;
|
||||||
var portal_weakness = 0;
|
var portal_weakness = 0;
|
||||||
if(getTeam(d) != 0)
|
if(getTeam(d) !== 0) {
|
||||||
{
|
var only_shields = true;
|
||||||
if(window.getTotalPortalEnergy(d)> 0 && window.getCurrentPortalEnergy(d) < window.getTotalPortalEnergy(d))
|
var missing_shields = 0;
|
||||||
{
|
if(window.getTotalPortalEnergy(d) > 0 && window.getCurrentPortalEnergy(d) < window.getTotalPortalEnergy(d)) {
|
||||||
portal_weakness = 1 - (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.
|
//Ding the portal for every missing sheild.
|
||||||
$.each(d.portalV2.linkedModArray, function(ind, mod)
|
$.each(d.portalV2.linkedModArray, function(ind, mod) {
|
||||||
{
|
if(mod === null) {
|
||||||
if(mod == null)
|
missing_shields++;
|
||||||
{
|
portal_weakness += .08;
|
||||||
portal_weakness += .03;
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
//Ding the portal for every missing resonator.
|
//Ding the portal for every missing resonator.
|
||||||
var resCount = 0;
|
var resCount = 0;
|
||||||
$.each(d.resonatorArray.resonators, function(ind, reso)
|
$.each(d.resonatorArray.resonators, function(ind, reso) {
|
||||||
{
|
if(reso === null) {
|
||||||
if(reso == null) {
|
|
||||||
portal_weakness += .125;
|
portal_weakness += .125;
|
||||||
}
|
only_shields = false;
|
||||||
else {
|
} else {
|
||||||
resCount++;
|
resCount++;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
if(portal_weakness < 0) {
|
if(portal_weakness < 0) {
|
||||||
portal_weakness = 0;
|
portal_weakness = 0;
|
||||||
}
|
}
|
||||||
if(portal_weakness>1)
|
if(portal_weakness > 1) {
|
||||||
{
|
|
||||||
portal_weakness = 1;
|
portal_weakness = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(portal_weakness>0)
|
if(portal_weakness > 0) {
|
||||||
{
|
var fill_opacity = portal_weakness*.7 + .3;
|
||||||
var color = 'red';
|
var color = 'orange';
|
||||||
var fill_opacity = Math.round((portal_weakness*.8 + .2)*100)/100;
|
if(only_shields) {
|
||||||
var params = {fillColor: color, fillOpacity: fill_opacity, radius: data.portal.options.radius+1};
|
color = 'yellow';
|
||||||
if(resCount<8)
|
//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
|
// Hole per missing resonator
|
||||||
var dash = new Array(8-resCount + 1).join("1,4,") + "100,0"
|
var dash = new Array(8-resCount + 1).join("1,4,") + "100,0"
|
||||||
params["dashArray"] = dash;
|
params["dashArray"] = dash;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user