com.planet_ink.coffee_mud.CharClasses
Class PlayerClass

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

public class PlayerClass
extends StdCharClass


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
PlayerClass()
           
 
Method Summary
 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.
 java.lang.String getStatQualDesc()
          Returns a text description of the stat qualifications required to become a member of this character class
 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.
 boolean loaded()
           
 java.lang.String name()
          Returns the generally displayable name of this class.
 boolean qualifiesForThisClass(MOB mob, boolean quiet)
          Returns whether this given mob qualifies for this class, and optionally gives them an error message.
 void setLoaded(boolean truefalse)
           
 boolean showThinQualifyList()
          Whether players of this class see qualifying skills only if they meet all prereqs.
 void startCharacter(MOB mob, boolean isBorrowedClass, boolean verifyOnly)
          This method should be called whenever a mob has this class added to their charStats list.
 
Methods inherited from class com.planet_ink.coffee_mud.CharClasses.StdCharClass
addedExpertise, adjustExperienceGain, affectCharState, affectCharStats, affectPhyStats, allowedArmorLevel, allowedWeaponLevel, armorCheck, armorFailMessage, buildDisallowedWeaponClasses, buildDisallowedWeaponClasses, buildRequiredWeaponMaterials, canBeABenificiary, canBeADivider, checkRaceQualifierChanges, classDurationModifier, classLevelModifier, classParms, cloneFix, compareTo, copyOf, disallowedWeaponClasses, endCharacter, executeMsg, expless, getArmorLimitDesc, getAttackAttribute, getAttackDesc, getBonusAttackLevel, getBonusPracLevel, getCodeNum, getDamageDesc, getHitPointDesc, getHitPointsFormula, getLevelCap, getLevelsPerBonusDamage, getManaDesc, getManaFormula, getMaxStatDesc, getMinimumStatRequirements, getMovementDesc, getMovementFormula, getOtherBonusDesc, getOtherLimitsDesc, getPracsFirstLevel, getPracticeDesc, getPrimeStatDesc, getRaceQualDesc, getRequiredRaceList, getSaveStatIndex, getSecurityFlags, getShortAttackAttribute, getStartingMoney, getStat, getStatCodes, getSubClassRule, getTickStatus, getTrainDesc, getTrainsFirstLevel, getWeaponLimitDesc, giveMobAbility, giveMobAbility, initializeClass, isAllowedRace, isGeneric, isQualifyingAuthority, isStat, isValidClassBeneficiary, isValidClassDivider, L, level, leveless, makeGenCharClass, maxCommonSkills, maxCraftingSkills, maxLanguages, maxNonCraftingSkills, maxStatAdjustments, name, nameSet, newInstance, okMessage, outfit, raceless, requiredArmorSourceMinor, requiredWeaponMaterials, sameAs, setClassParms, setStat, tick, unLevel, weaponCheck
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PlayerClass

public PlayerClass()
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 StdCharClass
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 StdCharClass
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 StdCharClass
Returns:
the base-class of this class

showThinQualifyList

public boolean showThinQualifyList()
Description copied from interface: CharClass
Whether players of this class see qualifying skills only if they meet all prereqs.

Specified by:
showThinQualifyList in interface CharClass
Overrides:
showThinQualifyList in class StdCharClass
Returns:
whether players of this class see qualifying skills only if they meet all prereqs

loaded

public boolean loaded()

setLoaded

public void setLoaded(boolean truefalse)

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 StdCharClass
Returns:
the availability/theme of this class
See Also:
Area

getStatQualDesc

public java.lang.String getStatQualDesc()
Description copied from interface: CharClass
Returns a text description of the stat qualifications required to become a member of this character class

Specified by:
getStatQualDesc in interface CharClass
Overrides:
getStatQualDesc in class StdCharClass
Returns:
a txt description of stat qualifications

qualifiesForThisClass

public boolean qualifiesForThisClass(MOB mob,
                                     boolean quiet)
Description copied from interface: CharClass
Returns whether this given mob qualifies for this class, and optionally gives them an error message. There are strange rules here. If the mob is null, then this method returns true unless subclassing is on, and this class is not a subclass. If the mob has a class of StdCharClass, then char creation rules apply, otherwise train rules apply.

Specified by:
qualifiesForThisClass in interface CharClass
Overrides:
qualifiesForThisClass in class StdCharClass
Parameters:
mob - the mob to evaluate the worthiness of
quiet - false to give the mob error messages, true for silence
Returns:
whether the given mob is worthy of this class

startCharacter

public void startCharacter(MOB mob,
                           boolean isBorrowedClass,
                           boolean verifyOnly)
Description copied from interface: CharClass
This method should be called whenever a mob has this class added to their charStats list. Its purpose is to outfit the mob with any necessary abilities, or perform other necessary changes to the mob to reflect the class addition or change. A character class is considered borrowed if its existence is derived from something else, or its skills/abilities should not be saved as a permanent feature of the mob.

Specified by:
startCharacter in interface CharClass
Overrides:
startCharacter in class StdCharClass
Parameters:
mob - the mob being outfitted with this class
isBorrowedClass - whether the charclasses skills are borrowed(true) or permanent
verifyOnly - send true if no skills or changes are to be made

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 StdCharClass
Parameters:
mob - the mob to give abilities to.
isBorrowedClass - whether the skills are savable (false) or temporary (true)
See Also:
AbilityContainer.addAbility(Ability)