DroidQuest/src/com/droidquest/avatars/Avatar.java

84 lines
2.2 KiB
Java

package com.droidquest.avatars;
/**
* Interface to support handling a common interface for player types.
* Particularly, since SolderingPen needs to be a Device, this can
* be used to provide a player avatar contract.
*/
public interface Avatar {
/**
* Handle change to game cursor.
* @return boolean whether the change was handled.
*/
public boolean handleGameCursor();
/**
* Handle change to solder pen.
* @return boolean whether the change was handled.
*/
public boolean handleSolderPen();
/**
* Handle opening / summoning the toolbox
* @return boolean whether the change was handled.
*/
public boolean handleToolbox();
/**
* Handle starting / stopping the remote.
* @return boolean whether the change was handled.
*/
public boolean handleRadio();
/**
* Handle rotating a Device object
* @param direction -1 for counter clockwise, 1 for clockwise
* @return boolean whether the change was handled.
*/
public boolean handleRotateDevice(int direction);
/**
* Handle setting the cursor to hot.
* @return boolean whether the change was handled.
*/
public boolean handleHotCursor();
/**
* Handle transforming player to the paintbrush
* @return boolean whether the change was handled.
*/
public boolean handlePaintbrush();
/**
* Handle loading a small chip from a saved program.
* @return boolean whether the change was handled.
*/
public boolean handleLoadSmallChip();
/**
* Handle context specific help (including chip help)
* @return boolean whether the change was handled.
*/
public boolean handleHelp();
/**
* Handle entering an inner room (robot)
* @return boolean whether the change was handled.
*/
public boolean handleEnterRoom();
/**
* Handle exiting an inner room (robot)
* @return boolean whether the change was handled.
*/
public boolean handleExitRoom();
/**
* Handle flipping a device - either state or direction.
* @return boolean whether the change was handled.
*/
public boolean handleFlipDevice();
}