forked from deadvey/button
added seperate route for leaderboards
This commit is contained in:
+29
-25
@@ -37,36 +37,40 @@
|
||||
</style>
|
||||
<script>
|
||||
const regex = new RegExp("^[a-zA-Z0-9_-]+$");
|
||||
const ws = new WebSocket('ws://localhost:8084/ws');
|
||||
let name = validate_data(prompt("Nickname for the leaderboard"));
|
||||
console.log(name)
|
||||
const ws = new WebSocket('ws://deadvey.com:8084/ws');
|
||||
ws.onopen = (event) => {
|
||||
ws.send(name);
|
||||
};
|
||||
let firstMessage = true;
|
||||
let latestMessage = 0;
|
||||
ws.onopen = (event) => {
|
||||
ws_leaderboard.send(name);
|
||||
}
|
||||
const ws_leaderboard = new WebSocket('ws://localhost:8084/ws-leaderboard');
|
||||
ws_leaderboard.onopen = (event) => {
|
||||
ws_leaderboard.send("1");
|
||||
};
|
||||
ws_leaderboard.onmessage = (event) => {
|
||||
console.log(event.data);
|
||||
firstMessage = false;
|
||||
data = JSON.parse(event.data);
|
||||
const tableDiv = document.getElementById("score-table");
|
||||
const table = document.createElement("table");
|
||||
// Add header row
|
||||
table.innerHTML = `<tr><th>Rank</th><th>Score</th><th>Name</th><th>P</th></tr>`;
|
||||
// Add data rows concisely using forEach
|
||||
data.hiscores.forEach((entry, index) => {
|
||||
table.innerHTML += `<tr>
|
||||
<td>#${index + 1}</td>
|
||||
<td>${validate_data(entry.score)}</td>
|
||||
<td>${validate_data(entry.person)}</td>
|
||||
<td>${((2/3)**validate_data(entry.score)).toExponential(2)}</td>
|
||||
</tr>`;
|
||||
});
|
||||
tableDiv.appendChild(table);
|
||||
};
|
||||
ws.onmessage = (event) => {
|
||||
console.log(event.data);
|
||||
if (firstMessage) {
|
||||
firstMessage = false;
|
||||
data = JSON.parse(event.data);
|
||||
const tableDiv = document.getElementById("score-table");
|
||||
const table = document.createElement("table");
|
||||
// Add header row
|
||||
table.innerHTML = `<tr><th>Rank</th><th>Score</th><th>Name</th><th>P</th></tr>`;
|
||||
// Add data rows concisely using forEach
|
||||
data.hiscores.forEach((entry, index) => {
|
||||
table.innerHTML += `<tr>
|
||||
<td>#${index + 1}</td>
|
||||
<td>${validate_data(entry.score)}</td>
|
||||
<td>${validate_data(entry.person)}</td>
|
||||
<td>${((2/3)**validate_data(entry.score)).toExponential(2)}</td>
|
||||
</tr>`;
|
||||
});
|
||||
tableDiv.appendChild(table);
|
||||
}
|
||||
else { latestMessage = validate_data(event.data); }
|
||||
};
|
||||
latestMessage = validate_data(event.data);
|
||||
}
|
||||
function send_click()
|
||||
{
|
||||
ws.send(true);
|
||||
|
||||
Reference in New Issue
Block a user