diff --git a/code/region_scoreboard.js b/code/region_scoreboard.js old mode 100644 new mode 100755 index 1fcf016d..f654a490 --- a/code/region_scoreboard.js +++ b/code/region_scoreboard.js @@ -19,26 +19,84 @@ function regionScoreboardFailure() { } + +function regionScoreboardScoreHistoryChart(result) { + // svg area 400x120. graph area 350x100, offset to 40,10 + + var max = Math.max(result.gameScore[0],result.gameScore[1],10); //NOTE: ensure a min of 10 for the graph + var items = []; //we'll copy the items to an array indexed by checkpoint number - easier to access! + for (var i=0; i0 && items[i-1] !== undefined) { + for (var t=0; t<2; t++) { + teamPaths[t].push('M'+(x-10)+','+scale(items[i-1][t])+' L'+x+','+scale(items[i][t])); + } + } + // markers + for (var t=0; t<2; t++) { + var col = t==0 ? COLORS[TEAM_ENL] : COLORS[TEAM_RES]; + circleMarkers.push(''); + } + } + } + + + var paths = ''; + for (var t=0; t<2; t++) { + var col = t==0 ? COLORS[TEAM_ENL] : COLORS[TEAM_RES]; + if (teamPaths[t].length > 0) { + paths += ''; + } + + var y = scale(result.gameScore[t]); + paths += ''; + } + + + var svg = '
' + +'' + +'' + +paths + +circleMarkers.join('') + +'
'; + + return svg; +} + + function regionScoreboardSuccess(data) { if (data.result === undefined) { return regionScoreboardFailure(); } - var checkpointTable = ''; - for (var i=0; i'; - } - if (data.result.scoreHistory.length == 0) { - checkpointTable += ''; - } - checkpointTable += '
#EnlightenedResistance
'+data.result.scoreHistory[i][1]+''+data.result.scoreHistory[i][2]+'
no checkpoint data
'; +// var checkpointTable = ''; +// for (var i=0; i'; +// } +// if (data.result.scoreHistory.length == 0) { +// checkpointTable += ''; +// } +// checkpointTable += '
#EnlightenedResistance
'+data.result.scoreHistory[i][1]+''+data.result.scoreHistory[i][2]+'
no checkpoint data
'; var agentTable = ''; for (var i=0; i'; + agentTable += ''; } if (data.result.topAgents.length==0) { agentTable += ''; @@ -49,9 +107,9 @@ function regionScoreboardSuccess(data) { dialog({ title: 'Region scores for '+data.result.regionName, html: 'Region scores for '+data.result.regionName+'' - +'
#Agent
'+agent.nick+' '+agent.team+'
'+(i+1)+''+agent.nick+'
no top agents
EhlightenedResistance
'+data.result.gameScore[0]+''+data.result.gameScore[1]+'
' + +'
EnlightenedResistance
'+digits(data.result.gameScore[0])+''+digits(data.result.gameScore[1])+'
' +'Checkpoint history' - +checkpointTable + +regionScoreboardScoreHistoryChart(data.result) +'Top agents' +agentTable, width: 600