@@ -2,7 +2,7 @@ import express from "express";
22import cors from "cors" ;
33import { Server } from "socket.io" ;
44import http from "http" ;
5- import { User , Rooms } from "../. ./types/types" ;
5+ import { Rooms , User } from "./types/types" ;
66
77const app = express ( ) ;
88app . use ( cors ( ) ) ;
@@ -11,68 +11,68 @@ const rooms: Rooms = {}
1111
1212const server = http . createServer ( app ) ;
1313const io = new Server ( server , {
14- cors : {
15- origin : process . env . DEBUG ?
16- "http://localhost:5173" :
17- "https://bingolfy.onrender.com"
18- }
14+ cors : {
15+ origin : process . env . DEBUG ?
16+ "http://localhost:5173" :
17+ "https://bingolfy.onrender.com"
18+ }
1919} )
2020
2121io . on ( "connection" , ( socket ) => {
22- console . log ( `User ${ socket . id } connected!` ) ;
23-
24- socket . on ( "join_room" , ( { room, name} ) => {
25- if ( rooms . hasOwnProperty ( room ) ) {
26- const foundUser = rooms [ room ] . find ( ( user : User ) => user . name === name )
27- if ( ! foundUser ) {
28- rooms [ room ] . push ( { name : name , ready : false } ) ;
29- } else {
30- const foundItem = rooms [ room ] . find ( ( user : User ) => user . name === name ) ;
31- if ( foundItem )
32- foundItem . ready = false ;
33- }
34- } else {
35- rooms [ room ] = [ { name : name , ready : false } ] ;
36- }
37-
38- socket . join ( room ) ;
39-
40- console . log ( "Users in the room: " , rooms [ room ] )
41- io . to ( room ) . emit ( "user_joined" , rooms [ room ] ) ;
42- } )
43-
44- socket . on ( "tile_clicked" , ( data ) => {
45- socket . to ( data . room ) . emit ( "flush" , data . tiles ) ;
46- } )
47-
48- socket . on ( "user_won" , ( data ) => {
49- io . to ( data . room ) . emit ( "game_over" , data ) ;
50- } )
51-
52- socket . on ( "user_ready" , ( data ) => {
53- const foundItem = rooms [ data . room ] . find ( ( user : User ) => user . name === data . user ) ;
22+ console . log ( `User ${ socket . id } connected!` ) ;
23+
24+ socket . on ( "join_room" , ( { room, name } ) => {
25+ if ( rooms . hasOwnProperty ( room ) ) {
26+ const foundUser = rooms [ room ] . find ( ( user : User ) => user . name === name )
27+ if ( ! foundUser ) {
28+ rooms [ room ] . push ( { name : name , ready : false } ) ;
29+ } else {
30+ const foundItem = rooms [ room ] . find ( ( user : User ) => user . name === name ) ;
5431 if ( foundItem )
55- foundItem . ready = true ;
32+ foundItem . ready = false ;
33+ }
34+ } else {
35+ rooms [ room ] = [ { name : name , ready : false } ] ;
36+ }
37+
38+ socket . join ( room ) ;
39+
40+ console . log ( "Users in the room: " , rooms [ room ] )
41+ io . to ( room ) . emit ( "user_joined" , rooms [ room ] ) ;
42+ } )
5643
57- io . to ( data . room ) . emit ( "user_joined" , rooms [ data . room ] ) ;
44+ socket . on ( "tile_clicked" , ( data ) => {
45+ socket . to ( data . room ) . emit ( "flush" , data . tiles ) ;
46+ } )
5847
59- if ( ! rooms [ data . room ] . filter ( ( player : User ) => ! player . ready ) . length ) {
60- let randomPlayer = rooms [ data . room ] [ Math . floor ( Math . random ( ) * rooms [ data . room ] . length ) ] ;
61- console . log ( "Everyones ready, sending random player: " , randomPlayer . name )
62- io . to ( data . room ) . emit ( "next_player" , randomPlayer . name )
63- }
64- } )
48+ socket . on ( "user_won" , ( data ) => {
49+ io . to ( data . room ) . emit ( "game_over" , data ) ;
50+ } )
51+
52+ socket . on ( "user_ready" , ( data ) => {
53+ const foundItem = rooms [ data . room ] . find ( ( user : User ) => user . name === data . user ) ;
54+ if ( foundItem )
55+ foundItem . ready = true ;
56+
57+ io . to ( data . room ) . emit ( "user_joined" , rooms [ data . room ] ) ;
58+
59+ if ( ! rooms [ data . room ] . filter ( ( player : User ) => ! player . ready ) . length ) {
60+ let randomPlayer = rooms [ data . room ] [ Math . floor ( Math . random ( ) * rooms [ data . room ] . length ) ] ;
61+ console . log ( "Everyones ready, sending random player: " , randomPlayer . name )
62+ io . to ( data . room ) . emit ( "next_player" , randomPlayer . name )
63+ }
64+ } )
6565
66- socket . on ( "set_next_player" , ( data ) => {
67- io . to ( data . room ) . emit ( "next_player" , data . user )
68- } )
66+ socket . on ( "set_next_player" , ( data ) => {
67+ io . to ( data . room ) . emit ( "next_player" , data . user )
68+ } )
6969
70- socket . on ( "error" , ( error ) => {
71- console . error ( "Socket error:" , error ) ;
72- } ) ;
70+ socket . on ( "error" , ( error ) => {
71+ console . error ( "Socket error:" , error ) ;
72+ } ) ;
7373
7474} )
7575
7676server . listen ( 5174 , ( ) => {
77- console . log ( "Server started!" ) ;
77+ console . log ( "Server started!" ) ;
7878} )
0 commit comments