starting keyboard interaction

This commit is contained in:
Atsuyo-INSA 2023-11-29 17:50:21 +01:00
parent 2440fa114b
commit 7f60fc5d71
4 changed files with 9 additions and 4 deletions

View file

@ -52,6 +52,7 @@ 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)//update position update(squares,circles)//update position

View file

@ -29,6 +29,7 @@ function game() {
} }
else else
{ {
player.update([],[]);
for (var i = players.length - 1; i >= 0; i--) { for (var i = players.length - 1; i >= 0; i--) {
players[i].update([],[]);//squares, circles players[i].update([],[]);//squares, circles
} }

View file

@ -2,7 +2,7 @@ class Input {
constructor(id) { constructor(id) {
this.keysDown = new Set() this.keysDown = new Set()
this.dir = 0; this.dir = 0;
this.player=null;
this.canvas = document.getElementById(id); this.canvas = document.getElementById(id);
this.mouseX = 0 this.mouseX = 0
@ -15,7 +15,7 @@ class Input {
console.log("Clic de la souris"); console.log("Clic de la souris");
}); });
window.addEventListener("keydown", function(event) { /*window.addEventListener("keydown", function(event) {
switch(event.key) { switch(event.key) {
case "ArrowUp": case "ArrowUp":
console.log("Flèche du haut"); console.log("Flèche du haut");
@ -30,7 +30,7 @@ class Input {
console.log("Flèche de droite pressée"); console.log("Flèche de droite pressée");
break; break;
} }
}); });*/
window.addEventListener("keydown", (e)=>{ window.addEventListener("keydown", (e)=>{
this.keysDown.add(e.key.toLowerCase()) this.keysDown.add(e.key.toLowerCase())
@ -44,6 +44,8 @@ class Input {
} }
updateDir(){ updateDir(){
if(this.player==null)
return;
if(this.keysDown.has('z')){ if(this.keysDown.has('z')){
if(this.keysDown.has('d')){ if(this.keysDown.has('d')){
this.dir = 2; this.dir = 2;
@ -71,6 +73,7 @@ class Input {
}else if(this.keysDown.has('q')){ }else if(this.keysDown.has('q')){
this.dir = 7; this.dir = 7;
} }
this.player.updateDir(this.dir)
} }
get getDirection() { get getDirection() {

View file

@ -16,7 +16,7 @@ class Network{
this.playerId = data.data.playerId; this.playerId = data.data.playerId;
for (var i = data.data.players.length - 1; i >= 0; i--) { for (var i = data.data.players.length - 1; i >= 0; i--) {
if(data.data.players[i].id==this.playerId) if(data.data.players[i].id==this.playerId)
this.clientPlayer=data.data.players[i]; this.clientPlayer=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);
else else
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))
} }