From 3cd66e17adee2d3f298a5d3bb1d7844d4c8f4e43 Mon Sep 17 00:00:00 2001 From: Mark Johnson Date: Thu, 27 Apr 2006 02:33:04 +0000 Subject: [PATCH] If everyone leaves, but the game was in play, put the game into game over state, not cancelled. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4069 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- .../com/threerings/parlor/game/server/GameManager.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/java/com/threerings/parlor/game/server/GameManager.java b/src/java/com/threerings/parlor/game/server/GameManager.java index e6809372f..643b4f1ac 100644 --- a/src/java/com/threerings/parlor/game/server/GameManager.java +++ b/src/java/com/threerings/parlor/game/server/GameManager.java @@ -599,8 +599,15 @@ public class GameManager extends PlaceManager // Log.info("Game room empty. Going away. " + // "[game=" + _gameobj.which() + "]."); + // If we're in play then move to game over + if (_gameobj.state != GameObject.PRE_GAME && + _gameobj.state != GameObject.GAME_OVER && + _gameobj.state != GameObject.CANCELLED) { + _gameobj.setState(GameObject.GAME_OVER); + shutdown(); + // cancel the game; which will shut us down - if (!cancelGame()) { + } else if (!cancelGame()) { // or shut down directly if the game is already over shutdown(); }