tickLeisteClient/website/javascript.js
2021-03-29 17:31:41 +02:00

128 lines
4.4 KiB
JavaScript

var ws = new WebSocket("ws:10.9.1.129:8080/tickLeistenId");
let addButton = document.getElementById("a");
let deleteButton = document.getElementById("b");
let changeTickButton = document.getElementById("c");
var players = [];
ws.onmessage = function(evt){
var msg = evt.data;
var obj = JSON.parse(msg);
if (obj.eventType == "SetPlayerTickE") {
for (i = 0; i < players.length; i++){
if (players[i].UUID == obj.playerUUID){
players[i].Tick = obj.tick;
}
}
PlayerList();
CurrentPlayer();
}
if (obj.eventType == "AddPlayerTickE") {
var newPlayer = new Object ();
newPlayer.Name = obj.playerName;
newPlayer.UUID = obj.playerUUID;
if (obj.tick.tickType == "Tick"){
newPlayer.Tick = tick.tickValue;
}
else {
newPlayer.Tick = tickType;
}
players.push(newPlayer);
PlayerList();
CurrentPlayer();
}
if (obj.eventType == "InitializeTickLeisteE") {
}
if (obj.eventType == "ChangeNameE") {
for (i = 0; i < players.length; i++){
if (players[i].UUID == obj.playerUUID){
players[i].Name = obj.playerName;
}
}
}
if (obj.eventType == "RemovePlayerE") {
for (i = 0; i < players.length; i++){
if (players[i].UUID == obj.playerUUID){
players.splice(i,1);
}
}
PlayerList();
CurrentPlayer();
}
else {
console.error('Invalid Event received');
}
}
addButton.onclick = function() {
ws.send('{"requestType" : "AddPlayerTickR" "' + document.getElementById("A") + '", "player" : <UnknownPlayer>, "tick" :}');
}
deleteButton.onclick = function() {
var UUID = "";
for (i = 0; i < players.length; i++){
if (players[i].Name == document.getElementById("B")){
UUID = players[i].UUID;
}
}
ws.send('{"requestType" : "RemovePlayerR", "playerUUID" : "' + UUID + '"}');
}
changeTickButton.onclick = function() {
var UUID = "";
var Tick = document.getElementById("C2");
for (i = 0; i < players.length; i++){
if (players[i].Name == document.getElementById("C1")){
UUID = players[i].UUID;
}
}
ws.send('{"requestType" : "SetPlayerTickR", "playerUUID" : "' + UUID + '", "tick" : "' + Tick + '"}');
}
function PlayerList(){
var content = "";
for (i = 0; i < players.length; i++){
content = content + players[i].Name + " " + players[i].Tick + "\n";
}
document.getElementById("p3").innerHTML = content;
}
function CurrentPlayer(){
var curr = "-";
var smallest = Infinity;
for (i = 0; i < players.length; i++){
if (parseInt(players[i].Tick) < smallest){
smallest = parseInt(players[i].Tick);
curr = players[i].Name;
}
}
if (smallest != Infinity){
document.getElementById("p1").innerHTML = curr;
document.getElementById("p2").innerHTML = "" + smallest;
}
}
/*function WebSocketTest() {
if ("WebSocket" in window) {
ws.onopen = function() {
};
ws.onmessage = function (evt) {
var received_msg = evt.data;
alert("Message is received...");
};
ws.onclose = function() {
}*/