com.planet_ink.coffee_mud.Items.Weapons
Class GenStaff

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.GenWeapon
              extended by com.planet_ink.coffee_mud.Items.Weapons.GenStaff
All Implemented Interfaces:
Behavable, CMModifiable, CMObject, Environmental, MsgListener, Rider, StatsAffecting, Tickable, Item, MiscMagic, Wand, Weapon, java.lang.Cloneable, java.lang.Comparable<CMObject>

public class GenStaff
extends GenWeapon
implements Wand


Field Summary
protected  int maxUses
           
protected  java.lang.String secretWord
           
 
Fields inherited from class com.planet_ink.coffee_mud.Items.Weapons.GenWeapon
readableText
 
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
GenStaff()
           
 
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.
 boolean isGeneric()
          Whether the fields of this item are set in code, or set by builders.
 java.lang.String magicWord()
           
 int maxUses()
           
 java.lang.String readableText()
          If the IS_READABLE flag is set for the envStats().sensesMask() flag on this item, then this method will be consulted as representing any writing on the Item.
 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 setReadableText(java.lang.String text)
          Changes the text that is written on the item.
 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.GenWeapon
getCodeNum, getStat, getStatCodes, sameAs, setMiscText, setStat, text
 
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, getSaveStatIndex, getTickStatus, image, initializeClass, isStat, material, miscTextFormat, name, Name, newInstance, numBehaviors, numberOfItems, numEffects, numScripts, owner, rawImage, rawLogicalAnd, rawProperLocationBitmap, rawSecretIdentity, rawWornCode, recursiveWeight, removeFromOwnerContainer, riding, savable, setBaseEnvStats, setBaseValue, setContainer, setDatabaseID, setDescription, setDisplayText, setExpirationDate, setImage, setMaterial, setName, setOwner, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, setRiding, setSecretIdentity, stopTicking, tackOns, 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, recursiveWeight, removeFromOwnerContainer, setBaseValue, setContainer, setDatabaseID, setMaterial, setOwner, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, 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

maxUses

protected int maxUses
Constructor Detail

GenStaff

public GenStaff()
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 GenWeapon
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

isGeneric

public boolean isGeneric()
Description copied from interface: Environmental
Whether the fields of this item are set in code, or set by builders. Generic means that they are set by builders, in which case XML is returned by the text() method containing all of the values for all the fields.

Specified by:
isGeneric in interface Environmental
Overrides:
isGeneric in class GenWeapon
Returns:
whether this item is modifiable by builders
See Also:
Environmental.text()

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.

setSpell

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

readableText

public java.lang.String readableText()
Description copied from interface: Item
If the IS_READABLE flag is set for the envStats().sensesMask() flag on this item, then this method will be consulted as representing any writing on the Item. Typically accessed with the READ command. This flag is defined in the EnvStats interface

Specified by:
readableText in interface Item
Overrides:
readableText in class GenWeapon
Returns:
the readable text on the item.
See Also:
EnvStats

setReadableText

public void setReadableText(java.lang.String text)
Description copied from interface: Item
Changes the text that is written on the item. This method does NOT set the IS_READABLE flag on the envStats().sensesMask flag. This flag is defined in the EnvStats interface

Specified by:
setReadableText in interface Item
Overrides:
setReadableText in class GenWeapon
Parameters:
text - what is written on the item. Empty string means nothing.
See Also:
EnvStats

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.

getSpell

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

magicWord

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

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