com.planet_ink.coffee_mud.Abilities.Druid
Class Druid_ShapeShift
java.lang.Object
com.planet_ink.coffee_mud.Abilities.StdAbility
com.planet_ink.coffee_mud.Abilities.Druid.Druid_ShapeShift
- All Implemented Interfaces:
- Ability, CMObject, Contingent, Environmental, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>
- Direct Known Subclasses:
- Druid_ShapeShift10, Druid_ShapeShift11, Druid_ShapeShift2, Druid_ShapeShift3, Druid_ShapeShift4, Druid_ShapeShift5, Druid_ShapeShift6, Druid_ShapeShift7, Druid_ShapeShift8, Druid_ShapeShift9
public class Druid_ShapeShift
- extends StdAbility
Fields inherited from class com.planet_ink.coffee_mud.Abilities.StdAbility |
affected, amDestroyed, canBeUninvoked, empty, invoker, isAnAutoEffect, lastCastHelp, miscText, proficiency, savable, tickDown, unInvoked |
Fields inherited from interface com.planet_ink.coffee_mud.Abilities.interfaces.Ability |
ACODE_CHANT, ACODE_COMMON_SKILL, ACODE_DESCS, ACODE_DESCS_, ACODE_DISEASE, ACODE_LANGUAGE, ACODE_POISON, ACODE_PRAYER, ACODE_PROPERTY, ACODE_SKILL, ACODE_SONG, ACODE_SPELL, ACODE_SUPERPOWER, ACODE_TECH, ACODE_THIEF_SKILL, ACODE_TRAP, ALL_ACODES, ALL_DOMAINS, CACHEINDEX_CLASSLESS, CACHEINDEX_EXPERTISE, CACHEINDEX_NORMAL, CACHEINDEX_TOTAL, CAN_AREAS, CAN_DESCS, CAN_EXITS, CAN_ITEMS, CAN_MOBS, CAN_ROOMS, COST_ALL, COST_NORMAL, COST_PCT, DOMAIN_ABJURATION, DOMAIN_ACROBATIC, DOMAIN_ALERT, DOMAIN_ALTERATION, DOMAIN_ANATOMY, DOMAIN_ANIMALAFFINITY, DOMAIN_ARCANELORE, DOMAIN_ARCHON, DOMAIN_ARMORUSE, DOMAIN_ARTISTIC, DOMAIN_BINDING, DOMAIN_BLESSING, DOMAIN_BREEDING, DOMAIN_BUILDINGSKILL, DOMAIN_CALLIGRAPHY, DOMAIN_COMBATFLUIDITY, DOMAIN_COMBATLORE, DOMAIN_COMMUNING, DOMAIN_CONJURATION, DOMAIN_CORRUPTION, DOMAIN_CRAFTINGSKILL, DOMAIN_CREATION, DOMAIN_CRIMINAL, DOMAIN_CURSING, DOMAIN_DANCING, DOMAIN_DEATHLORE, DOMAIN_DECEPTIVE, DOMAIN_DEEPMAGIC, DOMAIN_DESCS, DOMAIN_DETRAP, DOMAIN_DIRTYFIGHTING, DOMAIN_DIVINATION, DOMAIN_EDUCATIONLORE, DOMAIN_ENCHANTMENT, DOMAIN_ENDURING, DOMAIN_EPICUREAN, DOMAIN_EVANGELISM, DOMAIN_EVASIVE, DOMAIN_EVOCATION, DOMAIN_FITNESS, DOMAIN_FOOLISHNESS, DOMAIN_GATHERINGSKILL, DOMAIN_GRAPPLING, DOMAIN_HEALING, DOMAIN_HOLYPROTECTION, DOMAIN_ILLUSION, DOMAIN_INFLUENTIAL, DOMAIN_KICKING, DOMAIN_LEGAL, DOMAIN_MARTIALLORE, DOMAIN_MOONALTERING, DOMAIN_MOONSUMMONING, DOMAIN_NATURELORE, DOMAIN_NEUTRALIZATION, DOMAIN_PLANTCONTROL, DOMAIN_PLANTGROWTH, DOMAIN_PLAYING, DOMAIN_POISONING, DOMAIN_PRESERVING, DOMAIN_PUNCHING, DOMAIN_RACIALABILITY, DOMAIN_RESTORATION, DOMAIN_ROCKCONTROL, DOMAIN_SEATRAVEL, DOMAIN_SHAPE_SHIFTING, DOMAIN_SHIELDUSE, DOMAIN_SINGING, DOMAIN_STEALING, DOMAIN_STEALTHY, DOMAIN_STREETSMARTS, DOMAIN_THEATRE, DOMAIN_TRANSMUTATION, DOMAIN_TRAPPING, DOMAIN_VERBS, DOMAIN_VEXING, DOMAIN_WARDING, DOMAIN_WATERCONTROL, DOMAIN_WATERLORE, DOMAIN_WEAPON_USE, DOMAIN_WEATHER_MASTERY, FLAG_ADJUSTER, FLAG_AGGROFYING, FLAG_AIRBASED, FLAG_BINDING, FLAG_CASTER, FLAG_CHARMING, FLAG_CLANMAGIC, FLAG_DESCS, FLAG_EARTHBASED, FLAG_ENABLER, FLAG_FIREBASED, FLAG_HEALINGMAGIC, FLAG_HEATING, FLAG_HOLY, FLAG_IMMUNER, FLAG_INTOXICATING, FLAG_MINDALTERING, FLAG_MOVING, FLAG_NEUTRAL, FLAG_NOORDERING, FLAG_NOUNINVOKING, FLAG_PARALYZING, FLAG_POTENTIALLY_DEADLY, FLAG_RESISTER, FLAG_SUMMONING, FLAG_SUNSUMMONING, FLAG_TIDEALTERING, FLAG_TORTURING, FLAG_TRACKING, FLAG_TRANSPORTING, FLAG_UNCRAFTABLE, FLAG_UNHOLY, FLAG_WATERBASED, FLAG_WEATHERAFFECTING, FLAG_ZAPPER, QUALITY_BENEFICIAL_OTHERS, QUALITY_BENEFICIAL_SELF, QUALITY_DESCS, QUALITY_INDIFFERENT, QUALITY_MALICIOUS, QUALITY_OK_OTHERS, QUALITY_OK_SELF, RANGE_CHOICES, TICKS_ALMOST_FOREVER, TICKS_FOREVER, USAGE_DESCS, USAGE_HITPOINTS, USAGE_MANA, USAGE_MOVEMENT, USAGE_NADA, USAGEINDEX_HITPOINTS, USAGEINDEX_MANA, USAGEINDEX_MOVEMENT |
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 |
int |
abstractQuality()
Returns a constant value notifying the system of
the general quality of the skill, whether it is
malicious, beneficial, indifferent, or qualifiably
beneficial (ok), as well as whether it is intended
to target the invoker (self) or others. |
void |
affectCharStats(MOB affected,
CharStats affectableStats)
This method is called by the recoverCharStats() method on other MOB objects. |
void |
affectPhyStats(Physical affected,
PhyStats affectableStats)
This method is called by the recoverPhyStats() method on other Environmental objects. |
protected int |
canAffectCode()
Designates whether, when used as a property/effect, what sort of objects this
ability can affect. |
protected int |
canTargetCode()
Designates whether, when invoked as a skill, what sort of objects this
ability can effectively target. |
int |
castingQuality(MOB mob,
Physical target)
Serves a purpose similar to that of the Ability
abstractQuality() method, but it determines a more
exact quality based on a given invoker, target, and
assumes an imminent use of the skill. |
int |
classificationCode()
Returns a bitmap describing the general
classification of the skill (spell, skill,
chant, or property, etc) and its domain. |
java.lang.String |
displayText()
Gets the raw string used to show what this object looks like in the room. |
int |
getClassLevel(MOB mob)
|
int |
getMaxCharLevel(int raceLevel)
|
int |
getMaxRaceLevel(int classLevel)
|
Race |
getRace(int classLevel,
int raceCode)
|
int |
getRaceCode()
|
int |
getRaceLevel(int classLevel)
|
int |
getRaceLevel(MOB mob)
|
java.lang.String |
getRaceName(int classLevel,
int raceCode)
|
java.lang.String |
ID()
The CoffeeMud Java Class ID shared by all instances of
this object. |
boolean |
invoke(MOB mob,
java.util.List<java.lang.String> commands,
Physical givenTarget,
boolean auto,
int asLevel)
This method is called when a player or the system invokes this skill,
casts this spell, etc. |
static boolean |
isShapeShifted(MOB mob)
|
java.lang.String |
name()
The nice displayable name of this instance of this object |
void |
setMiscText(java.lang.String newText)
For objects which have false for their isGeneric method, this is used to set any internally
coded strings to change the nature or behavior of the object. |
void |
setRaceName(MOB mob)
|
java.lang.String[] |
triggerStrings()
A set of the command strings the user types to access
this command when it is listed as a skill ability. |
void |
unInvoke()
If this skill is uninvokable, this method will uninvoke it, remove it
as an effect on the target, and shut it down. |
Methods inherited from class com.planet_ink.coffee_mud.Abilities.StdAbility |
abilityCode, accountForYourself, addedTickTime, adjustBeneficialTickdownTime, adjustedLevel, adjustedMaxInvokerRange, adjustMaliciousTickdownTime, affectCharState, affecting, amDestroyed, appropriateToMyFactions, autoInvocation, beneficialAffect, beneficialVisualFizzle, beneficialWordsFizzle, bubbleAffect, buildCostArray, canAffect, canAffect, canBeLearnedBy, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, canTarget, castingQuality, castingTime, checkComponents, checkedCastingCost, cloneFix, combatCastingTime, compareTo, copyOf, description, destroy, disregardsArmorCheck, enchantQuality, evalTargetItem, executeMsg, experienceLevels, expertise, expirationDate, externalFiles, flags, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getBeneficialTickdownTime, getCodeNum, getHardOverrideManaCache, getInternalCodeNum, getMaliciousTickdownTime, getPersonalLevelAdjustments, getRawTrainingCost, getSaveStatIndex, getStat, getStatCodes, getTarget, getTarget, getTarget, getTarget, getTarget, getTarget, getTarget, getTargetItemFavorMOB, getTargetItemFavorMOB, getTargetItemFavorMOB, getTickDownRemaining, getTicksBetweenCasts, getTickStatus, getTimeOfNextCast, getTrainingCost, getX1Level, getX2Level, getX3Level, getX4Level, getX5Level, getXLEVELLevel, getXLOWCOSTLevel, getXLOWFREECOSTLevel, getXMAXRANGELevel, getXPCOSTAdjustment, getXPCOSTLevel, getXTIMELevel, helpProficiency, I, image, iniPracticesToPractice, initializeClass, invoke, invoker, isAutoInvoked, isGeneric, isNowAnAutoEffect, isSavable, isStat, L, makeLongLasting, makeNonUninvokable, maliciousAffect, maliciousFizzle, maxRange, minCastWaitTime, minRange, miscTextFormat, Name, newInstance, okMessage, overrideMana, possibleContainer, practice, practicesToPractice, preInvoke, proficiency, proficiencyCheck, properTargetList, properTargets, putInCommandlist, rawImage, requirements, restoreCombatState, sameAs, saveCombatState, setAbilityCode, setAffectedOne, setDescription, setDisplayText, setExpirationDate, setImage, setInvoker, setName, setProficiency, setSavable, setStat, setTickDownRemaining, setTimeOfNextCast, setTimeOfNextCast, somanticCastCode, somanticCastMask, spreadImmunity, startTickDown, teach, text, tick, usageCost, usageType, verbalCastCode, verbalCastMask, verbalSpeakCode |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
myRaceCode
public int myRaceCode
myRaceLevel
public int myRaceLevel
newRace
public Race newRace
raceName
public java.lang.String raceName
Druid_ShapeShift
public Druid_ShapeShift()
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 StdAbility
- Returns:
- the name of this class
name
public java.lang.String name()
- Description copied from interface:
Tickable
- The nice displayable name of this instance of this object
- Specified by:
name
in interface CMObject
- Specified by:
name
in interface Tickable
- Overrides:
name
in class StdAbility
- Returns:
- the displayable name of this object instance
- See Also:
Environmental.Name()
classificationCode
public int classificationCode()
- Description copied from interface:
Ability
- Returns a bitmap describing the general
classification of the skill (spell, skill,
chant, or property, etc) and its domain. It
is made up of the ACODE_* constants the Ability
interface, and optionally the DOMAIN_* constants
also defined in this interface.
- Specified by:
classificationCode
in interface Ability
- Overrides:
classificationCode
in class StdAbility
- Returns:
- ACODE_* constant classification
- See Also:
Ability
abstractQuality
public int abstractQuality()
- Description copied from interface:
Ability
- Returns a constant value notifying the system of
the general quality of the skill, whether it is
malicious, beneficial, indifferent, or qualifiably
beneficial (ok), as well as whether it is intended
to target the invoker (self) or others. These
constants are defined in the Ability interface and
called QUALITY_*
- Specified by:
abstractQuality
in interface Ability
- Overrides:
abstractQuality
in class StdAbility
- Returns:
- Ability.QUALITY_* constant classification
- See Also:
Ability
triggerStrings
public java.lang.String[] triggerStrings()
- Description copied from interface:
Ability
- A set of the command strings the user types to access
this command when it is listed as a skill ability.
- Specified by:
triggerStrings
in interface Ability
- Overrides:
triggerStrings
in class StdAbility
- Returns:
- an array of command invoking string words
- See Also:
Ability.putInCommandlist()
canAffectCode
protected int canAffectCode()
- Description copied from class:
StdAbility
- Designates whether, when used as a property/effect, what sort of objects this
ability can affect. Uses the Ability.CAN_* constants.
- Overrides:
canAffectCode
in class StdAbility
- Returns:
- a mask showing the type of objects this ability can affect
- See Also:
Ability
canTargetCode
protected int canTargetCode()
- Description copied from class:
StdAbility
- Designates whether, when invoked as a skill, what sort of objects this
ability can effectively target. Uses the Ability.CAN_* constants.
- Overrides:
canTargetCode
in class StdAbility
- Returns:
- a mask showing the type of objects this ability can target
- See Also:
Ability
displayText
public java.lang.String displayText()
- Description copied from interface:
Environmental
- Gets the raw string used to show what this object looks like in the room.
May be used as a basis for other methods, such as the title of rooms, and
what an exit looks like when open. The value for Items may be null if the item
is not displayed when the room is seen.
- Specified by:
displayText
in interface Environmental
- Overrides:
displayText
in class StdAbility
- Returns:
- the string describing how this object looks in the room
setMiscText
public void setMiscText(java.lang.String newText)
- Description copied from interface:
Environmental
- For objects which have false for their isGeneric method, this is used to set any internally
coded strings to change the nature or behavior of the object. For objects which have true
for their isGeneric method, this is used to set and parse the XML which will be used to
fill out the fields in this object. Since Ability objects are never Generic, this will always
be where parameters are read from an Ability instance.
- Specified by:
setMiscText
in interface Environmental
- Overrides:
setMiscText
in class StdAbility
- Parameters:
newText
- either an open internal text string, or XML
affectPhyStats
public void affectPhyStats(Physical affected,
PhyStats affectableStats)
- Description copied from interface:
StatsAffecting
- This method is called by the recoverPhyStats() method on other Environmental objects. It is used
to transform the Environmental basePhyStats() object into a finished phyStats() object, both of
which are objects implementing the PhyStats interface. See those methods for more information.
- Specified by:
affectPhyStats
in interface StatsAffecting
- Overrides:
affectPhyStats
in class StdAbility
- Parameters:
affected
- the host of the PhyStats object being affectedaffectableStats
- the particular PhyStats object being affected- See Also:
PhyStats
,
Environmental
,
Affectable.basePhyStats()
,
Affectable.phyStats()
,
Affectable.recoverPhyStats()
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 StdAbility
- 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()
unInvoke
public void unInvoke()
- Description copied from interface:
Ability
- If this skill is uninvokable, this method will uninvoke it, remove it
as an effect on the target, and shut it down.
- Specified by:
unInvoke
in interface Ability
- Overrides:
unInvoke
in class StdAbility
- See Also:
Ability.canBeUninvoked()
getClassLevel
public int getClassLevel(MOB mob)
setRaceName
public void setRaceName(MOB mob)
getMaxRaceLevel
public int getMaxRaceLevel(int classLevel)
getMaxCharLevel
public int getMaxCharLevel(int raceLevel)
getRaceLevel
public int getRaceLevel(MOB mob)
getRaceLevel
public int getRaceLevel(int classLevel)
getRaceCode
public int getRaceCode()
getRace
public Race getRace(int classLevel,
int raceCode)
getRaceName
public java.lang.String getRaceName(int classLevel,
int raceCode)
isShapeShifted
public static boolean isShapeShifted(MOB mob)
castingQuality
public int castingQuality(MOB mob,
Physical target)
- Description copied from interface:
Ability
- Serves a purpose similar to that of the Ability
abstractQuality() method, but it determines a more
exact quality based on a given invoker, target, and
assumes an imminent use of the skill. For this
reason, the QUALITY_OK_* constants should be avoided
in favor of the other Ability.QUALITY_* constants.
- Specified by:
castingQuality
in interface Ability
- Overrides:
castingQuality
in class StdAbility
- Parameters:
mob
- the person to use the skilltarget
- the potential target -- may be invoker
- Returns:
- Ability.QUALITY_* constant classification
- See Also:
Ability
,
Ability.abstractQuality()
invoke
public boolean invoke(MOB mob,
java.util.List<java.lang.String> commands,
Physical givenTarget,
boolean auto,
int asLevel)
- Description copied from interface:
Ability
- This method is called when a player or the system invokes this skill,
casts this spell, etc.
Calls the more complete invoke method without an empty command strings vector
unless target is non-null, in which case the vector will contain the name
of the target.
- Specified by:
invoke
in interface Ability
- Overrides:
invoke
in class StdAbility
- Parameters:
mob
- the player or mob invoking the skillcommands
- the parameters entered for the skill (minus trigger word)givenTarget
- null, unless being auto-invoked. Represents an override target.auto
- false if player enters command, true if system invokes the commandasLevel
- -1, unless being auto-invoked, when it is the level to invoke it at.
- Returns:
- whether the skill successfully invoked.