fd87ec437a
start processing on the server so that we don't want for the IN_PLAY attribute change to be processed before calling gameDidStart() because we don't want to do that when resetting the game (because someone could come along and end the game in between gameWillStart() and gameDidStart() which would be annoying and bad), so we need to be consistent and run straight through both when starting the game for the first time and when resetting it. This means that game managers that really need to wait until their events are processed and do some game start processing at that point will have to listen for the IN_PLAY transition themselves *and* they'll have to be aware that someone could have come along and ended the game in between the call to gameDidStart() and the dispatch of the IN_PLAY event. Sketchy, but unavoidable. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1235 542714f4-19e9-0310-aa3c-eee0fc999fb1
57 lines
1.4 KiB
Java
57 lines
1.4 KiB
Java
//
|
|
// $Id: GameControllerDelegate.java,v 1.2 2002/04/14 00:26:05 mdb Exp $
|
|
|
|
package com.threerings.parlor.game;
|
|
|
|
import com.threerings.crowd.client.PlaceControllerDelegate;
|
|
|
|
/**
|
|
* Extends the {@link PlaceControllerDelegate} mechanism with game
|
|
* controller specific methods.
|
|
*/
|
|
public class GameControllerDelegate extends PlaceControllerDelegate
|
|
{
|
|
/**
|
|
* Provides the delegate with a reference to the game controller for
|
|
* which it is delegating.
|
|
*/
|
|
public GameControllerDelegate (GameController ctrl)
|
|
{
|
|
super(ctrl);
|
|
}
|
|
|
|
/**
|
|
* Called when the game transitions to the <code>IN_PLAY</code>
|
|
* state. This happens when all of the players have arrived and the
|
|
* server starts the game.
|
|
*/
|
|
public void gameDidStart ()
|
|
{
|
|
}
|
|
|
|
/**
|
|
* Called when the game transitions to the <code>GAME_OVER</code>
|
|
* state. This happens when the game reaches some end condition by
|
|
* normal means (is not cancelled or aborted).
|
|
*/
|
|
public void gameDidEnd ()
|
|
{
|
|
}
|
|
|
|
/**
|
|
* Called when the game was cancelled for some reason.
|
|
*/
|
|
public void gameWasCancelled ()
|
|
{
|
|
}
|
|
|
|
/**
|
|
* Called to give derived classes a chance to display animations, send
|
|
* a final packet, or do any other business they care to do when the
|
|
* game is about to reset.
|
|
*/
|
|
public void gameWillReset ()
|
|
{
|
|
}
|
|
}
|