com.planet_ink.coffee_mud.CharClasses
Class Oracle

java.lang.Object
  extended by com.planet_ink.coffee_mud.CharClasses.StdCharClass
      extended by com.planet_ink.coffee_mud.CharClasses.Cleric
          extended by com.planet_ink.coffee_mud.CharClasses.Oracle
All Implemented Interfaces:
CharClass, CMObject, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>

public class Oracle
extends Cleric


Nested Class Summary
 
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.CharClasses.interfaces.CharClass
CharClass.SubClassRule
 
Field Summary
 
Fields inherited from class com.planet_ink.coffee_mud.CharClasses.StdCharClass
cachedRaceQualList, CODES, finalAllowedRaceSet, hitPointDescReplacePairs, hitPointsDesc, lastPropsCheckTime, manaDesc, manaDescReplacePairs, maxStatAdj, movementDesc, movementDescReplacePairs, names, outfitChoices, previousRaceListHash
 
Fields inherited from interface com.planet_ink.coffee_mud.CharClasses.interfaces.CharClass
ARMOR_ANY, ARMOR_CLOTH, ARMOR_DESCS, ARMOR_LEATHER, ARMOR_LONGDESC, ARMOR_METALONLY, ARMOR_NONMETAL, ARMOR_OREONLY, ARMOR_VEGAN, ARMOR_WEARMASK, GENFLAG_DESCS, GENFLAG_NOEXP, GENFLAG_NOLEVELS, GENFLAG_NORACE, GENFLAG_THINQUALLIST, WEAPONS_ALLCLERIC, WEAPONS_ANY, WEAPONS_BURGLAR, WEAPONS_DAGGERONLY, WEAPONS_EVILCLERIC, WEAPONS_FLAILONLY, WEAPONS_GOODCLERIC, WEAPONS_LONGDESC, WEAPONS_MAGELIKE, WEAPONS_MERLIKE, WEAPONS_NATURAL, WEAPONS_NEUTRALCLERIC, WEAPONS_ROCKY, WEAPONS_SETS, WEAPONS_STAFFONLY, WEAPONS_THIEFLIKE
 
Fields inherited from interface com.planet_ink.coffee_mud.core.interfaces.Tickable
STATUS_AFFECT, STATUS_ALIVE, STATUS_BEHAVIOR, STATUS_CLASS, STATUS_DEAD, STATUS_END, STATUS_FIGHT, STATUS_MISC, STATUS_MISC2, STATUS_MISC3, STATUS_MISC4, STATUS_MISC5, STATUS_MISC6, STATUS_MISC7, STATUS_NOT, STATUS_OTHER, STATUS_RACE, STATUS_REBIRTH, STATUS_SCRIPT, STATUS_START, STATUS_WEATHER, TICKID_AREA, TICKID_BEAMWEAPON, TICKID_CLAN, TICKID_CLANITEM, TICKID_DEADBODY_DECAY, TICKID_ELECTRONICS, TICKID_EMAIL, TICKID_EXIT_BEHAVIOR, TICKID_EXIT_REOPEN, TICKID_ITEM_BEHAVIOR, TICKID_ITEM_BOUNCEBACK, TICKID_LIGHT_FLICKERS, TICKID_LIVEAUCTION, TICKID_LONGERMASK, TICKID_MISCELLANEOUS, TICKID_MOB, TICKID_PROPERTY_SPECIAL, TICKID_QUEST, TICKID_READYTOSTOP, TICKID_ROOM_BEHAVIOR, TICKID_ROOM_ITEM_REJUV, TICKID_SOLITARYMASK, TICKID_SPECIALCOMBAT, TICKID_SPECIALMANEUVER, TICKID_SPELL_AFFECT, TICKID_SUPPORT, TICKID_TIMEAUCTION, TICKID_TRAP_DESTRUCTION, TICKID_TRAP_RESET
 
Constructor Summary
Oracle()
           
 
Method Summary
 int allowedWeaponLevel()
          A code designating what kind of weapons can be used by this class without fumbling their usage.
protected  int alwaysFlunksThisQuality()
           
 int availabilityCode()
          Returns one or a combination of the Area.THEME_* constants from the Area interface.
 java.lang.String baseClass()
          Returns the base-class of this class.
protected  java.util.Set<java.lang.Integer> disallowedWeaponClasses(MOB mob)
           
 int getAttackAttribute()
          Returns which of the CharStats.STAT_* constants should be used to calculate the standard attack prowess points given when a member of this class gains a level.
 Pair<java.lang.String,java.lang.Integer>[] getMinimumStatRequirements()
          Returns pairings of stat names and the minimum a player must have in the state in order to learn this class.
 java.lang.String getOtherBonusDesc()
          Returns a text description of any bonus properties granted by this class to its members.
 java.lang.String getOtherLimitsDesc()
          Returns a text description of any misc restrictions imposed by this class upon its members.
 java.lang.String[] getRequiredRaceList()
          Returns an array of Strings containing either the names of particular races, racial categories, or the word "ANY" to mean any class is OK.
 void grantAbilities(MOB mob, boolean isBorrowedClass)
          Typically called when a mob gains a level in this class, to allow the class to assign any new skills.
 java.lang.String ID()
          The CoffeeMud Java Class ID shared by all instances of this object.
 void initializeClass()
          Called ONCE after all objects are loaded, but before the map is read in during initialization.
 void level(MOB mob, java.util.List<java.lang.String> newAbilityIDs)
          This method is called whenever a player gains a level while a member of this class.
