Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
mamayaya1
GitHub Repository: mamayaya1/game
Path: blob/main/projects/HexGL/bkcore/hexgl/Ladder.js
4627 views
1
/*
2
* HexGL
3
* @author Thibaut 'BKcore' Despoulain <http://bkcore.com>
4
* @license This work is licensed under the Creative Commons Attribution-NonCommercial 3.0 Unported License.
5
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc/3.0/.
6
*/
7
8
var bkcore = bkcore || {};
9
bkcore.hexgl = bkcore.hexgl || {};
10
11
bkcore.hexgl.Ladder = {};
12
bkcore.hexgl.Ladder.global = {};
13
14
bkcore.hexgl.Ladder.load = function(callback)
15
{
16
var s = encodeURIComponent(window.location.href);
17
bkcore.Utils.request("nothing", false, function(req)
18
{
19
try {
20
bkcore.Ladder.global = JSON.parse(req.responseText);
21
if(callback) callback.call(window);
22
}
23
catch(e)
24
{
25
console.warn('Unable to load ladder. '+e);
26
}
27
},
28
{
29
u: s
30
});
31
}
32
33
bkcore.hexgl.Ladder.displayLadder = function(id, track, mode, num)
34
{
35
var d = document.getElementById(id);
36
if(d == undefined || bkcore.Ladder.global[track] == undefined || !bkcore.Ladder.global[track][mode] == undefined)
37
{
38
console.warn('Undefined ladder.');
39
return;
40
}
41
42
var l = bkcore.Ladder.global[track][mode];
43
var h = '';
44
var m = Math.min((num == undefined ? 10 : num), l.length-1);
45
for(var i = 0; i < l.length-1; i++)
46
{
47
var t = bkcore.Timer.msToTime(l[i]['score']);
48
h += '<span class="ladder-row"><b>'+(i+1)+'. '+l[i]['name']+'</b><i>'+t.m+'\''+t.s+'\'\''+t.ms+'</i></span>';
49
}
50
51
d.innerHTML = h;
52
}
53