Add backend

This commit is contained in:
schmelczerandras 2020-10-04 19:05:32 +02:00
parent 4ad60813c9
commit 0f0a1eaf67
19 changed files with 355 additions and 45 deletions

61
backend/src/main.ts Normal file
View file

@ -0,0 +1,61 @@
import ioserver, { Socket } from 'socket.io';
import express from 'express';
import { Server } from 'http';
import cors from 'cors';
import { PlayerContainer } from './players/player-container';
import './index.html';
import { TransportEvents } from '../../shared/src/transport/transport-events';
import { Player } from './players/player';
const app = express();
app.use(
cors({
origin: (origin, callback) => {
callback(null, true);
},
credentials: true,
})
);
const port = 3000;
const server = new Server(app);
const io = ioserver(server);
const players = new PlayerContainer();
const log = (text: string) => {
io.to('insights').emit('insights', text + '\n');
};
app.get('/', function (req, res) {
res.sendFile('dist/index.html', { root: '.' });
});
io.on('connection', (socket: SocketIO.Socket) => {
socket.on(TransportEvents.PlayerJoining, () => {
log('player joined');
const player = new Player(socket);
players.addPlayer(player);
socket.on(TransportEvents.PlayerSendingInfo, () => {});
socket.on('disconnect', () => {
log('player disconnected');
players.removePlayerBySocketId(player.socketId);
});
});
socket.on('join', (room_name: string) => {
socket.join(room_name);
});
//socket.on('disconnect', () => {});
});
server.listen(port, () => {
console.log(`server started at http://localhost:${port}`);
});