com.planet_ink.coffee_mud.Areas.interfaces
Interface Area

All Superinterfaces:
Affectable, Behavable, java.lang.Cloneable, CMObject, java.lang.Comparable<CMObject>, Contingent, Economics, Environmental, Modifiable, MsgListener, Physical, PhysicalAgent, Places, StatsAffecting, Tickable
All Known Subinterfaces:
AutoGenArea
All Known Implementing Classes:
Moon, Planet, StdArea, StdAutoGenInstance, StdBoardableShip, StdGridArea, StdPlanet, StdSpaceShip, StdThinArea, StdThinGridArea, StdThinInstance, StdThinPlanet, StdTimeZone, SubThinInstance

public interface Area
extends Economics, PhysicalAgent, Places

An Area is an abstract collection of rooms organized together under a single name in order to share attributes or give some common functionality. Areas can also include other areas in a parent-child relationship.


Nested Class Summary
static class Area.AreaInstanceChild
          Class to hold a reference to a child area instance, and the inhabitants who belong there.
static class Area.CompleteRoomEnumerator
           
static class Area.RoomComparator
          Comparator for tree sets, comparing room ids of rooms
static class Area.RoomIDComparator
          Comparator for tree sets, comparing room ids of rooms
static class Area.RoomIDEnumerator
           
static class Area.State
          State flag for areas.
static class Area.Stats
          Various area IStat constants..
 
Field Summary
static int FLAG_INSTANCE_CHILD
          State flag meaning this area is a INSTANCE child type area.
static int FLAG_INSTANCE_PARENT
          State flag meaning this area is a INSTANCE parent type area.
static int FLAG_THIN
          State flag meaning this area is a THIN type area.
static int THEME_ALLTHEMES
          Bitmap flag meaning that the object supports ALL themes.
static java.lang.String[] THEME_BIT_NAMES
           
static int THEME_FANTASY
          Bitmap flag meaning that the object supports magic.
static int THEME_HEROIC
          Bitmap flag meaning that the object supports super powers.
static int THEME_INHERIT
          Bitmap flag meaning that the object supports magic.
static java.lang.String[] THEME_NAMES
          Indexed description of the THEME_ bitmap constants in all possible combinations -- in upper/single word format
static java.lang.String[] THEME_PHRASE
          Indexed description of the THEME_ bitmap constants in all possible combinations.
static java.lang.String[] THEME_PHRASE_EXT
          Indexed extended description of the THEME_ bitmap constants in all possible combinations.
static int THEME_SKILLONLYMASK
          Bitmap flag meaning that the object only supports usage of above in Skills.
static int THEME_TECHNOLOGY
          Bitmap flag meaning that the object supports technology.
static long TIME_PASSIVE_LAPSE
          Amount of time of player absence before an area automatically goes from Active to passive
 
Fields inherited from interface com.planet_ink.coffee_mud.core.interfaces.Places
ALL_CLIMATE_MASK, ATMOSPHERE_INHERIT, CLIMASK_COLD, CLIMASK_DRY, CLIMASK_HOT, CLIMASK_INHERIT, CLIMASK_NORMAL, CLIMASK_WET, CLIMASK_WINDY, CLIMATE_DESCS, NUM_CLIMATES
 
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_BEAMWEAPON, TICKID_CLAN, TICKID_CLANITEM, TICKID_DEADBODY_DECAY, TICKID_ELECTRONICS, TICKID_EMAIL, TICKID_EXIT_BEHAVIOR, TICKID_EXIT_REOPEN, TICKID_ITEM_BEHAVIOR, TICKID_ITEM_BOUNCEBACK, TICKID_LIGHT_FLICKERS, TICKID_LIVEAUCTION, TICKID_LONGERMASK, TICKID_MISCELLANEOUS, TICKID_MOB, TICKID_PROPERTY_SPECIAL, TICKID_QUEST, TICKID_READYTOSTOP, TICKID_ROOM_BEHAVIOR, TICKID_ROOM_ITEM_REJUV, TICKID_SOLITARYMASK, TICKID_SPECIALCOMBAT, TICKID_SPECIALMANEUVER, TICKID_SPELL_AFFECT, TICKID_SUPPORT, TICKID_TIMEAUCTION, TICKID_TRAP_DESTRUCTION, TICKID_TRAP_RESET
 
