diff options
Diffstat (limited to 'diplomacy/server/request_managers.py')
-rw-r--r-- | diplomacy/server/request_managers.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/diplomacy/server/request_managers.py b/diplomacy/server/request_managers.py index 5fa434e..59c0e88 100644 --- a/diplomacy/server/request_managers.py +++ b/diplomacy/server/request_managers.py @@ -393,6 +393,10 @@ def on_join_game(server, request, connection_handler): if not server_game.has_power(power_name): raise exceptions.MapPowerException(power_name) + # Forbid to play a power that is already eliminated. + if server_game.get_power(power_name).is_eliminated(): + raise exceptions.ResponseException('%s is eliminated.' % power_name) + if username == constants.PRIVATE_BOT_USERNAME: # Private bot is allowed to control any dummy power after game started # (ie. after reached expected number of real players). |