us.asciiroth.client.terrain.decorators
Class AgentDestroyer

java.lang.Object
  extended by us.asciiroth.client.core.AbstractPiece
      extended by us.asciiroth.client.terrain.decorators.Decorator
          extended by us.asciiroth.client.terrain.decorators.AgentDestroyer
All Implemented Interfaces:
ColorListener, Piece, Terrain, TerrainProxy

public class AgentDestroyer
extends Decorator

When this decorator receives a color event, it destroys the agent at the given location, if there is one. If the color is specified as NONE, than any agent (besides the player) that enters this terrain will disappear. This is useful if paired with an AgentCreator that is feeding something like rolling boulders or pushers onto the board.


Field Summary
static Serializer<AgentDestroyer> SERIALIZER
          Type serializer.
 
Constructor Summary
AgentDestroyer(Terrain terrain, Color color)
          Constructor.
 
Method Summary
 void onColorEventInternal(Context ctx, Cell cell, Cell origin)
          Override this method in subclasses in order to augment the onTrigger behavior of the decorated terrain.
 Terrain proxy(Terrain terrain)
           
 
Methods inherited from class us.asciiroth.client.terrain.decorators.Decorator
canEnter, canExit, getProxiedTerrain, is, not, onAdjacentTo, onAgentEnter, onAgentExit, onColorEvent, onDrop, onEnter, onExit, onFlyOver, onNotAdjacentTo, onPickup
 
Methods inherited from class us.asciiroth.client.core.AbstractPiece
getColor, getName, getSymbol
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface us.asciiroth.client.core.Piece
getColor, getName, getSymbol
 

Field Detail

SERIALIZER

public static final Serializer<AgentDestroyer> SERIALIZER
Type serializer.

Constructor Detail

AgentDestroyer

public AgentDestroyer(Terrain terrain,
                      Color color)
Constructor.

Parameters:
terrain -
color - color to trigger agent destruction, or none if any agent that enters cell should be removed from the board (except the player)
Method Detail

onColorEventInternal

public void onColorEventInternal(Context ctx,
                                 Cell cell,
                                 Cell origin)
Description copied from class: Decorator
Override this method in subclasses in order to augment the onTrigger behavior of the decorated terrain.


proxy

public Terrain proxy(Terrain terrain)
Returns:
a new proxy, with the same behavior but wrapping a different terrain

0.7

2009 Alx Dark