This commit is contained in:
Killian Marty 2023-12-02 17:40:38 +01:00
parent 4731216d3a
commit 44595f0af7
2 changed files with 12 additions and 16 deletions

View file

@ -52,7 +52,6 @@ class Player
if(this.dir!=0){ if(this.dir!=0){
this.visibleDir = newDirection; this.visibleDir = newDirection;
} }
//console.log("Should send: {type='update', dir=",this.dir,", x=",this.x,", y=",this.y,"}");
} }
update(squares,circles, dt)//update position update(squares,circles, dt)//update position

View file

@ -21,56 +21,53 @@ class Network{
this.playersToAdd.push(new Player(data.data.players[i].id, data.data.players[i].x, data.data.players[i].y, data.data.players[i].name, data.data.players[i].dir)) this.playersToAdd.push(new Player(data.data.players[i].id, data.data.players[i].x, data.data.players[i].y, data.data.players[i].name, data.data.players[i].dir))
} }
break; break;
case 'update': case 'update':
this.playersToUpdate.push(data.data); this.playersToUpdate.push(data.data);
break; break;
case "newplayer": case "newplayer":
this.playersToAdd.push(new Player(data.data.id, data.data.x, data.data.y, data.data.name, data.data.dir)); this.playersToAdd.push(new Player(data.data.id, data.data.x, data.data.y, data.data.name, data.data.dir));
break; break;
case "removePlayer": case "removePlayer":
this.playersToRemove.push(data.data.id); this.playersToRemove.push(data.data.id);
break; break;
default:
break;
} }
} }
connect(){ connect(){ //create the WebSocket, initialize it and connect to the server
this.socket = new WebSocket(this.adress); this.socket = new WebSocket(this.adress);
this.socket.addEventListener('open', (e)=>{ this.socket.addEventListener('open', (e)=>{
//connected to server this.connected = true; //connected to server
this.connected = true;
}); });
this.socket.addEventListener('message', (e)=>{ this.socket.addEventListener('message', (e)=>{
this.message(JSON.parse(e.data)); this.message(JSON.parse(e.data));
}) })
} }
getPlayerId(){ update(obj){ //send data to server in order to broadcast
while(this.playerId==null){
//waiting for connection
};
return this.playerId;
}
update(obj){
this.socket.send(JSON.stringify({ this.socket.send(JSON.stringify({
type: "update", type: "update",
data: obj data: obj
})) }))
} }
getPlayersToAdd(){ getPlayersToAdd(){ //returns the list of new players
let tmp = this.playersToAdd; let tmp = this.playersToAdd;
this.playersToAdd = []; this.playersToAdd = [];
return tmp; return tmp;
} }
getPlayersToRemove(){ getPlayersToRemove(){ //returns the list of player who have left the game
let tmp = this.playersToRemove; let tmp = this.playersToRemove;
this.playersToRemove = []; this.playersToRemove = [];
return tmp; return tmp;
} }
getPlayersToUpdate(){ getPlayersToUpdate(){ //return a list of all updates recieved from the server
let tmp = this.playersToUpdate; let tmp = this.playersToUpdate;
this.playersToUpdate = []; this.playersToUpdate = [];
return tmp; return tmp;