com.planet_ink.coffee_mud.Items.Weapons
Class Staff

java.lang.Object
  extended by com.planet_ink.coffee_mud.Items.Basic.StdItem
      extended by com.planet_ink.coffee_mud.Items.Weapons.StdWeapon
          extended by com.planet_ink.coffee_mud.Items.Weapons.Staff
All Implemented Interfaces:
Behavable, CMModifiable, CMObject, Environmental, MsgListener, Rider, StatsAffecting, Tickable, Item, MiscMagic, Wand, Weapon, java.lang.Cloneable, java.lang.Comparable<CMObject>
Direct Known Subclasses:
ArchonStaff

public class Staff
extends StdWeapon
implements Wand


Field Summary
protected  java.lang.String secretWord
           
 
Fields inherited from class com.planet_ink.coffee_mud.Items.Weapons.StdWeapon
ammoCapacity, maxRange, minRange, useExtendedMissString, weaponClassification, weaponType
 
Fields inherited from class com.planet_ink.coffee_mud.Items.Basic.StdItem
affects, baseEnvStats, baseGoldValue, behaviors, CODES, databaseID, description, destroyed, displayText, dispossessionTime, envStats, imageName, material, miscText, myContainer, myUses, myWornCode, name, owner, properWornBitmap, riding, scripts, secretIdentity, tickStatus, wornLogicalAnd, xtraValues
 
Fields inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Item
IN_INVENTORY, WORN_ABOUT_BODY, WORN_ARMS, WORN_BACK, WORN_CODES, WORN_DEPENDENCYGRID, WORN_DESCS, 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_ORDER, WORN_RIGHT_FINGER, WORN_RIGHT_WRIST, WORN_TORSO, WORN_WAIST, WORN_WEIGHT_POINTS, WORN_WEIGHTS, WORN_WIELD, WORNREQ_ANY, WORNREQ_UNWORNONLY, WORNREQ_WORNONLY
 
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_MELTING, TYPE_NATURAL, TYPE_PIERCING, TYPE_SHOOT, TYPE_SLASHING, TYPE_STRIKING
 
Constructor Summary
Staff()
           
 
Method Summary
 void executeMsg(Environmental myHost, CMMsg msg)
          The general message event handler for the object.
 Ability getSpell()
           
 java.lang.String ID()
          The CoffeeMud Java Class ID shared by all instances of this object.
 java.lang.String magicWord()
           
 int maxUses()
           
 java.lang.String secretIdentity()
          This method returns the calculated and expanded description of the properties of the item as would be discovered through the Identify spell.
 void setMaxUses(int newMaxUses)
           
 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)
           
 int value()
          The default value of the item, represented in the base CoffeeMud currency.
 void waveIfAble(MOB mob, Environmental afftarget, java.lang.String message)
           
 
Methods inherited from class com.planet_ink.coffee_mud.Items.Weapons.StdWeapon
affectEnvStats, ammunitionCapacity, ammunitionRemaining, ammunitionType, hitString, maxRange, minRange, missString, okMessage, recoverEnvStats, requiresAmmunition, setAmmoCapacity, setAmmoRemaining, setAmmunitionType, setRanges, setUsesRemaining, setWeaponClassification, setWeaponType, subjectToWearAndTear, weaponClassification, weaponHealth, weaponType
 
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdItem
abilityImbuesMagic, addBehavior, addEffect, addNonUninvokableEffect, addScript, affectCharState, affectCharStats, alreadyWornMsg, amDestroyed, amWearingAt, baseEnvStats, baseGoldValue, canWear, canWearComplete, cloneEffects, cloneFix, compareProperLocations, compareTo, container, copyOf, databaseID, delBehavior, delEffect, delScript, description, destroy, displayText, envStats, expirationDate, fetchBehavior, fetchBehavior, fetchEffect, fetchEffect, fetchScript, finalize, fitsOn, getCodeNum, getSaveStatIndex, getStat, getStatCodes, getTickStatus, image, initializeClass, isGeneric, isStat, material, miscTextFormat, name, Name, newInstance, numBehaviors, numberOfItems, numEffects, numScripts, owner, rawImage, rawLogicalAnd, rawProperLocationBitmap, rawSecretIdentity, rawWornCode, readableText, recursiveWeight, removeFromOwnerContainer, riding, sameAs, savable, setBaseEnvStats, setBaseValue, setContainer, setDatabaseID, setDescription, setDisplayText, setExpirationDate, setImage, setMaterial, setName, setOwner, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, setReadableText, setRiding, setSecretIdentity, setStat, stopTicking, tackOns, text, tick, ultimateContainer, unWear, usesRemaining, wearAt, wearEvenIfImpossible, wearIfPossible, whereCantWear
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Item
amWearingAt, baseGoldValue, canWear, compareProperLocations, container, databaseID, fitsOn, material, numberOfItems, owner, rawLogicalAnd, rawProperLocationBitmap, rawSecretIdentity, rawWornCode, readableText, recursiveWeight, removeFromOwnerContainer, setBaseValue, setContainer, setDatabaseID, setMaterial, setOwner, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, setReadableText, setSecretIdentity, setUsesRemaining, stopTicking, subjectToWearAndTear, ultimateContainer, unWear, usesRemaining, wearAt, wearEvenIfImpossible, wearIfPossible, whereCantWear
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Rider
riding, setRiding
 

Field Detail

secretWord

protected java.lang.String secretWord
Constructor Detail

Staff

public Staff()
Method Detail

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, MiscTech. The name is typically identical to the class name.

Specified by:
ID in interface CMObject
Overrides:
ID in class StdWeapon
Returns:
the name of this class

maxUses

public int maxUses()
Specified by:
maxUses in interface Wand

setMaxUses

public void setMaxUses(int newMaxUses)
Specified by:
setMaxUses in interface Wand

magicWord

public java.lang.String magicWord()
Specified by:
magicWord in interface Wand

setSpell

public void setSpell(Ability theSpell)
Specified by:
setSpell in interface Wand

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 StdItem
Parameters:
newText - either an open internal text string, or XML

getSpell

public Ability getSpell()
Specified by:
getSpell in interface Wand

value

public int value()
Description copied from interface: Item
The default value of the item, represented in the base CoffeeMud currency. This method starts with baseGoldValue, which is a user-entered value, and adjusts according to magical enhancements and the condition of the item.

Specified by:
value in interface Item
Overrides:
value in class StdWeapon
Returns:
the adjusted value of the item in the base currency.

secretIdentity

public java.lang.String secretIdentity()
Description copied from interface: Item
This method returns the calculated and expanded description of the properties of the item as would be discovered through the Identify spell. It starts with its rawSecretIdentity() and adds to it any strings which the Ability objects contained in the Items effects list would generate. An empty string means the item has no secret properties per se.

Specified by:
secretIdentity in interface Item
Overrides:
secretIdentity in class StdWeapon
Returns:
a displayable string describing the secret properties of the item.

waveIfAble

public void waveIfAble(MOB mob,
                       Environmental afftarget,
                       java.lang.String message)
Specified by:
waveIfAble in interface Wand

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 StdWeapon
Parameters:
myHost - either the initiator of the event, or the host of this object
msg - the CMMsg that needs to be executed
See Also:
CMMsg