e54a4d41f4
method invocation services and converted everything to the new style. Could this be my biggest checkin ever? git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1642 542714f4-19e9-0310-aa3c-eee0fc999fb1
54 lines
1.7 KiB
Java
54 lines
1.7 KiB
Java
//
|
|
// $Id: SpotService.java,v 1.11 2002/08/14 19:07:57 mdb Exp $
|
|
|
|
package com.threerings.whirled.spot.client;
|
|
|
|
import com.threerings.presents.client.Client;
|
|
import com.threerings.presents.client.InvocationService;
|
|
|
|
import com.threerings.whirled.client.SceneService.SceneMoveListener;
|
|
|
|
/**
|
|
* Defines the mechanism by which the client can request to move between
|
|
* locations within a scene and between scenes (taking exit and entry
|
|
* locations into account). These services should not be used directly,
|
|
* but instead should be accessed via the {@link SpotSceneDirector}.
|
|
*/
|
|
public interface SpotService extends InvocationService
|
|
{
|
|
/**
|
|
* Requests to traverse the specified portal.
|
|
*/
|
|
public void traversePortal (
|
|
Client client, int sceneId, int portalId, int sceneVer,
|
|
SceneMoveListener listener);
|
|
|
|
/**
|
|
* Used to communicate responses to a {@link #changeLoc} request.
|
|
*/
|
|
public static interface ChangeLocListener extends InvocationListener
|
|
{
|
|
/**
|
|
* Called when the change location request succeeded.
|
|
*
|
|
* @param clusterOid the object id of the cluster object
|
|
* associated with the new location.
|
|
*/
|
|
public void changeLocSucceeded (int clusterOid);
|
|
}
|
|
|
|
/**
|
|
* Requests that this client's body be made to occupy the specified
|
|
* location.
|
|
*/
|
|
public void changeLoc (Client client, int sceneId, int locationId,
|
|
ChangeLocListener listener);
|
|
|
|
/**
|
|
* Requests that the supplied message be delivered to listeners in the
|
|
* cluster to which the specified location belongs.
|
|
*/
|
|
public void clusterSpeak (Client client, int sceneId, int locationId,
|
|
String message, byte mode);
|
|
}
|