package net.sf.colossus.variant; /** * Interface for an Oracle used for AI Hints. * * These methods are to be used in the context of a given legion, * on a given master board hex and with a list of recruit options. * This is currently implemented by {@linkplain net.sf.colossus.ai.AbstractAI}. * * @author Romain Dolbeau */ public interface IHintOracle { /** * A creature with the given name could be recruited. */ public boolean canRecruit(String name); /** * A terrain can be reached by the legion with one move. */ public boolean canReach(String terrain); /** * The number of currently available creatures of the given type. */ public int creatureAvailable(String name); int creatureAvailable(CreatureType creatureType); /** * The height of the tallest legion that can attack * the legion we consider. * * 0 if none can attack. */ public int biggestAttackerHeight(); /** * The label of the master board hex under consideration. */ public String hexLabel(); }