ultimateContainer(Physical stopAtC)
If an item is in a container, which is in a container, etc, this will
return the "highest" or ultimate container in which this item is located.

void

unWear()
Removes this item from a state of being worn, and puts it back into the mob or
player inventory.

int

usesRemaining()
Uses remaining is a general use numeric value whose meaning differs for different Item
types.

int

value()
The default value of the item, represented in the base CoffeeMud currency.

void

wearAt(long wornCode)
This method is similar to the wearEvenIfImpossible method method above, except that
it does not inspect this item for allowed wearable locations, but always puts the
item on the wear location represented by the given wornCode bitmap.

void

wearEvenIfImpossible(MOB mob)
Puts this item into a state of being worn regardless of whether it is practical for
the given mob to wear it -- for instance, even if an item is already being worn where
this item wants to be worn, or if the player has no such limbs to wear this item.

boolean

wearIfPossible(MOB mob)
Using the canWear method, this method will put the item into a state of being worn
only if it is practical for the given mob or player to wear this Item.

boolean

wearIfPossible(MOB mob,
long wearCode)
Using the canWear method, this method will put the item into a state of being worn
on the given location only if it is practical for the given mob or player to wear
this Item at the given location.

long

whereCantWear(MOB mob)
Returns a bitmap of all the locations where the given mob is practically unable to wear
an item.

destroyed

owner

GenWallpaper

ID

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.

isGeneric

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.

image

Returns the fully qualified and determined name of the image file displayed for this
object when MXP is used. If rawImage() is non-empty, it will return rawImage, and
otherwise use the mxp default data file.

phyStats

Object containing a set of current, modified, usable, mostly numeric fields. This object is based on
the object from basePhyStats() and then updated and modified by the recoverPhyStats() method.
See the PhyStats interface for information on the fields herein.

basePhyStats

Object containing a set of base, unmodified, mostly numeric fields. The values on the fields
in this object will be as they were set by the builder. This object is used as a basis for
the recoverPhyStats() method. See the PhyStats interface for information on the fields herein.

recoverPhyStats

This method copies the basePhyStats() object into the phyStats() object, then makes repeated calls to
all surrounding objects with affectPhyStats(Environmental,PhyStats) method. Surrounding objects
include the room where the object is located, the Ability objects in the Effects list, the Behaviors
in the behaviors list, and race/charclass/area if applicable. Those methods will then make all necessary
adjustments to the values in the new phyStats() object. When it returns, phyStats() will have a totally
updated object. This method must be called in code whenever the object is placed on the map, or when
anything changes in its environment, such as location, effects, or other states.

setBasePhyStats

Re-sets the object containing a set of base, unmodified, mostly numeric fields. The values on the fields
in this object will be as they were set by the builder. This object is used as a basis for
the recoverPhyStats() method. See the PhyStats interface for information on the fields herein. This
method is rarely called -- the fields therein are usually set using setter methods from the PhyStats
interface on the object itself.

subjectToWearAndTear

Whether the usesRemaining() number above is used to determine the percentage health of
the item. If this method returns false, then health or condition is irrelevant to this
Item. If true is returned, then usesRemaining is a number from 100 to 0, where 100 means
perfect condition, and 0 means imminent disintegration.

setOwner

Sets the Room or MOB representing where this item is located. Containers are handled
by another pointer, container(), so those two methods be used together to determine
where a given item is. This method is called by the addItem method on mobs
and the addItem interface on Rooms. Alone, this method is insufficient to properly
determine an items location, so one of the two above should be called instead.

amWearingAt

Can test where, if anywhere, an item is being worn. The value may be 0 to see if the item
is not being worn (since 0 means inventory) or a combination of 1 or more of the worn codes
listed in the Item interface.

fitsOn

Whether this item is designated as being wearable on the given worn codes defined in the
Item interface. This method does not care about the practicality of wearing for a given
mob (in other words, whether an item is already being worn on the location is not checked).

wearIfPossible

Using the canWear method, this method will put the item into a state of being worn
only if it is practical for the given mob or player to wear this Item. The mob or
player must have the item in his or her inventory first.

wearIfPossible

Using the canWear method, this method will put the item into a state of being worn
on the given location only if it is practical for the given mob or player to wear
this Item at the given location. The mob or player must have the item in his or her
inventory first.

wearAt

This method is similar to the wearEvenIfImpossible method method above, except that
it does not inspect this item for allowed wearable locations, but always puts the
item on the wear location represented by the given wornCode bitmap. This bitmap
is made up of constants from the Item interface.

rawProperLocationBitmap

Returns the builder-defined bitmap made from a logical combination of the worn
location constants from the Item interface. When combined with the rawLogicalAnd()
method, it says whether this item is wearable on all of the locations defined by this
bitmap at the same time or whether this item is wearable on any of the locations defined
by this bitmap.

setRawProperLocationBitmap

Sets the builder-defined bitmap made from a logical combination of the worn
location constants from the Item interface. When combined with the rawLogicalAnd()
method, it says whether this item is wearable on all of the locations defined by this
bitmap at the same time or whether this item is wearable on any of the locations defined
by this bitmap.

whereCantWear

