resonators are now roughly ordered by their octant (fixes #35)
N NE NW E W SE SW S
This commit is contained in:
@ -85,10 +85,17 @@ window.getReportIssueInfoText = function(d) {
|
|||||||
window.getResonatorDetails = function(d) {
|
window.getResonatorDetails = function(d) {
|
||||||
console.log('rendering reso details');
|
console.log('rendering reso details');
|
||||||
var resoDetails = '';
|
var resoDetails = '';
|
||||||
var slotsFilled = 0;
|
// octant=slot: 0=E, 1=NE, 2=N, 3=NW, 4=W, 5=SW, 6=S, SE=7
|
||||||
$.each(d.resonatorArray.resonators, function(ind, reso) {
|
// resos in the display should be ordered like this:
|
||||||
|
// N NE Since the view is displayed in columns, they
|
||||||
|
// NW E need to be ordered like this: N, NW, W, SW, NE,
|
||||||
|
// W SE E, SE, S, i.e. 2 3 4 5 1 0 7 6
|
||||||
|
// SW S
|
||||||
|
$.each([2, 3, 4, 5, 1, 0, 7, 6], function(ind, slot) {
|
||||||
|
var isLeft = slot >= 2 && slot <= 5;
|
||||||
|
var reso = d.resonatorArray.resonators[slot];
|
||||||
if(!reso) {
|
if(!reso) {
|
||||||
resoDetails += renderResonatorDetails(slotsFilled++, 0);
|
resoDetails += renderResonatorDetails(slot, 0, 0, null, null, isLeft);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -96,9 +103,11 @@ window.getResonatorDetails = function(d) {
|
|||||||
var v = parseInt(reso.energyTotal);
|
var v = parseInt(reso.energyTotal);
|
||||||
var nick = window.getPlayerName(reso.ownerGuid);
|
var nick = window.getPlayerName(reso.ownerGuid);
|
||||||
var dist = reso.distanceToPortal;
|
var dist = reso.distanceToPortal;
|
||||||
|
// if array order and slot order drift apart, at least the octant
|
||||||
|
// naming will still be correct.
|
||||||
|
slot = parseInt(reso.slot);
|
||||||
|
|
||||||
slotsFilled++;
|
resoDetails += renderResonatorDetails(slot, l, v, dist, nick, isLeft);
|
||||||
resoDetails += renderResonatorDetails(parseInt(reso.slot), l, v, dist, nick);
|
|
||||||
});
|
});
|
||||||
return resoDetails;
|
return resoDetails;
|
||||||
}
|
}
|
||||||
@ -107,14 +116,14 @@ window.getResonatorDetails = function(d) {
|
|||||||
// not work with raw details-hash. Needs digested infos instead:
|
// not work with raw details-hash. Needs digested infos instead:
|
||||||
// slot: which slot this resonator occupies. Starts with 0 (east) and
|
// slot: which slot this resonator occupies. Starts with 0 (east) and
|
||||||
// rotates clockwise. So, last one is 7 (southeast).
|
// rotates clockwise. So, last one is 7 (southeast).
|
||||||
window.renderResonatorDetails = function(slot, level, nrg, dist, nick) {
|
window.renderResonatorDetails = function(slot, level, nrg, dist, nick, isLeft) {
|
||||||
if(level == 0) {
|
if(level === 0) {
|
||||||
var meter = '<span class="meter" style="cursor:auto"></span>';
|
var meter = '<span class="meter" title="octant:\t' + OCTANTS[slot] + '"></span>';
|
||||||
} else {
|
} else {
|
||||||
var max = RESO_NRG[level];
|
var max = RESO_NRG[level];
|
||||||
var fillGrade = nrg/max*100;
|
var fillGrade = nrg/max*100;
|
||||||
|
|
||||||
var inf = 'energy:\t\t' + nrg + ' / ' + max + ' (' + Math.round(fillGrade) + '%)' + '\n'
|
var inf = 'energy:\t\t' + nrg + ' / ' + max + ' (' + Math.round(fillGrade) + '%)\n'
|
||||||
+ 'level:\t\t' + level + '\n'
|
+ 'level:\t\t' + level + '\n'
|
||||||
+ 'distance:\t' + dist + 'm\n'
|
+ 'distance:\t' + dist + 'm\n'
|
||||||
+ 'owner:\t\t' + nick + '\n'
|
+ 'owner:\t\t' + nick + '\n'
|
||||||
@ -128,10 +137,9 @@ window.renderResonatorDetails = function(slot, level, nrg, dist, nick) {
|
|||||||
|
|
||||||
var fill = '<span style="'+style+'"></span>';
|
var fill = '<span style="'+style+'"></span>';
|
||||||
|
|
||||||
var meter = '<span class="meter meter-rel" title="'+inf+'">'
|
var meter = '<span class="meter meter-rel" title="'+inf+'">' + fill + lbar + '</span>';
|
||||||
+ fill + lbar + '</span>';
|
|
||||||
}
|
}
|
||||||
var cls = slot <= 3 ? 'left' : 'right';
|
var cls = isLeft ? 'left' : 'right';
|
||||||
var text = '<span class="meter-text '+cls+'">'+(nick||'')+'</span>';
|
var text = '<span class="meter-text '+cls+'">'+(nick||'')+'</span>';
|
||||||
return (slot <= 3 ? text+meter : meter+text) + '<br/>';
|
return (isLeft ? text+meter : meter+text) + '<br/>';
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user