Method Summary
 void addBlurbFlag(java.lang.String flagPlusDesc)
          A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area.
 void addChild(Area area)
          Designates the given Area object as a Child of this one.
 void addMetroRoom(Room R)
          Designates that a given Room object belongs to one of this areas children.
 void addMetroRoomnumber(java.lang.String roomID)
          Designates that a given roomid represents a room which belongs to one of this areas children.
 void addParent(Area area)
          Designates the given Area object as a Parent of this one.
 void addProperRoom(Room R)
          This method adds a new Room to this area.
 void addProperRoomnumber(java.lang.String roomID)
          Designates that the given roomID belongs to this Area.
 void addSubOp(java.lang.String username)
          Adds a SubOp to this area.
 boolean amISubOp(java.lang.String username)
          Returns whether the given player name is a SubOp to this area.
 java.util.Enumeration<java.lang.String> areaBlurbFlags()
          A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area.
 boolean canChild(Area area)
          Returns whether the Area named MAY BE designated as a child of this Area A Child Area inherets certain behaviors and property effects from its Parents
 boolean canParent(Area newParent)
          Returns whether the Area named MAY BE designated as a parent of this Area A Parent Area passes down certain behaviors and property effects to its children
 void delBlurbFlag(java.lang.String flagOnly)
          A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area.
 void delMetroRoom(Room R)
          Designates that a given Room object no longer belongs to one of this areas children.
 void delMetroRoomnumber(java.lang.String roomID)
          Designates that a given roomid represents a room which no longer belongs to one of this areas children.
 void delProperRoom(Room R)
          This method removes an existing Room from this area.
 void delProperRoomnumber(java.lang.String roomID)
          Designates that the given roomID no longer belongs to this Area.
 void delSubOp(java.lang.String username)
          Removes a SubOp to this area.
 void fillInAreaRoom(Room R)
          This method causes a given room to have its run-time generated Skys to be re-generated.
 void fillInAreaRooms()
          This method causes all proper rooms within this area to have their run-time generated Skys to be re-generated.
 long flags()
          Return basic attributed flag about the area.
 java.lang.String getArchivePath()
          Returns the coffeemud .cmare filename that will be used when the EXPORT command is used in such a way as to auto-generate filenames.
 int[] getAreaIStats()
          Returns an integer array of statistics about this area based on a snapshot generated the first time it is called.
 Area.State getAreaState()
          Area Flags, unlike flags, is a PURELY run-time set that changes depending upon how the engine is operating on this area or its content.
 java.lang.StringBuffer getAreaStats()
          Returns a descriptive list of statistics about this area based on a snapshot from getAreaIStats(), which is cached after being generated.
 java.lang.String getAuthorID()
          Returns the name of the author of this area, an arbitrary string
 java.lang.String getBlurbFlag(java.lang.String flag)
          A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area.
 RoomnumberSet getCachedRoomnumbers()
          Returns a RoomnumberSet for all rooms that properly belong to this area, excluding those not yet loaded.
 Area getChild(java.lang.String named)
          Returns the named Child Area object for this Area A Child Area inherets certain behaviors and property effects from its Parents
 java.util.Enumeration<Area> getChildren()
          An enumerator list of Area objects representing the Children Areas of this Area.
 Climate getClimateObj()
          Returns a reference to the Climate object that represents the current and future weather for this area.
 java.util.Enumeration<Room> getCompleteMap()
          This method is the same as getProperMap, except that it will load any Rooms that belong to the area but have not yet been loaded.
 java.lang.String getCurrency()
          Sets the default currency for this area, which will be referenced by shopkeepers, bankers, and other mobs.
 java.util.Enumeration<Room> getFilledCompleteMap()
          This method is the same as getFilledProperMap, except that it will load any Rooms that belong to the area but have not yet been loaded.
 java.util.Enumeration<Room> getFilledProperMap()
          Returns an enumerator for all previously loaded rooms that properly belongs to this area, along with their skys or underwater add-ons.
 java.util.Enumeration<Room> getMetroMap()
          Returns an enumerator for all previously loaded rooms that properly belongs to this area AND to any child areas.
 java.lang.String getNewRoomID(Room startRoom, int direction)
          Generates a new RoomID for a new Room in this area.
 Area getParent(java.lang.String named)
          Returns the named Parent Area object for this Area A Parent Area passes down certain behaviors and property effects to its children
 java.util.Enumeration<Area> getParents()
          An enumerator list of Area objects representing the Parent Areas of this Area.
 java.util.List<Area> getParentsRecurse()
          Returns a list of all Parent Area objects to this one, recursively A Parent Area passes down certain behaviors and property effects to its children
 int getPlayerLevel()
          Returns a fake player-level, to be used instead of median or average actual mob level, for cases where you want an area to reflect its higher level mobs over low level trash.
 java.util.Enumeration<Room> getProperMap()
          Returns an enumerator for all previously loaded rooms that properly belongs to this area.
 RoomnumberSet getProperRoomnumbers()
          Returns a RoomnumberSet for all rooms that properly belong to this area, including those not yet loaded.
 Room getRandomMetroRoom()
          Returns a random room from this area, or one of its children, loading it if necessary.
 Room getRandomProperRoom()
          Returns a random room from this area, loading it if necessary.
 Room getRoom(java.lang.String roomID)
          Returns a room of the given roomID, if it has already been added by calling addProperRoom.
 java.lang.String getSubOpList()
          Returns a semicolon delimited list of player Names that represent the SubOp list for this area.
 int getTheme()
          Returns the technology level supported by this area.
 int getThemeCode()
          Returns the technology level supported by this area.
 TimeClock getTimeObj()
          Returns a reference to the TimeClock object that represents the calendar and date/time for this area.
 boolean inMyMetroArea(Area A)
          Returns whether the given Area object is either THIS area, a child of this area, or a decendent.
 boolean isChild(Area area)
          Returns whether the Area is a child of this Area A Child Area inherets certain behaviors and property effects from its Parents
 boolean isChild(java.lang.String named)
          Returns whether the Area named is a child of this Area A Child Area inherets certain behaviors and property effects from its Parents
 boolean isParent(Area area)
          Returns whether the Area is a Parent of this Area A Parent Area passes down certain behaviors and property effects to its children
 boolean isParent(java.lang.String named)
          Returns whether the Area named is a Parent of this Area A Parent Area passes down certain behaviors and property effects to its children
 boolean isProperlyEmpty()
          Returns whether this area has any proper rooms at all, even if uncached.
 boolean isRoom(Room R)
          Returns whether the given Room object belongs to this Area, even if the Room object properly has not been loaded yet (due to the area being thin).
 int metroSize()
          Returns a count of all cached rooms that belong to this area, or to a child area, which have been loaded.
 int numAllBlurbFlags()
          A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area.
 int numberOfProperIDedRooms()
          Returns a count of all cached rooms that belong to this area, excluding skys and auto-generated rooms.
 int numBlurbFlags()
          A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area.
 int properSize()
          Returns a count of all cached rooms that belong to this area, which have been loaded.
 void removeChild(Area area)
          Designates the given Area object as no longer being Child of this one.
 void removeParent(Area area)
          Designates the given Area object as no longer being Parent of this one.
 void setArchivePath(java.lang.String pathFile)
          Sets the coffeemud .cmare filename that will be used when the EXPORT command is used in such a way as to auto-generate filenames.
 void setAreaState(Area.State newState)
          Area Flags, unlike flags, is a PURELY run-time set that changes depending upon how the engine is operating on this area or its content.
 void setAuthorID(java.lang.String authorID)
          Sets the name of the author of this area, an arbitrary string
 void setClimateObj(Climate obj)
          Sets a reference to the Climate object that represents the current and future weather for this area.
 void setCurrency(java.lang.String currency)
          Returns the default currency for this area, which will be referenced by shopkeepers, bankers, and other mobs.
 void setPlayerLevel(int level)
          Sets a fake player-level, to be used instead of median or average actual mob level, for cases where you want an area to reflect its higher level mobs over low level trash.
 void setProperRoomnumbers(RoomnumberSet set)
          Sets the RoomnumberSet for all rooms that properly belong to this area, including those not yet loaded.
 void setSubOpList(java.lang.String list)
          Sets the semicolon delimited list of player Names that represent the SubOp list for this area.
 void setTheme(int level)
          Sets the technology level supported by this area.
 void setTimeObj(TimeClock obj)
          Sets a reference to the TimeClock object that represents the calendar and date/time for this area.
 java.util.Enumeration<java.lang.String> subOps()
          Returns a enumeration of player Names that represent the SubOp list for this area.
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Economics
budget, devalueRate, finalBudget, finalDevalueRate, finalIgnoreMask, finalInvResetRate, finalItemPricingAdjustments, finalPrejudiceFactors, ignoreMask, invResetRate, itemPricingAdjustments, prejudiceFactors, setBudget, setDevalueRate, setIgnoreMask, setInvResetRate, setItemPricingAdjustments, setPrejudiceFactors
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Places
getAtmosphere, getAtmosphereCode, getClimateType, getClimateTypeCode, setAtmosphere, setClimateType
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Physical
description, displayText, name
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Environmental
description, displayText, expirationDate, image, isGeneric, L, maxRange, minRange, miscTextFormat, Name, rawImage, sameAs, setDescription, setDisplayText, setExpirationDate, setImage, setMiscText, setName, text
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Tickable
getTickStatus, name, tick
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.StatsAffecting
affectCharState, affectCharStats, affectPhyStats
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.MsgListener
executeMsg, okMessage
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Contingent
amDestroyed, destroy, isSavable, setSavable
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.CMObject
copyOf, ID, initializeClass, newInstance
 
