Package net.sf.colossus.variant
package net.sf.colossus.variant
A package containing classes and interfaces modeling a Colossus variant.
Currently this package has not yet been fully established. It is meant to hold all code relevant to model a variant including all the boards and creature types. The central access is through the Variant class.
This package is meant to be used both by server and client code, with no dependencies into either of them. Note that server and client should not share instances, since that would allow information to leak from the server into the clients. The server and each client should have their own instances of the classes in this package containing the information as known to each of them.
-
ClassDescriptionAll CreatureType existing in a VariantClass BattleHex holds game state for battle hex.A type of creature in a variant.Class CreatureTitan represent the CONSTANT information about a Titan (the game) Titan (the creature).This holds constants used in Hazard Terrain and Hazard HexsideMovement ConstantsStrike/RangeStrike ConstantsRANGESTRIKEFREE = "No effect on RangeStrike"; RANGESTRIKEBLOCKED = "Blocks RangeStrike"; RANGESTRIKEOCCUPIED = "Blocks RangeStrike unless Occupied"; RANGESTRIKEWALL = "Blocks RangeStrike unless Occupied - 1 Skill"; RANGESTRIKESKILLPENALTY = "Non-Native RangeStriker loses skill for each";Scope Constants - All - is everyone Natives means Natives vs anyone Patriots means Natives vs Foreigners Foreigners are Non-Natives vs anyone Imperials means Foreigners vs NativesSpecial effects.This is a typesafe enumeration of all hazard Hexsides, i.e.Superclass for BattleMap hazards: Terrain invalid input: '&' Hexsides,The effect on a combat category (strike|rangestrike, defense|attack), including the effect (what), the scope (who), and the adjustement (how much).This is a typesafe enumeration of all hazard terrains, i.e.Class Hex describes one general hex.Interface for an Oracle used for AI Hints.A legion, given as parameter to VariantHintOracleInterface for recruiting.Defined for which methods we currently abuse the Client to forward the question about variant specific information to static methods in TerrainRecruitLoader.Interface for the use of AI Hints.The style of play the AI should prefer.Access methods how information that is loaded e.g.Some object from which Game can ask for the current variant, instead of the static VariantSupport.getCurrentVariant() way.The master board as part of a variant.A master board terrain.Class MasterHex describes one Masterboard hex, without GUI info.The recruiting sub-tree in a terrain (or several terrains)Hub for all variant-specific information.Used internally to record the Acquirable name, points needed for recruiting, and the list of terrains in which the Acquirable dwells.