public abstract class PortalLordInstance extends PuzzleInstance
Constructor and Description |
---|
PortalLordInstance() |
Modifier and Type | Method and Description |
---|---|
void |
clear(java.util.ArrayList<Vertex> toClear) |
void |
decodeData(java.lang.String configuration)
Decode a string into the game data for the particular game.
|
java.lang.String |
encodePuzzleData()
Encode the game data as a String.
|
boolean |
getIsNumberUsed(int value) |
int |
getMaxBandwidth() |
java.lang.String |
getProcessedSolution()
Probably not used.
|
boolean |
isCurrentStateValidSolution()
Each instance needs to determine when the solution is valid.
|
boolean |
isEventForThisPuzzleType(Event<?> e)
Return true iff this event is of type T.
|
boolean |
isSolutionRefinable()
For optimization problems, for instance, this will return true.
|
void |
setIsNumberUsed(int value,
boolean b) |
void |
setValue(Vertex v,
int newValue) |
boolean |
tryItResultsAreBinding()
Return true only if Try It mode, using the type from getTryItInstance, will produce a result that is AWLAYS valid
for the puzzle type.
|
void |
unClear(java.util.ArrayList<Vertex> toUnClear,
java.util.ArrayList<java.lang.Integer> values) |
java.lang.String |
uniqueIdentifier(Vertex v)
Return a string that represents the data related to the given Vertex in a way that is different if the data is
different.
|
void |
unsetValue(Vertex v) |
void |
updateStateBasedOnAlgorithmResult(java.lang.String algorithmResult)
Updates the algorithm's state based on the algorithm result.
|
boolean |
usesAlgorithms()
If the game related to this problem requires running algorithms, this should return true.
|
addDoppelganger, addGraph, addGraphWithData, addToSelected, addToSelected, addVertex, canRedo, canUndo, checkAndHandlePuzzleCompletion, clearAllSelections, clearHistory, clearTutorial, computeGlobalPoints, connectAllSelectedVertices, connectToSelected, convertMovesToTutorial, copyPuzzle, copyPuzzleSoItHasInitialStateTheSameAsMyCurrentState, copyRequested, copySelected, createNewVertexForPuzzle, currentPuzzleDataToString, deleteSelected, disableHistory, disconnectFromSelected, disconnectSelected, doNotRecordGraphEvents, enableHistory, endGame, forceRedo, getAttemptName, getBasePoints, getCurrentAnnotation, getCurrentMoveOverview, getCurrentUndoableEvent, getData, getDefaultVertexDataObject, getDescription, getDiameter, getDifficultyLevel, getEdgeDataClassName, getEditHelpClassName, getEditorClassName, getFamilyName, getFirstSelected, getFirstTimeBonus, getGameName, getGlobalBest, getGraph, getHelpClassName, getHighScoreBonus, getImprovementBonus, getInstanceClassName, getInterestingTutorialVertices, getMaximumXCoordinate, getMaximumYCoordinate, getMessage, getMinimumSelectedXCoordinate, getMinimumSelectedYCoordinate, getMinimumXCoordinate, getMinimumYCoordinate, getMode, getNumberOfEdges, getNumberOfMoves, getNumberOfVertices, getNumberSelected, getOldHighScore, getPersonalBest, getPlayClassName, getPuzzleID, getPuzzleInstanceName, getPuzzleName, getScore, getSelectedVertices, getSolution, getSolutionAsString, getSolutionID, getThemeClassName, getTimeTaken, getTopOfUndoStack, getTryItInstanceForUseOnPlayScreen, getTutorialData, getUserID, getVertexIndex, getVertices, getVisibility, getVisibleSources, goToNextEvent, grossHistoryDeleteLastEvent, grossHistoryGetLastAddedEvent, grossHistoryGetNextEvent, grossHistoryGetNextEventIndex, grossHistoryIsSaved, grossHistoryIteratorAtBeginning, grossHistoryIteratorAtEnd, grossHistoryNext, grossHistoryPrevious, grossHistorySetSaved, grossHistorySize, grossHistoryToBeginning, grossHistoryToEnd, initialPuzzleDataToString, isFinishable, isInReplayOrEditTutorialMode, isLocked, isLowerScoreBetter, isPlayable, isSaved, isShowIndices, isSpecialCopyOK, isTutorial, isValidToTranslationSelection, isVisibleSource, makeCurrentStateInitialState, moveGraphEnded, moveSelectedVerticesEnded, moveStarted, pasteAndConnectCopyOfSelected, pasteCopyOfSelected, performEvents, performEvents, performTutorialEvents, reallySetLocked, recordGraphEvents, redo, removeFromSelected, removeFromSelected, resetVerticesToInitialLocations, restart, runAlgorithms, runuTryIt, selectAll, sendAlgorithmResult, sendMeaninglessEvent, setAttemptName, setData, setDefaultData, setDescription, setFinishable, setGlobalBest, setGraph, setInReplayOrEditTutorialMode, setLocked, setMessage, setMode, setPersonalBest, setPlayable, setPuzzle, setPuzzleID, setPuzzleName, setSaved, setShowIndices, setSolutionData, setSolutionID, setSolutionInformation, setUserID, setVisibleSources, startTimer, stopTimer, stringToPuzzleData, submit, toggleSelected, tutorialModeEnabled, undo, update, updateTimeTaken
public boolean isEventForThisPuzzleType(Event<?> e)
PuzzleInstance
isEventForThisPuzzleType
in class PuzzleInstance
public void setValue(Vertex v, int newValue)
public void clear(java.util.ArrayList<Vertex> toClear)
public void unClear(java.util.ArrayList<Vertex> toUnClear, java.util.ArrayList<java.lang.Integer> values)
public void unsetValue(Vertex v)
public void setIsNumberUsed(int value, boolean b)
public boolean getIsNumberUsed(int value)
public int getMaxBandwidth()
public java.lang.String encodePuzzleData()
PuzzleInstance
public void decodeData(java.lang.String configuration)
PuzzleInstance
configuration
- a string containing the encoded puzzle data.public boolean isSolutionRefinable()
PuzzleInstance
isSolutionRefinable
in class PuzzleInstance
public boolean usesAlgorithms()
PuzzleInstance
usesAlgorithms
in class PuzzleInstance
public boolean isCurrentStateValidSolution()
PuzzleInstance
isCurrentStateValidSolution
in class PuzzleInstance
public void updateStateBasedOnAlgorithmResult(java.lang.String algorithmResult)
PuzzleInstance
updateStateBasedOnAlgorithmResult
in class PuzzleInstance
algorithmResult
- a boolean that describes the result of the algorithm.public boolean tryItResultsAreBinding()
PuzzleInstance
tryItResultsAreBinding
in class PuzzleInstance
public java.lang.String getProcessedSolution()
getProcessedSolution
in class PuzzleInstance
public java.lang.String uniqueIdentifier(Vertex v)
PuzzleInstance
uniqueIdentifier
in class PuzzleInstance