com.planet_ink.coffee_mud.Races.interfaces
Interface Race

All Superinterfaces:
java.lang.Cloneable, CMObject, java.lang.Comparable<CMObject>, Modifiable, MsgListener, StatsAffecting, Tickable
All Known Implementing Classes:
Aarakocran, AirElemental, Alligator, Angelfish, Animal, Ape, Arachnid, AshMephit, Avariel, Barghest, Bat, Bear, Beaver, Beholder, Bird, Blob, Buffalo, Bull, Bullywug, Calf, Cat, Centaur, Centipede, Chicken, Chimp, ClayGolem, Clockwork, ClownFish, Cobra, CornSnake, Cow, Crab, Cricket, Crocodile, Cub, Deer, Demodand, Demon, Deva, Devil, DireRat, DireWolf, Dog, Doll, Dolphin, Draconian, Dragon, Drow, Dryad, Duck, Duergar, Dummy, DustMephit, Dwarf, Eagle, EarthElemental, ElectricityElemental, Elephant, Elf, Equine, Faerie, FaerieDragon, Fey, Fido, FireElemental, Fish, FleshGolem, Flower, Fox, Frog, GardenSnake, Gargoyle, GenRace, Giant, GiantAmphibian, GiantAnimal, GiantCrab, GiantFish, GiantInsect, GiantLizard, GiantRat, GiantScorpion, GiantSeaHorse, GiantSpider, GiantTurtle, GiantWolf, GiantWorm, Githyanki, Gnoll, Gnome, Goat, Goblin, Goose, Gorilla, Grasshopper, GreatAmphibian, GreatBird, GreatCat, GreatFish, GreatLizard, Griffon, GrizzlyBear, HalfElf, Halfling, Harpy, Hawk, Hobbit, Hobgoblin, Horse, Human, Humanoid, IceMephit, Insect, Jelly, Kitten, Kobold, Lich, LightMephit, LightningMephit, Lion, Lizard, LizardMan, MagmaMephit, ManScorpion, Manticore, Mephit, Merfolk, MetalGolem, Millipede, Mindflayer, MineralMephit, Minotaur, Mold, Monkey, Moose, Mouse, Naga, Nymph, Ogre, OozeMephit, Orangutan, Orc, Owl, Pachyderm, Penguin, Pig, Pixie, Planetar, Plant, PlayerRace, PolarBear, Porcupine, Puma, Puppy, Python, Rabbit, Rat, Raven, Robin, Rodent, SaltMephit, Sasquatch, Scarab, SchoolMonster, Scorpion, SeaHorse, Seal, Selkie, Shadow, Shambler, Shark, Sheep, Skeleton, Slaad, Slime, SmallElfKin, SmallFish, SmokeMephit, Smurf, Snake, Solar, SongBird, Spider, Spirit, Squirrel, StdRace, SteamMephit, Stone, StoneGolem, Svirfneblin, Swordfish, Tabaxi, Tarantula, Toadstool, TreeGolem, Troll, Tumbleweed, Turtle, UmberHulk, Undead, Unicorn, Unique, Vine, VoidMephit, Walrus, WaterElemental, WaterFowl, Wemic, WereAmphibian, WereAnimal, WereBat, WereBear, WereRat, WereWolf, Whale, Wolf, WoodGolem, Worm, Wyvern, Yugoloth

public interface Race
extends Tickable, StatsAffecting, MsgListener, CMObject, Modifiable

A, well, Race


Field Summary
static int AGE_ANCIENT
          Age constant for the very very old
static int AGE_CHILD
          Age constant for a child
static java.lang.String[] AGE_DESCS
          Constant string list for the names of the age constants, in their order of value
static int AGE_INFANT
          Age constant for an infant
static int AGE_MATURE
          Age constant for the mature adult
static int AGE_MIDDLEAGED
          Age constant for the middle aged adult
static int AGE_OLD
          Age constant for the old
static int AGE_TODDLER
          Age constant for a toddler
static int AGE_VENERABLE
          Age constant for the very old
static int AGE_YOUNGADULT
          Age constant for a yound adultt
