com.planet_ink.coffee_mud.Items.Weapons
Class ArchonStaff
java.lang.Object
com.planet_ink.coffee_mud.Items.Basic.StdItem
com.planet_ink.coffee_mud.Items.Weapons.StdWeapon
com.planet_ink.coffee_mud.Items.Weapons.Staff
com.planet_ink.coffee_mud.Items.Weapons.ArchonStaff
- All Implemented Interfaces:
- Affectable, Behavable, CMObject, Contingent, DBIdentifiable, Environmental, Modifiable, MsgListener, Physical, PhysicalAgent, Readable, Rider, StatsAffecting, Tickable, AmmunitionWeapon, ArchonOnly, Item, MiscMagic, Wand, Weapon, Wearable, java.lang.Cloneable, java.lang.Comparable<CMObject>
public class ArchonStaff
- extends Staff
- implements Wand, MiscMagic, ArchonOnly
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Wearable |
Wearable.CODES |
Field Summary |
protected static java.lang.String[] |
MAGIC_WORDS
|
Fields inherited from class com.planet_ink.coffee_mud.Items.Weapons.Staff |
secretWord |
Fields inherited from class com.planet_ink.coffee_mud.Items.Basic.StdItem |
affectPhyStats, affects, baseGoldValue, basePhyStats, behaviors, cachedImageName, CODES, databaseID, description, destroyed, displayText, dispossessionTime, material, me, miscText, myContainer, myUses, myWornCode, name, owner, phyStats, properWornBitmap, rawImageName, riding, scripts, secretIdentity, tickCtr, tickStatus, wornLogicalAnd, xtraValues |
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 |
Fields inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Wearable |
DEFAULT_WORN_CODES, DEFAULT_WORN_DEPENDENCYGRID, DEFAULT_WORN_DESCS, DEFAULT_WORN_ORDER, DEFAULT_WORN_USUAL_NAMES, DEFAULT_WORN_WEIGHT_POINTS, DEFAULT_WORN_WEIGHTS, FILTER_ANY, FILTER_MOBINVONLY, FILTER_ROOMONLY, FILTER_UNWORNONLY, FILTER_WORNONLY, HIGHEST_WORN_CODE, IN_INVENTORY, WORN_ABOUT_BODY, WORN_ARMS, WORN_BACK, WORN_EARS, WORN_EYES, WORN_FEET, WORN_FLOATING_NEARBY, WORN_HANDS, WORN_HEAD, WORN_HELD, WORN_LEFT_FINGER, WORN_LEFT_WRIST, WORN_LEGS, WORN_MOUTH, WORN_NECK, WORN_RIGHT_FINGER, WORN_RIGHT_WRIST, WORN_TORSO, WORN_WAIST, WORN_WIELD |
Fields inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Weapon |
CLASS_AXE, CLASS_BLUNT, CLASS_DAGGER, CLASS_DESCS, CLASS_EDGED, CLASS_FLAILED, CLASS_HAMMER, CLASS_NATURAL, CLASS_POLEARM, CLASS_RANGED, CLASS_STAFF, CLASS_SWORD, CLASS_THROWN, TYPE_BASHING, TYPE_BURNING, TYPE_BURSTING, TYPE_DESCS, TYPE_FROSTING, TYPE_GASSING, TYPE_LASERING, TYPE_MELTING, TYPE_NATURAL, TYPE_PIERCING, TYPE_SHOOT, TYPE_SLASHING, TYPE_SONICING, TYPE_STRIKING |
Method Summary |
void |
affectCharState(MOB mob,
CharState affectableState)
This method is called by the recoverCharState() method on other MOB objects. |
boolean |
checkWave(MOB mob,
java.lang.String message)
Returns whether the given mob can use this wand. |
void |
executeMsg(Environmental myHost,
CMMsg msg)
The general message event handler for the object. |
java.lang.String |
ID()
The CoffeeMud Java Class ID shared by all instances of
this object. |
int |
maxUses()
Gets the number of times this wand can be invoked before
being drained and empty useless stick. |
boolean |
okMessage(Environmental myHost,
CMMsg msg)
The general message event previewer for the object. |
boolean |
safetyCheck(MOB mob,
java.lang.String message)
|
void |
setMaxUses(int newMaxUses)
Sets the number of times this wand can be invoked before
being drained and empty useless stick. |
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 |
setSpell(Ability theSpell)
Sets the spell ability object that this wand can cast. |
void |
waveIfAble(MOB mob,
Physical afftarget,
java.lang.String message)
Checks to see if the mob can invoke this wand against the
given target, given the message they just said out loud. |
Methods inherited from class com.planet_ink.coffee_mud.Items.Weapons.StdWeapon |
affectPhyStats, ammunitionCapacity, ammunitionRemaining, ammunitionType, hitString, inventoryAmmoCheck, isFreeStanding, maxRange, minRange, missString, recoverOwner, recoverPhyStats, requiresAmmunition, setAmmoCapacity, setAmmoRemaining, setAmmunitionType, setRanges, setUsesRemaining, setWeaponClassification, setWeaponDamageType, subjectToWearAndTear, weaponClassification, weaponDamageType, weaponHealth |
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdItem |
abilityImbuesMagic, addBehavior, addEffect, addNonUninvokableEffect, addScript, affectCharStats, alreadyWornMsg, amBeingWornProperly, amDestroyed, amWearingAt, baseGoldValue, basePhyStats, behaviors, canSaveDatabaseID, canWear, canWearComplete, cloneFix, compareProperLocations, compareTo, container, copyOf, databaseID, delAllBehaviors, delAllEffects, delAllScripts, delBehavior, delEffect, delScript, description, description, destroy, displayText, displayText, eachBehavior, eachEffect, eachScript, effects, expirationDate, fetchBehavior, fetchBehavior, fetchEffect, fetchEffect, fetchScript, fitsOn, getCodeNum, getSaveStatIndex, getStat, getStatCodes, getTickStatus, I, image, initializeClass, isGeneric, isReadable, isSavable, isStat, L, material, miscTextFormat, name, Name, name, newInstance, numBehaviors, numberOfItems, numEffects, numScripts, owner, phyStats, rawImage, rawLogicalAnd, rawProperLocationBitmap, rawSecretIdentity, rawWornCode, readableText, recursiveWeight, removeFromOwnerContainer, riding, sameAs, scripts, setBasePhyStats, setBaseValue, setContainer, setDatabaseID, setDescription, setDisplayText, setExpirationDate, setImage, setMaterial, setName, setOwner, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, setReadable, setReadableText, setRiding, setSavable, setSecretIdentity, setStat, stopTicking, tackOns, text, tick, ultimateContainer, unWear, usesRemaining, wearAt, wearEvenIfImpossible, wearIfPossible, wearIfPossible, whereCantWear |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Item |
baseGoldValue, container, material, numberOfItems, owner, rawSecretIdentity, recursiveWeight, removeFromOwnerContainer, secretIdentity, setBaseValue, setContainer, setMaterial, setOwner, setSecretIdentity, setUsesRemaining, stopTicking, subjectToWearAndTear, ultimateContainer, usesRemaining, value |
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Environmental |
description, displayText, expirationDate, image, isGeneric, L, maxRange, minRange, miscTextFormat, Name, rawImage, sameAs, setDescription, setDisplayText, setExpirationDate, setImage, setName, text |
Methods inherited from interface java.lang.Comparable |
compareTo |
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Affectable |
addEffect, addNonUninvokableEffect, basePhyStats, delAllEffects, delEffect, eachEffect, effects, fetchEffect, fetchEffect, numEffects, phyStats, recoverPhyStats, setBasePhyStats |
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Behavable |
addBehavior, addScript, behaviors, delAllBehaviors, delAllScripts, delBehavior, delScript, eachBehavior, eachScript, fetchBehavior, fetchBehavior, fetchScript, numBehaviors, numScripts, scripts |
Methods inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Wearable |
amBeingWornProperly, amWearingAt, canWear, compareProperLocations, fitsOn, rawLogicalAnd, rawProperLocationBitmap, rawWornCode, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, unWear, wearAt, wearEvenIfImpossible, wearIfPossible, wearIfPossible, whereCantWear |
MAGIC_WORDS
protected static final java.lang.String[] MAGIC_WORDS
ArchonStaff
public ArchonStaff()
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 Staff
- Returns:
- the name of this class
maxUses
public int maxUses()
- Description copied from interface:
Wand
- Gets the number of times this wand can be invoked before
being drained and empty useless stick.
- Specified by:
maxUses
in interface Wand
- Overrides:
maxUses
in class Staff
- Returns:
- the number of times this wand can be invoked
- See Also:
Wand.setMaxUses(int)
setMaxUses
public void setMaxUses(int newMaxUses)
- Description copied from interface:
Wand
- Sets the number of times this wand can be invoked before
being drained and empty useless stick.
- Specified by:
setMaxUses
in interface Wand
- Overrides:
setMaxUses
in class Staff
- Parameters:
newMaxUses
- the number of times this wand can be invoked- See Also:
Wand.maxUses()
setSpell
public void setSpell(Ability theSpell)
- Description copied from interface:
Wand
- Sets the spell ability object that this wand can cast.
- Specified by:
setSpell
in interface Wand
- Overrides:
setSpell
in class Staff
- Parameters:
theSpell
- the spell ability object that this wand can cast.- See Also:
Wand.getSpell()
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 Staff
- Parameters:
newText
- either an open internal text string, or XML
safetyCheck
public boolean safetyCheck(MOB mob,
java.lang.String message)
checkWave
public boolean checkWave(MOB mob,
java.lang.String message)
- Description copied from interface:
Wand
- Returns whether the given mob can use this wand. They
must be holding it, and must say the magic word, etc.
- Specified by:
checkWave
in interface Wand
- Overrides:
checkWave
in class Staff
- Parameters:
mob
- the mob to check for waving abilitymessage
- what the mob said prior to the check
- Returns:
- true if the wand can be invoked, false otherwise
waveIfAble
public void waveIfAble(MOB mob,
Physical afftarget,
java.lang.String message)
- Description copied from interface:
Wand
- Checks to see if the mob can invoke this wand against the
given target, given the message they just said out loud.
- Specified by:
waveIfAble
in interface Wand
- Overrides:
waveIfAble
in class Staff
- Parameters:
mob
- the invoker of the wandafftarget
- the target of the say messagemessage
- the thing said by the wand invoker
affectCharState
public void affectCharState(MOB mob,
CharState affectableState)
- Description copied from interface:
StatsAffecting
- This method is called by the recoverCharState() method on other MOB objects. It is used
to transform the MOB baseCharState() object into a finished charState() object, both of
which are objects implementing the CharState interface. See those methods for more information.
- Specified by:
affectCharState
in interface StatsAffecting
- Overrides:
affectCharState
in class StdItem
- Parameters:
mob
- the host of the CharState object being affectedaffectableState
- the particular CharState object being affected- See Also:
CharState
,
MOB
,
MOB.baseState()
,
MOB.curState()
,
MOB.recoverMaxState()
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 StdWeapon
- 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()
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 Staff
- Parameters:
myHost
- either the initiator of the event, or the host of this objectmsg
- the CMMsg that needs to be executed- See Also:
CMMsg