protected  int maxNonQualified(MOB mob)
           
 java.lang.String name()
          Returns the generally displayable name of this class.
protected  int numNonQualified(MOB mob)
           
 java.util.List<Item> outfit(MOB myChar)
          Returns a vector of Item objects representing the standard clothing, weapons, or other objects commonly given to players of this class just starting out.
 boolean tick(Tickable ticking, int tickID)
          this is the method which is called periodically by the threading engine.
 
Methods inherited from class com.planet_ink.coffee_mud.CharClasses.Cleric
allowedArmorLevel, getBonusAttackLevel, getBonusPracLevel, getHitPointsFormula, getLevelsPerBonusDamage, getManaFormula, holyQuality, okMessage
 
Methods inherited from class com.planet_ink.coffee_mud.CharClasses.StdCharClass
addedExpertise, adjustExperienceGain, affectCharState, affectCharStats, affectPhyStats, armorCheck, armorFailMessage, buildDisallowedWeaponClasses, buildDisallowedWeaponClasses, buildRequiredWeaponMaterials, canBeABenificiary, canBeADivider, checkRaceQualifierChanges, classDurationModifier, classLevelModifier, classParms, cloneFix, compareTo, copyOf, endCharacter, executeMsg, expless, getArmorLimitDesc, getAttackDesc, getCodeNum, getDamageDesc, getHitPointDesc, getLevelCap, getManaDesc, getMaxStatDesc, getMovementDesc, getMovementFormula, getPracsFirstLevel, getPracticeDesc, getPrimeStatDesc, getRaceQualDesc, getSaveStatIndex, getSecurityFlags, getShortAttackAttribute, getStartingMoney, getStat, getStatCodes, getStatQualDesc, getSubClassRule, getTickStatus, getTrainDesc, getTrainsFirstLevel, getWeaponLimitDesc, giveMobAbility, giveMobAbility, isAllowedRace, isGeneric, isQualifyingAuthority, isStat, isValidClassBeneficiary, isValidClassDivider, L, leveless, makeGenCharClass, maxCommonSkills, maxCraftingSkills, maxLanguages, maxNonCraftingSkills, maxStatAdjustments, name, nameSet, newInstance, qualifiesForThisClass, raceless, requiredArmorSourceMinor, requiredWeaponMaterials, sameAs, setClassParms, setStat, showThinQualifyList, startCharacter, unLevel, weaponCheck
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Oracle

public Oracle()
Method Detail

ID

public java.lang.String ID()
Description copied from interface: CMObject
The CoffeeMud Java Class ID shared by all instances of this object. Unlike the Java Class name, this method does not include package information. However, it must return a String value unique to its class category in the ClassLoader. Class categories include Libraries, Common, Areas, Abilities, Behaviors, CharClasses, Commands, Exits Locales, MOBS, Races, WebMacros, Basic Items, Armor, Weapons, ClanItems, Tech. The name is typically identical to the class name.

Specified by:
ID in interface CMObject
Overrides:
ID in class Cleric
Returns:
the name of this class

name

public java.lang.String name()
Description copied from interface: CharClass
Returns the generally displayable name of this class. Usually deferred to by name(int), which is more often called.

Specified by:
name in interface CharClass
Specified by:
name in interface CMObject
Specified by:
name in interface Tickable
Overrides:
name in class Cleric
Returns:
the displayable name of this object instance
See Also:
CharClass.name(int), CharClass.nameSet()

baseClass

public java.lang.String baseClass()
Description copied from interface: CharClass
Returns the base-class of this class. Typically only important in multi-classing systems that restrict class changing to those classes part of the same base class. True multi-classing systems don't need to worry about this value. Can be the same as the ID() method.

Specified by:
baseClass in interface CharClass
Overrides:
baseClass in class Cleric
Returns:
the base-class of this class

getAttackAttribute

public int getAttackAttribute()
Description copied from interface: CharClass
Returns which of the CharStats.STAT_* constants should be used to calculate the standard attack prowess points given when a member of this class gains a level.

Specified by:
getAttackAttribute in interface CharClass
Overrides:
getAttackAttribute in class Cleric
Returns:
a CharStats.STAT_* attribute constant code
See Also:
CharStats

allowedWeaponLevel

public int allowedWeaponLevel()
Description copied from interface: CharClass
A code designating what kind of weapons can be used by this class without fumbling their usage.

