server updates
This commit is contained in:
parent
80a7c81911
commit
63208cd293
5 changed files with 49 additions and 43 deletions
|
@ -1,8 +1,9 @@
|
|||
Renderer = new Render("canvas", "./assets/map/map7_recadr.png");
|
||||
Inp = new Input("canvas");
|
||||
let Net = new Network("ws://129.151.227.50:9600/");
|
||||
Net.connect();
|
||||
|
||||
|
||||
let playerId; //id of client player
|
||||
let players = [new Player(1, 100, 50, "rubiks"),
|
||||
new Player(2, 500, 70, "atsuyo"),
|
||||
new Player(3, 600, 70, "vincent"),
|
||||
|
@ -10,6 +11,10 @@ let players = [new Player(1, 100, 50, "rubiks"),
|
|||
new Player(5, 200, 30, "leroux"),
|
||||
new Player(6, 700, 700, "lele")];
|
||||
|
||||
|
||||
Net.connect(); //connect to server, create a player, and retrieve all players info
|
||||
|
||||
|
||||
players[0].retrieveServerInfo(1,100,50,3);
|
||||
players[1].dir=5;
|
||||
players[1].visibleDir=5;
|
||||
|
|
|
@ -27,16 +27,11 @@ class Network{
|
|||
|
||||
}
|
||||
|
||||
init(){
|
||||
this.socket.send(JSON.stringify({type: "connect"}));
|
||||
}
|
||||
|
||||
connect(){
|
||||
this.socket = new WebSocket(this.adress);
|
||||
this.socket.addEventListener('open', (e)=>{
|
||||
//connected to server
|
||||
this.connected = true;
|
||||
this.init();
|
||||
});
|
||||
this.socket.addEventListener('message', (e)=>{
|
||||
this.message(JSON.parse(e.data));
|
||||
|
|
2
server/node_modules/.package-lock.json
generated
vendored
2
server/node_modules/.package-lock.json
generated
vendored
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "gtavi",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 2,
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"node_modules/@socket.io/component-emitter": {
|
||||
|
|
|
@ -14,20 +14,13 @@ app.get('/', (req, res) => {
|
|||
res.send('Grand Tabernacle Auto VI');
|
||||
});
|
||||
|
||||
wss.on('connection', (socket) => {
|
||||
connections.add(socket);
|
||||
|
||||
socket.on('message', (message) => {
|
||||
message = JSON.parse(message);
|
||||
if (message.type == "connect") {
|
||||
function createNewPlayer(socket){
|
||||
var obj = {
|
||||
id: playerCount,
|
||||
x: 0,
|
||||
y: 0,
|
||||
name: playerCount.toString() + "joueur"
|
||||
}
|
||||
players.push(obj)
|
||||
playerCount++;
|
||||
|
||||
socket.send(JSON.stringify({
|
||||
type: "connect",
|
||||
|
@ -40,24 +33,40 @@ wss.on('connection', (socket) => {
|
|||
broadcast(JSON.stringify({
|
||||
type: "newplayer",
|
||||
data: obj
|
||||
}));
|
||||
}), obj.id);
|
||||
|
||||
socket.id = obj.id;
|
||||
connections.add(socket);
|
||||
players.push(obj);
|
||||
playerCount++;
|
||||
}
|
||||
|
||||
} else if (message.type == "ping") {
|
||||
wss.on('connection', (socket) => {
|
||||
//create new player, send informations to new player and broadcast new player for all
|
||||
createNewPlayer(socket);
|
||||
|
||||
socket.on('message', (message) => {
|
||||
message = JSON.parse(message);
|
||||
if (message.type == "ping") {
|
||||
socket.send("pong");
|
||||
} else {
|
||||
broadcast(JSON.stringify(message));
|
||||
} else if(message.type=="update") {
|
||||
broadcast(JSON.stringify(message), socket.id);
|
||||
}
|
||||
});
|
||||
|
||||
socket.on('close', () => {
|
||||
for (var i = players.length - 1; i >= 0; i--) {
|
||||
if(players[i].id==socket.id){
|
||||
players.splice(i, 1);
|
||||
}
|
||||
}
|
||||
connections.delete(socket);
|
||||
});
|
||||
});
|
||||
|
||||
function broadcast(message) {
|
||||
function broadcast(message, exceptId = -1) {
|
||||
connections.forEach((socket) => {
|
||||
if (socket.readyState === WebSocket.OPEN) {
|
||||
if (socket.readyState === WebSocket.OPEN && socket.id!=exceptId) {
|
||||
socket.send(message);
|
||||
}
|
||||
});
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
const socket = new WebSocket('ws://129.151.227.50:9600/');
|
||||
const socket = new WebSocket('ws://localhost:9600'); //ws://129.151.227.50:9600
|
||||
var time = new Date();
|
||||
socket.addEventListener('open', (event) => {
|
||||
console.log('connecté');
|
||||
|
@ -16,14 +16,11 @@ socket.addEventListener('close', (event) => {
|
|||
|
||||
function main(){
|
||||
time = new Date()
|
||||
socket.send(JSON.stringify({type: "connect"}));
|
||||
socket.send(JSON.stringify({
|
||||
type: "update",
|
||||
data: {
|
||||
id: 0,
|
||||
x: 0,
|
||||
y: 0
|
||||
ok: 'ok'
|
||||
}
|
||||
}))
|
||||
}));
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue