com.planet_ink.coffee_mud.Items.Basic
Class GenPerfume

java.lang.Object
  extended by com.planet_ink.coffee_mud.Items.Basic.StdItem
      extended by com.planet_ink.coffee_mud.Items.Basic.StdContainer
          extended by com.planet_ink.coffee_mud.Items.Basic.StdDrink
              extended by com.planet_ink.coffee_mud.Items.Basic.StdPerfume
                  extended by com.planet_ink.coffee_mud.Items.Basic.GenPerfume
All Implemented Interfaces:
Behavable, CMModifiable, CMObject, Decayable, Drink, Environmental, MsgListener, Rider, StatsAffecting, Tickable, Container, Item, Perfume, java.lang.Cloneable, java.lang.Comparable<CMObject>

public class GenPerfume
extends StdPerfume


Field Summary
protected  java.lang.String readableText
           
 
Fields inherited from class com.planet_ink.coffee_mud.Items.Basic.StdDrink
amountOfLiquidHeld, amountOfLiquidRemaining, amountOfThirstQuenched, decayTime, disappearsAfterDrinking, liquidType
 
Fields inherited from class com.planet_ink.coffee_mud.Items.Basic.StdContainer
capacity, containType, hasALid, hasALock, isLocked, isOpen
 
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.Container
CONTAIN_ANYTHING, CONTAIN_BODIES, CONTAIN_CAGED, CONTAIN_CLOTHES, CONTAIN_COINS, CONTAIN_DAGGERS, CONTAIN_DESCS, CONTAIN_DRINKABLES, CONTAIN_FOOTWEAR, CONTAIN_KEYS, CONTAIN_LIQUID, CONTAIN_ONEHANDWEAPONS, CONTAIN_OTHERWEAPONS, CONTAIN_READABLES, CONTAIN_SCROLLS, CONTAIN_SMOKEABLES, CONTAIN_SSCOMPONENTS, CONTAIN_SWORDS
 
Constructor Summary
GenPerfume()
           
 
Method Summary
protected  int getCodeNum(java.lang.String code)
           
 java.lang.String getStat(java.lang.String code)
          An alternative means of retreiving the values of those fields on this object which are modifiable at run-time by builders.
 java.lang.String[] getStatCodes()
          Returns an array of the string names of those fields which are modifiable on this object at run-time by builders.
 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.
 int liquidType()
          The material type of the liquid in this container.
 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.
 boolean sameAs(Environmental E)
          Whether this object instance is functionally identical to the object passed in.
 void setLiquidType(int newLiquidType)
          Sets the material type of the liquid in this container.
 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 setReadableText(java.lang.String text)
          Changes the text that is written on the item.
 void setStat(java.lang.String code, java.lang.String val)
          An alternative means of setting the values of those fields on this object which are modifiable at run-time by builders.
 java.lang.String text()
          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.
 
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdPerfume
executeMsg, getSmellEmotes, getSmellList, okMessage, setSmellList, wearIfAble
 
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdDrink
amountTakenToFillMe, containsDrink, decayTime, disappearsAfterDrinking, liquidHeld, liquidRemaining, setDecayTime, setLiquidHeld, setLiquidRemaining, setThirstQuenched, thirstQuenched
 
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdContainer
canContain, capacity, containTypes, emptyPlease, getContents, hasALid, hasALock, isLocked, isOpen, keyName, reallyGetContents, setCapacity, setContainTypes, setKeyName, setLidsNLocks, tick
 
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdItem
abilityImbuesMagic, addBehavior, addEffect, addNonUninvokableEffect, addScript, affectCharState, affectCharStats, affectEnvStats, 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, maxRange, minRange, miscTextFormat, name, Name, newInstance, numBehaviors, numberOfItems, numEffects, numScripts, owner, rawImage, rawLogicalAnd, rawProperLocationBitmap, rawSecretIdentity, rawWornCode, recoverEnvStats, recursiveWeight, removeFromOwnerContainer, riding, savable, secretIdentity, setBaseEnvStats, setBaseValue, setContainer, setDatabaseID, setDescription, setDisplayText, setExpirationDate, setImage, setMaterial, setName, setOwner, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, setRiding, setSecretIdentity, setUsesRemaining, stopTicking, subjectToWearAndTear, tackOns, ultimateContainer, unWear, usesRemaining, value, 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, secretIdentity, setBaseValue, setContainer, setDatabaseID, setMaterial, setOwner, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, setSecretIdentity, setUsesRemaining, stopTicking, subjectToWearAndTear, ultimateContainer, unWear, usesRemaining, value, wearAt, wearEvenIfImpossible, wearIfPossible, whereCantWear
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Rider
riding, setRiding
 

Field Detail

readableText

protected java.lang.String readableText
Constructor Detail

GenPerfume

public GenPerfume()
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 StdPerfume
Returns:
the name of this class

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 StdItem
Returns:
whether this item is modifiable by builders
See Also:
Environmental.text()

text

public java.lang.String text()
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:
text in interface Environmental
Overrides:
text in class StdItem
Returns:
either an open internal text string, or XML

liquidType

public int liquidType()
Description copied from interface: Drink
The material type of the liquid in this container. Although a class implementing the Drink interface can sometimes be a liquid itself (like GenLiquidResource), most often, a Drink interface implementing class is a mob without a material to draw from or an Item having its own non-liquid material (like a leather waterskin containing milk). Either way, this is necessary. The material types are constants in RawMaterial.

Specified by:
liquidType in interface Drink
Overrides:
liquidType in class StdDrink
Returns:
the type of liquid contained herein
See Also:
RawMaterial

setLiquidType

public void setLiquidType(int newLiquidType)
Description copied from interface: Drink
Sets the material type of the liquid in this container. Although a class implementing the Drink interface can sometimes be a liquid itself (like GenLiquidResource), most often, a Drink interface implementing class is a mob without a material to draw from or an Item having its own non-liquid material (like a leather waterskin containing milk). Either way, this is necessary. The material types are constants in RawMaterial.

Specified by:
setLiquidType in interface Drink
Overrides:
setLiquidType in class StdDrink
Parameters:
newLiquidType - the type of liquid contained herein
See Also:
RawMaterial

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 StdItem
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 StdItem
Parameters:
text - what is written on the item. Empty string means nothing.
See Also:
EnvStats

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

getStat

public java.lang.String getStat(java.lang.String code)
Description copied from interface: CMModifiable
An alternative means of retreiving the values of those fields on this object which are modifiable at run-time by builders. See getStatCodes() for possible values for the code passed to this method. Values returned are always strings, even if the field itself is numeric or a list.

Specified by:
getStat in interface CMModifiable
Overrides:
getStat in class StdItem
Parameters:
code - the name of the field to read.
Returns:
the value of the field read
See Also:
CMModifiable.getStatCodes()

setStat

public void setStat(java.lang.String code,
                    java.lang.String val)
Description copied from interface: CMModifiable
An alternative means of setting the values of those fields on this object which are modifiable at run-time by builders. See getStatCodes() for possible values for the code passed to this method. The value passed in is always a string, even if the field itself is numeric or a list.

Specified by:
setStat in interface CMModifiable
Overrides:
setStat in class StdItem
Parameters:
code - the name of the field to set
val - the value to set the field to
See Also:
CMModifiable.getStatCodes()

getCodeNum

protected int getCodeNum(java.lang.String code)
Overrides:
getCodeNum in class StdItem

getStatCodes

public java.lang.String[] getStatCodes()
Description copied from interface: CMModifiable
Returns an array of the string names of those fields which are modifiable on this object at run-time by builders.

Specified by:
getStatCodes in interface CMModifiable
Overrides:
getStatCodes in class StdItem
Returns:
list of the fields which may be set.
See Also:
CMModifiable.getStat(String), CMModifiable.setStat(String, String)

sameAs

public boolean sameAs(Environmental E)
Description copied from interface: Environmental
Whether this object instance is functionally identical to the object passed in. Works by repeatedly calling getStat on both objects and comparing the values.

Specified by:
sameAs in interface Environmental
Overrides:
sameAs in class StdItem
Parameters:
E - the object to compare this one to
Returns:
whether this object is the same as the one passed in
See Also:
CMModifiable.getStatCodes(), CMModifiable.getStat(String)