diff --git a/code/entity_info.js b/code/entity_info.js
index 2d340976..4d1e4ba0 100644
--- a/code/entity_info.js
+++ b/code/entity_info.js
@@ -8,7 +8,7 @@
// given the entity detail data, returns the team the entity belongs
// to. Uses TEAM_* enum values.
window.getTeam = function(details) {
- return teamStringToId(details.controllingTeam && details.controllingTeam.team);
+ return teamStringToId(details.team);
}
window.teamStringToId = function(teamStr) {
diff --git a/code/portal_data.js b/code/portal_data.js
index 0caca9e1..6d687935 100644
--- a/code/portal_data.js
+++ b/code/portal_data.js
@@ -61,7 +61,7 @@ window.findPortalLatLng = function(guid) {
// not found in portals - try the cached (and possibly stale) details - good enough for location
var details = portalDetail.get(guid);
if (details) {
- return L.latLng (details.locationE6.latE6/1E6, details.locationE6.lngE6/1E6);
+ return L.latLng (details.latE6/1E6, details.lngE6/1E6);
}
// now try searching through fields
diff --git a/code/portal_detail_display.js b/code/portal_detail_display.js
index 92389ae3..c5e72641 100644
--- a/code/portal_detail_display.js
+++ b/code/portal_detail_display.js
@@ -28,9 +28,7 @@ window.renderPortalDetails = function(guid) {
// details and data can get out of sync. if we have details, construct a matching 'data'
if (details) {
- // the details had the team removed(!) - so we have to use the team in the summary data
- // however - this can easily be out of date in areas of heavy activity - so could be just plain wrong!
- data = getPortalSummaryData(details, data && data.team);
+ data = getPortalSummaryData(details);
}
@@ -42,7 +40,7 @@ window.renderPortalDetails = function(guid) {
var statusDetails = details ? '' : '
Loading details...
';
- var img = fixPortalImageUrl(details ? details.imageByUrl && details.imageByUrl.imageUrl : data.image);
+ var img = fixPortalImageUrl(details ? details.image : data.image);
var title = data.title;
var lat = data.latE6/1E6;
@@ -165,10 +163,8 @@ window.getPortalMiscDetails = function(guid,d) {
if (d) {
// collect some random data that’s not worth to put in an own method
- var links = {incoming: 0, outgoing: 0};
- $.each(d.portalV2.linkedEdges||[], function(ind, link) {
- links[link.isOrigin ? 'outgoing' : 'incoming']++;
- });
+ var linkInfo = getPortalLinks(guid);
+ var links = {incoming: linkInfo.in.length, outgoing: linkInfo.out.length};
function linkExpl(t) { return ''+t+''; }
var linksText = [linkExpl('links'), linkExpl(links.outgoing+' out / '+links.incoming+' in')];
@@ -189,6 +185,8 @@ window.getPortalMiscDetails = function(guid,d) {
var linkedFields = ['fields', fieldCount];
+ var linkCount = getPortalLinksCount(guid);
+
// collect and html-ify random data
var randDetailsData = [];
if (playerText && sinceText) {
@@ -197,9 +195,9 @@ window.getPortalMiscDetails = function(guid,d) {
randDetailsData.push (
getRangeText(d), getEnergyText(d),
- linksText, getAvgResoDistText(d),
- linkedFields, getAttackApGainText(d,fieldCount),
- getHackDetailsText(d), getMitigationText(d)
+ linksText, ['-','-'],
+ linkedFields, getAttackApGainText(d,fieldCount,linkCount),
+ getHackDetailsText(d), getMitigationText(d,linkCount)
);
// artifact details
diff --git a/code/portal_detail_display_tools.js b/code/portal_detail_display_tools.js
index e9bc3e7a..48e9496b 100644
--- a/code/portal_detail_display_tools.js
+++ b/code/portal_detail_display_tools.js
@@ -24,20 +24,22 @@ window.getRangeText = function(d) {
// generates description text from details for portal
window.getPortalDescriptionFromDetails = function(details) {
- var descObj = details.descriptiveText.map;
- // FIXME: also get real description?
- var desc = descObj.TITLE;
- if(descObj.ADDRESS)
- desc += '\n' + descObj.ADDRESS;
-// if(descObj.ATTRIBUTION)
-// desc += '\nby '+descObj.ATTRIBUTION+' ('+descObj.ATTRIBUTION_LINK+')';
- return desc;
+ return details.title || '(untitled)';
+
+// var descObj = details.descriptiveText.map;
+// // FIXME: also get real description?
+// var desc = descObj.TITLE;
+// if(descObj.ADDRESS)
+// desc += '\n' + descObj.ADDRESS;
+//// if(descObj.ATTRIBUTION)
+//// desc += '\nby '+descObj.ATTRIBUTION+' ('+descObj.ATTRIBUTION_LINK+')';
+// return desc;
}
// Grabs more info, including the submitter name for the current main
// portal image
window.getPortalDescriptionFromDetailsExtended = function(details) {
- var descObj = details.descriptiveText.map;
+ var descObj = details.title;
var photoStreamObj = details.photoStreamInfo;
var submitterObj = new Object();
@@ -79,7 +81,7 @@ window.getModDetails = function(d) {
var mods = [];
var modsTitle = [];
var modsColor = [];
- $.each(d.portalV2.linkedModArray, function(ind, mod) {
+ $.each(d.mods, function(ind, mod) {
var modName = '';
var modTooltip = '';
var modColor = '#000';
@@ -88,13 +90,7 @@ window.getModDetails = function(d) {
// all mods seem to follow the same pattern for the data structure
// but let's try and make this robust enough to handle possible future differences
- if (mod.displayName) {
- modName = mod.displayName;
- } else if (mod.type) {
- modName = mod.type;
- } else {
- modName = '(unknown mod)';
- }
+ modName = mod.name || '(unknown mod)';
if (mod.rarity) {
modName = mod.rarity.capitalize().replace(/_/g,' ') + ' ' + modName;
@@ -137,10 +133,12 @@ window.getModDetails = function(d) {
modsColor.push(modColor);
});
- var t = ''+mods[0]+''
- + ''+mods[1]+''
- + ''+mods[2]+''
- + ''+mods[3]+''
+
+ var t = '';
+ for (var i=0; i'+mods[i]+''
+ }
+
return t;
}
@@ -153,10 +151,6 @@ window.getEnergyText = function(d) {
return ['energy', '' + fill + ''];
}
-window.getAvgResoDistText = function(d) {
- var avgDist = Math.round(10*getAvgResoDist(d))/10;
- return ['res dist', avgDist + ' m'];
-}
window.getResonatorDetails = function(d) {
var resoDetails = [];
@@ -168,7 +162,7 @@ window.getResonatorDetails = function(d) {
// SW S
$.each([2, 1, 3, 0, 4, 7, 5, 6], function(ind, slot) {
- var reso = d.resonatorArray.resonators[slot];
+ var reso = d.resonators[slot];
if(!reso) {
resoDetails.push(renderResonatorDetails(slot, 0, 0, null, null));
return true;
@@ -176,13 +170,12 @@ window.getResonatorDetails = function(d) {
var l = parseInt(reso.level);
var v = parseInt(reso.energyTotal);
- var nick = reso.ownerGuid;
- var dist = reso.distanceToPortal;
+ var nick = reso.owner;
// if array order and slot order drift apart, at least the octant
// naming will still be correct.
- slot = parseInt(reso.slot);
+ slot = ind;
- resoDetails.push(renderResonatorDetails(slot, l, v, dist, nick));
+ resoDetails.push(renderResonatorDetails(slot, l, v, null, nick));
});
return '' + genFourColumnTable(resoDetails) + '
';
@@ -231,7 +224,7 @@ window.getAttackApGainText = function(d,fieldCount) {
function tt(text) {
var t = '';
- if (d.controllingTeam && PLAYER.team == d.controllingTeam.team) {
+ if (PLAYER.team == d.team) {
totalGain = breakdown.friendlyAp;
t += 'Friendly AP:\t' + breakdown.friendlyAp + '\n';
t += ' Deploy ' + breakdown.deployCount + ', ';
@@ -266,8 +259,8 @@ window.getHackDetailsText = function(d) {
}
-window.getMitigationText = function(d) {
- var mitigationDetails = getPortalMitigationDetails(d);
+window.getMitigationText = function(d,linkCount) {
+ var mitigationDetails = getPortalMitigationDetails(d,linkCount);
var mitigationShort = mitigationDetails.total;
if (mitigationDetails.excess) mitigationShort += ' (+'+mitigationDetails.excess+')';
diff --git a/code/portal_info.js b/code/portal_info.js
index 3db0288a..ccef2f25 100644
--- a/code/portal_info.js
+++ b/code/portal_info.js
@@ -7,7 +7,7 @@
window.getPortalLevel = function(d) {
var lvl = 0;
var hasReso = false;
- $.each(d.resonatorArray.resonators, function(ind, reso) {
+ $.each(d.resonators, function(ind, reso) {
if(!reso) return true;
lvl += parseInt(reso.level);
hasReso = true;
@@ -17,7 +17,7 @@ window.getPortalLevel = function(d) {
window.getTotalPortalEnergy = function(d) {
var nrg = 0;
- $.each(d.resonatorArray.resonators, function(ind, reso) {
+ $.each(d.resonators, function(ind, reso) {
if(!reso) return true;
var level = parseInt(reso.level);
var max = RESO_NRG[level];
@@ -31,7 +31,7 @@ window.getPortalEnergy = window.getTotalPortalEnergy;
window.getCurrentPortalEnergy = function(d) {
var nrg = 0;
- $.each(d.resonatorArray.resonators, function(ind, reso) {
+ $.each(d.resonators, function(ind, reso) {
if(!reso) return true;
nrg += parseInt(reso.energyTotal);
});
@@ -44,7 +44,7 @@ window.getPortalRange = function(d) {
var lvl = 0;
var resoMissing = false;
- $.each(d.resonatorArray.resonators, function(ind, reso) {
+ $.each(d.resonators, function(ind, reso) {
if(!reso) {
resoMissing = true;
return;
@@ -88,19 +88,7 @@ window.getLinkAmpRangeBoost = function(d) {
}
-window.getAvgResoDist = function(d) {
- var sum = 0, resos = 0;
- $.each(d.resonatorArray.resonators, function(ind, reso) {
- if(!reso) return true;
- var resDist = parseInt(reso.distanceToPortal);
- if (resDist == 0) resDist = 0.01; // set a non-zero but very small distance for zero deployment distance. allows the return value to distinguish between zero deployment distance average and zero resonators
- sum += resDist;
- resos++;
- });
- return resos ? sum/resos : 0;
-}
-
-window.getAttackApGain = function(d,fieldCount) {
+window.getAttackApGain = function(d,fieldCount,linkCount) {
if (!fieldCount) fieldCount = 0;
var resoCount = 0;
@@ -110,13 +98,12 @@ window.getAttackApGain = function(d,fieldCount) {
for(var n = PLAYER.level + 1; n < 9; n++) {
maxResonators[n] = 0;
}
- $.each(d.resonatorArray.resonators, function(ind, reso) {
+ $.each(d.resonators, function(ind, reso) {
if(!reso)
return true;
resoCount += 1;
var reslevel=parseInt(reso.level);
- // NOTE: reso.ownerGuid is actually the name - no player GUIDs are visible in the protocol any more
- if(reso.ownerGuid === PLAYER.nickname) {
+ if(reso.owner === PLAYER.nickname) {
if(maxResonators[reslevel] > 0) {
maxResonators[reslevel] -= 1;
}
@@ -125,8 +112,6 @@ window.getAttackApGain = function(d,fieldCount) {
}
});
- var linkCount = d.portalV2.linkedEdges ? d.portalV2.linkedEdges.length : 0;
-
var resoAp = resoCount * DESTROY_RESONATOR;
var linkAp = linkCount * DESTROY_LINK;
@@ -162,8 +147,8 @@ window.potentialPortalLevel = function(d) {
var current_level = getPortalLevel(d);
var potential_level = current_level;
- if(d.controllingTeam && PLAYER.team === d.controllingTeam.team) {
- var resonators_on_portal = d.resonatorArray.resonators;
+ if(PLAYER.team === d.team) {
+ var resonators_on_portal = d.resonators;
var resonator_levels = new Array();
// figure out how many of each of these resonators can be placed by the player
var player_resontators = new Array();
@@ -171,8 +156,7 @@ window.potentialPortalLevel = function(d) {
player_resontators[i] = i > PLAYER.level ? 0 : MAX_RESO_PER_PLAYER[i];
}
$.each(resonators_on_portal, function(ind, reso) {
- // NOTE: reso.ownerGuid is actually the player name - GUIDs are not in the protocol any more
- if(reso !== null && reso.ownerGuid === window.PLAYER.nickname) {
+ if(reso !== null && reso.owner === window.PLAYER.nickname) {
player_resontators[reso.level]--;
}
resonator_levels.push(reso === null ? 0 : reso.level);
@@ -217,7 +201,7 @@ window.fixPortalImageUrl = function(url) {
window.getPortalModsByType = function(d, type) {
var mods = [];
- $.each(d.portalV2.linkedModArray || [], function(i,mod) {
+ $.each(d.mods || [], function(i,mod) {
if (mod && mod.type == type) mods.push(mod);
});
@@ -264,16 +248,15 @@ window.getPortalShieldMitigation = function(d) {
return mitigation;
}
-window.getPortalLinksMitigation = function(d) {
- var links = (d.portalV2.linkedEdges||[]).length;
- var mitigation = Math.round(400/9*Math.atan(links/Math.E));
+window.getPortalLinksMitigation = function(linkCount) {
+ var mitigation = Math.round(400/9*Math.atan(linkCount/Math.E));
return mitigation;
}
-window.getPortalMitigationDetails = function(d) {
+window.getPortalMitigationDetails = function(d,linkCount) {
var mitigation = {
shields: getPortalShieldMitigation(d),
- links: getPortalLinksMitigation(d)
+ links: getPortalLinksMitigation(linkCount)
};
// mitigation is limited to 95% (as confirmed by Brandon Badger on G+)
@@ -311,16 +294,16 @@ window.getPortalHackDetails = function(d) {
}
// given a detailed portal structure, return summary portal data, as seen in the map tile data
-window.getPortalSummaryData = function(d,probableTeamStr) {
+window.getPortalSummaryData = function(d) {
// NOTE: the summary data reports unclaimed portals as level 1 - not zero as elsewhere in IITC
var level = parseInt(getPortalLevel(d));
if (level == 0) level = 1; //niantic returns neutral portals as level 1, not 0 as used throughout IITC elsewhere
var resCount = 0;
- if (d.resonatorArray && d.resonatorArray.resonators) {
- for (var x in d.resonatorArray.resonators) {
- if (d.resonatorArray.resonators[x]) resCount++;
+ if (d.resonators) {
+ for (var x in d.resonators) {
+ if (d.resonators[x]) resCount++;
}
}
var maxEnergy = getTotalPortalEnergy(d);
@@ -329,13 +312,13 @@ window.getPortalSummaryData = function(d,probableTeamStr) {
return {
level: level,
- title: d.descriptiveText.map.TITLE,
- image: d.imageByUrl && d.imageByUrl.imageUrl,
+ title: d.title,
+ image: d.image,
resCount: resCount,
- latE6: d.locationE6.latE6,
+ latE6: d.latE6,
health: health,
- team: d.controllingTeam ? d.controllingTeam.team : probableTeamStr,
- lngE6: d.locationE6.lngE6,
+ team: d.team,
+ lngE6: d.lngE6,
type: 'portal'
};
}
diff --git a/code/smartphone.js b/code/smartphone.js
index 8bdee92c..0cb6ed97 100644
--- a/code/smartphone.js
+++ b/code/smartphone.js
@@ -95,7 +95,7 @@ window.smartphoneInfo = function(data) {
var className = TEAM_TO_CSS[getTeam(details)];
if(OCTANTS[i] === 'N')
className += ' north'
- var reso = details.resonatorArray.resonators[i];
+ var reso = details.resonators[i];
if(reso) {
l = parseInt(reso.level);
v = parseInt(reso.energyTotal);
diff --git a/plugins/draw-resonators.user.js b/plugins/draw-resonators.user.js
index 9111ede7..7d2c44c4 100644
--- a/plugins/draw-resonators.user.js
+++ b/plugins/draw-resonators.user.js
@@ -1,12 +1,12 @@
// ==UserScript==
// @id iitc-plugin-draw-resonators@xelio
// @name IITC plugin: Draw resonators
-// @category Layer
-// @version 0.5.0.@@DATETIMEVERSION@@
+// @category Deleted
+// @version 0.6.0.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
-// @description [@@BUILDNAME@@-@@BUILDDATE@@] Draw resonators on map for currently selected portal.
+// @description [@@BUILDNAME@@-@@BUILDDATE@@] Resonator deployment distance data is no longer available, as of 2014-05-23
// @include https://www.ingress.com/intel*
// @include http://www.ingress.com/intel*
// @match https://www.ingress.com/intel*
@@ -14,133 +14,3 @@
// @grant none
// ==/UserScript==
-@@PLUGINSTART@@
-
-// PLUGIN START ////////////////////////////////////////////////////////
-window.RESONATOR_MIN_ZOOM = 16;
-
-// use own namespace for plugin
-window.plugin.drawResonators = function() {};
-
-window.plugin.drawResonators.levelLayerGroup = null;
-
-window.plugin.drawResonators.portalSelected = function(data) {
- // new portal selected - clear any existing resonators..
- window.plugin.drawResonators.levelLayerGroup.clearLayers();
-
- // then, if a portal is selected...
- if (data.selectedPortalGuid) {
- // draw it's resonators if we have it's details
- var details = portalDetail.get(data.selectedPortalGuid);
- if (details) {
- window.plugin.drawResonators.drawData(details);
- }
- }
-}
-
-window.plugin.drawResonators.portalDetailLoaded = function(data) {
- // the detailed data for a portal was just loaded - if this is the selected portal, draw them
-
- if (data.guid == window.selectedPortal) {
- window.plugin.drawResonators.levelLayerGroup.clearLayers();
- window.plugin.drawResonators.drawData(data.details);
- }
-}
-
-window.plugin.drawResonators.drawData = function(portalDetails) {
- if(window.map.getZoom() < window.RESONATOR_MIN_ZOOM) return;
-
- var portalLatLng = [portalDetails.locationE6.latE6/1E6, portalDetails.locationE6.lngE6/1E6];
- for(var i in portalDetails.resonatorArray.resonators) {
- resoData = portalDetails.resonatorArray.resonators[i];
- if(resoData === null) continue;
-
- var resoLatLng = window.plugin.drawResonators.getResonatorLatLng(resoData.distanceToPortal, resoData.slot, portalLatLng);
-
- var resoMarker = window.plugin.drawResonators.createResoMarker(resoData, resoLatLng);
- var connMarker = window.plugin.drawResonators.createConnMarker(resoData, resoLatLng, portalLatLng);
-
- window.plugin.drawResonators.levelLayerGroup.addLayer(resoMarker);
- window.plugin.drawResonators.levelLayerGroup.addLayer(connMarker);
- }
-}
-
-window.plugin.drawResonators.getResonatorLatLng = function(dist, slot, portalLatLng) {
- // offset in meters
- var dn = dist*SLOT_TO_LAT[slot];
- var de = dist*SLOT_TO_LNG[slot];
-
- // Coordinate offset in radians
- var dLat = dn/EARTH_RADIUS;
- var dLon = de/(EARTH_RADIUS*Math.cos(Math.PI/180*portalLatLng[0]));
-
- // OffsetPosition, decimal degrees
- var lat0 = portalLatLng[0] + dLat * 180/Math.PI;
- var lon0 = portalLatLng[1] + dLon * 180/Math.PI;
-
- return [lat0, lon0];
-}
-
-window.plugin.drawResonators.createResoMarker = function(resoData, resoLatLng) {
- var resoProperty = {
- fillColor: COLORS_LVL[resoData.level],
- fillOpacity: resoData.energyTotal/RESO_NRG[resoData.level],
- color: '#aaa',
- weight: 1,
- radius: 3,
- opacity: 1,
- clickable: false};
- resoProperty.type = 'resonator';
- resoProperty.details = resoData;
- var reso = L.circleMarker(resoLatLng, resoProperty);
- return reso;
-}
-
-window.plugin.drawResonators.createConnMarker = function(resoData, resoLatLng, portalLatLng) {
- var connProperty = {
- opacity: 0.25,
- weight: 2,
- color: '#FFA000',
- dashArray: '0,10' + (new Array(25).join(',8,4')),
- fill: false,
- clickable: false};
- connProperty.type = 'connector';
- connProperty.details = resoData;
- var conn = L.polyline([portalLatLng, resoLatLng], connProperty);
- return conn;
-}
-
-window.plugin.drawResonators.zoomListener = function() {
- var ctrl = $('.leaflet-control-layers-selector + span:contains("Resonators")').parent();
- if(window.map.getZoom() < window.RESONATOR_MIN_ZOOM) {
- window.plugin.drawResonators.levelLayerGroup.clearLayers();
- ctrl.addClass('disabled').attr('title', 'Zoom in to show those.');
- } else {
- ctrl.removeClass('disabled').attr('title', 'Select a portal to draw resos');
- window.plugin.drawResonators.levelLayerGroup.clearLayers();
- if (window.selectedPortal) {
- var details = portalDetail.get(window.selectedPortal);
- if (details) {
- window.plugin.drawResonators.drawData(details);
- }
- }
- };
-}
-
-var setup = function() {
-
- window.plugin.drawResonators.levelLayerGroup = new L.LayerGroup();
-
- window.addLayerGroup('Resonators', window.plugin.drawResonators.levelLayerGroup, true);
-
- window.addHook('portalSelected', window.plugin.drawResonators.portalSelected);
- window.addHook('portalDetailLoaded', window.plugin.drawResonators.portalDetailLoaded);
-
- window.map.on('zoomend', function() {
- window.plugin.drawResonators.zoomListener();
- });
-
-}
-// PLUGIN END //////////////////////////////////////////////////////////
-
-@@PLUGINEND@@
diff --git a/plugins/guess-player-levels.user.js b/plugins/guess-player-levels.user.js
index 2c9871c6..fa2e1a83 100644
--- a/plugins/guess-player-levels.user.js
+++ b/plugins/guess-player-levels.user.js
@@ -134,7 +134,7 @@ window.plugin.guessPlayerLevels.extractPortalData = function(data) {
var owner = data.details.captured && data.details.captured.capturingPlayerId || "";
var ownerModCount = 0;
- data.details.portalV2.linkedModArray.forEach(function(mod) {
+ data.details.mods.forEach(function(mod) {
if(mod && mod.installingUser == owner)
ownerModCount++;
});
@@ -144,12 +144,12 @@ window.plugin.guessPlayerLevels.extractPortalData = function(data) {
$.each(r, function(ind, reso) {
if(!reso) return true;
- if(!players[reso.ownerGuid]) players[reso.ownerGuid] = [];
+ if(!players[reso.owner]) players[reso.owner] = [];
- if(players[reso.ownerGuid][reso.level] === undefined)
- players[reso.ownerGuid][reso.level] = 1
+ if(players[reso.owner][reso.level] === undefined)
+ players[reso.owner][reso.level] = 1
else
- players[reso.ownerGuid][reso.level]++;
+ players[reso.owner][reso.level]++;
});
for(nickname in players) {
@@ -422,7 +422,7 @@ window.plugin.guessPlayerLevels.guess = function() {
var r = details.resonatorArray.resonators;
$.each(r, function(ind, reso) {
if(!reso) return true;
- var nick = reso.ownerGuid;
+ var nick = reso.owner;
if(isSystemPlayer(nick)) return true;
var lvl = window.plugin.guessPlayerLevels.fetchLevelDetailsByPlayer(nick).min;
diff --git a/plugins/ipas-link.user.js b/plugins/ipas-link.user.js
index 6fcb4b8f..dc629d83 100644
--- a/plugins/ipas-link.user.js
+++ b/plugins/ipas-link.user.js
@@ -2,7 +2,7 @@
// @id iitc-plugin-ipas-link@graphracer
// @name IITC Plugin: simulate an attack on portal
// @category Portal Info
-// @version 0.2.1.@@DATETIMEVERSION@@
+// @version 0.2.2.@@DATETIMEVERSION@@
// @namespace https://github.com/xosofox/IPAS
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
@@ -35,14 +35,14 @@ window.plugin.ipasLink.getHash = function (p) {
var hashParts = [];
$.each(details.resonatorArray.resonators, function (ind, reso) {
if (reso)
- hashParts.push(reso.level + "," + reso.distanceToPortal + "," + reso.energyTotal);
+ hashParts.push(reso.level + ",-1," + reso.energyTotal);
else
hashParts.push("1,20,0");
});
var resos = hashParts.join(";");
hashParts = [];
- $.each(details.portalV2.linkedModArray, function (ind, mod) {
+ $.each(details.mods, function (ind, mod) {
// s - shields
// h - heat sink
// i - intentionally left in
diff --git a/plugins/show-address.user.js b/plugins/show-address.user.js
index 3e83b5b7..ba9baffa 100644
--- a/plugins/show-address.user.js
+++ b/plugins/show-address.user.js
@@ -1,12 +1,12 @@
// ==UserScript==
// @id iitc-plugin-show-address@vita10gy
// @name IITC plugin: show portal address in sidebar
-// @category Portal Info
-// @version 0.2.4.@@DATETIMEVERSION@@
+// @category Deleted
+// @version 0.3.0.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
-// @description [@@BUILDNAME@@-@@BUILDDATE@@] Portal address will show in the sidebar.
+// @description [@@BUILDNAME@@-@@BUILDDATE@@] Address no longer available, as of Niantic changes 2014-05-23
// @include https://www.ingress.com/intel*
// @include http://www.ingress.com/intel*
// @match https://www.ingress.com/intel*
@@ -14,35 +14,3 @@
// @grant none
// ==/UserScript==
-@@PLUGINSTART@@
-
-// PLUGIN START ////////////////////////////////////////////////////////
-
-// use own namespace for plugin
-window.plugin.portalAddress = function() {};
-
-window.plugin.portalAddress.portalDetail = function(data) {
- // If there's 4 sets of comma delimited info the last one is the
- // country, so get rid of it. If the country is in the [2] then it
- // doesn't matter because address is usually short enough to fit.
- var d = data.portalDetails;
- var address = d.descriptiveText.map.ADDRESS;
- if (address) {
- address = address.split(',').splice(0,3).join(',');
- $('.imgpreview').append(''+address+'
');
- }
-
-}
-
-var setup = function() {
- window.addHook('portalDetailsUpdated', window.plugin.portalAddress.portalDetail);
- $('head').append('');
-}
-
-// PLUGIN END //////////////////////////////////////////////////////////
-
-@@PLUGINEND@@
diff --git a/plugins/show-linked-portals.user.js b/plugins/show-linked-portals.user.js
index 1ad92500..455a4fea 100644
--- a/plugins/show-linked-portals.user.js
+++ b/plugins/show-linked-portals.user.js
@@ -2,7 +2,7 @@
// @id iitc-plugin-show-linked-portals@fstopienski
// @name IITC plugin: Show linked portals
// @category Portal Info
-// @version 0.1.2.@@DATETIMEVERSION@@
+// @version 0.2.0.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
@@ -41,11 +41,17 @@ window.plugin.showLinkedPortal.portalDetail = function (data) {
// if (data.portalDetails.controllingTeam.team == 'NEUTRAL')
// return;
- var d = data.portalDetails.portalV2,
- c = 1;
- //get linked portals
- $(d.linkedEdges).each(function () {
- var portalInfo = window.plugin.showLinkedPortal.getPortalByGuid(this.otherPortalGuid, this.isOrigin);
+ var portalLinks = getPortalLinks(data.guid);
+
+ var c = 1;
+
+ $(portalLinks.out).each(function () {
+ var portalInfo = window.plugin.showLinkedPortal.getPortalByGuid(this.otherPortalGuid, true);
+ $('#portaldetails').append('' + portalInfo + '
');
+ c = c + 1;
+ });
+ $(portalLinks.in).each(function () {
+ var portalInfo = window.plugin.showLinkedPortal.getPortalByGuid(this.otherPortalGuid, false);
$('#portaldetails').append('' + portalInfo + '
');
c = c + 1;
});