fix disconnect bug
This commit is contained in:
parent
f4ce7d1f7b
commit
fce9fd6c02
@ -206,14 +206,13 @@ class Game:
|
|||||||
|
|
||||||
def handle_disconnect(self, player: players.Player):
|
def handle_disconnect(self, player: players.Player):
|
||||||
print(f'player {player.name} left the game {self.name}')
|
print(f'player {player.name} left the game {self.name}')
|
||||||
self.player_death(player=player)
|
self.player_death(player=player, disconnected=True)
|
||||||
self.dead_players.remove(player)
|
|
||||||
if len(self.players) == 0:
|
if len(self.players) == 0:
|
||||||
print(f'no players left in game {self.name}')
|
print(f'no players left in game {self.name}')
|
||||||
return True
|
return True
|
||||||
else: return False
|
else: return False
|
||||||
|
|
||||||
def player_death(self, player: players.Player):
|
def player_death(self, player: players.Player, disconnected=False):
|
||||||
import bang.expansions.dodge_city.characters as chd
|
import bang.expansions.dodge_city.characters as chd
|
||||||
print(player.attacker)
|
print(player.attacker)
|
||||||
if player.attacker and isinstance(player.attacker, roles.Sheriff) and isinstance(player.role, roles.Vice):
|
if player.attacker and isinstance(player.attacker, roles.Sheriff) and isinstance(player.role, roles.Vice):
|
||||||
@ -234,7 +233,10 @@ class Game:
|
|||||||
died_in_his_turn = self.started and index == self.turn
|
died_in_his_turn = self.started and index == self.turn
|
||||||
if self.started and index <= self.turn:
|
if self.started and index <= self.turn:
|
||||||
self.turn -= 1
|
self.turn -= 1
|
||||||
self.dead_players.append(self.players.pop(index))
|
|
||||||
|
corpse = self.players.pop(index)
|
||||||
|
if not disconnected:
|
||||||
|
self.dead_players.append()
|
||||||
self.notify_room()
|
self.notify_room()
|
||||||
self.sio.emit('chat_message', room=self.name, data=f'{player.name} è morto.')
|
self.sio.emit('chat_message', room=self.name, data=f'{player.name} è morto.')
|
||||||
if self.started:
|
if self.started:
|
||||||
|
Loading…
Reference in New Issue
Block a user