public abstract class MultiVertexEvent<S extends PuzzleInstance> extends BaseEvent<S>
Constructor and Description |
---|
MultiVertexEvent(MultiVertexEvent<S> other) |
MultiVertexEvent(S game)
Used in DoubleVertexEvent.
|
MultiVertexEvent(S game,
java.util.ArrayList<Vertex> v) |
Modifier and Type | Method and Description |
---|---|
boolean |
contains(Vertex v) |
boolean |
containsAll(java.util.List<Vertex> otherVertices) |
void |
decodeData(java.lang.String data)
We assume the list of vertices was encoded by vertex index.
|
java.lang.String |
getPrintableDetails()
Return the details for printing (e.g.
|
Vertex |
getVertex(int i) |
java.util.ArrayList<Vertex> |
getVertices() |
boolean |
hasExactlyTheseVertices(java.util.List<Vertex> otherVertices) |
boolean |
involvesMultipleVertices() |
boolean |
involvesOneVertex() |
boolean |
isSameEvent(Event e) |
void |
performEvent()
For these events we need to delay actual decoding.
|
void |
reallyDecodeData() |
int |
size() |
static java.lang.String |
vertsToString(java.util.ArrayList<Vertex> verts) |
canUserGenerate, clearComments, encodeEvent, encodeEvents, equals, getAfterActionComment, getBeforeActionComment, getBetweenActionComment, getDefaultBeforeActionComment, getDefaultBetweenActionComment, getDefaultIntroductoryComment, getEventName, getGame, getIntroductoryComment, getInverseEvent, getRealAfterActionComment, getRealBeforeActionComment, getRealBetweenActionComment, getRealIntroductoryComment, getTimeSinceFirstEvent, hashCode, isCreatedFromConstructor, modifiedGraph, modifiedPuzzle, performInverseEvent, performTakebackEvent, setAfterActionComment, setBeforeActionComment, setBetweenActionComment, setCreatedFromConstructor, setGame, setIntroductoryComment, setTimeSinceFirstEvent, toString, toStringWithoutTime
takebackSideEffects
public MultiVertexEvent(S game)
public MultiVertexEvent(MultiVertexEvent<S> other)
public java.util.ArrayList<Vertex> getVertices()
public Vertex getVertex(int i)
public final void decodeData(java.lang.String data)
public final void performEvent()
public void reallyDecodeData()
public boolean isSameEvent(Event e)
isSameEvent
in interface Event<S extends PuzzleInstance>
isSameEvent
in class BaseEvent<S extends PuzzleInstance>
public boolean contains(Vertex v)
public boolean containsAll(java.util.List<Vertex> otherVertices)
public boolean hasExactlyTheseVertices(java.util.List<Vertex> otherVertices)
public java.lang.String getPrintableDetails()
BaseEvent
getPrintableDetails
in class BaseEvent<S extends PuzzleInstance>
public int size()
public static java.lang.String vertsToString(java.util.ArrayList<Vertex> verts)
public boolean involvesOneVertex()
involvesOneVertex
in interface Event<S extends PuzzleInstance>
involvesOneVertex
in class BaseEvent<S extends PuzzleInstance>
public boolean involvesMultipleVertices()
involvesMultipleVertices
in interface Event<S extends PuzzleInstance>
involvesMultipleVertices
in class BaseEvent<S extends PuzzleInstance>