Skip to content

Commit e5379fd

Browse files
committed
testing socket io
1 parent a120e10 commit e5379fd

File tree

8 files changed

+2865
-19
lines changed

8 files changed

+2865
-19
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,3 +25,5 @@ yarn-error.log*
2525
.idea/*
2626
.idea
2727
.idea/
28+
29+
server/node_modules

package.json

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,15 @@
33
"homepage": ".",
44
"version": "0.1.0",
55
"private": false,
6+
"scripts": {
7+
"generate-atlases": "node scripts/generate-atlas-files.js",
8+
"copy-tileset-data": "node scripts/copy-tileset-data.js",
9+
"start": "craco start",
10+
"build": "CI=false craco build",
11+
"test": "craco test",
12+
"eject": "react-scripts eject",
13+
"bump": "ncu -u -t minor"
14+
},
615
"devDependencies": {
716
"@babel/eslint-parser": "^7.16.3",
817
"@babel/eslint-plugin": "^7.14.5",
@@ -51,15 +60,6 @@
5160
"redux": "^4.1.2",
5261
"redux-thunk": "^2.4.1"
5362
},
54-
"scripts": {
55-
"generate-atlases": "node scripts/generate-atlas-files.js",
56-
"copy-tileset-data": "node scripts/copy-tileset-data.js",
57-
"start": "craco start",
58-
"build": "CI=false craco build",
59-
"test": "craco test",
60-
"eject": "react-scripts eject",
61-
"bump": "ncu -u -t minor"
62-
},
6363
"browserslist": {
6464
"production": [
6565
">0.2%",

server/index.js

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
const express = require('express');
2+
const http = require('http');
3+
const { Server } = require('socket.io');
4+
5+
// Constants
6+
const {
7+
ADD_CHARACTER,
8+
NEW_GAME,
9+
MOVE_HERO,
10+
MOVE_HERO_SERVER,
11+
} = require('../src/serverConstants');
12+
13+
const app = express();
14+
const server = http.createServer(app);
15+
const io = new Server(server, { cors: { origin: '*' } });
16+
17+
// Express
18+
app.get('/', (req, res) => {
19+
res.send('<h1>Hello world</h1>');
20+
});
21+
22+
server.listen(4000, () => {
23+
console.log('listening on *:4000');
24+
});
25+
26+
// Socket.io
27+
io.on('connection', (socket) => {
28+
console.log('a user connected');
29+
socket.on(NEW_GAME, (hero) => {
30+
console.log('create hero:', hero);
31+
io.emit(ADD_CHARACTER, hero);
32+
});
33+
socket.on(MOVE_HERO, (hero, direction) => {
34+
console.log('move hero:', hero, direction);
35+
io.emit(MOVE_HERO_SERVER, hero, direction);
36+
});
37+
});

0 commit comments

Comments
 (0)