Methods inherited from interface java.lang.Comparable
compareTo
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Modifiable
getSaveStatIndex, getStat, getStatCodes, isStat, setStat
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Affectable
addEffect, addNonUninvokableEffect, basePhyStats, delAllEffects, delEffect, eachEffect, effects, fetchEffect, fetchEffect, numEffects, phyStats, recoverPhyStats, setBasePhyStats
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Behavable
addBehavior, addScript, behaviors, delAllBehaviors, delAllScripts, delBehavior, delScript, eachBehavior, eachScript, fetchBehavior, fetchBehavior, fetchScript, numBehaviors, numScripts, scripts
 

Field Detail

THEME_BIT_NAMES

static final java.lang.String[] THEME_BIT_NAMES

THEME_INHERIT

static final int THEME_INHERIT
Bitmap flag meaning that the object supports magic. @see com.planet_ink.coffee_mud.Areas.interfaces.Area#getTheme()

See Also:
Constant Field Values

THEME_FANTASY

static final int THEME_FANTASY
Bitmap flag meaning that the object supports magic. @see com.planet_ink.coffee_mud.Areas.interfaces.Area#getTheme()

See Also:
Constant Field Values

THEME_TECHNOLOGY

static final int THEME_TECHNOLOGY
Bitmap flag meaning that the object supports technology. @see com.planet_ink.coffee_mud.Areas.interfaces.Area#getTheme()

