java.lang.Cloneable
, CMObject
, java.lang.Comparable<CMObject>
, Modifiable
, MsgListener
, StatsAffecting
, Tickable
Abjurer
, Alterer
, Apprentice
, Arcanist
, Archon
, Artisan
, Assassin
, Barbarian
, Bard
, Beastmaster
, Burglar
, Cavalier
, Charlatan
, Cleric
, Conjurer
, Delver
, Diviner
, Doomsayer
, Druid
, Enchanter
, Evoker
, Fighter
, Gaian
, Gaoler
, GenCharClass
, Healer
, Illusionist
, Jester
, Mage
, Mer
, Minstrel
, Missionary
, Monk
, Necromancer
, Oracle
, Paladin
, Pirate
, PlayerClass
, Prancer
, Purist
, Qualifier
, Ranger
, Reliquist
, Sailor
, Scholar
, Shaman
, SkyWatcher
, SpecialistMage
, StdCharClass
, Templar
, Thief
, Transmuter
, Trapper
, Wizard
public interface CharClass extends Tickable, StatsAffecting, MsgListener, CMObject, Modifiable
MOB.charStats()
,
CharStats
Modifier and Type | Interface | Description |
---|---|---|
static class |
CharClass.SubClassRule |
This defines how this class fits into the SUB subclassing class system.
|
Modifier and Type | Field | Description |
---|---|---|
static int |
ARMOR_ANY |
constant returned by allowedArmorLevel() to designate any allowed armors.
|
static int |
ARMOR_CLOTH |
constant returned by allowedArmorLevel() to designate only cloth armors.
|
static java.lang.String[] |
ARMOR_DESCS |
list of string descriptions for the CharClass.ARMOR_* constants, ordered by their value.
|
static int |
ARMOR_LEATHER |
constant returned by allowedArmorLevel() to designate only leather armors.
|
static java.lang.String[] |
ARMOR_LONGDESC |
list of long string descriptions for the CharClass.ARMOR_* constants, ordered by their value.
|
static int |
ARMOR_METALONLY |
constant returned by allowedArmorLevel() to designate only metal armors.
|
static int |
ARMOR_NONMETAL |
constant returned by allowedArmorLevel() to designate only nonmetal armors.
|
static int |
ARMOR_OREONLY |
constant returned by allowedArmorLevel() to designate only metal/stone armors.
|
static int |
ARMOR_VEGAN |
constant returned by allowedArmorLevel() to designate only plant/wood armors.
|
static long |
ARMOR_WEARMASK |
useful constant for calculating the wear locations to which armor restrictions apply
|
static java.lang.String[] |
GENFLAG_DESCS |
constant string list naming each of the GENFLAG_* constants in the order of their value
|
static int |
GENFLAG_NOEXP |
for character classes that define themselves using getParms, this can designate expless bitmaps
|
static int |
GENFLAG_NOLEVELS |
for character classes that define themselves using getParms, this can designate levelless bitmaps
|
static int |
GENFLAG_NORACE |
for character classes that define themselves using getParms, this can designate racelessness bitmaps
|
static int |
GENFLAG_THINQUALLIST |
for character classes that define themselves using getParms, this can designate expless bitmaps
|
static int |
WEAPONS_ALLCLERIC |
constant returned by allowedWeaponLevel() to designate any cleric weapons only.
|
static int |
WEAPONS_ANY |
constant returned by allowedWeaponLevel() to designate any weapons.
|
static int |
WEAPONS_BURGLAR |
constant returned by allowedWeaponLevel() to designate burglar class weapons only.
|
static int |
WEAPONS_DAGGERONLY |
constant returned by allowedWeaponLevel() to designate daggers only.
|
static int |
WEAPONS_EVILCLERIC |
constant returned by allowedWeaponLevel() to designate evil cleric weapons only.
|
static int |
WEAPONS_FLAILONLY |
constant returned by allowedWeaponLevel() to designate flails only.
|
static int |
WEAPONS_GOODCLERIC |
constant returned by allowedWeaponLevel() to designate good cleric weapons only.
|
static java.lang.String[] |
WEAPONS_LONGDESC |
list of string descriptions for the CharClass.WEAPONS_* constants, ordered by their value.
|
static int |
WEAPONS_MAGELIKE |
constant returned by allowedWeaponLevel() to designate mage weapons only.
|
static int |
WEAPONS_MERLIKE |
constant returned by allowedWeaponLevel() to designate natural weapons only.
|
static int |
WEAPONS_NATURAL |
constant returned by allowedWeaponLevel() to designate natural weapons only.
|
static int |
WEAPONS_NEUTRALCLERIC |
constant returned by allowedWeaponLevel() to designate neutral cleric weapons only.
|
static int |
WEAPONS_ROCKY |
constant returned by allowedWeaponLevel() to designate stone weapons only.
|
static int[][] |
WEAPONS_SETS |
constant set of integer arrays defining the Weapon.CLASS_* constants for the CharClass.WEAPONS_* constants, ordered by CharClass.WEAPONS_* values.
|
static int |
WEAPONS_STAFFONLY |
constant returned by allowedWeaponLevel() to designate staffs only.
|
static int |
WEAPONS_THIEFLIKE |
constant returned by allowedWeaponLevel() to designate swords/daggers only.
|
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_BALLISTICK, TICKID_CLAN, TICKID_CLANITEM, TICKID_DEADBODY_DECAY, TICKID_ELECTRONICS, TICKID_EMAIL, TICKID_EVENT, 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_SHORTERMASK, TICKID_SOLITARYMASK, TICKID_SPECIALCOMBAT, TICKID_SPECIALMANEUVER, TICKID_SPELL_AFFECT, TICKID_SUPPORT, TICKID_TIMEAUCTION, TICKID_TRAP_DESTRUCTION, TICKID_TRAP_RESET
Modifier and Type | Method | Description |
---|---|---|
int |
addedExpertise(MOB host,
ExpertiseLibrary.XType expertiseCode,
java.lang.String abilityID) |
Whenever a uses a skill, this method can return any additional expertise
granted explicitly by the class.
|
int |
adjustExperienceGain(MOB host,
MOB mob,
MOB victim,
int amount) |
Whenever a player or mob of this race gains experience, this method gets a chance
to modify the amount before the gain actually occurs.
|
int |
allowedArmorLevel() |
A code designating what kind of armor can be used by this class
without affecting their skills.
|
int |
allowedWeaponLevel() |
A code designating what kind of weapons can be used by this class
without fumbling their usage.
|
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.
|
boolean |
canBeABenificiary(MOB killer,
MOB killed,
MOB mob,
java.util.Set<MOB> followers) |
Returns whether this class, for the given mob of this class, should share in the
experience gained by the killer for having killed the killed.
|
boolean |
canBeADivider(MOB killer,
MOB killed,
MOB mob,
java.util.Set<MOB> followers) |
Returns whether this class, for the given mob of this class, should count in the division
of experience gained by the killer for having killed the killed.
|
int |
classDurationModifier(MOB myChar,
Ability skill,
int duration) |
This method is called whenever a player casts a spell which has a lasting
effect on the target.
|
int |
classLevelModifier(MOB myChar,
Ability skill,
int level) |
This method is called whenever a player casts a spell which has an affect
that is level dependent.
|
java.lang.String |
classParms() |
Returns any boot-time parameters that are required to fully define
this instance of a charclass.
|
void |
endCharacter(MOB mob) |
Called when a class is no longer the current dominant class of a player or mob,
usually during class training.
|
boolean |
expless() |
Whether players of this class can gain or lose experience points.
|
java.lang.String |
getArmorLimitDesc() |
Returns a text description of any armor restrictions
imposed by this class upon its members.
|
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.
|
java.lang.String |
getAttackDesc() |
Returns a text description of the attack bonuses
gained by members of this class.
|
int |
getBonusAttackLevel() |
Returns the number of bonus attack points received by members of
this class when they gain a level.
|
int |
getBonusPracLevel() |
Returns the number of bonus practices received by members of
this class when they gain a level.
|
java.lang.String |
getDamageDesc() |
Returns a text description of the damage bonuses
gained by members of this class.
|
java.lang.String |
getHitPointDesc() |
Returns a text description of the hit point bonuses
gained by members of this class.
|
java.lang.String |
getHitPointsFormula() |
Returns the formula used every time a player of this class gains
a level as this class.
|
int |
getLevelCap() |
Returns the highest class level that can be achieved
by a player who has this class.
|
int |
getLevelsPerBonusDamage() |
Returns the number of levels which must be gained by a member
of this class before they gain 1 more point of default damage
per hit.
|
java.lang.String |
getManaDesc() |
Returns a text description of the mana bonuses
gained by members of this class.
|
java.lang.String |
getManaFormula() |
Returns the formula used every time a player of this class gains
a level as this class.
|
java.lang.String |
getMaxStatDesc() |
Returns the list of max stats for members of 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 |
getMovementDesc() |
Returns a text description of the movement bonuses
gained by members of this class.
|
java.lang.String |
getMovementFormula() |
Returns the formula used every time a player of this class gains
a level as 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.
|
int |
getPracsFirstLevel() |
Returns the number of practices received by members of
this class when they are first created.
|
java.lang.String |
getPracticeDesc() |
Returns a text description of the practice bonuses
gained by members of this class.
|
java.lang.String |
getPrimeStatDesc() |
Returns the prime statistic of this class
|
java.lang.String |
getRaceQualDesc() |
Returns a text description of the race requirements
required to become a member of this character class
|
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.
|
CMSecurity.SecGroup |
getSecurityFlags(int classLevel) |
Returns a read only set of security flags granted to all mobs/players
who are this class, and the given class level or lower.
|
java.lang.String |
getStartingMoney() |
Returns a text string for amount of money for characters
starting as this character.
|
java.lang.String |
getStatQualDesc() |
Returns a text description of the stat qualifications
required to become a member of this character class
|
CharClass.SubClassRule |
getSubClassRule() |
This defines how this class fits into the SUB subclassing class system.
|
java.lang.String |
getTrainDesc() |
Returns a text description of the train bonuses
gained by members of this class.
|
int |
getTrainsFirstLevel() |
Returns the number of training sessions received by members of
this class when they are first created.
|
java.lang.String |
getWeaponLimitDesc() |
Returns a text description of any weapon restrictions
imposed by this class upon its members.
|
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.
|
boolean |
isAllowedRace(Race R) |
Returns whether the given race matches the required race
list rules.
|
boolean |
isGeneric() |
Returns whether this class is fully defined using the setParms
method, as opposed to being defined by its Java code.
|
boolean |
isValidClassBeneficiary(MOB killer,
MOB killed,
MOB mob,
java.util.Set<MOB> followers) |
Returns whether the given mob should share in the experience gained by the killer
for having killed the killed.
|
boolean |
isValidClassDivider(MOB killer,
MOB killed,
MOB mob,
java.util.Set<MOB> followers) |
Returns whether the given mob should count in the division of experience gained by the killer
for having killed the killed.
|
void |
level(MOB mob,
java.util.List<java.lang.String> gainedAbilityIDs) |
This method is called whenever a player gains a level while a member of this class.
|
boolean |
leveless() |
Whether players of this class can be associated with an experience level.
|
CharClass |
makeGenCharClass() |
Converts this class into a generic one, if it is not already.
|
int |
maxCommonSkills() |
Max number of common skills (both crafting and non-crafting) this class can learn.
|
int |
maxCraftingSkills() |
Max number of common crafting skills this class can learn.
|
int |
maxLanguages() |
Max number of languages this class can learn.
|
int |
maxNonCraftingSkills() |
Max number of common gathering/non-crafting skills this class can learn.
|
int[] |
maxStatAdjustments() |
Returns a bonus or negative adjustments to the base
maximum for the CharStats.STAT_* base statistics.
|
java.lang.String |
name() |
Returns the generally displayable name of this class.
|
java.lang.String |
name(int classLevel) |
Returns the displayable name of this class, when the mob is the
given class level.
|
java.lang.String[] |
nameSet() |
Returns all of the displayable names of this class.
|
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 |
qualifiesForThisClass(MOB mob,
boolean quiet) |
Returns whether this given mob qualifies for this class, and
optionally gives them an error message.
|
boolean |
raceless() |
Whether this class can be associated with a race.
|
void |
setClassParms(java.lang.String parms) |
Sets any boot-time parameters that are required to fully define
this instance of a charclass.
|
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.
|
void |
unLevel(MOB mob) |
This method is called whenever a player loses a level while a member of this class.
|
getSaveStatIndex, getStat, getStatCodes, isStat, setStat
executeMsg, okMessage
affectCharState, affectCharStats, affectPhyStats
getTickStatus, tick
static final int ARMOR_ANY
static final int ARMOR_CLOTH
static final int ARMOR_LEATHER
static final int ARMOR_NONMETAL
static final int ARMOR_VEGAN
static final int ARMOR_METALONLY
static final int ARMOR_OREONLY
static final long ARMOR_WEARMASK
static final java.lang.String[] ARMOR_DESCS
static final java.lang.String[] ARMOR_LONGDESC
static final int WEAPONS_ANY
static final int WEAPONS_DAGGERONLY
static final int WEAPONS_THIEFLIKE
static final int WEAPONS_NATURAL
static final int WEAPONS_BURGLAR
static final int WEAPONS_ROCKY
static final int WEAPONS_MAGELIKE
static final int WEAPONS_EVILCLERIC
static final int WEAPONS_GOODCLERIC
static final int WEAPONS_NEUTRALCLERIC
static final int WEAPONS_ALLCLERIC
static final int WEAPONS_FLAILONLY
static final int WEAPONS_MERLIKE
static final int WEAPONS_STAFFONLY
static final int[][] WEAPONS_SETS
static final java.lang.String[] WEAPONS_LONGDESC
static final int GENFLAG_NORACE
static final int GENFLAG_NOLEVELS
static final int GENFLAG_NOEXP
static final int GENFLAG_THINQUALLIST
static final java.lang.String[] GENFLAG_DESCS
java.lang.String name()
java.lang.String name(int classLevel)
java.lang.String[] nameSet()
java.lang.String baseClass()
int availabilityCode()
Area
boolean qualifiesForThisClass(MOB mob, boolean quiet)
mob
- the mob to evaluate the worthiness ofquiet
- false to give the mob error messages, true for silencejava.lang.String classParms()
setClassParms(String)
,
isGeneric()
void setClassParms(java.lang.String parms)
parms
- any parameters used to define this classclassParms()
,
isGeneric()
boolean isGeneric()
classParms()
,
makeGenCharClass()
,
setClassParms(String)
CharClass makeGenCharClass()
isGeneric()
CMSecurity.SecGroup getSecurityFlags(int classLevel)
classLevel
- the class level of the mobvoid startCharacter(MOB mob, boolean isBorrowedClass, boolean verifyOnly)
mob
- the mob being outfitted with this classisBorrowedClass
- whether the charclasses skills are borrowed(true) or permanentverifyOnly
- send true if no skills or changes are to be madevoid endCharacter(MOB mob)
mob
- the mob whose career to end or put asideboolean isValidClassBeneficiary(MOB killer, MOB killed, MOB mob, java.util.Set<MOB> followers)
killer
- the killer mobkilled
- who the killer mob killedmob
- the mob whose sharing capacity is being evaluatedfollowers
- the killers followersboolean isValidClassDivider(MOB killer, MOB killed, MOB mob, java.util.Set<MOB> followers)
killer
- the killer mobkilled
- who the killer mob killedmob
- the mob whose sharing capacity is being evaluatedfollowers
- the killers followersboolean canBeADivider(MOB killer, MOB killed, MOB mob, java.util.Set<MOB> followers)
killer
- the killer mobkilled
- who the killer mob killedmob
- the mob whose sharing capacity is being evaluatedfollowers
- the killers followersboolean canBeABenificiary(MOB killer, MOB killed, MOB mob, java.util.Set<MOB> followers)
killer
- the killer mobkilled
- who the killer mob killedmob
- the mob whose sharing capacity is being evaluatedfollowers
- the killers followersvoid grantAbilities(MOB mob, boolean isBorrowedClass)
mob
- the mob to give abilities to.isBorrowedClass
- whether the skills are savable (false) or temporary (true)AbilityContainer.addAbility(Ability)
void level(MOB mob, java.util.List<java.lang.String> gainedAbilityIDs)
mob
- the mob to level upgainedAbilityIDs
- the set of abilities/skill IDs gained during this leveling processint adjustExperienceGain(MOB host, MOB mob, MOB victim, int amount)
host
- the player or mob whose class is being queriedmob
- the player or mob gaining experiencevictim
- if applicable, the mob or player who died to give the expamount
- the amount of exp on track for gainingint addedExpertise(MOB host, ExpertiseLibrary.XType expertiseCode, java.lang.String abilityID)
host
- the player or mob whose class is being queriedexpertiseCode
- the expertise codeabilityID
- the Ability IDExpertiseLibrary.XType
void unLevel(MOB mob)
mob
- the mob to level downjava.util.List<Item> outfit(MOB myChar)
myChar
- one who will receive the objectsint classDurationModifier(MOB myChar, Ability skill, int duration)
myChar
- the caster or skill userskill
- the skill or spell that was cast.duration
- the default durationint classLevelModifier(MOB myChar, Ability skill, int level)
myChar
- the caster or skill userskill
- the skill or spell that was cast.level
- the default levelint getBonusPracLevel()
int getBonusAttackLevel()
int getAttackAttribute()
CharStats
int getPracsFirstLevel()
int getTrainsFirstLevel()
int getLevelsPerBonusDamage()
java.lang.String getMovementFormula()
getMovementDesc()
java.lang.String getMovementDesc()
getMovementFormula()
java.lang.String getHitPointsFormula()
getHitPointDesc()
java.lang.String getHitPointDesc()
getHitPointsFormula()
java.lang.String getManaFormula()
getManaDesc()
,
getAttackAttribute()
java.lang.String getManaDesc()
getManaFormula()
java.lang.String[] getRequiredRaceList()
isAllowedRace(Race)
boolean isAllowedRace(Race R)
R
- the race to checkgetRequiredRaceList()
Pair<java.lang.String,java.lang.Integer>[] getMinimumStatRequirements()
java.lang.String getWeaponLimitDesc()
java.lang.String getArmorLimitDesc()
java.lang.String getOtherLimitsDesc()
java.lang.String getOtherBonusDesc()
java.lang.String getStatQualDesc()
java.lang.String getRaceQualDesc()
java.lang.String getAttackDesc()
java.lang.String getPrimeStatDesc()
java.lang.String getDamageDesc()
java.lang.String getTrainDesc()
java.lang.String getPracticeDesc()
java.lang.String getMaxStatDesc()
java.lang.String getStartingMoney()
int getLevelCap()
int[] maxStatAdjustments()
CharStats
boolean raceless()
Race
boolean leveless()
boolean expless()
CharClass.SubClassRule getSubClassRule()
boolean showThinQualifyList()
int maxNonCraftingSkills()
int maxCraftingSkills()
int maxCommonSkills()
int maxLanguages()
int allowedArmorLevel()
ARMOR_WEARMASK
,
ARMOR_ANY
int allowedWeaponLevel()
WEAPONS_ANY