public final class VariantSupport
extends java.lang.Object
Variant
class itselfModifier and Type | Class and Description |
---|---|
private static class |
VariantSupport.VariantLoadException
A helper class to store the exception that happened during
VariantLoading together with the task during which that happened.
|
Modifier and Type | Field and Description |
---|---|
private static IVariantHint |
aihl |
private static Variant |
CURRENT_VARIANT |
private static java.util.List<java.lang.String> |
dependUpon |
private static java.lang.String |
hintName |
private static java.util.List<java.lang.String> |
lCreaturesName |
private static boolean |
loadedVariant |
private static java.util.logging.Logger |
LOGGER |
private static java.lang.String |
mapName |
private static java.util.Properties |
markerNames |
private static int |
maxPlayers |
private static java.lang.String |
recruitsFileName |
private static java.util.Map<java.lang.String,java.lang.String> |
rememberCustomDirs |
private static java.lang.String |
varDirectory |
private static java.lang.String |
varFilename |
private static java.lang.String |
variantName |
private static javax.swing.text.Document |
varREADME |
Constructor and Description |
---|
VariantSupport() |
Modifier and Type | Method and Description |
---|---|
static void |
freshenVariant(java.lang.String tempVarFilename,
java.lang.String tempVarDirectory)
Clean-up the ResourceLoader caches to make room for a variant.
|
static java.util.List<java.lang.String> |
getBattlelandsDirectoriesList() |
static java.util.List<java.lang.String> |
getCreaturesNames() |
static Variant |
getCurrentVariant()
Retrieves the currently loaded variant.
|
static java.lang.String |
getFullPathFileForVariantName(java.lang.String varName) |
static int |
getHintedRecruitmentValueOffset(CreatureType creature) |
static int |
getHintedRecruitmentValueOffset(CreatureType creature,
java.util.List<IVariantHint.AIStyle> aiStyles) |
static java.util.List<java.lang.String> |
getImagesDirectoriesList() |
static java.util.List<CreatureType> |
getInitialSplitHint(MasterHex hex) |
static java.util.List<CreatureType> |
getInitialSplitHint(MasterHex hex,
java.util.List<IVariantHint.AIStyle> aiStyles) |
static java.lang.String |
getMapName() |
static java.util.Properties |
getMarkerNamesProperties() |
static int |
getMaxPlayers()
get maximum number of players in that variant
|
private static javax.swing.text.Document |
getMissingReadmeNotification() |
static CreatureType |
getRecruitHint(MasterBoardTerrain terrain,
IOracleLegion legion,
java.util.List<CreatureType> recruits,
IHintOracle oracle) |
static CreatureType |
getRecruitHint(MasterBoardTerrain terrain,
IOracleLegion legion,
java.util.List<CreatureType> recruits,
IHintOracle oracle,
java.util.List<IVariantHint.AIStyle> aiStyles) |
static java.util.List<java.lang.String> |
getVarDirectoriesList() |
static java.util.List<java.lang.String> |
getVarDirectoriesList(java.lang.String suffixPath) |
static java.lang.String |
getVarDirectory() |
static java.lang.String |
getVarFilename() |
static java.lang.String |
getVariantName() |
private static java.lang.String |
getVariantNameFromFilename(java.lang.String varFilename) |
static AllCreatureType |
loadCreatures()
Call immediately after loading variant, before using creatures.
|
private static void |
loadHints(Variant variant) |
private static java.util.Properties |
loadMarkerNamesProperties() |
static IVariantInitializer |
loadTerrainsAndRecruits(AllCreatureType creatureTypes) |
static Variant |
loadVariant(java.lang.String tempVariantName,
java.lang.String tempVarFilename,
java.lang.String tempVarDirectory,
boolean serverSide)
Try to load a Colossus Variant from the specified filename
in the specified path.
|
static Variant |
loadVariantByFile(java.io.File varFile,
boolean serverSide)
Load a Colossus Variant from the specified File
|
static Variant |
loadVariantByName(java.lang.String variantName,
boolean serverSide)
Load a Colossus Variant by name.
|
static void |
rememberFullPathFileForVariantName(java.lang.String varName,
java.lang.String varFullPathFilename) |
private static Variant |
tryLoadVariant(java.lang.String tempVariantName,
java.lang.String tempVarFilename,
java.lang.String tempVarDirectory,
boolean serverSide)
This does the actual work for
loadVariant(String, String, String, boolean)
This here is private and should be called only from the synchronized
before-mentioned method. |
private static final java.util.logging.Logger LOGGER
private static java.lang.String varDirectory
private static java.lang.String varFilename
private static java.lang.String variantName
private static java.lang.String mapName
private static java.lang.String recruitsFileName
private static java.lang.String hintName
private static java.util.List<java.lang.String> lCreaturesName
private static javax.swing.text.Document varREADME
private static java.util.List<java.lang.String> dependUpon
private static boolean loadedVariant
private static int maxPlayers
private static IVariantHint aihl
private static java.util.Properties markerNames
private static Variant CURRENT_VARIANT
private static java.util.Map<java.lang.String,java.lang.String> rememberCustomDirs
public static void freshenVariant(java.lang.String tempVarFilename, java.lang.String tempVarDirectory)
tempVarFilename
- The name of the file holding the
soon-to-be-loaded Variant definition.tempVarDirectory
- The path to the directory holding the
soon-to-be-loaded Variant.public static void rememberFullPathFileForVariantName(java.lang.String varName, java.lang.String varFullPathFilename)
public static java.lang.String getFullPathFileForVariantName(java.lang.String varName)
public static Variant loadVariantByName(java.lang.String variantName, boolean serverSide)
variantName
- The name of the variant.serverSide
- We're loading on a server.public static Variant loadVariantByFile(java.io.File varFile, boolean serverSide)
varFile
- The File to load as a Variant, probably selected
by user in a FileSelectionDialog, with full absolute path.serverSide
- We're loading on a server.private static java.lang.String getVariantNameFromFilename(java.lang.String varFilename) throws java.lang.Exception
java.lang.Exception
public static Variant loadVariant(java.lang.String tempVariantName, java.lang.String tempVarFilename, java.lang.String tempVarDirectory, boolean serverSide)
tempVarFilename
- The name of the file holding the Variant definition.tempVarDirectory
- The path to the directory holding the Variant.tempVariantName
- The actual plain name of the variantserverSide
- We're loading on a server.private static Variant tryLoadVariant(java.lang.String tempVariantName, java.lang.String tempVarFilename, java.lang.String tempVarDirectory, boolean serverSide) throws VariantSupport.VariantLoadException
loadVariant(String, String, String, boolean)
This here is private and should be called only from the synchronized
before-mentioned method.tempVariantName
- tempVarFilename
- tempVarDirectory
- serverSide
- VariantSupport.VariantLoadException
public static AllCreatureType loadCreatures()
private static javax.swing.text.Document getMissingReadmeNotification()
public static java.lang.String getVarDirectory()
public static java.lang.String getVarFilename()
public static java.lang.String getVariantName()
public static java.lang.String getMapName()
public static java.util.List<java.lang.String> getCreaturesNames()
public static java.util.List<java.lang.String> getVarDirectoriesList()
public static java.util.List<java.lang.String> getVarDirectoriesList(java.lang.String suffixPath)
public static java.util.List<java.lang.String> getImagesDirectoriesList()
public static java.util.List<java.lang.String> getBattlelandsDirectoriesList()
public static IVariantInitializer loadTerrainsAndRecruits(AllCreatureType creatureTypes)
private static java.util.Properties loadMarkerNamesProperties()
public static java.util.Properties getMarkerNamesProperties()
private static void loadHints(Variant variant)
public static CreatureType getRecruitHint(MasterBoardTerrain terrain, IOracleLegion legion, java.util.List<CreatureType> recruits, IHintOracle oracle)
public static CreatureType getRecruitHint(MasterBoardTerrain terrain, IOracleLegion legion, java.util.List<CreatureType> recruits, IHintOracle oracle, java.util.List<IVariantHint.AIStyle> aiStyles)
public static java.util.List<CreatureType> getInitialSplitHint(MasterHex hex)
public static java.util.List<CreatureType> getInitialSplitHint(MasterHex hex, java.util.List<IVariantHint.AIStyle> aiStyles)
public static int getHintedRecruitmentValueOffset(CreatureType creature)
public static int getHintedRecruitmentValueOffset(CreatureType creature, java.util.List<IVariantHint.AIStyle> aiStyles)
public static int getMaxPlayers()
public static Variant getCurrentVariant()