Decided to take the pain and refactor the parlor.game and parlor.turn

packages properly into client, data and server subpackages. This
eliminates a bunch of hackery I had to do to properly handle dead code
removal when building the Game Gardens client and games and it simplifies
things and sets a good example to follow the standard procedure as much as
possible.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3381 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Michael Bayne
2005-03-03 19:36:34 +00:00
parent c2e2661e66
commit dbbd8e955f
66 changed files with 145 additions and 111 deletions
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.client;
import java.awt.event.ActionEvent;
@@ -34,6 +34,10 @@ import com.threerings.crowd.data.PlaceObject;
import com.threerings.crowd.util.CrowdContext;
import com.threerings.parlor.Log;
import com.threerings.parlor.game.data.GameCodes;
import com.threerings.parlor.game.data.GameConfig;
import com.threerings.parlor.game.data.GameObject;
import com.threerings.parlor.game.data.PartyGameConfig;
import com.threerings.parlor.util.ParlorContext;
/**
@@ -1,5 +1,5 @@
//
// $Id: GameControllerDelegate.java,v 1.3 2004/08/27 02:20:14 mdb Exp $
// $Id$
//
// Narya library - tools for developing networked games
// Copyright (C) 2002-2004 Three Rings Design, Inc., All Rights Reserved
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.client;
import com.threerings.crowd.client.PlaceControllerDelegate;
@@ -1,5 +1,5 @@
//
// $Id: GameService.java,v 1.3 2004/08/27 02:20:14 mdb Exp $
// $Id$
//
// Narya library - tools for developing networked games
// Copyright (C) 2002-2004 Three Rings Design, Inc., All Rights Reserved
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.client;
import com.threerings.presents.client.Client;
import com.threerings.presents.client.InvocationService;
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.data;
import com.threerings.presents.data.InvocationCodes;
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.data;
import com.threerings.crowd.data.PlaceConfig;
import com.threerings.util.Name;
@@ -19,9 +19,9 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.data;
import com.threerings.parlor.game.GameService;
import com.threerings.parlor.game.client.GameService;
import com.threerings.presents.client.Client;
import com.threerings.presents.data.InvocationMarshaller;
import com.threerings.presents.dobj.InvocationResponseEvent;
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.data;
import com.samskivert.util.ListUtil;
import com.samskivert.util.StringUtil;
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.data;
import com.threerings.parlor.data.TableConfig;
@@ -1,5 +1,5 @@
//
// $Id: TeamGameConfig.java,v 1.1 2004/11/04 23:31:10 andrzej Exp $
// $Id$
//
// Narya library - tools for developing networked games
// Copyright (C) 2002-2004 Three Rings Design, Inc., All Rights Reserved
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.data;
import com.threerings.parlor.data.TableConfig;
@@ -1,7 +1,7 @@
//
// $Id: AI.java,v 1.1 2004/10/22 19:27:54 ray Exp $
// $Id$
package com.threerings.parlor.game;
package com.threerings.parlor.game.server;
/**
* Represents attributes of an AI player.
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.server;
import java.util.Iterator;
import java.util.HashSet;
@@ -19,10 +19,10 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.server;
import com.threerings.parlor.game.GameMarshaller;
import com.threerings.parlor.game.GameService;
import com.threerings.parlor.game.data.GameMarshaller;
import com.threerings.parlor.game.client.GameService;
import com.threerings.presents.client.Client;
import com.threerings.presents.data.ClientObject;
import com.threerings.presents.data.InvocationMarshaller;
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.server;
import java.util.ArrayList;
import java.util.Arrays;
@@ -45,6 +45,11 @@ import com.threerings.crowd.server.PlaceManagerDelegate;
import com.threerings.parlor.Log;
import com.threerings.parlor.data.ParlorCodes;
import com.threerings.parlor.game.data.GameCodes;
import com.threerings.parlor.game.data.GameConfig;
import com.threerings.parlor.game.data.GameMarshaller;
import com.threerings.parlor.game.data.GameObject;
import com.threerings.parlor.game.data.PartyGameConfig;
import com.threerings.parlor.server.ParlorSender;
/**
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.server;
import com.threerings.crowd.server.PlaceManagerDelegate;
@@ -1,5 +1,5 @@
//
// $Id: GameProvider.java,v 1.3 2004/08/27 02:20:14 mdb Exp $
// $Id$
//
// Narya library - tools for developing networked games
// Copyright (C) 2002-2004 Three Rings Design, Inc., All Rights Reserved
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.server;
import com.threerings.presents.data.ClientObject;
import com.threerings.presents.server.InvocationProvider;
@@ -1,5 +1,5 @@
//
// $Id: GameWatcher.java,v 1.3 2004/08/27 02:20:14 mdb Exp $
// $Id$
//
// Narya library - tools for developing networked games
// Copyright (C) 2002-2004 Three Rings Design, Inc., All Rights Reserved
@@ -19,7 +19,7 @@
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package com.threerings.parlor.game;
package com.threerings.parlor.game.server;
import com.threerings.presents.dobj.AttributeChangeListener;
import com.threerings.presents.dobj.AttributeChangedEvent;
@@ -28,6 +28,8 @@ import com.threerings.crowd.data.PlaceObject;
import com.threerings.crowd.server.PlaceManager;
import com.threerings.crowd.server.PlaceRegistry;
import com.threerings.parlor.game.data.GameObject;
/**
* An abstract convenience class used server-side to keep an eye on a game
* and perform a one-time game-over activity when the game ends. Classes