com.planet_ink.coffee_mud.Locales
Class ThinRoom

java.lang.Object
  extended by com.planet_ink.coffee_mud.Locales.ThinRoom
All Implemented Interfaces:
Affectable, Behavable, CMObject, Contingent, Environmental, ItemPossessor, Modifiable, MsgListener, Physical, PhysicalAgent, StatsAffecting, Tickable, Room, java.lang.Cloneable, java.lang.Comparable<CMObject>

public class ThinRoom
extends java.lang.Object
implements Room


Nested Class Summary
 
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.core.interfaces.ItemPossessor
ItemPossessor.Expire, ItemPossessor.Find, ItemPossessor.Move
 
Field Summary
protected static java.util.Vector empty
           
protected static Exit[] exits
           
protected  Area myArea
           
protected static PhyStats phyStats
           
protected  java.lang.String roomID
           
protected static Room[] rooms
           
 
Fields inherited from interface com.planet_ink.coffee_mud.Locales.interfaces.Room
CONDITION_COLD, CONDITION_HOT, CONDITION_NORMAL, CONDITION_WET, DOMAIN_INDOORS_AIR, DOMAIN_INDOORS_CAVE, DOMAIN_INDOORS_MAGIC, DOMAIN_INDOORS_METAL, DOMAIN_INDOORS_STONE, DOMAIN_INDOORS_UNDERWATER, DOMAIN_INDOORS_WATERSURFACE, DOMAIN_INDOORS_WOOD, DOMAIN_OUTDOORS_AIR, DOMAIN_OUTDOORS_CITY, DOMAIN_OUTDOORS_DESERT, DOMAIN_OUTDOORS_HILLS, DOMAIN_OUTDOORS_JUNGLE, DOMAIN_OUTDOORS_MOUNTAINS, DOMAIN_OUTDOORS_PLAINS, DOMAIN_OUTDOORS_ROCKS, DOMAIN_OUTDOORS_SPACEPORT, DOMAIN_OUTDOORS_SWAMP, DOMAIN_OUTDOORS_UNDERWATER, DOMAIN_OUTDOORS_WATERSURFACE, DOMAIN_OUTDOORS_WOODS, indoorDomainDescs, INDOORS, outdoorDomainDescs, VARIATION_CODES, VARIATION_CODES_HASHED
 
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_CLAN, TICKID_CLANITEM, TICKID_DEADBODY_DECAY, TICKID_EMAIL, TICKID_EXIT_BEHAVIOR, TICKID_EXIT_REOPEN, TICKID_ITEM_BEHAVIOR, TICKID_ITEM_BOUNCEBACK, TICKID_LIGHT_FLICKERS, TICKID_LIVEAUCTION, TICKID_LONGERMASK, TICKID_MOB, TICKID_QUEST, TICKID_READYTOSTOP, TICKID_ROOM_BEHAVIOR, TICKID_ROOM_ITEM_REJUV, TICKID_SPELL_AFFECT, TICKID_TIMEAUCTION, TICKID_TRAP_DESTRUCTION, TICKID_TRAP_RESET, TICKMASK_SOLITARY
 
