humus-old/server/index.js

35 lines
694 B
JavaScript
Raw Normal View History

2019-03-20 15:28:18 -05:00
import http from 'http';
import {Server} from '@avocado/server/socket';
2019-04-20 14:59:14 -05:00
// Import directly for HMR hierarchy.
import '../register-traits';
2019-03-20 15:28:18 -05:00
const httpServer = http.createServer();
// Listen.
httpServer.listen(8420, '0.0.0.0');
// Start game server.
2019-04-20 14:16:06 -05:00
import Game from './game';
2019-03-20 15:28:18 -05:00
const avocadoServer = new Server(httpServer);
2019-04-20 14:16:06 -05:00
let game;
function createGame() {
game = new Game();
avocadoServer.on('connect', game.acceptConnection, game);
}
function destroyGame() {
avocadoServer.off('connect', game.acceptConnection);
game.destroy();
}
createGame();
if (module.hot) {
2019-04-20 14:59:14 -05:00
module.hot.accept([
'./game',
'../register-traits'
], () => {
2019-04-20 14:16:06 -05:00
destroyGame();
createGame();
});
}