Returns a bitmap of all the locations where the given mob is practically unable to wear
an item. The method compares items the mob is currently wearing to all possible wear
locations, including locations where the mob can't wear things, and returns a bitmap
representing all of those unwearable locations. The bitmap is constructed using the
bitmap constants defined in the Item interface.

canWear

Returns whether it is practical for the given mob to wear this Item on the given worn
location as given by the wornCode. The method checks for existing limbs and wear
locations, and for items already being worn by the mob, and finally determines if the
worn location given by the wornCode is among the available slots.

rawWornCode

Returns the bitmap representing where this item is presently being worn by
the mob or player who has the item in his or inventory. The value returned
by this method is set by the wear* methods defined above. The bitmap is
made up of a combination of the wear location constants from the Item
interface.

setRawWornCode

Sets the bitmap representing where this item is presently being worn by
the mob or player who has the item in his or inventory. The value set
by this method is set by the wear* methods defined above. The bitmap is
made up of a combination of the wear location constants from the Item
interface.

capacity

setCapacity

material

The resource code representing the material out of which this item is principally made.
The resource codes are composed of an integer where the highest order bits represent
the basic material type, and the lower order bits represent the specific material type.
These codes are defined in RawMaterial.

setMaterial

Sets the resource code representing the material out of which this item is principally made.
The resource codes are composed of an integer where the highest order bits represent
the basic material type, and the lower order bits represent the specific material type.
These codes are defined in RawMaterial interface.

value

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.

affectPhyStats

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.

affectCharStats

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.

affectCharState

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.

setMiscText

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.

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. 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.

getTickStatus

A coded status for this object during the period where
its tick method is being called. The statis is defined,
at least in part, by constants in this interface STATUS_*.
STATUS_NOT should be returned when the objects tick method
is not currently in execution. It should never return
STATUS_NOT when the objects tick method is in execution.

tick

this is the method which is called periodically by the threading engine. How often it
is called depends on the parameters passed to the threadding engine when it is submitted
for thread access. Typically the period is once per TIME_TICK period, but that is
determined when the object is submitted to the thread engine.

ultimateContainer

If an item is in a container, which is in a container, etc, this will
return the "highest" or ultimate container in which this item is located.
If an item is in a container which is in plain view, it will simply
return container(). If the item is not in a container, it will return itself.

wearEvenIfImpossible

Puts this item into a state of being worn regardless of whether it is practical for
the given mob to wear it -- for instance, even if an item is already being worn where
this item wants to be worn, or if the player has no such limbs to wear this item. None
of that matter to this method. The item must be in the mobs inventory first.

rawSecretIdentity

This method returns those secret properties of the item which are entered directly
by the builder when the item is designed. It is the string saved to the database,
and is used by the secretIdentity() method to construct a full secret description
of the Item.

secretIdentity

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.

setSecretIdentity

This method is used to change the string returned by rawSecretIdentity. This string
is saved to the database as the items secret properties desctiption. The secretIdentity
method uses this string to construct its full description.

displayText

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.

displayText

Returns the displayText, but as seen by the given viewer.
Can differ from displayText() without being saved to the DB.
Display Texts are normally the way something appears in a
room, or is the roomTitle of rooms.

setDisplayText

Sets 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.

description

Returns the description, but as seen by the given viewer.
Can differ from description() without being saved to the DB.
Descriptions are normally the way something appears when
looked at, or is the long description of rooms.

usesRemaining

Uses remaining is a general use numeric value whose meaning differs for different Item
types. For instance, Wands use it to represent charges, Weapons and Armor use it to
represent Condition, Ammunition uses it to represent quantity, etc.

okMessage

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.

executeMsg

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.

stopTicking

If this Item is current Ticking due to its having Behaviors or other properties which
might grant it the ability to Tick, this method will cause that ticking to cease and
desist. This means that it will lose its periodic thread calls to its tick() method.
This method also makes the item appear destroyed without actually being destroyed.
The whole idea is to make the item 'dormant' for storage.

destroy

Utterly and permanently destroy this object, not only removing it from the map, but
causing this object to be collected as garbage by Java. Containers, rooms. and mobs who have
their destroy() method called will also call the destroy() methods on all items and other
objects listed as content, recursively.

removeFromOwnerContainer

This method basically calls setContainer(null), and then removes this item
from its owner(). It effectively removes the item from the map. This is
generally assumed to be a temporary condition. To really destroy the item
permanently, the destroy() method is used. The unWear() method is also called.

addNonUninvokableEffect

Same as addEffect(Ability), but will set the Ability object as never being able to be uninvoked.
recoverPhyStats() method should be called next.
An Ability with a given ID() can only be added once per object.

addEffect

Add a new effect to this object, whether permanent or temporary. After calling this method,
recoverPhyStats() should be called next in case this ability object modifies the stats.
An Ability with a given ID() can only be added once per object.

addBehavior

Add a new behavior to this object. After calling this method,
recoverPhyStats() should be called next in case this behavior object modifies the stats.
A Behavior with a given ID() can only be added once per object.

getSaveStatIndex

Returns the index into the stat codes array where extra savable fields begins.
This number is always the same as getStatCodes().length unless there are extra
fields which need to be saved in xml for generic objects. This method is used
by editors for post-build user-defined fields.

isStat

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.

getCodeNum

getStat

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.

setStat

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.