com.planet_ink.coffee_mud.CharClasses
Class Arcanist
java.lang.Object
com.planet_ink.coffee_mud.CharClasses.StdCharClass
com.planet_ink.coffee_mud.CharClasses.Thief
com.planet_ink.coffee_mud.CharClasses.Arcanist
- All Implemented Interfaces:
- CharClass, CMObject, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>
public class Arcanist
- extends Thief
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 |
Method Summary |
void |
affectCharStats(MOB affected,
CharStats affectableStats)
This method is called by the recoverCharStats() method on other MOB objects. |
int |
availabilityCode()
Returns one or a combination of the Area.THEME_*
constants from the Area interface. |
void |
endCharacter(MOB mob)
Called when a class is no longer the current dominant class of a player or mob,
usually during class training. |
void |
executeMsg(Environmental myHost,
CMMsg msg)
The general message event handler for the object. |
java.lang.String |
getManaFormula()
Returns the formula used every time a player of this class gains
a level as this class. |
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[] |
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. |
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. |
java.lang.String |
name()
Returns the generally displayable name of this class. |
boolean |
okMessage(Environmental myHost,
CMMsg msg)
The general message event previewer for the object. |
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.Thief |
allowedArmorLevel, allowedWeaponLevel, baseClass, disallowedWeaponClasses, getAttackAttribute, getBonusAttackLevel, getBonusPracLevel, getHitPointsFormula, getLevelsPerBonusDamage, getMovementFormula, grantAbilities, outfit |
Methods inherited from class com.planet_ink.coffee_mud.CharClasses.StdCharClass |
addedExpertise, adjustExperienceGain, affectCharState, affectPhyStats, armorCheck, armorFailMessage, buildDisallowedWeaponClasses, buildDisallowedWeaponClasses, buildRequiredWeaponMaterials, canBeABenificiary, canBeADivider, checkRaceQualifierChanges, classDurationModifier, classLevelModifier, classParms, cloneFix, compareTo, copyOf, expless, getArmorLimitDesc, getAttackDesc, getCodeNum, getDamageDesc, getHitPointDesc, getLevelCap, getManaDesc, getMaxStatDesc, getMovementDesc, getOtherLimitsDesc, 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, level, 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 |
Arcanist
public Arcanist()
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 Thief
- 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 Thief
- Returns:
- the displayable name of this object instance
- See Also:
CharClass.name(int)
,
CharClass.nameSet()
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 Thief
- Returns:
- the availability/theme of this class
- See Also:
Area
getManaFormula
public java.lang.String getManaFormula()
- Description copied from interface:
CharClass
- Returns the formula used every time a player of this class gains
a level as this class. The total is added (or removed on unlevel)
from the players mana score.
Variables may be included in the formula, which are:
@x1: Players current class level
@x2: Players adjusted Wisdom @x3: Players Max adjusted Wisdom
@x4: Players adjusted Intelligence @x5: Players Max adjusted Intelligence
@x6: Players adjusted Attack Attr @x7: Players Max adjusted Attack Attr
@x8: Players adjusted Charisma @x9: Players adjusted Constitution
- Specified by:
getManaFormula
in interface CharClass
- Overrides:
getManaFormula
in class Thief
- Returns:
- the formula that causes a gain or loss in mana
- See Also:
CharClass.getManaDesc()
,
CharClass.getAttackAttribute()
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 Thief
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 Thief
- 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 Thief
- 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 Thief
- Returns:
- a text description of bonus properties
okMessage
public boolean okMessage(Environmental myHost,
CMMsg msg)
- Description copied from interface:
MsgListener
- The general message event previewer for the object. Messages passed herein
are in a pending state, and may be safely modified or rejected without fear
that they might be in the middle of being executed. Messages passed herein
may not necessarily be FOR or FROM this object, but will almost always
represent events which want to happen in the same rom. This method should
always always return true UNLESS this message needs to be canceled, in which
case it is necessary to tell the mob initiating the event (CMMsg.source())
why it is being cancelled. Every game event goes through these methods.
- Specified by:
okMessage
in interface MsgListener
- Overrides:
okMessage
in class StdCharClass
- Parameters:
myHost
- either the initiator of the event, or the host of this objectmsg
- the CMMsg that wants to be executed
- Returns:
- whether this message is allowed to execute
- See Also:
CMMsg
,
CMMsg.source()
endCharacter
public void endCharacter(MOB mob)
- Description copied from interface:
CharClass
- Called when a class is no longer the current dominant class of a player or mob,
usually during class training.
- Specified by:
endCharacter
in interface CharClass
- Overrides:
endCharacter
in class StdCharClass
- Parameters:
mob
- the mob whose career to end or put aside
executeMsg
public void executeMsg(Environmental myHost,
CMMsg msg)
- Description copied from interface:
MsgListener
- The general message event handler for the object. Messages passed herein
may not necessarily be FOR this object, or from it, but will almost
always represent events happening in the same room. The messages
have already been through an approval process, so this method is
called only to affect the final execution of the meaning of the
message. Every game event goes through these methods.
- Specified by:
executeMsg
in interface MsgListener
- Overrides:
executeMsg
in class Thief
- Parameters:
myHost
- either the initiator of the event, or the host of this objectmsg
- the CMMsg that needs to be executed- See Also:
CMMsg
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 objecttickID
- 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
affectCharStats
public void affectCharStats(MOB affected,
CharStats affectableStats)
- Description copied from interface:
StatsAffecting
- This method is called by the recoverCharStats() method on other MOB objects. It is used
to transform the MOB baseCharStats() object into a finished charStats() object, both of
which are objects implementing the CharStats interface. See those methods for more information.
- Specified by:
affectCharStats
in interface StatsAffecting
- Overrides:
affectCharStats
in class StdCharClass
- Parameters:
affected
- the host of the CharStats object being affectedaffectableStats
- the particular CharStats object being affected- See Also:
CharStats
,
MOB
,
MOB.baseCharStats()
,
MOB.charStats()
,
MOB.recoverCharStats()