See Also:
Constant Field Values

THEME_HEROIC

static final int THEME_HEROIC
Bitmap flag meaning that the object supports super powers. @see com.planet_ink.coffee_mud.Areas.interfaces.Area#getTheme()

See Also:
Constant Field Values

THEME_ALLTHEMES

static final int THEME_ALLTHEMES
Bitmap flag meaning that the object supports ALL themes. @see com.planet_ink.coffee_mud.Areas.interfaces.Area#getTheme()

See Also:
Constant Field Values

THEME_SKILLONLYMASK

static final int THEME_SKILLONLYMASK
Bitmap flag meaning that the object only supports usage of above in Skills. @see com.planet_ink.coffee_mud.Areas.interfaces.Area#getTheme()

See Also:
Constant Field Values

THEME_NAMES

static final java.lang.String[] THEME_NAMES
Indexed description of the THEME_ bitmap constants in all possible combinations -- in upper/single word format


THEME_PHRASE

static final java.lang.String[] THEME_PHRASE
Indexed description of the THEME_ bitmap constants in all possible combinations. In readable format.

See Also:
THEME_FANTASY

THEME_PHRASE_EXT

static final java.lang.String[] THEME_PHRASE_EXT
Indexed extended description of the THEME_ bitmap constants in all possible combinations.

See Also:
THEME_FANTASY

FLAG_THIN

static final int FLAG_THIN
State flag meaning this area is a THIN type area. @see com.planet_ink.coffee_mud.Areas.interfaces.Area#flags()

See Also:
Constant Field Values

FLAG_INSTANCE_PARENT

static final int FLAG_INSTANCE_PARENT
State flag meaning this area is a INSTANCE parent type area. @see com.planet_ink.coffee_mud.Areas.interfaces.Area#flags()

See Also:
Constant Field Values

FLAG_INSTANCE_CHILD

static final int FLAG_INSTANCE_CHILD
State flag meaning this area is a INSTANCE child type area. @see com.planet_ink.coffee_mud.Areas.interfaces.Area#flags()

See Also:
Constant Field Values

