-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTimes.js
More file actions
98 lines (92 loc) · 3.68 KB
/
Copy pathTimes.js
File metadata and controls
98 lines (92 loc) · 3.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
function insertTime(name, time) {
console.log(name + " " + time)
var data = { name: name, time: time }
$.ajax({
type: 'post',
url: 'insertTime.php',
data: data,
dataType: 'json',
success: function(data) {
console.log(data)
if (data['status'] == 'success') {
getTimes()
}
},
error: function(data) {
console.log(data)
}
})
}
function getTimes() {
var rowHeight = 40
var rowNumber = 0
var firstRow = 155
var charWidth = 32
var charHeight = 32
var col0End = 84
var col1End = 408
var col2End = 696
var colPadding = 10
var letterOffset = 49 // A is sprite 49
var numberOffset = 32 // 0 is sprite 32
var lettersPerRow = 16
$.ajax({
type: 'post',
url: 'getTimes.php',
dataType: 'json',
success: function(data) {
leaderContext.clearRect(0, 0, leaderCanvas.width, leaderCanvas.height)
leaderContext.drawImage(borderSheet, 0, 0)
leaderContext.drawImage(hashText, 0, 0, 64, 32, col0End - 64, 96, 64, 32)
leaderContext.drawImage(nameText, 0, 0, 128, 32, col1End - 128, 96, 128, 32)
leaderContext.drawImage(timeText, 0, 0, 128, 32, col2End - 128, 96, 128, 32)
$.each(data, function(k, v) {
var name = v['name'].toLowerCase()
var akey = 'a'.charCodeAt(0)
var zkey = 'z'.charCodeAt(0)
var charOffset = 0
var place = k + 1
while (place > 0) {
var digit = Math.floor(place % 10)
place = Math.floor(place / 10)
charOffset += charWidth
leaderContext.drawImage(titleNumbersSheet, charWidth * digit, 0, charWidth, charHeight, col0End - charOffset, k * rowHeight + firstRow, charWidth, charHeight)
}
charOffset = 0
while (name.length > 0) {
var c = name.substr(-1)
name = name.slice(0, -1)
var ckey = c.charCodeAt(0)
if (akey <= ckey <= zkey) {
var letterNumber = ckey - akey + letterOffset
var letterRow = Math.floor(letterNumber / lettersPerRow)
var letterColumn = Math.floor(letterNumber % lettersPerRow)
charOffset += charWidth
var sx = letterColumn * charWidth
var sy = letterRow * charWidth
var sw = charWidth
var sh = charWidth
var dx = col1End - charOffset
var dy = k * rowHeight + firstRow
var dw = charWidth
var dh = charHeight
leaderContext.drawImage(lettersSheet, sx, sy, sw, sh, dx, dy, dw, dh)
}
}
var time = v['time']
charOffset = 0
while (time > 0) {
var digit = Math.floor(time % 10)
time = Math.floor(time / 10)
charOffset +=charWidth
leaderContext.drawImage(titleNumbersSheet, charWidth * digit, 0, charWidth, charHeight, col2End - charOffset, k * rowHeight + firstRow, charWidth, charHeight)
}
})
},
error: function(data) {
console.log(data)
leaderContext.clearRect(0, 0, leaderCanvas.width, leaderCanvas.height)
leaderContext.drawImage(borderSheet, 0, 0)
}
})
}