Constructor Summary
ThinRoom()
           
 
Method Summary
 void addBehavior(Behavior to)
          Add a new behavior to this object.
 void addEffect(Ability to)
          Add a new effect to this object, whether permanent or temporary.
 void addInhabitant(MOB mob)
           
 void addItem(Item item)
          Adds a new item to its possessor.
 void addItem(Item item, ItemPossessor.Expire expire)
          Adds a new item to its possessor, with an expiration code.
 void addNonUninvokableEffect(Ability to)
          Same as addEffect(Ability), but will set the Ability object as never being able to be uninvoked.
 void addScript(ScriptingEngine S)
          Add a new runnable script to this object.
 void affectCharState(MOB affectedMob, CharState affectableMaxState)
          This method is called by the recoverCharState() method on other MOB objects.
 void affectCharStats(MOB affectedMob, CharStats affectableStats)
          This method is called by the recoverCharStats() method on other MOB objects.
 void affectPhyStats(Physical affected, PhyStats affectableStats)
          This method is called by the recoverPhyStats() method on other Environmental objects.
 boolean amDestroyed()
          Whether the destroy() method has been previousy called on this object.
 PhyStats basePhyStats()
          Object containing a set of base, unmodified, mostly numeric fields.
 java.util.Enumeration<Behavior> behaviors()
          Returns an enumerator of all the behaviors on this object.
 void bringMobHere(MOB mob, boolean andFollowers)
           
 void clearSky()
           
 int compareTo(CMObject o)
           
 CMObject copyOf()
          Similar to Cloneable.clone(), but does its best to make sure that any internal objects to this class are also copyOfed.
 void delBehavior(Behavior to)
          Delete a behavior from this object.
 void delEffect(Ability to)
          Delete an effect from this object, whether permanent or temporary.
 void delInhabitant(MOB mob)
           
 void delItem(Item item)
          Removes the item from this possessor.
 void delScript(ScriptingEngine S)
          Remove a running script from this object.
 java.lang.String description()
          The basic description of this object, as shown when the item is directly LOOKed at.
 void 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.
 java.lang.String displayText()
          Gets the raw string used to show what this object looks like in the room.
 int domainConditions()
           
 int domainType()
           
 java.util.Enumeration<Ability> effects()
          Returns an enumerator of abilities listed as effects on this object.
 void executeMsg(Environmental myHost, CMMsg msg)
          The general message event handler for the object.
 long expirationDate()
          If this object expires, it should have a timestamp saying when it expires, in real time.
 Behavior fetchBehavior(int index)
          Returns a behavior object on this object.
 Behavior fetchBehavior(java.lang.String ID)
          Returns a behavior object listed on this object.
 Ability fetchEffect(int index)
          Returns an ability object listed as an effect on this object.
 Ability fetchEffect(java.lang.String ID)
          Returns an ability object listed as an effect on this object.
 PhysicalAgent fetchFromMOBRoomFavorsItems(MOB mob, Item goodLocation, java.lang.String thingName, int wornFilter)
           
 PhysicalAgent fetchFromMOBRoomFavorsMOBs(MOB mob, Item goodLocation, java.lang.String thingName, int wornFilter)
           
 PhysicalAgent fetchFromMOBRoomItemExit(MOB mob, Item goodLocation, java.lang.String thingName, int wornFilter)
           
 PhysicalAgent fetchFromRoomFavorItems(Item goodLocation, java.lang.String thingName)
           
 PhysicalAgent fetchFromRoomFavorMOBs(Item goodLocation, java.lang.String thingName)
           
 MOB fetchInhabitant(int i)
           
 MOB fetchInhabitant(java.lang.String inhabitantID)
           
 java.util.List<MOB> fetchInhabitants(java.lang.String inhabitantID)
           
 MOB fetchPCInhabitant(int i)
           
 ScriptingEngine fetchScript(int x)
          Retreive one of the enumerated scripts running on this object
 Item findItem(Item goodLocation, java.lang.String itemID)
          Returns the item in the given container that matches the given itemID, whether by full name, description, class ID, or partial name (if no fuller name is found).
 Item findItem(java.lang.String itemID)
          Returns the item in this possessor that matches the given itemID, whether by full name, description, class ID, or partial name (if no fuller name is found).
 java.util.List<Item> findItems(Item goodLocation, java.lang.String itemID)
          Returns all items in the given container that matches the given itemID, whether by full name, description, class ID, or partial name (if no fuller names are found).
 java.util.List<Item> findItems(java.lang.String itemID)
          Returns all items in this possessor that matches the given itemID, whether by full name, description, class ID, or partial name (if no fuller names are found).
 Area getArea()
           