TIME_PASSIVE_LAPSE

static final long TIME_PASSIVE_LAPSE
Amount of time of player absence before an area automatically goes from Active to passive

See Also:
Constant Field Values
Method Detail

flags

long flags()
Return basic attributed flag about the area.

Returns:
either 0, or a bitmap of FLAG_ constants
See Also:
FLAG_THIN

getThemeCode

int getThemeCode()
Returns the technology level supported by this area. Activities within rooms within this area will be affected by the results of this flag. May return THEME_INHERIT if the area inherits a theme from above.

Returns:
a bitmap of the themes supported by this area.
See Also:
THEME_FANTASY

getTheme

int getTheme()
Returns the technology level supported by this area. Activities within rooms within this area will be affected by the results of this flag. May result in consulting parent areas to determine a theme

Returns:
a bitmap of the themes supported by this area.
See Also:
THEME_FANTASY

setTheme

void setTheme(int level)
Sets the technology level supported by this area. Activities within rooms within this area will be affected by the results of this flag.

Parameters:
level - the bitmap representing the tech level
See Also:
THEME_FANTASY

getArchivePath

java.lang.String getArchivePath()
Returns the coffeemud .cmare filename that will be used when the EXPORT command is used in such a way as to auto-generate filenames.

Returns:
the name of the .cmare filename to use

setArchivePath

void setArchivePath(java.lang.String pathFile)
Sets the coffeemud .cmare filename that will be used when the EXPORT command is used in such a way as to auto-generate filenames.

Parameters:
pathFile - the name of the .cmare filename to use

getClimateObj

Climate getClimateObj()
Returns a reference to the Climate object that represents the current and future weather for this area.

Returns:
a com.planet_ink.coffee_mud.Common.interfaces.Climate object
See Also:
Climate

setClimateObj

void setClimateObj(Climate obj)
Sets a reference to the Climate object that represents the current and future weather for this area.

Parameters:
obj - a com.planet_ink.coffee_mud.Common.interfaces.Climate object
See Also:
Climate

getTimeObj

TimeClock getTimeObj()
Returns a reference to the TimeClock object that represents the calendar and date/time for this area. May be shared by numerous areas.

Returns:
a com.planet_ink.coffee_mud.Common.interfaces.TimeClock object
See Also:
TimeClock

setTimeObj

void setTimeObj(TimeClock obj)
Sets a reference to the TimeClock object that represents the calendar and date/time for this area. May be shared by numerous areas.

Parameters:
obj - a com.planet_ink.coffee_mud.Common.interfaces.TimeClock object
See Also:
TimeClock

setAuthorID

void setAuthorID(java.lang.String authorID)
Sets the name of the author of this area, an arbitrary string

Parameters:
authorID - the author of the area

getAuthorID

java.lang.String getAuthorID()
Returns the name of the author of this area, an arbitrary string

Returns:
the author of the area

getCurrency

java.lang.String getCurrency()
Sets the default currency for this area, which will be referenced by shopkeepers, bankers, and other mobs. See Archon's Guide for the proper format for this string, as it can be anything from a full current definition, to a reference to an existing one.

Returns:
a currency name/definition

setCurrency

void setCurrency(java.lang.String currency)
Returns the default currency for this area, which will be referenced by shopkeepers, bankers, and other mobs. See Archon's Guide for the proper format for this string, as it can be anything from a full current definition, to a reference to an existing one.

Parameters:
currency - a currency name/definition

numBlurbFlags

int numBlurbFlags()
A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area.

Returns:
the number of such strings defined

numAllBlurbFlags

int numAllBlurbFlags()
A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area.

Returns:
the number of such strings defined for this area AND parent areas

getBlurbFlag

java.lang.String getBlurbFlag(java.lang.String flag)
A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area. This method returns the definition of a named flag

Parameters:
flag - the name of the flag to return
Returns:
the definition/string value of the flag

areaBlurbFlags

java.util.Enumeration<java.lang.String> areaBlurbFlags()
A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area. This method returns the name of an enumerated flag.

Returns:
enumeration of blurb flag keys, call getBlurbFlag(String) for the value
See Also:
getBlurbFlag(String)

addBlurbFlag

void addBlurbFlag(java.lang.String flagPlusDesc)
A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area. This method adds a new flag.

Parameters:
flagPlusDesc - the flag name, space, followed by definition

delBlurbFlag

