public abstract class BaseEvent<S extends PuzzleInstance> extends java.lang.Object implements Event<S>
Modifier and Type | Method and Description |
---|---|
boolean |
canUserGenerate() |
void |
clearComments() |
java.lang.String |
encodeEvent()
Encode the event by a String found in the map followed by a space followed by any other data.
|
static java.lang.String |
encodeEvents(java.util.List<Event<?>> events) |
boolean |
equals(java.lang.Object other) |
java.lang.String |
getAfterActionComment()
This method is different from the others--If the after comment is not set, we return null--this way we can
prevent the "Next" button from showing up if the comment is null.
|
java.lang.String |
getBeforeActionComment() |
java.lang.String |
getBetweenActionComment() |
abstract java.lang.String |
getDefaultBeforeActionComment() |
abstract java.lang.String |
getDefaultBetweenActionComment() |
abstract java.lang.String |
getDefaultIntroductoryComment() |
abstract java.lang.String |
getEventName()
Return the name of the event for printing.
|
S |
getGame() |
java.lang.String |
getIntroductoryComment() |
Event<S> |
getInverseEvent() |
abstract java.lang.String |
getPrintableDetails()
Return the details for printing (e.g.
|
java.lang.String |
getRealAfterActionComment()
Almost the normal getter except it returns "" instead of null if it is null.
|
java.lang.String |
getRealBeforeActionComment()
Almost the normal getter except it returns "" instead of null if it is null.
|
java.lang.String |
getRealBetweenActionComment()
Almost the normal getter except it returns "" instead of null if it is null.
|
java.lang.String |
getRealIntroductoryComment()
Almost the normal getter except it returns "" instead of null if it is null.
|
long |
getTimeSinceFirstEvent() |
int |
hashCode()
Lazy, but I think it will work.
|
abstract boolean |
involvesMultipleVertices() |
abstract boolean |
involvesOneVertex() |
boolean |
isCreatedFromConstructor() |
boolean |
isSameEvent(Event e) |
boolean |
modifiedGraph() |
boolean |
modifiedPuzzle() |
void |
performInverseEvent() |
void |
performTakebackEvent() |
void |
setAfterActionComment(java.lang.String afterActionComment) |
void |
setBeforeActionComment(java.lang.String beforeActionComment) |
void |
setBetweenActionComment(java.lang.String betweenActionComment) |
void |
setCreatedFromConstructor(boolean createdFromConstructor) |
void |
setGame(S game) |
void |
setIntroductoryComment(java.lang.String moveOverview) |
void |
setTimeSinceFirstEvent(long timeSinceFirstEvent) |
java.lang.String |
toString() |
java.lang.String |
toStringWithoutTime() |
performEvent, takebackSideEffects
public BaseEvent(S game)
public void clearComments()
clearComments
in interface Event<S extends PuzzleInstance>
public abstract java.lang.String getDefaultIntroductoryComment()
getDefaultIntroductoryComment
in interface Event<S extends PuzzleInstance>
public abstract java.lang.String getDefaultBeforeActionComment()
getDefaultBeforeActionComment
in interface Event<S extends PuzzleInstance>
public abstract java.lang.String getDefaultBetweenActionComment()
getDefaultBetweenActionComment
in interface Event<S extends PuzzleInstance>
public abstract boolean involvesOneVertex()
involvesOneVertex
in interface Event<S extends PuzzleInstance>
public abstract boolean involvesMultipleVertices()
involvesMultipleVertices
in interface Event<S extends PuzzleInstance>
public abstract java.lang.String getEventName()
public abstract java.lang.String getPrintableDetails()
public void performInverseEvent()
performInverseEvent
in interface Event<S extends PuzzleInstance>
public void performTakebackEvent()
performTakebackEvent
in interface Event<S extends PuzzleInstance>
public java.lang.String encodeEvent()
Event
encodeEvent
in interface Event<S extends PuzzleInstance>
public boolean canUserGenerate()
canUserGenerate
in interface Event<S extends PuzzleInstance>
public S getGame()
getGame
in interface Event<S extends PuzzleInstance>
public void setGame(S game)
setGame
in interface Event<S extends PuzzleInstance>
public boolean modifiedGraph()
modifiedGraph
in interface Event<S extends PuzzleInstance>
public boolean modifiedPuzzle()
modifiedPuzzle
in interface Event<S extends PuzzleInstance>
public Event<S> getInverseEvent()
getInverseEvent
in interface Event<S extends PuzzleInstance>
public long getTimeSinceFirstEvent()
getTimeSinceFirstEvent
in interface Event<S extends PuzzleInstance>
public java.lang.String getIntroductoryComment()
getIntroductoryComment
in interface Event<S extends PuzzleInstance>
public java.lang.String getRealIntroductoryComment()
getRealIntroductoryComment
in interface Event<S extends PuzzleInstance>
public void setIntroductoryComment(java.lang.String moveOverview)
setIntroductoryComment
in interface Event<S extends PuzzleInstance>
public java.lang.String getBeforeActionComment()
getBeforeActionComment
in interface Event<S extends PuzzleInstance>
public java.lang.String getRealBeforeActionComment()
getRealBeforeActionComment
in interface Event<S extends PuzzleInstance>
public void setBeforeActionComment(java.lang.String beforeActionComment)
setBeforeActionComment
in interface Event<S extends PuzzleInstance>
public java.lang.String getBetweenActionComment()
getBetweenActionComment
in interface Event<S extends PuzzleInstance>
public java.lang.String getRealBetweenActionComment()
getRealBetweenActionComment
in interface Event<S extends PuzzleInstance>
public void setBetweenActionComment(java.lang.String betweenActionComment)
setBetweenActionComment
in interface Event<S extends PuzzleInstance>
public java.lang.String getAfterActionComment()
getAfterActionComment
in interface Event<S extends PuzzleInstance>
public java.lang.String getRealAfterActionComment()
getRealAfterActionComment
in interface Event<S extends PuzzleInstance>
public void setAfterActionComment(java.lang.String afterActionComment)
setAfterActionComment
in interface Event<S extends PuzzleInstance>
public void setTimeSinceFirstEvent(long timeSinceFirstEvent)
setTimeSinceFirstEvent
in interface Event<S extends PuzzleInstance>
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object other)
equals
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String toStringWithoutTime()
toStringWithoutTime
in interface Event<S extends PuzzleInstance>
public boolean isSameEvent(Event e)
isSameEvent
in interface Event<S extends PuzzleInstance>
public static java.lang.String encodeEvents(java.util.List<Event<?>> events)
public boolean isCreatedFromConstructor()
public void setCreatedFromConstructor(boolean createdFromConstructor)