Specified by:
allowedWeaponLevel in interface CharClass
Overrides:
allowedWeaponLevel in class Cleric
Returns:
the encoded allowed weapon type
See Also:
CharClass.WEAPONS_ANY

disallowedWeaponClasses

protected java.util.Set<java.lang.Integer> disallowedWeaponClasses(MOB mob)
Overrides:
disallowedWeaponClasses in class Cleric

alwaysFlunksThisQuality

protected int alwaysFlunksThisQuality()
Overrides:
alwaysFlunksThisQuality in class Cleric

initializeClass

public void initializeClass()
Description copied from interface: CMObject
Called ONCE after all objects are loaded, but before the map is read in during initialization.

Specified by:
initializeClass in interface CMObject
Overrides:
initializeClass in class Cleric

availabilityCode

public int availabilityCode()
Description copied from interface: CharClass
Returns one or a combination of the Area.THEME_* constants from the Area interface. This bitmap then describes the types of areas, skills, and classes which can interact. This bitmap is also used to to tell whether the class is available for selection by users at char creation time, whether they can change to this class via spells, or whether the class is utterly unavailable to them.

Specified by:
availabilityCode in interface CharClass
Overrides:
availabilityCode in class Cleric
Returns:
the availability/theme of this class
See Also:
Area

tick

public boolean tick(Tickable ticking,
                    int tickID)
Description copied from interface: Tickable
this is the method which is called periodically by the threading engine. How often it is called depends on the parameters passed to the threadding engine when it is submitted for thread access. Typically the period is once per TIME_TICK period, but that is determined when the object is submitted to the thread engine.

Specified by:
tick in interface Tickable
Overrides:
tick in class StdCharClass
Parameters:
ticking - a reference to this Tickable object
tickID - the TICKID_ constant describing this periodic call, as defined in Tickable
Returns:
true always, unless this object no longer wishes to ever tick again, in which case false
See Also:
Tickable, ServiceEngine, TickableGroup

getRequiredRaceList

public java.lang.String[] getRequiredRaceList()
Description copied from interface: CharClass
Returns an array of Strings containing either the names of particular races, racial categories, or the word "ANY" to mean any class is OK. All others are not permitted to be this class.

Specified by:
getRequiredRaceList in interface CharClass
Overrides:
getRequiredRaceList in class Cleric
Returns:
a list of races, racecats, or ANY
See Also:
CharClass.isAllowedRace(Race)

getMinimumStatRequirements

public Pair<java.lang.String,java.lang.Integer>[] getMinimumStatRequirements()
Description copied from interface: CharClass
Returns pairings of stat names and the minimum a player must have in the state in order to learn this class.

Specified by:
getMinimumStatRequirements in interface CharClass
Overrides:
getMinimumStatRequirements in class Cleric
Returns:
a pairs of stat names and minimum

getOtherBonusDesc

public java.lang.String getOtherBonusDesc()
Description copied from interface: CharClass
Returns a text description of any bonus properties granted by this class to its members.

Specified by:
getOtherBonusDesc in interface CharClass
Overrides:
getOtherBonusDesc in class StdCharClass
Returns:
a text description of bonus properties

getOtherLimitsDesc

public java.lang.String getOtherLimitsDesc()
Description copied from interface: CharClass
Returns a text description of any misc restrictions imposed by this class upon its members.

Specified by:
getOtherLimitsDesc in interface CharClass
Overrides:
getOtherLimitsDesc in class Cleric
Returns:
a text description of misc retrictions

numNonQualified

protected int numNonQualified(MOB mob)

maxNonQualified

protected int maxNonQualified(MOB mob)

grantAbilities

public void grantAbilities(MOB mob,
                           boolean isBorrowedClass)
Description copied from interface: CharClass
Typically called when a mob gains a level in this class, to allow the class to assign any new skills. Can also be called just to populate a mob with class skills, so it should also confirm any lower level skills also.

Specified by:
grantAbilities in interface CharClass
Overrides:
grantAbilities in class Cleric
Parameters:
mob - the mob to give abilities to.
isBorrowedClass - whether the skills are savable (false) or temporary (true)
See Also:
AbilityContainer.addAbility(Ability)

outfit

public java.util.List<Item> outfit(MOB myChar)
Description copied from interface: CharClass
Returns a vector of Item objects representing the standard clothing, weapons, or other objects commonly given to players of this class just starting out.

Specified by:
outfit in interface CharClass
Overrides:
outfit in class Cleric
Parameters:
myChar - one who will receive the objects
Returns:
a vector of Item objects

level

public void level(MOB mob,
                  java.util.List<java.lang.String> newAbilityIDs)
Description copied from interface: CharClass
This method is called whenever a player gains a level while a member of this class. If there are any special things which need to be done to a player who gains a level, they can be done in this method. By default, it doesn't do anything.

Specified by:
level in interface CharClass
Overrides:
level in class StdCharClass
Parameters:
mob - the mob to level up
newAbilityIDs - the set of abilities/skill IDs gained during this leveling process