소스 검색

some join/leave bugs

Nicolas Winkler 4 년 전
부모
커밋
c9598fc44a
2개의 변경된 파일12개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      config.toml
  2. 11 0
      src/server/gamelobby.rs

+ 1 - 1
config.toml

@@ -1,5 +1,5 @@
 default_questions = "questions.txt"
 
 [server_config]
-ip = "0.0.0.0"
+ip = "127.0.0.1"
 port = 8000

+ 11 - 0
src/server/gamelobby.rs

@@ -87,6 +87,17 @@ impl Handler<LeaveMsg> for GameLobby {
         if self.connected_players.is_empty() {
             self.server.do_send(LobbyFinished(self.game_id.clone()));
         }
+        else {
+            if self.lobby_state == LobbyState::Creating && self.game.all_words_submitted() {
+                self.set_state(LobbyState::Guessing);
+                self.game.next_state();
+            }
+            if self.lobby_state == LobbyState::Starting && self.ready_players.len() >= self.connected_players.len() {
+                self.set_state(LobbyState::Creating);
+            }
+
+            self.send_game_to_all();
+        }
     }
 }