protected  int getCodeNum(java.lang.String code)
           
 java.lang.String getContextName(Environmental E)
           
 Exit getExitInDir(int direction)
           
 GridLocale getGridParent()
           
 Item getItem(int i)
          Returns the item at the given index, regardless of container status, visibility, or other modifiers.
 Item getItem(Item goodLocation, java.lang.String s)
           
 Item getItem(java.lang.String s)
           
 boolean getMobility()
           
 Exit getPairedExit(int direction)
           
 Exit getRawExit(int dir)
           
 Exit getReverseExit(int direction)
           
 Room getRoomInDir(int direction)
           
 int getSaveStatIndex()
          Returns the index into the stat codes array where extra savable fields begins.
 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.
 long getTickStatus()
          A coded status for this object during the period where its tick method is being called.
 void giveASky(int zero)
           
 java.lang.String ID()
          The CoffeeMud Java Class ID shared by all instances of this object.
 java.lang.String image()
          Returns the fully qualified and determined name of the image file displayed for this object when MXP is used.
 java.util.Enumeration<MOB> inhabitants()
           
 void initializeClass()
          Called ONCE after all objects are loaded, but before the map is read in during initialization.
 boolean isContent(Item item)
          Returns whether the given item is in this possessors list.
 boolean isGeneric()
          Whether the fields of this item are set in code, or set by builders.
 boolean isHere(Environmental E)
           
 boolean isInhabitant(MOB mob)
           
 boolean isSameRoom(java.lang.Object O)
           
 boolean isSavable()
          Whether, if this object is in a room, whether it is appropriate to save this object to the database as a permanent feature of its container.
 boolean isStat(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.util.Enumeration<Item> items()
          An enumeration of all the items at this possessor.
 int maxRange()
          the maximum range of this object, if applicable.
 int minRange()
          the minimum range of this object, if applicable.
 java.lang.String miscTextFormat()
          Unimplemented as of yet, but will hold a string telling the system what the proper format of any miscText data.
 void moveItemTo(Item container)
          Intelligently removes an item from its current location and moves it to this possessor, managing any container contents.
 void moveItemTo(Item item, ItemPossessor.Expire expire, ItemPossessor.Move... moveFlags)
          Intelligently removes an item from its current location and moves it to this possessor, managing any container contents, and possibly followers/riders if the item is a cart.
 int myResource()
           
 java.lang.String name()
          The displayable name of this object.
 java.lang.String Name()
          The raw unmodified name of this object as stored in the database.
 CMObject newInstance()
          Returns a new instance of this class.
 int numBehaviors()
          The number of behaviors this object has.
 int numEffects()
          Returns the number of ability objects listed as effects on this object.
 int numInhabitants()
           
 int numItems()
          Returns the total number of items at this possessor, regardless of container status.
 int numPCInhabitants()
           
 int numScripts()
          Return the number of scripts running on this object
 boolean okMessage(Environmental myHost, CMMsg msg)
          The general message event previewer for the object.
 PhyStats phyStats()
          Object containing a set of current, modified, usable, mostly numeric fields.
 int pointsPerMove(MOB mob)
           
 Room prepareRoomInDir(Room R, int direction)
           
 Room[] rawDoors()
           
 java.lang.String rawImage()
          Returns the raw name of the image file to display for this object when MXP is used.
 void recoverPhyStats()
          This method copies the basePhyStats() object into the phyStats() object, then makes repeated calls to all surrounding objects with affectPhyStats(Environmental,PhyStats) method.
 void recoverRoomStats()
           
 java.util.List<java.lang.Integer> resourceChoices()
           
 java.lang.String roomDescription(MOB mob)
           
 java.lang.String roomID()
           
 java.lang.String roomTitle(MOB mob)
           
 boolean sameAs(Environmental E)
          Whether this object instance is functionally identical to the object passed in.
 java.util.Enumeration<ScriptingEngine> scripts()
          Returns an enumerator of all the scripts on this object.
 void send(MOB source, CMMsg msg)
           
 void sendOthers(MOB source, CMMsg msg)
           
 void setArea(Area newArea)
           
 void setBasePhyStats(PhyStats newStats)
          Re-sets the object containing a set of base, unmodified, mostly numeric fields.
 void setDescription(java.lang.String newDescription)
          Sets the basic description of this object, as shown when the item is directly LOOKed at.
 void setDisplayText(java.lang.String newDisplayText)
          Sets the raw string used to show what this object looks like in the room.
 void setExpirationDate(long time)
          If this object expires, it should have a timestamp saying when it expires, in real time.
 void setGridParent(GridLocale room)
           
 void setImage(java.lang.String newImage)
          Sets the raw name of the image file to display for this object when MXP is used.
 void setMiscText(java.lang.String newMiscText)
          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 setName(java.lang.String newName)
          Sets the raw unmodified name of this object as stored in the database.
 void setRawExit(int direction, Environmental E)
           
 void setResource(int resourceCode)
           
 void setRoomID(java.lang.String newRoomID)
           
 void setSavable(boolean truefalse)
          Sets whether this behavior can be saved as a permanent aspect of its host.
 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.
 boolean show(MOB source, Environmental target, Environmental tool, int srcCode, int tarCode, int othCode, java.lang.String allMessage)
           
 boolean show(MOB source, Environmental target, Environmental tool, int allCode, java.lang.String allMessage)
           
 boolean show(MOB source, Environmental target, Environmental tool, int srcCode, java.lang.String srcMessage, int tarCode, java.lang.String tarMessage, int othCode, java.lang.String othMessage)
           
 boolean show(MOB source, Environmental target, Environmental tool, int allCode, java.lang.String srcMessage, java.lang.String tarMessage, java.lang.String othMessage)
           
 boolean show(MOB source, Environmental target, int allCode, java.lang.String allMessage)
           
 void showHappens(int allCode, Environmental like, java.lang.String allMessage)
           
 void showHappens(int allCode, java.lang.String allMessage)
           
 boolean showOthers(MOB source, Environmental target, Environmental tool, int allCode, java.lang.String allMessage)
           
 boolean showOthers(MOB source, Environmental target, int allCode, java.lang.String allMessage)
           
 boolean showSource(MOB source, Environmental target, Environmental tool, int allCode, java.lang.String allMessage)
           
 boolean showSource(MOB source, Environmental target, int allCode, java.lang.String allMessage)
           
 void startItemRejuv()
           
 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.
 int thirstPerRound(MOB mob)
           
 boolean tick(Tickable ticking, int tickID)
          this is the method which is called periodically by the threading engine.
 void toggleMobility(boolean onoff)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

roomID

protected java.lang.String roomID

myArea

protected Area myArea

empty

protected static final java.util.Vector empty

exits

protected static final Exit[] exits

rooms

protected static final Room[] rooms

phyStats

protected static final PhyStats phyStats
Constructor Detail

ThinRoom

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

name

public java.lang.String name()
Description copied from interface: Environmental
The displayable name of this object. May be modified by phyStats() object. Is derived from the Name().

Specified by:
name in interface Environmental
Specified by:
name in interface Tickable
Returns:
the modified final name of this object on the map.
See Also:
Environmental.Name()

Name

public java.lang.String Name()
Description copied from interface: Environmental
The raw unmodified name of this object as stored in the database. This is the name set by builders and used as a basis for the name() method.

Specified by:
Name in interface Environmental
Returns:
the raw base name of this object on the map.
See Also:
Environmental.name()

description

public java.lang.String description()
Description copied from interface: Environmental
The basic description of this object, as shown when the item is directly LOOKed at.

Specified by:
description in interface Environmental
Returns:
the basic detail description of this object

displayText

public java.lang.String displayText()
Description copied from interface: Environmental
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.

Specified by:
displayText in interface Environmental
Returns:
the string describing how this object looks in the room

maxRange

public int maxRange()
Description copied from interface: Environmental
the maximum range of this object, if applicable. Can refer to the size of a room, the range of a weapon, or the calculated range of a mob in combat.

Specified by:
maxRange in interface Environmental
Returns:
the maximum range

minRange

public int minRange()
Description copied from interface: Environmental
the minimum range of this object, if applicable. Can refer to the size of a room, the range of a weapon, or the calculated range of a mob in combat. Usually 0.

Specified by:
minRange in interface Environmental
Returns:
the minimum range

isSavable

public boolean isSavable()
Description copied from interface: Contingent
Whether, if this object is in a room, whether it is appropriate to save this object to the database as a permanent feature of its container. It always returns true except under unique circumstances.

Specified by:
isSavable in interface Contingent
Returns:
true, usually.

setSavable

public void setSavable(boolean truefalse)
Description copied from interface: Contingent
Sets whether this behavior can be saved as a permanent aspect of its host.

Specified by:
setSavable in interface Contingent
Parameters:
truefalse - whether this behavior can be saved as part of its host.
See Also:
Contingent.isSavable()

getTickStatus

public long getTickStatus()
Description copied from interface: Tickable
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.

Specified by:
getTickStatus in interface Tickable
Returns:
the numeric status of this object
See Also:
Tickable.tick(Tickable, int)

roomID

public java.lang.String roomID()
Specified by:
roomID in interface Room

setRoomID

public void setRoomID(java.lang.String newRoomID)
Specified by:
setRoomID in interface Room

initializeClass

public void initializeClass()
Description copied from interface: CMObject
Called ONCE after all objects are loaded, but before the map is read in during initialization.

Specified by:
initializeClass in interface CMObject

getContextName

public java.lang.String getContextName(Environmental E)
Specified by:
getContextName in interface Room

domainType

public int domainType()
Specified by:
domainType in interface Room

domainConditions

public int domainConditions()
Specified by:
domainConditions in interface Room

myResource

public int myResource()
Specified by:
myResource in interface Room

setResource

public void setResource(int resourceCode)
Specified by:
setResource in interface Room

resourceChoices

public java.util.List<java.lang.Integer> resourceChoices()
Specified by:
resourceChoices in interface Room

toggleMobility

public void toggleMobility(boolean onoff)
Specified by:
toggleMobility in interface Room

getMobility

public boolean getMobility()
Specified by:
getMobility in interface Room

isHere

public boolean isHere(Environmental E)
Specified by:
isHere in interface Room

setRawExit

public void setRawExit(int direction,
                       Environmental E)
Specified by:
setRawExit in interface Room

prepareRoomInDir

public Room prepareRoomInDir(Room R,
                             int direction)
Specified by:
prepareRoomInDir in interface Room

startItemRejuv

public void startItemRejuv()
Specified by:
startItemRejuv in interface Room

recoverRoomStats

public void recoverRoomStats()
Specified by:
recoverRoomStats in interface Room

expirationDate

public long expirationDate()
Description copied from interface: Environmental
If this object expires, it should have a timestamp saying when it expires, in real time. When it expires, a MSG_EXPIRE message will be sent to it.

Specified by:
expirationDate in interface Environmental
Returns:
the time stamp when this thing expires
See Also:
Environmental.setExpirationDate(long)

setExpirationDate

public void setExpirationDate(long time)
Description copied from interface: Environmental
If this object expires, it should have a timestamp saying when it expires, in real time. When it expires, a MSG_EXPIRE message will be sent to it.

Specified by:
setExpirationDate in interface Environmental
Parameters:
time - the time stamp when this thing expires
See Also:
Environmental.expirationDate()

clearSky

public void clearSky()
Specified by:
clearSky in interface Room

giveASky

public void giveASky(int zero)
Specified by:
giveASky in interface Room

isSameRoom

public boolean isSameRoom(java.lang.Object O)
Specified by:
isSameRoom in interface Room

getArea

public Area getArea()
Specified by:
getArea in interface Room

setArea

public void setArea(Area newArea)
Specified by:
setArea in interface Room

setGridParent

public void setGridParent(GridLocale room)
Specified by:
setGridParent in interface Room

getGridParent

public GridLocale getGridParent()
Specified by:
getGridParent in interface Room

rawDoors

public Room[] rawDoors()
Specified by:
rawDoors in interface Room

getRawExit

public Exit getRawExit(int dir)
Specified by:
getRawExit in interface Room

getReverseExit

public Exit getReverseExit(int direction)
Specified by:
getReverseExit in interface Room

getPairedExit

public Exit getPairedExit(int direction)
Specified by:
getPairedExit in interface Room

getRoomInDir

public Room getRoomInDir(int direction)
Specified by:
getRoomInDir in interface Room

getExitInDir

public Exit getExitInDir(int direction)
Specified by:
getExitInDir in interface Room

pointsPerMove

public int pointsPerMove(MOB mob)
Specified by:
pointsPerMove in interface Room

thirstPerRound

public int thirstPerRound(MOB mob)
Specified by:
thirstPerRound in interface Room

roomTitle

public java.lang.String roomTitle(MOB mob)
Specified by:
roomTitle in interface Room

roomDescription

public java.lang.String roomDescription(MOB mob)
Specified by:
roomDescription in interface Room

send

public void send(MOB source,
                 CMMsg msg)
Specified by:
send in interface Room

sendOthers

public void sendOthers(MOB source,
                       CMMsg msg)
Specified by:
sendOthers in interface Room

showHappens

public void showHappens(int allCode,
                        java.lang.String allMessage)
Specified by:
showHappens in interface Room

showHappens

public void showHappens(int allCode,
                        Environmental like,
                        java.lang.String allMessage)
Specified by:
showHappens in interface Room

show

public boolean show(MOB source,
                    Environmental target,
                    int allCode,
                    java.lang.String allMessage)
Specified by:
show in interface Room

show

public boolean show(MOB source,
                    Environmental target,
                    Environmental tool,
                    int allCode,
                    java.lang.String allMessage)
Specified by:
show in interface Room

show

public boolean show(MOB source,
                    Environmental target,
                    Environmental tool,
                    int srcCode,
                    int tarCode,
                    int othCode,
                    java.lang.String allMessage)
Specified by:
show in interface Room

show

public boolean show(MOB source,
                    Environmental target,
                    Environmental tool,
                    int srcCode,
                    java.lang.String srcMessage,
                    int tarCode,
                    java.lang.String tarMessage,
                    int othCode,
                    java.lang.String othMessage)
Specified by:
show in interface Room

show

public boolean show(MOB source,
                    Environmental target,
                    Environmental tool,
                    int allCode,
                    java.lang.String srcMessage,
                    java.lang.String tarMessage,
                    java.lang.String othMessage)
Specified by:
show in interface Room

showOthers

public boolean showOthers(MOB source,
                          Environmental target,
                          int allCode,
                          java.lang.String allMessage)
Specified by:
showOthers in interface Room

showSource

public boolean showSource(MOB source,
                          Environmental target,
                          int allCode,
                          java.lang.String allMessage)
Specified by:
showSource in interface Room

showOthers

public boolean showOthers(MOB source,
                          Environmental target,
                          Environmental tool,
                          int allCode,
                          java.lang.String allMessage)
Specified by:
showOthers in interface Room

showSource

public boolean showSource(MOB source,
                          Environmental target,
                          Environmental tool,
                          int allCode,
                          java.lang.String allMessage)
Specified by:
showSource in interface Room

fetchInhabitant

public MOB fetchInhabitant(java.lang.String inhabitantID)
Specified by:
fetchInhabitant in interface Room

fetchInhabitants

public java.util.List<MOB> fetchInhabitants(java.lang.String inhabitantID)
Specified by:
fetchInhabitants in interface Room

addInhabitant

public void addInhabitant(MOB mob)
Specified by:
addInhabitant in interface Room

delInhabitant

public void delInhabitant(MOB mob)
Specified by:
delInhabitant in interface Room

numInhabitants

public int numInhabitants()
Specified by:
numInhabitants in interface Room

inhabitants

public java.util.Enumeration<MOB> inhabitants()
Specified by:
inhabitants in interface Room

isInhabitant

public boolean isInhabitant(MOB mob)
Specified by:
isInhabitant in interface Room

fetchInhabitant

public MOB fetchInhabitant(int i)
Specified by:
fetchInhabitant in interface Room

numPCInhabitants

public int numPCInhabitants()
Specified by:
numPCInhabitants in interface Room

fetchPCInhabitant

public MOB fetchPCInhabitant(int i)
Specified by:
fetchPCInhabitant in interface Room

bringMobHere

public void bringMobHere(MOB mob,
                         boolean andFollowers)
Specified by:
bringMobHere in interface Room

setName

public void setName(java.lang.String newName)
Description copied from interface: Environmental
Sets the raw unmodified name of this object as stored in the database. This is the name set by builders and used as a basis for the name() method.

Specified by:
setName in interface Environmental
Parameters:
newName - the raw base name of this object on the map.
See Also:
Environmental.Name()

setDescription

public void setDescription(java.lang.String newDescription)
Description copied from interface: Environmental
Sets the basic description of this object, as shown when the item is directly LOOKed at.

Specified by:
setDescription in interface Environmental
Parameters:
newDescription - the basic detail description of this object

setDisplayText

public void setDisplayText(java.lang.String newDisplayText)
Description copied from interface: Environmental
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.

Specified by:
setDisplayText in interface Environmental
Parameters:
newDisplayText - the string describing how this object looks in the room

image

public java.lang.String image()
Description copied from interface: Environmental
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.

Specified by:
image in interface Environmental
Returns:
the name of the mxp image to display for this object.

rawImage

public java.lang.String rawImage()
Description copied from interface: Environmental
Returns the raw name of the image file to display for this object when MXP is used. This is the value set by the builder, and may be returned by image() if it is non-empty.

Specified by:
rawImage in interface Environmental
Returns:
the raw name of the mxp image file

setImage

public void setImage(java.lang.String newImage)
Description copied from interface: Environmental
Sets the raw name of the image file to display for this object when MXP is used. This is the value set by the builder, and may be returned by image() if it is non-empty.

Specified by:
setImage in interface Environmental
Parameters:
newImage - the raw name of the mxp image file

addItem

public void addItem(Item item)
Description copied from interface: ItemPossessor
Adds a new item to its possessor. By default, the item is added in a default resting state -- no containers, timeouts, or other modifiers are set. Duplicates will not be permitted.

Specified by:
addItem in interface ItemPossessor
Parameters:
item - the item to add
See Also:
ItemPossessor.delItem(Item)

addItem

public void addItem(Item item,
                    ItemPossessor.Expire expire)
Description copied from interface: ItemPossessor
Adds a new item to its possessor, with an expiration code. Duplicates will not be permitted.

Specified by:
addItem in interface ItemPossessor
Parameters:
item - the item to add
See Also:
ItemPossessor.Expire

delItem

public void delItem(Item item)
Description copied from interface: ItemPossessor
Removes the item from this possessor.

Specified by:
delItem in interface ItemPossessor
Parameters:
item - the item to remove

numItems

public int numItems()
Description copied from interface: ItemPossessor
Returns the total number of items at this possessor, regardless of container status.

Specified by:
numItems in interface ItemPossessor
Returns:
the total number of items

isContent

public boolean isContent(Item item)
Description copied from interface: ItemPossessor
Returns whether the given item is in this possessors list.

Specified by:
isContent in interface ItemPossessor
Parameters:
item - the item to check
Returns:
true if the item was found, and false otherwise

findItem

public Item findItem(Item goodLocation,
                     java.lang.String itemID)
Description copied from interface: ItemPossessor
Returns the item in the given container that matches the given itemID, whether by full name, description, class ID, or partial name (if no fuller name is found). Handles indexing for duplicate-named items.

Specified by:
findItem in interface ItemPossessor
Parameters:
goodLocation - the container to look in, or null for none
itemID - the name or partial name of the item to fetch
Returns:
the item found, or null

getItem

public Item getItem(int i)
Description copied from interface: ItemPossessor
Returns the item at the given index, regardless of container status, visibility, or other modifiers.

Specified by:
getItem in interface ItemPossessor
Parameters:
i - the index of the item
Returns:
the item at that index, or null if its not found

items

public java.util.Enumeration<Item> items()
Description copied from interface: ItemPossessor
An enumeration of all the items at this possessor.

Specified by:
items in interface ItemPossessor
Returns:
enumeration of all the items at this possessor.

getItem

public Item getItem(java.lang.String s)

getItem

public Item getItem(Item goodLocation,
                    java.lang.String s)

findItem

public Item findItem(java.lang.String itemID)
Description copied from interface: ItemPossessor
Returns the item in this possessor that matches the given itemID, whether by full name, description, class ID, or partial name (if no fuller name is found). Handles indexing for duplicate-named items.

Specified by:
findItem in interface ItemPossessor
Parameters:
itemID - the name or partial name of the item to fetch
Returns:
the item found, or null

moveItemTo

public void moveItemTo(Item item,
                       ItemPossessor.Expire expire,
                       ItemPossessor.Move... moveFlags)
Description copied from interface: ItemPossessor
Intelligently removes an item from its current location and moves it to this possessor, managing any container contents, and possibly followers/riders if the item is a cart. An expiration can be set on the move to have the items expire. Duplicates will not be permitted.

Specified by:
moveItemTo in interface ItemPossessor
Parameters:
item - the item to add
expire - the expiration code
moveFlags - any flags related to the move
See Also:
ItemPossessor.Expire

moveItemTo

public void moveItemTo(Item container)
Description copied from interface: ItemPossessor
Intelligently removes an item from its current location and moves it to this possessor, managing any container contents. Is the same as calling the longer moveItemTo with a Never expiration, and NO movement flags. Duplicates will not be permitted.

Specified by:
moveItemTo in interface ItemPossessor
Parameters:
container - the item to add
See Also:
ItemPossessor.Expire

findItems

public java.util.List<Item> findItems(java.lang.String itemID)
Description copied from interface: ItemPossessor
Returns all items in this possessor that matches the given itemID, whether by full name, description, class ID, or partial name (if no fuller names are found).

Specified by:
findItems in interface ItemPossessor
Parameters:
itemID - the name or partial name of the item to fetch
Returns:
the item found, or null

findItems

public java.util.List<Item> findItems(Item goodLocation,
                                      java.lang.String itemID)
Description copied from interface: ItemPossessor
Returns all items in the given container that matches the given itemID, whether by full name, description, class ID, or partial name (if no fuller names are found).

Specified by:
findItems in interface ItemPossessor
Parameters:
goodLocation - the container to look in, or null for none
itemID - the name or partial name of the item to fetch
Returns:
the item found, or null

fetchFromRoomFavorItems

public PhysicalAgent fetchFromRoomFavorItems(Item goodLocation,
                                             java.lang.String thingName)
Specified by:
fetchFromRoomFavorItems in interface Room

fetchFromMOBRoomItemExit

public PhysicalAgent fetchFromMOBRoomItemExit(MOB mob,
                                              Item goodLocation,
                                              java.lang.String thingName,
                                              int wornFilter)
Specified by:
fetchFromMOBRoomItemExit in interface Room

fetchFromRoomFavorMOBs

public PhysicalAgent fetchFromRoomFavorMOBs(Item goodLocation,
                                            java.lang.String thingName)
Specified by:
fetchFromRoomFavorMOBs in interface Room

fetchFromMOBRoomFavorsItems

public PhysicalAgent fetchFromMOBRoomFavorsItems(MOB mob,
                                                 Item goodLocation,
                                                 java.lang.String thingName,
                                                 int wornFilter)
Specified by:
fetchFromMOBRoomFavorsItems in interface Room

fetchFromMOBRoomFavorsMOBs

public PhysicalAgent fetchFromMOBRoomFavorsMOBs(MOB mob,
                                                Item goodLocation,
                                                java.lang.String thingName,
                                                int wornFilter)
Specified by:
fetchFromMOBRoomFavorsMOBs in interface Room

addEffect

public void addEffect(Ability to)
Description copied from interface: Affectable
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.

Specified by:
addEffect in interface Affectable
Parameters:
to - The ability object to add as an effect.
See Also:
Ability, Affectable.recoverPhyStats()

addNonUninvokableEffect

public void addNonUninvokableEffect(Ability to)
Description copied from interface: Affectable
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.

Specified by:
addNonUninvokableEffect in interface Affectable
Parameters:
to - The ability object to add as an effect.
See Also:
Ability, Affectable.recoverPhyStats()

delEffect

public void delEffect(Ability to)
Description copied from interface: Affectable
Delete an effect from this object, whether permanent or temporary. After calling this method, recoverPhyStats() should be called next in case this ability object modified the stats.

Specified by:
delEffect in interface Affectable
Parameters:
to - The ability object to remove as an effect on this object
See Also:
Ability, Affectable.recoverPhyStats()

numEffects

public int numEffects()
Description copied from interface: Affectable
Returns the number of ability objects listed as effects on this object.

Specified by:
numEffects in interface Affectable
Returns:
the number of effects this object has
See Also:
Ability

effects

public java.util.Enumeration<Ability> effects()
Description copied from interface: Affectable
Returns an enumerator of abilities listed as effects on this object.

Specified by:
effects in interface Affectable
Returns:
the enumerator of ability objects effecting this object
See Also:
Ability

fetchEffect

public Ability fetchEffect(int index)
Description copied from interface: Affectable
Returns an ability object listed as an effect on this object. May return null even if the index is correct to mark a race condition.

Specified by:
fetchEffect in interface Affectable
Parameters:
index - which object to return
Returns:
the ability object effecting this object
See Also:
Ability, Affectable.numEffects()

fetchEffect

public Ability fetchEffect(java.lang.String ID)
Description copied from interface: Affectable
Returns an ability object listed as an effect on this object. The object will be the one with the same ID() string as passed in.

Specified by:
fetchEffect in interface Affectable
Returns:
the ability object effecting this object
See Also:
Ability, CMObject.ID()

addBehavior

public void addBehavior(Behavior to)
Description copied from interface: Behavable
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.

Specified by:
addBehavior in interface Behavable
Parameters:
to - The behavior object to add.
See Also:
Behavior, Affectable.recoverPhyStats()

delBehavior

public void delBehavior(Behavior to)
Description copied from interface: Behavable
Delete a behavior from this object. After calling this method, recoverPhyStats() should be called next in case this behavior object modified the stats.

Specified by:
delBehavior in interface Behavable
Parameters:
to - The behavior object to remove.
See Also:
Behavior, Affectable.recoverPhyStats()

numBehaviors

public int numBehaviors()
Description copied from interface: Behavable
The number of behaviors this object has.

Specified by:
numBehaviors in interface Behavable
Returns:
the number of behaviors
See Also:
Behavior

behaviors

public java.util.Enumeration<Behavior> behaviors()
Description copied from interface: Behavable
Returns an enumerator of all the behaviors on this object.

Specified by:
behaviors in interface Behavable
Returns:
an enumerator of all the behaviors on this object.
See Also:
Behavior

fetchBehavior

public Behavior fetchBehavior(int index)
Description copied from interface: Behavable
Returns a behavior object on this object. May return null even if the index is correct to mark a race condition.

Specified by:
fetchBehavior in interface Behavable
Parameters:
index - which object to return
Returns:
the behavior object
See Also:
Behavior, Behavable.numBehaviors()

fetchBehavior

public Behavior fetchBehavior(java.lang.String ID)
Description copied from interface: Behavable
Returns a behavior object listed on this object. The object will be the one with the same ID() string as passed in.

Specified by:
fetchBehavior in interface Behavable
Returns:
the behavior object
See Also:
Behavior, CMObject.ID()

addScript

public void addScript(ScriptingEngine S)
Description copied from interface: Behavable
Add a new runnable script to this object. Objects which are not mobs or areas will gain a temporary tick service for this script.

Specified by:
addScript in interface Behavable
Parameters:
S - the scripting engine, fully populated, to add
See Also:
ScriptingEngine

delScript

public void delScript(ScriptingEngine S)
Description copied from interface: Behavable
Remove a running script from this object.

Specified by:
delScript in interface Behavable
Parameters:
S - the specific scripting engine to remove
See Also:
ScriptingEngine

numScripts

public int numScripts()
Description copied from interface: Behavable
Return the number of scripts running on this object

Specified by:
numScripts in interface Behavable
Returns:
number of scripts

scripts

public java.util.Enumeration<ScriptingEngine> scripts()
Description copied from interface: Behavable
Returns an enumerator of all the scripts on this object.

Specified by:
scripts in interface Behavable
Returns:
an enumerator of all the scripts on this object.
See Also:
ScriptingEngine

fetchScript

public ScriptingEngine fetchScript(int x)
Description copied from interface: Behavable
Retreive one of the enumerated scripts running on this object

Specified by:
fetchScript in interface Behavable
Parameters:
x - which script to return
Returns:
the scripting engine
See Also:
ScriptingEngine

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

getSaveStatIndex

public int getSaveStatIndex()
Description copied from interface: Modifiable
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.

Specified by:
getSaveStatIndex in interface Modifiable
Returns:
the index into getStatCodes()
See Also:
Modifiable.getStatCodes(), Modifiable.getStat(String), Modifiable.setStat(String, String)

getStatCodes

public java.lang.String[] getStatCodes()
Description copied from interface: Modifiable
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 Modifiable
Returns:
list of the fields which may be set.
See Also:
Modifiable.getStat(String), Modifiable.setStat(String, String)

isStat

public boolean isStat(java.lang.String code)
Description copied from interface: Modifiable
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:
isStat in interface Modifiable
Parameters:
code - the name of the field to read.
Returns:
true if the code is a real value, false otherwise
See Also:
Modifiable.getStatCodes()

getCodeNum

protected int getCodeNum(java.lang.String code)

getStat

public java.lang.String getStat(java.lang.String code)
Description copied from interface: Modifiable
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 Modifiable
Parameters:
code - the name of the field to read.
Returns:
the value of the field read
See Also:
Modifiable.getStatCodes()

setStat

public void setStat(java.lang.String code,
                    java.lang.String val)
Description copied from interface: Modifiable
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 Modifiable
Parameters:
code - the name of the field to set
val - the value to set the field to
See Also:
Modifiable.getStatCodes()

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
Parameters:
E - the object to compare this one to
Returns:
whether this object is the same as the one passed in
See Also:
Modifiable.getStatCodes(), Modifiable.getStat(String)

copyOf

public CMObject copyOf()
Description copied from interface: CMObject
Similar to Cloneable.clone(), but does its best to make sure that any internal objects to this class are also copyOfed.

Specified by:
copyOf in interface CMObject
Returns:
a clone of this object

destroy

public void destroy()
Description copied from interface: Contingent
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.

Specified by:
destroy in interface Contingent

amDestroyed

public boolean amDestroyed()
Description copied from interface: Contingent
Whether the destroy() method has been previousy called on this object.

Specified by:
amDestroyed in interface Contingent
Returns:
whether the object is destroy()ed.

phyStats

public PhyStats phyStats()
Description copied from interface: Affectable
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.

Specified by:
phyStats in interface Affectable
Returns:
the current set of state fields
See Also:
Affectable.basePhyStats(), Affectable.recoverPhyStats(), PhyStats

basePhyStats

public PhyStats basePhyStats()
Description copied from interface: Affectable
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.

Specified by:
basePhyStats in interface Affectable
Returns:
a set of state fields
See Also:
Affectable.phyStats(), Affectable.recoverPhyStats(), PhyStats

recoverPhyStats

public void recoverPhyStats()
Description copied from interface: Affectable
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.

Specified by:
recoverPhyStats in interface Affectable
See Also:
Affectable.basePhyStats(), Affectable.phyStats(), Affectable.addEffect(Ability), Behavable.addBehavior(Behavior), PhyStats

setBasePhyStats

public void setBasePhyStats(PhyStats newStats)
Description copied from interface: Affectable
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.

Specified by:
setBasePhyStats in interface Affectable
Parameters:
newStats - a set of state fields
See Also:
Affectable.phyStats(), Affectable.recoverPhyStats(), PhyStats

newInstance

public CMObject newInstance()
Description copied from interface: CMObject
Returns a new instance of this class.

Specified by:
newInstance in interface CMObject
Returns:
a new instance of this class

compareTo

public int compareTo(CMObject o)
Specified by:
compareTo in interface java.lang.Comparable<CMObject>

setMiscText

public void setMiscText(java.lang.String newMiscText)
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
Parameters:
newMiscText - either an open internal text string, or XML

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

miscTextFormat

public java.lang.String miscTextFormat()
Description copied from interface: Environmental
Unimplemented as of yet, but will hold a string telling the system what the proper format of any miscText data. Will use the CMParms.MTFORMAT_* constants for definition.

Specified by:
miscTextFormat in interface Environmental
Returns:
the format expected for the miscText field
See Also:
CMParms, Environmental.text(), Environmental.setMiscText(String)

affectPhyStats

public void affectPhyStats(Physical affected,
                           PhyStats affectableStats)
Description copied from interface: StatsAffecting
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.

Specified by:
affectPhyStats in interface StatsAffecting
Parameters:
affected - the host of the PhyStats object being affected
affectableStats - the particular PhyStats object being affected
See Also:
PhyStats, Environmental, Affectable.basePhyStats(), Affectable.phyStats(), Affectable.recoverPhyStats()

affectCharStats

public void affectCharStats(MOB affectedMob,
                            CharStats affectableStats)
Description copied from interface: StatsAffecting
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.

Specified by:
affectCharStats in interface StatsAffecting
Parameters:
affectedMob - the host of the CharStats object being affected
affectableStats - the particular CharStats object being affected
See Also:
CharStats, MOB, MOB.baseCharStats(), MOB.charStats(), MOB.recoverCharStats()

affectCharState

public void affectCharState(MOB affectedMob,
                            CharState affectableMaxState)
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
Parameters:
affectedMob - the host of the CharState object being affected
affectableMaxState - the particular CharState object being affected
See Also:
CharState, MOB, MOB.baseState(), MOB.curState(), MOB.recoverMaxState()

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

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
Parameters:
myHost - either the initiator of the event, or the host of this object
msg - the CMMsg that wants to be executed
Returns:
whether this message is allowed to execute
See Also:
CMMsg, CMMsg.source()

tick

public boolean tick(Tickable ticking,
                    int tickID)
Description copied from interface: Tickable
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.

Specified by:
tick in interface Tickable
Parameters:
ticking - a reference to this Tickable object
tickID - the TICKID_ constant describing this periodic call, as defined in Tickable
Returns:
true always, unless this object no longer wishes to ever tick again, in which case false
See Also:
Tickable, ServiceEngine, TickableGroup