void delBlurbFlag(java.lang.String flagOnly)
A blurb flag is a run-time modifiable set of strings that can be added to an area in order to display them in the HELP entry for an area. This method deletes an existing flag by name.

Parameters:
flagOnly - the name of the flag to remove.

fillInAreaRooms

void fillInAreaRooms()
This method causes all proper rooms within this area to have their run-time generated Skys to be re-generated. It is called at boot-time and when areas are reset or re-generated.


fillInAreaRoom

void fillInAreaRoom(Room R)
This method causes a given room to have its run-time generated Skys to be re-generated.

Parameters:
R - the Room object to "fill-in"
See Also:
Room

addProperRoom

void addProperRoom(Room R)
This method adds a new Room to this area. It is called by the Room.setArea( method, and should rarely if ever be called directly. It calls addMetroRoom on all parent areas to make them aware of it as well.

Parameters:
R - the Room to add.
See Also:
addMetroRoom(Room), Room

delProperRoom

void delProperRoom(Room R)
This method removes an existing Room from this area. It also removes it from parent areas.

Parameters:
R - the Room to delete.
See Also:
delMetroRoom(Room), Room

getRoom

Room getRoom(java.lang.String roomID)
Returns a room of the given roomID, if it has already been added by calling addProperRoom.

Parameters:
roomID - the roomID of the room to return.
Returns:
a reference to the room that the id refers to, IF the room belongs here.
See Also:
Room

isRoom

boolean isRoom(Room R)
Returns whether the given Room object belongs to this Area, even if the Room object properly has not been loaded yet (due to the area being thin).

Parameters:
R - the Room object to check for
Returns:
whether it belongs to this Area or no.
See Also:
Room

getRandomProperRoom

Room getRandomProperRoom()
Returns a random room from this area, loading it if necessary.

Returns:
a reference to a random room from this area.
See Also:
Room

getProperMap

java.util.Enumeration<Room> getProperMap()
Returns an enumerator for all previously loaded rooms that properly belongs to this area.

Returns:
an enumerator of Room objects
See Also:
getCompleteMap(), Room

getFilledProperMap

java.util.Enumeration<Room> getFilledProperMap()
Returns an enumerator for all previously loaded rooms that properly belongs to this area, along with their skys or underwater add-ons.

Returns:
an enumerator of Room objects
See Also:
getProperMap(), Room

addProperRoomnumber

void addProperRoomnumber(java.lang.String roomID)
Designates that the given roomID belongs to this Area.

Parameters:
roomID - the roomID of a room which should belong to this Area.

delProperRoomnumber

void delProperRoomnumber(java.lang.String roomID)
Designates that the given roomID no longer belongs to this Area.

Parameters:
roomID - the roomID of a room which should no longer belong to this Area.

getCompleteMap

java.util.Enumeration<Room> getCompleteMap()
This method is the same as getProperMap, except that it will load any Rooms that belong to the area but have not yet been loaded. The Enumerator returned is thus a more complete set than returned by getProperMap

Returns:
an enumerator of Room objects
See Also:
getProperMap(), Room

getFilledCompleteMap

java.util.Enumeration<Room> getFilledCompleteMap()
This method is the same as getFilledProperMap, except that it will load any Rooms that belong to the area but have not yet been loaded. The Enumerator returned is thus a more complete set than returned by getFilledProperMap

Returns:
an enumerator of Room objects
See Also:
getFilledProperMap(), Room

isProperlyEmpty

boolean isProperlyEmpty()
Returns whether this area has any proper rooms at all, even if uncached.

Returns:
true if there are no proper rooms, false otherwise

getProperRoomnumbers

RoomnumberSet getProperRoomnumbers()
Returns a RoomnumberSet for all rooms that properly belong to this area, including those not yet loaded.

Returns:
a com.planet_ink.coffee_mud.Common.interfaces.RoomnumberSet object
See Also:
RoomnumberSet

setProperRoomnumbers

void setProperRoomnumbers(RoomnumberSet set)
Sets the RoomnumberSet for all rooms that properly belong to this area, including those not yet loaded.

Parameters:
set - a com.planet_ink.coffee_mud.Common.interfaces.RoomnumberSet object
See Also:
RoomnumberSet

getCachedRoomnumbers

RoomnumberSet getCachedRoomnumbers()
Returns a RoomnumberSet for all rooms that properly belong to this area, excluding those not yet loaded.

Returns:
a com.planet_ink.coffee_mud.Common.interfaces.RoomnumberSet object

numberOfProperIDedRooms

int numberOfProperIDedRooms()
Returns a count of all cached rooms that belong to this area, excluding skys and auto-generated rooms.

Returns:
a count of the number of rooms that have an ID

properSize

int properSize()
Returns a count of all cached rooms that belong to this area, which have been loaded.

Returns:
the number of rooms loaded.

getMetroMap

java.util.Enumeration<Room> getMetroMap()
Returns an enumerator for all previously loaded rooms that properly belongs to this area AND to any child areas.

Returns:
an enumerator of Room objects
See Also:
Room

addMetroRoom

void addMetroRoom(Room R)
Designates that a given Room object belongs to one of this areas children.

Parameters:
R - a Room object from one of this areas child areas.
See Also:
Room

delMetroRoom

void delMetroRoom(Room R)
Designates that a given Room object no longer belongs to one of this areas children.

Parameters:
R - a Room object formerly from one of this areas child areas.
See Also:
Room

addMetroRoomnumber

void addMetroRoomnumber(java.lang.String roomID)
Designates that a given roomid represents a room which belongs to one of this areas children.

Parameters:
roomID - a roomid for a room

delMetroRoomnumber

void delMetroRoomnumber(java.lang.String roomID)
Designates that a given roomid represents a room which no longer belongs to one of this areas children.

Parameters:
roomID - a roomid for a former room

metroSize

int metroSize()
Returns a count of all cached rooms that belong to this area, or to a child area, which have been loaded.

Returns:
the count of rooms in this metro area

inMyMetroArea

boolean inMyMetroArea(Area A)
Returns whether the given Area object is either THIS area, a child of this area, or a decendent.

Parameters:
A - an Area object
Returns:
whether the Area is downward-kin

getRandomMetroRoom

Room getRandomMetroRoom()
Returns a random room from this area, or one of its children, loading it if necessary.

Returns:
a random Room object from this or a child area
See Also:
Room

getNewRoomID

java.lang.String getNewRoomID(Room startRoom,
                              int direction)
Generates a new RoomID for a new Room in this area.

Parameters:
startRoom - the room connected to the upcoming new one (or null)
direction - the direction from the startRoom the new one will go
Returns:
a generated new RoomID for the new Room
See Also:
Room

setAreaState

void setAreaState(Area.State newState)
Area Flags, unlike flags, is a PURELY run-time set that changes depending upon how the engine is operating on this area or its content. This method changes the state.

Parameters:
newState - the new state to put this entire area into
See Also:
Area.State

getAreaState

Area.State getAreaState()
Area Flags, unlike flags, is a PURELY run-time set that changes depending upon how the engine is operating on this area or its content. This method returns the state.

Returns:
a numeric state for this area
See Also:
Area.State

addSubOp

void addSubOp(java.lang.String username)
Adds a SubOp to this area. This must be a valid Player Name. A Player with this designation will have their AREA security flags activated when in this area.

Parameters:
username - a players Name
See Also:
delSubOp(String)

delSubOp

void delSubOp(java.lang.String username)
Removes a SubOp to this area.

Parameters:
username - a players Name
See Also:
addSubOp(String)

amISubOp

boolean amISubOp(java.lang.String username)
Returns whether the given player name is a SubOp to this area. This must be a valid Player Name. A Player with this designation will have their AREA_ security flags activated when in this area.

Parameters:
username - a players Name
Returns:
whether the players name is on the subop list for this area
See Also:
addSubOp(String)

getSubOpList

java.lang.String getSubOpList()
Returns a semicolon delimited list of player Names that represent the SubOp list for this area. A Player with this designation will have their AREA_ security flags activated when in this area.

Returns:
a semicolon delimited list of player Names.
See Also:
addSubOp(String)

setSubOpList

void setSubOpList(java.lang.String list)
Sets the semicolon delimited list of player Names that represent the SubOp list for this area. A Player with this designation will have their AREA_ security flags activated when in this area.

Parameters:
list - a semicolon delimited list of player Names.
See Also:
addSubOp(String)

subOps

java.util.Enumeration<java.lang.String> subOps()
Returns a enumeration of player Names that represent the SubOp list for this area. A Player with this designation will have their AREA_ security flags activated when in this area.

Returns:
enumeration of player Names

getAreaStats

java.lang.StringBuffer getAreaStats()
Returns a descriptive list of statistics about this area based on a snapshot from getAreaIStats(), which is cached after being generated. This stringbuffer returned is user-readable.

Returns:
a user readable string describing stats about the area.
See Also:
getAreaIStats()

getAreaIStats

int[] getAreaIStats()
Returns an integer array of statistics about this area based on a snapshot generated the first time it is called. This array is the cached for future calls, but can be unloaded from resources using the UNLOAD command, to force a re-generation. The array is dereferenced using AREASTAT_ constants.

Returns:
an array of integer statistics
See Also:
Area.Stats

getPlayerLevel

int getPlayerLevel()
Returns a fake player-level, to be used instead of median or average actual mob level, for cases where you want an area to reflect its higher level mobs over low level trash. Returns 0 if none is applied and the median or average should instead be used.

Returns:
the player level, or 0
See Also:
setPlayerLevel(int)

setPlayerLevel

void setPlayerLevel(int level)
Sets a fake player-level, to be used instead of median or average actual mob level, for cases where you want an area to reflect its higher level mobs over low level trash. Returns 0 if none is applied and the median or average should instead be used.

Parameters:
level - the player level, or 0
See Also:
getPlayerLevel()

getChildren

java.util.Enumeration<Area> getChildren()
An enumerator list of Area objects representing the Children Areas of this Area. A Child Area inherets certain behaviors and property effects from its parents

Returns:
an enumerator of Area objects

getChild

Area getChild(java.lang.String named)
Returns the named Child Area object for this Area A Child Area inherets certain behaviors and property effects from its Parents

Parameters:
named - the name of an Area
Returns:
an Area Child object

isChild

boolean isChild(Area area)
Returns whether the Area is a child of this Area A Child Area inherets certain behaviors and property effects from its Parents

Parameters:
area - an Area object
Returns:
whether the area is a child of this one

isChild

boolean isChild(java.lang.String named)
Returns whether the Area named is a child of this Area A Child Area inherets certain behaviors and property effects from its Parents

Parameters:
named - the name of an Area
Returns:
whether the area named is a child of this one

addChild

void addChild(Area area)
Designates the given Area object as a Child of this one. A Child Area inherets certain behaviors and property effects from its Parents

Parameters:
area - an Area object

removeChild

void removeChild(Area area)
Designates the given Area object as no longer being Child of this one. A Child Area inherets certain behaviors and property effects from its Parents

Parameters:
area - an Area object

canChild

boolean canChild(Area area)
Returns whether the Area named MAY BE designated as a child of this Area A Child Area inherets certain behaviors and property effects from its Parents

Parameters:
area - an Area to check
Returns:
whether the Area named MAY BE designated as a child of this Area

getParents

java.util.Enumeration<Area> getParents()
An enumerator list of Area objects representing the Parent Areas of this Area. A Parent Area passes down certain behaviors and property effects to its children

Returns:
an enumerator of Area objects

getParent

Area getParent(java.lang.String named)
Returns the named Parent Area object for this Area A Parent Area passes down certain behaviors and property effects to its children

Parameters:
named - the name of an Area
Returns:
an Area Parent object

getParentsRecurse

java.util.List<Area> getParentsRecurse()
Returns a list of all Parent Area objects to this one, recursively A Parent Area passes down certain behaviors and property effects to its children

Returns:
a list of Area objects

isParent

boolean isParent(Area area)
Returns whether the Area is a Parent of this Area A Parent Area passes down certain behaviors and property effects to its children

Parameters:
area - an Area object
Returns:
whether the area is a Parent of this one

isParent

boolean isParent(java.lang.String named)
Returns whether the Area named is a Parent of this Area A Parent Area passes down certain behaviors and property effects to its children

Parameters:
named - the name of an Area
Returns:
whether the area named is a Parent of this one

addParent

void addParent(Area area)
Designates the given Area object as a Parent of this one. A Parent Area passes down certain behaviors and property effects to its children

Parameters:
area - an Area object

removeParent

void removeParent(Area area)
Designates the given Area object as no longer being Parent of this one. A Parent Area passes down certain behaviors and property effects to its children

Parameters:
area - an Area object

canParent

boolean canParent(Area newParent)
Returns whether the Area named MAY BE designated as a parent of this Area A Parent Area passes down certain behaviors and property effects to its children

Parameters:
newParent - an Area to check
Returns:
whether the Area named MAY BE designated as a parent of this Area