static int BODY_ANTENEA
          body part constant representing antenea
static int BODY_ARM
          body part constant representing arm
static int BODY_EAR
          body part constant representing ears
static int BODY_EYE
          body part constant representing eyes
static int BODY_FOOT
          body part constant representing feet
static int BODY_GILL
          body part constant representing gills
static int BODY_HAND
          body part constant representing hand
static int BODY_HEAD
          body part constant representing head
static int BODY_LEG
          body part constant representing legs
static int BODY_MOUTH
          body part constant representing mouth
static int BODY_NECK
          body part constant representing neck
static int BODY_NOSE
          body part constant representing noses
static int BODY_PARTS
          the number of body part constants
static int BODY_TAIL
          body part constant representing tails
static int BODY_TORSO
          body part constant representing torso
static int BODY_WAIST
          body part constant representing waists
static long[][] BODY_WEARGRID
          2 dimentional array, indexed first by body_ part constant, with each row having two values: the first being the Wearable.WORN_ location which is affected by having or losing this body part, and then the number of such body parts necessary to gain or lose one such wear location.
static long[] BODY_WEARVECTOR
          array mapping worn locations to body parts, indexed by body parts.
static int BODY_WING
          body part constant representing wings
static java.util.Map<java.lang.Object,java.lang.Integer> BODYPARTHASH
          constant hash of BODYPARTSTR
static java.util.Map<java.lang.String,java.lang.Integer> BODYPARTHASH_RL_LOWER
           
static java.lang.String[] BODYPARTSTR
          constant string list naming each of the BODY_* constants in the order of their value
static java.lang.String[] GENFLAG_DESCS
          constant string list naming each of the GENFLAG_* constants in the order of their value
static int GENFLAG_INFATIGUEABLE
          constant used to set and check the infatigueable flag on generic races
static int GENFLAG_NOCHARM
          constant used to set and check the charming flag on generic races
static int GENFLAG_NOCLASS
          constant used to set and check the classless flag on generic races
static int GENFLAG_NOEXP
          constant used to set and check the expless flag on generic races
static int GENFLAG_NOFERTILE
          constant used to set and check the fertility flag on generic races
static int GENFLAG_NOLEVELS
          constant used to set and check the levelless flag on generic races
static int YEARS_AGE_LIVES_FOREVER
          Age in Years constant for an immortal thing
 
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
 java.lang.String[] abilityImmunities()
          Returns the list of ability IDs of skills that this race is flatly and quietly immune to, whether malicious or not -- it just won't happen.
 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.
 void agingAffects(MOB mob, CharStats baseStats, CharStats charStats)
          Apply any affects of the given mob at the given age to the given base and/or current char stats.
 java.lang.String arriveStr()
          Returns the string describing what folks see when a member of this race enters a room.
 int availabilityCode()
          Returns one or a combination of the Area.THEME_* constants from the Area interface.
 int[] bodyMask()
          Returns an array indexed by body part codes as defined by the BODY_* constants in the Race interface.
 boolean canBreedWith(Race R)
          Returns true if the given race is actually the same as the current race.
 boolean classless()
          Whether this race can be associated with a character class.
 QuadVector<java.lang.String,java.lang.Integer,java.lang.Integer,java.lang.Boolean> culturalAbilities()
          Return a vector of skills, spells, and other ability ids granted to the given mob when they are created as this race.
 boolean expless()
          Whether players of this race can gain or lose experience points.
 long forbiddenWornBits()
          A bitmap showing which on locations a member of this race can not wear clothing, even if the members have one or more of the required limbs.
 java.lang.String getAbilitiesDesc()
          Returns the list of racial abilities granted to those of this race or nothing.
 int[] getAgingChart()
          Returns an integer array equal in size and index to the Race.AGE_* constants in the Race interface.
 int[] getBreathables()
          Returns resource codes of what this race can breathe as an atmosphere.
 DeadBody getCorpseContainer(MOB mob, Room room)
          Returns the corpse of a member of this race, populates it with the equipment of the given mob, and places it in the given room.
 java.lang.String getDispositionChgDesc()
          Returns the list of modifications to disposition done by this race or nothing.
 java.lang.String getLanguagesDesc()
          Returns the list of racial languages granted to those of this race or nothing.
 java.lang.String getPracAdjDesc()
          Returns the adjustment to practices made by this race (or nothing)
 java.lang.String getSensesChgDesc()
          Returns the list of modifications to senses done by this race or nothing.
 java.lang.String getStatAdjDesc()
          Returns a list of the stat adjustments made by this race
 java.lang.String getTrainAdjDesc()
          Returns the adjustment to trains made by this race (or nothing)
 int getXPAdjustment()
          Returns the amount, as a positive or negative % to adjust all experience gains.
 void grantAbilities(MOB mob, boolean isBorrowedRace)
          Typically called when a mob gains a level with this base-race, to allow the race to assign any new skills.
 java.lang.String healthText(MOB viewer, MOB mob)
          Returns a description of the given mobs description, by consulting the mobs curState().getHitPoints method.
 int heightVariance()
          The amount from 0-this to add to the minimum height to achieve a random height.
 boolean isGeneric()
          Whether this race object represents a Generic Race, or one which is modifiable by builders at run-time.
 java.lang.String leaveStr()
          Returns the string describing what folks see when a member of this race leaves a room.
 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 race.
 boolean leveless()
          Whether players of this race can be associated with an experience level.
 int lightestWeight()
          The lightest weight for a member of this race
 Race makeGenRace()
          Converts this race to a generic race (if it isn't already) and returns it.
 java.lang.String makeMobName(char gender, int age)
          Sends back a generic mob name appropriate to a mob of this race, at the given gender and age-group.
 Race mixRace(Race race, java.lang.String newRaceID, java.lang.String newRaceName)
          Converts this race to a generic race (if it isn't already) and mixes its attributes with the race passed it.
 Weapon myNaturalWeapon()
          Returns a Weapon object representing what a member of this race fights with when unarmed.
 java.util.List<RawMaterial> myResources()
          Returns a list of RawMaterial objects (usually GenFoodResource, GenLiquidResource, or GenResource items) representing what is left over of a member of this race after they've been butchered and cut up.
 java.lang.String name()
          Return a nice, displayable name for this race
 int numRacialEffects(MOB mob)
          Returns the number of racial effects elligible to the given lob.
 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 race just starting out.
 SearchIDList<Ability> racialAbilities(MOB mob)
          Return a vector of skills, spells, and other abilities granted to the given mob of the given mobs level.
 java.lang.String racialCategory()
          Which racial category this race falls in.
 ChameleonList<Ability> racialEffects(MOB mob)
          Return a vector of skills, spells, and other abilities granted to the given mob of the given mobs level.
 java.lang.String racialParms()
          If this race is modifiable at run time, this method will return an xml document describing the several attributes of this race.
 void setHeightWeight(PhyStats stats, char gender)
          Will initialize a player or mobs height and weight based on this races parameters.
 void setRacialParms(java.lang.String parms)
          If this race is modifiable at run time, this method will use the given xml document describing the several attributes of this race to populate this races fields and attributes.
 int shortestFemale()
          The minimum height of females of this race.
 int shortestMale()
          The minimum height of males of this race.
 void startRacing(MOB mob, boolean verifyOnly)
          After a mob is set or changed to a new race, this method should be called to finalize or initialize any settings from this race.
 int usageCount(int alter)
          Returns the number of registered usages of this race as of the moment of the call.
 boolean useRideClass()
          Whether this race is usually rideable; helps determine the appropriate java class to use.
 int weightVariance()
          The amount from 0-this to add to the minumum weight to achieve a random weight.
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Tickable
getTickStatus, tick
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.CMObject
copyOf, ID, initializeClass, newInstance
 
Methods inherited from interface java.lang.Comparable
compareTo
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.StatsAffecting
affectCharState, affectCharStats, affectPhyStats
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.MsgListener
executeMsg, okMessage
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Modifiable
getSaveStatIndex, getStat, getStatCodes, isStat, setStat
 

Field Detail

AGE_INFANT

static final int AGE_INFANT
Age constant for an infant

See Also:
Constant Field Values

AGE_TODDLER

static final int AGE_TODDLER
Age constant for a toddler

See Also:
Constant Field Values

AGE_CHILD

static final int AGE_CHILD
Age constant for a child

See Also:
Constant Field Values

AGE_YOUNGADULT

static final int AGE_YOUNGADULT
Age constant for a yound adultt

See Also:
Constant Field Values

AGE_MATURE

static final int AGE_MATURE
Age constant for the mature adult

See Also:
Constant Field Values

AGE_MIDDLEAGED

static final int AGE_MIDDLEAGED
Age constant for the middle aged adult

See Also:
Constant Field Values

AGE_OLD

static final int AGE_OLD
Age constant for the old

See Also:
Constant Field Values

AGE_VENERABLE

static final int AGE_VENERABLE
Age constant for the very old

See Also:
Constant Field Values

AGE_ANCIENT

static final int AGE_ANCIENT
Age constant for the very very old

See Also:
Constant Field Values

AGE_DESCS

static final java.lang.String[] AGE_DESCS
Constant string list for the names of the age constants, in their order of value


YEARS_AGE_LIVES_FOREVER

static final int YEARS_AGE_LIVES_FOREVER
Age in Years constant for an immortal thing

See Also:
Constant Field Values

BODY_ANTENEA

static final int BODY_ANTENEA
body part constant representing antenea

See Also:
Constant Field Values

BODY_EYE

static final int BODY_EYE
body part constant representing eyes

See Also:
Constant Field Values

BODY_EAR

static final int BODY_EAR
body part constant representing ears

See Also:
Constant Field Values

BODY_HEAD

static final int BODY_HEAD
body part constant representing head

See Also:
Constant Field Values

BODY_NECK

static final int BODY_NECK
body part constant representing neck

See Also:
Constant Field Values

BODY_ARM

static final int BODY_ARM
body part constant representing arm

See Also:
Constant Field Values

BODY_HAND

static final int BODY_HAND
body part constant representing hand

See Also:
Constant Field Values

BODY_TORSO

static final int BODY_TORSO
body part constant representing torso

See Also:
Constant Field Values

BODY_LEG

static final int BODY_LEG
body part constant representing legs

See Also:
Constant Field Values

BODY_FOOT

static final int BODY_FOOT
body part constant representing feet

See Also:
Constant Field Values

BODY_NOSE

static final int BODY_NOSE
body part constant representing noses

See Also:
Constant Field Values

BODY_GILL

static final int BODY_GILL
body part constant representing gills

See Also:
Constant Field Values

BODY_MOUTH

static final int BODY_MOUTH
body part constant representing mouth

See Also:
Constant Field Values

BODY_WAIST

static final int BODY_WAIST
body part constant representing waists

See Also:
Constant Field Values

BODY_TAIL

static final int BODY_TAIL
body part constant representing tails

See Also:
Constant Field Values

BODY_WING

static final int BODY_WING
body part constant representing wings

See Also:
Constant Field Values

BODY_PARTS

static final int BODY_PARTS
the number of body part constants

See Also:
Constant Field Values

BODYPARTSTR

static final java.lang.String[] BODYPARTSTR
constant string list naming each of the BODY_* constants in the order of their value


BODYPARTHASH

static final java.util.Map<java.lang.Object,java.lang.Integer> BODYPARTHASH
constant hash of BODYPARTSTR


GENFLAG_NOCLASS

static final int GENFLAG_NOCLASS
constant used to set and check the classless flag on generic races

See Also:
Constant Field Values

GENFLAG_NOLEVELS

static final int GENFLAG_NOLEVELS
constant used to set and check the levelless flag on generic races

See Also:
Constant Field Values

GENFLAG_NOEXP

static final int GENFLAG_NOEXP
constant used to set and check the expless flag on generic races

See Also:
Constant Field Values

GENFLAG_NOCHARM

static final int GENFLAG_NOCHARM
constant used to set and check the charming flag on generic races

See Also:
Constant Field Values

GENFLAG_NOFERTILE

static final int GENFLAG_NOFERTILE
constant used to set and check the fertility flag on generic races

See Also:
Constant Field Values

GENFLAG_INFATIGUEABLE

static final int GENFLAG_INFATIGUEABLE
constant used to set and check the infatigueable flag on generic races

See Also:
Constant Field Values

GENFLAG_DESCS

static final java.lang.String[] GENFLAG_DESCS
constant string list naming each of the GENFLAG_* constants in the order of their value


BODYPARTHASH_RL_LOWER

static final java.util.Map<java.lang.String,java.lang.Integer> BODYPARTHASH_RL_LOWER

BODY_WEARVECTOR

static final long[] BODY_WEARVECTOR
array mapping worn locations to body parts, indexed by body parts.


BODY_WEARGRID

static final long[][] BODY_WEARGRID
2 dimentional array, indexed first by body_ part constant, with each row having two values: the first being the Wearable.WORN_ location which is affected by having or losing this body part, and then the number of such body parts necessary to gain or lose one such wear location. A value of -1 means N/A

Method Detail

name

java.lang.String name()
Return a nice, displayable name for this race

Specified by:
name in interface CMObject
Specified by:
name in interface Tickable
Returns:
the races name
See Also:
Environmental.Name()

racialCategory

java.lang.String racialCategory()
Which racial category this race falls in.

Returns:
racial category

availabilityCode

int availabilityCode()
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 race is available for selection by users at char creation time, whether they can change to this race via spells, or whether the race is utterly unavailable to them.

Returns:
the availability/theme of this race
See Also:
Area

startRacing

void startRacing(MOB mob,
                 boolean verifyOnly)
After a mob is set or changed to a new race, this method should be called to finalize or initialize any settings from this race. The verify flag is almost always true, unless the mob is a new player being created, in which case false is sent.

Parameters:
mob - the mob or player being set to this race
verifyOnly - true flag unless this is a new player character

grantAbilities

void grantAbilities(MOB mob,
                    boolean isBorrowedRace)
Typically called when a mob gains a level with this base-race, to allow the race to assign any new skills. Can also be called just to populate a mob with race skills, so it should also confirm any lower level skills also.

Parameters:
mob - the mob to give abilities to.
isBorrowedRace - whether the skills are savable (false) or temporary (true)
See Also:
AbilityContainer.addAbility(Ability)

setHeightWeight

void setHeightWeight(PhyStats stats,
                     char gender)
Will initialize a player or mobs height and weight based on this races parameters.

Parameters:
stats - the PhyStats object to change
gender - the mobs gender 'M' or 'F'
See Also:
PhyStats

shortestMale

int shortestMale()
The minimum height of males of this race.

Returns:
minimum height of males in inches

shortestFemale

int shortestFemale()
The minimum height of females of this race.

Returns:
minimum height of females in inches

heightVariance

int heightVariance()
The amount from 0-this to add to the minimum height to achieve a random height.

Returns:
a range of inches to add to the mimiumum height

lightestWeight

int lightestWeight()
The lightest weight for a member of this race

Returns:
the lightest weight for something of this race

weightVariance

int weightVariance()
The amount from 0-this to add to the minumum weight to achieve a random weight.

Returns:
a range of pounds to add to the minimum weight

getAgingChart

int[] getAgingChart()
Returns an integer array equal in size and index to the Race.AGE_* constants in the Race interface. Each value in the index represents the first mudyear age of that age category.

Returns:
an integer array mapping ages to age categories
See Also:
Race

forbiddenWornBits

long forbiddenWornBits()
A bitmap showing which on locations a member of this race can not wear clothing, even if the members have one or more of the required limbs. The bitmap is made from Wearable.WORN_* constant values.

Returns:
the illegal wear location bitmap
See Also:
Item

bodyMask

int[] bodyMask()
Returns an array indexed by body part codes as defined by the BODY_* constants in the Race interface. Each value is either -1 to show that the body part does not apply, 0 to show that the body part is not found on this race, and 1 or more to show how many of that part this race normally has.

Returns:
an array of body parts

makeGenRace

Race makeGenRace()
Converts this race to a generic race (if it isn't already) and returns it. Returns itself if its already generic.

Returns:
the generic race.

mixRace

Race mixRace(Race race,
             java.lang.String newRaceID,
             java.lang.String newRaceName)
Converts this race to a generic race (if it isn't already) and mixes its attributes with the race passed it. A new race ID and a new race name must also be provided.

Parameters:
race - the race to use as a baseline
newRaceID - the id of the new race
newRaceName - the name of the new race
Returns:
the generic race.

outfit

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 race just starting out.

Parameters:
myChar - one who will receive the objects
Returns:
a vector of Item objects

healthText

java.lang.String healthText(MOB viewer,
                            MOB mob)
Returns a description of the given mobs description, by consulting the mobs curState().getHitPoints method.

Parameters:
viewer - the mob observing the health of this one
mob - the mob whose health to check
Returns:
a string describing his health
See Also:
MOB.curState(), CharState.getHitPoints()

abilityImmunities

java.lang.String[] abilityImmunities()
Returns the list of ability IDs of skills that this race is flatly and quietly immune to, whether malicious or not -- it just won't happen.

Returns:
the list of Ability IDs.

makeMobName

java.lang.String makeMobName(char gender,
                             int age)
Sends back a generic mob name appropriate to a mob of this race, at the given gender and age-group.

Parameters:
gender - the gender of the mob
age - the age category
Returns:
a good name

myNaturalWeapon

Weapon myNaturalWeapon()
Returns a Weapon object representing what a member of this race fights with when unarmed. This method may change what it returns on every call to mix things up a bit.

Returns:
a Weapon object representing claws or teeth, etc..
See Also:
Weapon

getBreathables

int[] getBreathables()
Returns resource codes of what this race can breathe as an atmosphere. The list is guaranteed sorted. If the list is empty, the race can breathe anything at all.

Returns:
a list of resource codes that this race can breathe
See Also:
RawMaterial

myResources

java.util.List<RawMaterial> myResources()
Returns a list of RawMaterial objects (usually GenFoodResource, GenLiquidResource, or GenResource items) representing what is left over of a member of this race after they've been butchered and cut up.

Returns:
a list of rawmaterial objects
See Also:
RawMaterial

getCorpseContainer

DeadBody getCorpseContainer(MOB mob,
                            Room room)
Returns the corpse of a member of this race, populates it with the equipment of the given mob, and places it in the given room. If the destroyBodyAfterUse returns true, it will also populate the body with the contents of the myResources method.

Parameters:
mob - the mob to use as a template for the body
room - the room to place the corpse in
Returns:
the corpse generated and placed in the room
See Also:
myResources()

isGeneric

boolean isGeneric()
Whether this race object represents a Generic Race, or one which is modifiable by builders at run-time.

Returns:
whether this race is modifiable at run-time.

useRideClass

boolean useRideClass()
Whether this race is usually rideable; helps determine the appropriate java class to use.

Returns:
whether this race is generally rideable

racialParms

java.lang.String racialParms()
If this race is modifiable at run time, this method will return an xml document describing the several attributes of this race.

Returns:
an xml document describing this race
See Also:
isGeneric(), setRacialParms(String)

setRacialParms

void setRacialParms(java.lang.String parms)
If this race is modifiable at run time, this method will use the given xml document describing the several attributes of this race to populate this races fields and attributes.

Parameters:
parms - an xml document describing this race
See Also:
isGeneric(), racialParms()

arriveStr

java.lang.String arriveStr()
Returns the string describing what folks see when a member of this race enters a room. Should give an idea of the gate or walking style of this race.

Returns:
what people see what this race enters a room

leaveStr

java.lang.String leaveStr()
Returns the string describing what folks see when a member of this race leaves a room. Should give an idea of the gate or walking style of this race.

Returns:
what people see what this race leaves a room

level

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 race. 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.

Parameters:
mob - the mob to level up
gainedAbilityIDs - the set of abilities/skill IDs gained during this leveling process

adjustExperienceGain

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.

Parameters:
host - the player or mob whose race object this is
mob - the player or mob gaining experience
victim - if applicable, the mob or player who died to give the exp
amount - the amount of exp on track for gaining
Returns:
the adjusted amount of experience to gain

canBreedWith

boolean canBreedWith(Race R)
Returns true if the given race is actually the same as the current race. Usually just ID().equals(ID()), or if either is human. Passing the race to itself in this method is a good way to check for general fertility.

Parameters:
R - the race to check
Returns:
true if its the same as this one, false otherwise

classless

boolean classless()
Whether this race can be associated with a character class.

Returns:
whether this race can have a class
See Also:
CharClass

leveless

boolean leveless()
Whether players of this race can be associated with an experience level.

Returns:
whether players of this race can have a level

expless

boolean expless()
Whether players of this race can gain or lose experience points.

Returns:
whether players of this race can gain or lose experience points

culturalAbilities

QuadVector<java.lang.String,java.lang.Integer,java.lang.Integer,java.lang.Boolean> culturalAbilities()
Return a vector of skills, spells, and other ability ids granted to the given mob when they are created as this race. The entries are the ability id, the default proficiency, the level, and whether it is auto-gained.

Returns:
a quadvector of the Ability IDs, profs, levels, auto-gained
See Also:
Ability

racialAbilities

SearchIDList<Ability> racialAbilities(MOB mob)
Return a vector of skills, spells, and other abilities granted to the given mob of the given mobs level.

Parameters:
mob - the mob to grant the abilities to
Returns:
a vector of the Ability objects
See Also:
Ability

racialEffects

ChameleonList<Ability> racialEffects(MOB mob)
Return a vector of skills, spells, and other abilities granted to the given mob of the given mobs level. This method is not functionally used because it doesn't quite work correctly yet.

Parameters:
mob - the mob to grant the abilities to
Returns:
a vector of the Ability objects
See Also:
Ability, numRacialEffects(MOB)

numRacialEffects

int numRacialEffects(MOB mob)
Returns the number of racial effects elligible to the given lob. Must faster and more efficient than getting the whole list and checking its size.

Parameters:
mob - the mob to grant the abilities to
Returns:
number of entries in the ability object vector

agingAffects

void agingAffects(MOB mob,
                  CharStats baseStats,
                  CharStats charStats)
Apply any affects of the given mob at the given age to the given base and/or current char stats.

Parameters:
mob - the mob to apply changes to
baseStats - permanent charstats changes
charStats - temporary charstats changes
See Also:
CharState

getXPAdjustment

int getXPAdjustment()
Returns the amount, as a positive or negative % to adjust all experience gains.

Returns:
xp adjustment 0-100, or -1 - -100 to adjust experience gains by.

getStatAdjDesc

java.lang.String getStatAdjDesc()
Returns a list of the stat adjustments made by this race

Returns:
a list of the stat adjustments made by this race

getPracAdjDesc

java.lang.String getPracAdjDesc()
Returns the adjustment to practices made by this race (or nothing)

Returns:
the adjustment to practices made by this race (or nothing)

getTrainAdjDesc

java.lang.String getTrainAdjDesc()
Returns the adjustment to trains made by this race (or nothing)

Returns:
the adjustment to trains made by this race (or nothing)

getSensesChgDesc

java.lang.String getSensesChgDesc()
Returns the list of modifications to senses done by this race or nothing.

Returns:
the list of modifications to senses done by this race

getDispositionChgDesc

java.lang.String getDispositionChgDesc()
Returns the list of modifications to disposition done by this race or nothing.

Returns:
the list of modifications to disposition done by this race

getAbilitiesDesc

java.lang.String getAbilitiesDesc()
Returns the list of racial abilities granted to those of this race or nothing.

Returns:
the list of racial abilities granted to those of this race

getLanguagesDesc

java.lang.String getLanguagesDesc()
Returns the list of racial languages granted to those of this race or nothing.

Returns:
the list of racial languages granted to those of this race

usageCount

int usageCount(int alter)
Returns the number of registered usages of this race as of the moment of the call. It includes mobs loaded at boot-time.

Parameters:
alter - TODO
Returns:
the usage count.