com.planet_ink.coffee_mud.MOBS
Class StdRideable

java.lang.Object
  extended by com.planet_ink.coffee_mud.MOBS.StdMOB
      extended by com.planet_ink.coffee_mud.MOBS.StdRideable
All Implemented Interfaces:
AbilityContainer, Affectable, Behavable, CMObject, Combatant, Contingent, DBIdentifiable, Environmental, FactionMember, Followable<MOB>, ItemCollection, ItemPossessor, Modifiable, MsgListener, MUDCmdProcessor, Physical, PhysicalAgent, Rideable, Rider, StatsAffecting, Tattooable, Tickable, MOB, java.lang.Cloneable, java.lang.Comparable<CMObject>
Direct Known Subclasses:
GenRideable, Horse, Pegasus, PegasusGreater

public class StdRideable
extends StdMOB
implements Rideable


Nested Class Summary
 
Nested classes/interfaces inherited from class com.planet_ink.coffee_mud.MOBS.StdMOB
StdMOB.ApplyAffectCharState<T extends StatsAffecting>, StdMOB.ApplyAffectCharStats<T extends StatsAffecting>, StdMOB.ApplyRecAffectPhyStats<T extends StatsAffecting>
 
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.MOBS.interfaces.MOB
MOB.Attrib
 
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.core.interfaces.ItemPossessor
ItemPossessor.Expire, ItemPossessor.Find, ItemPossessor.Move
 
Field Summary
protected  java.lang.String dismountString
           
protected  java.lang.String mountString
           
protected  java.lang.String putString
           
protected  int rideBasis
           
protected  int riderCapacity
           
protected  java.util.List<Rider> riders
           
protected  java.lang.String rideString
           
protected  java.lang.String stateString
           
protected  java.lang.String stateSubjectStr
           
 
Fields inherited from class com.planet_ink.coffee_mud.MOBS.StdMOB
abilitys, abilityUseCache, abilityUseTrig, affectCharState, affectCharStats, affectPhyStats, affects, ageMinutes, amDead, amDestroyed, amFollowing, atRange, attributesBitmap, baseCharStats, basePhyStats, baseState, behaviors, cachedImageName, charStats, clanAffects, clans, CODES, commandQue, curState, databaseID, description, displayText, experience, expertises, factions, followers, inventory, kickFlag, lastLocation, liegeID, location, maxState, me, miscText, money, moneyVariation, mySession, peaceTime, phyStats, playerStats, possHeldItem, possStartRoom, possWieldedItem, practices, questPoint, racialAffects, rawImageName, recoverAffectP, recoverTickCter, removeFromGame, riding, scripts, soulMate, tattoos, tickAgeCounter, tickStatus, trains, username, victim, wimpHitPoint, worshipCharID, xtraValues
 
Fields inherited from interface com.planet_ink.coffee_mud.core.interfaces.Rideable
RIDEABLE_AIR, RIDEABLE_DESCS, RIDEABLE_ENTERIN, RIDEABLE_LADDER, RIDEABLE_LAND, RIDEABLE_SIT, RIDEABLE_SLEEP, RIDEABLE_TABLE, RIDEABLE_WAGON, RIDEABLE_WATER
 
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
 
Fields inherited from interface com.planet_ink.coffee_mud.MOBS.interfaces.MOB
AGE_MILLIS_THRESHOLD, END_SHEATH_TIME, START_SHEATH_TIME
 
Fields inherited from interface com.planet_ink.coffee_mud.core.interfaces.MUDCmdProcessor
METAFLAG_AS, METAFLAG_ASMESSAGE, METAFLAG_FORCED, METAFLAG_INORDER, METAFLAG_MPFORCED, METAFLAG_ORDER, METAFLAG_POSSESSED, METAFLAG_SNOOPED
 
Constructor Summary
StdRideable()
           
 
Method Summary
 void addRider(Rider mob)
          Adds a new Rider to this Rideable.
 void affectCharState(MOB affected, CharState affectableStats)
          This method is called by the recoverCharState() method on other MOB objects.
 void affectCharStats(MOB affected, 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 amRiding(Rider mob)
          Returns whether Rider is currently mounted on this Rideable
protected  void cloneFix(MOB E)
           
 void delRider(Rider mob)
          Removes a Rider from this Rideable.
 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 dismountString(Rider R)
          Returns a string grammatically correct for the given rider when they are dismounting this Rideable
 java.lang.String displayText(MOB mob)
          Returns the displayText, but as seen by the given viewer.
 void executeMsg(Environmental myHost, CMMsg msg)
          The general message event handler for the object.
 Rider fetchRider(int which)
          Returns a particular Rider mounted on this Rideable.
 java.lang.String getDismountString()
          Returns a custom string grammatically correct for the given rider when they are dismounting this Rideable
 java.lang.String getMountString()
          Returns a custom string grammatically correct for the given rider when they are mounting this Rideable
 java.lang.String getPutString()
          Returns a custom string grammatically correct for the given rider when they are putting something on this Rideable
 java.util.Set<MOB> getRideBuddies(java.util.Set<MOB> list)
          This method recursively returns whoever this mob is riding, and if they are a rideable, who all is riding with him.
 java.lang.String getRideString()
          Returns a custom verb string describing what one does when one rides this Rideable from room to room.
 java.lang.String getStateString()
          Returns the custom string grammatically correct for the given rider when they are mounted on this Rideable
 java.lang.String getStateStringSubject()
          Returns a custom string grammatically correct for this Rideable when Riders are mounted
 java.lang.String ID()
          The CoffeeMud Java Class ID shared by all instances of this object.
 boolean isMobileRideBasis()
          Whether the type of rideable is mobile.
 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.
 DeadBody killMeDead(boolean createBody)
          Puts this mob in a dead state, removes all temporary effects, creates a corpse, ends combat, and sends players to their graveyard.
 boolean mobileRideBasis()
          Whether this Rideable moves when the Rider wants to move it.
 java.lang.String mountString(int commandType, Rider R)
          Returns a string grammatically correct for the given rider when they are mounting this Rideable
 int numRiders()
          Returns the number of riders currently mounted on this Rideable
 boolean okMessage(Environmental myHost, CMMsg msg)
          The general message event previewer for the object.
 java.lang.String putString(Rider R)
          Returns a string grammatically correct for the given rider when they are putting something on this Rideable
 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.
 int rideBasis()
          The type of rideable object this is.
 int riderCapacity()
          The number of Riders which may ride upon this Rideable
 java.util.Enumeration<Rider> riders()
          Returns an iterator of the riders on this rideable
 java.lang.String rideString(Rider R)
          Returns a verb string describing what one does when one rides this Rideable from room to room.
 void setDismountString(java.lang.String str)
          Sets a string grammatically correct for the given rider when they are dismounting this Rideable
 void setMountString(java.lang.String str)
          Setss a string grammatically correct for the given rider when they are mounting this Rideable
 void setPutString(java.lang.String str)
          Set a string grammatically correct for the given rider when they are putting something on this Rideable
 void setRideBasis(int basis)
          Sets type of rideable object this is.
 void setRiderCapacity(int newCapacity)
          Sets the number of Riders which may ride upon this Rideable
 void setRideString(java.lang.String str)
          Sets a verb string describing what one does when one rides this Rideable from room to room.
 void setStateString(java.lang.String str)
          Returns a string grammatically correct for the given rider when they are mounted on this Rideable
 void setStateStringSubject(java.lang.String str)
          Sets a string grammatically correct for this Rideable when Riders are mounted
 java.lang.String stateString(Rider R)
          Returns a string grammatically correct for the given rider when they are mounted on this Rideable
 java.lang.String stateStringSubject(Rider R)
          Returns a string grammatically correct for this Rideable when Riders are mounted
 
Methods inherited from class com.planet_ink.coffee_mud.MOBS.StdMOB
abilities, actions, addAbility, addBehavior, addEffect, addExpertise, addFaction, addFollower, addItem, addItem, addNonUninvokableEffect, addPriorityEffect, addScript, addTattoo, addTattoo, addTattoo, adjustFaction, allAbilities, amActive, amDead, amDestroyed, amFollowing, amUltimatelyFollowing, baseCharStats, basePhyStats, baseState, baseWeight, behaviors, bringToLife, bringToLife, calculateActionCost, canSaveDatabaseID, charStats, clanEffects, clans, clearCommandQueue, commandQueSize, compareTo, confirmLocation, copyFactions, copyOf, curState, databaseID, delAbility, delAllAbilities, delAllBehaviors, delAllEffects, delAllExpertises, delAllItems, delAllScripts, delBehavior, delEffect, delExpertise, delFollower, delItem, delScript, delTattoo, delTattoo, dequeCommand, description, description, displayText, dispossess, doCommand, doCommand, eachBehavior, eachEffect, eachItem, eachScript, effects, enqueCommand, enqueCommands, expertises, expirationDate, factions, fetchAbility, fetchAbility, fetchBehavior, fetchBehavior, fetchEffect, fetchEffect, fetchExpertise, fetchFaction, fetchFactionData, fetchFactionRanges, fetchFirstWornItem, fetchFollower, fetchFollower, fetchFollowerOrder, fetchFromInventory, fetchHeldItem, fetchItem, fetchRandomAbility, fetchScript, fetchWieldedItem, fetchWornItems, findAbility, findItem, findItem, findItems, findItems, findTattoo, findTattooStartsWith, fixChannelColors, flagVariableEq, followers, freeWearPositions, genericName, getAbilityUsageCache, getAgeMinutes, getAttributesBitmap, getClanRole, getCodeNum, getCombatant, getDirectionToTarget, getExperience, getExpNeededDelevel, getExpNeededLevel, getExpNextLevel, getExpPrevLevel, getFactionListing, getGroupMembers, getGroupMembersAndRideables, getItem, getLiegeID, getMoney, getMoneyVariation, getMyDeity, getNaturalWeapon, getPeaceTime, getPractices, getQuestPoint, getRandomItem, getSaveStatIndex, getStartRoom, getStat, getStatCodes, getTickStatus, getTrains, getVictim, getWearPositions, getWimpHitPoint, getWorshipCharID, hasFaction, hasOnlyGoldInInventory, healthText, image, initializeClass, isAttributeSet, isContent, isEitherOfUsDead, isFollowedBy, isGeneric, isInCombat, isMarriedToLiege, isMine, isMonster, isPermissableToFight, isPlayer, isPossessing, isRacialAbility, isStat, items, L, lastTickedDateTime, location, makePeace, maxCarry, maxFollowers, maxItems, maxRange, maxState, mayIFight, mayPhysicallyAttack, minRange, miscTextFormat, moveItemTo, moveItemTo, name, Name, name, newInstance, numAbilities, numAllAbilities, numAllEffects, numBehaviors, numEffects, numFollowers, numItems, numScripts, personalEffects, phyStats, playerStats, prequeCommand, prequeCommands, racialEffects, rangeToTarget, rawImage, recoverCharStats, recoverMaxState, removeFaction, removeFromGame, resetToMaxState, riding, sameAs, scripts, session, setActions, setAgeMinutes, setAttribute, setAttributesBitmap, setBaseCharStats, setBasePhyStats, setBaseState, setClan, setCombatant, setDatabaseID, setDescription, setDisplayText, setExperience, setExpirationDate, setFollowing, setImage, setLiegeID, setLocation, setMiscText, setMoney, setMoneyVariation, setName, setPlayerStats, setPractices, setQuestPoint, setRangeToTarget, setRiding, setSavable, setSession, setSoulMate, setStartRoom, setStat, setTrains, setVictim, setWimpHitPoint, setWorshipCharID, soulMate, tattoos, tell, tell, text, tick, titledName, totalFollowers, willFollowOrdersOf
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Rider
riding, setRiding
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Physical
description, 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.Contingent
amDestroyed, setSavable
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.CMObject
copyOf, 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, 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

rideBasis

protected int rideBasis

riderCapacity

protected int riderCapacity

riders

protected java.util.List<Rider> riders

putString

protected java.lang.String putString

rideString

protected java.lang.String rideString

stateString

protected java.lang.String stateString

stateSubjectStr

protected java.lang.String stateSubjectStr

mountString

protected java.lang.String mountString

dismountString

protected java.lang.String dismountString
Constructor Detail

StdRideable

public StdRideable()
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, Tech. The name is typically identical to the class name.

Specified by:
ID in interface CMObject
Overrides:
ID in class StdMOB
Returns:
the name of this class

cloneFix

protected void cloneFix(MOB E)
Overrides:
cloneFix in class StdMOB

killMeDead

public DeadBody killMeDead(boolean createBody)
Description copied from interface: MOB
Puts this mob in a dead state, removes all temporary effects, creates a corpse, ends combat, and sends players to their graveyard.

Specified by:
killMeDead in interface MOB
Overrides:
killMeDead in class StdMOB
Parameters:
createBody - true to create a corpse, false otherwise
Returns:
the corpse, if one was created
See Also:
MOB.amDead(), MOB.bringToLife(Room, boolean), MOB.removeFromGame(boolean, boolean)

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
Overrides:
destroy in class StdMOB

isMobileRideBasis

public boolean isMobileRideBasis()
Description copied from interface: Rideable
Whether the type of rideable is mobile.

Specified by:
isMobileRideBasis in interface Rideable
Returns:
Whether this type of rideable is mobile
See Also:
Rideable

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
Overrides:
isSavable in class StdMOB
Returns:
true, usually.

rideBasis

public int rideBasis()
Description copied from interface: Rideable
The type of rideable object this is.

Specified by:
rideBasis in interface Rideable
Returns:
the RIDEABLE_* constant describing how this is ridden
See Also:
Rideable

setRideBasis

public void setRideBasis(int basis)
Description copied from interface: Rideable
Sets type of rideable object this is.

Specified by:
setRideBasis in interface Rideable
Parameters:
basis - the RIDEABLE_* constant describing how this is ridden
See Also:
Rideable

riderCapacity

public int riderCapacity()
Description copied from interface: Rideable
The number of Riders which may ride upon this Rideable

Specified by:
riderCapacity in interface Rideable
Returns:
the maximum riders
See Also:
Rider

setRiderCapacity

public void setRiderCapacity(int newCapacity)
Description copied from interface: Rideable
Sets the number of Riders which may ride upon this Rideable

Specified by:
setRiderCapacity in interface Rideable
Parameters:
newCapacity - the maximum riders
See Also:
Rider

numRiders

public int numRiders()
Description copied from interface: Rideable
Returns the number of riders currently mounted on this Rideable

Specified by:
numRiders in interface Rideable
Returns:
the number of current Riders
See Also:
Rider

mobileRideBasis

public boolean mobileRideBasis()
Description copied from interface: Rideable
Whether this Rideable moves when the Rider wants to move it. Largely derived from rideBasis().

Specified by:
mobileRideBasis in interface Rideable
Returns:
whether this item moves with the rider
See Also:
Rideable.rideBasis()

fetchRider

public Rider fetchRider(int which)
Description copied from interface: Rideable
Returns a particular Rider mounted on this Rideable. May return null in the case of a race condition

Specified by:
fetchRider in interface Rideable
Parameters:
which - which rider to detch
Returns:
the rider riding
See Also:
Rider, Rideable, Rideable.numRiders()

putString

public java.lang.String putString(Rider R)
Description copied from interface: Rideable
Returns a string grammatically correct for the given rider when they are putting something on this Rideable

Specified by:
putString in interface Rideable
Parameters:
R - The rider object to make grammatically correct.
Returns:
a string describing the riders state of putting something on this Rideable
See Also:
Rider, Rideable.setPutString(String), Rideable.getPutString()

getPutString

public java.lang.String getPutString()
Description copied from interface: Rideable
Returns a custom string grammatically correct for the given rider when they are putting something on this Rideable

Specified by:
getPutString in interface Rideable
Returns:
a custom string describing the riders state of putting something on this Rideable
See Also:
Rider, Rideable.setPutString(String), Rideable.putString(Rider)

setPutString

public void setPutString(java.lang.String str)
Description copied from interface: Rideable
Set a string grammatically correct for the given rider when they are putting something on this Rideable

Specified by:
setPutString in interface Rideable
Parameters:
str - a string describing the riders state of putting something on this Rideable
See Also:
Rider, Rideable.putString(Rider), Rideable.getPutString()

addRider

public void addRider(Rider mob)
Description copied from interface: Rideable
Adds a new Rider to this Rideable. Is called by Rider.setRiding(Rideable) Should also call Rider.setRiding(Rideable) without recursion

Specified by:
addRider in interface Rideable
Parameters:
mob - Rider object, either an item or a mob
See Also:
Rider, Rideable

delRider

public void delRider(Rider mob)
Description copied from interface: Rideable
Removes a Rider from this Rideable. Is called by Rider.setRiding(null) Should also call Rider.setRiding(null) without recursion

Specified by:
delRider in interface Rideable
Parameters:
mob - Rider object, either an item or a mob
See Also:
Rider, Rideable

riders

public java.util.Enumeration<Rider> riders()
Description copied from interface: Rideable
Returns an iterator of the riders on this rideable

Specified by:
riders in interface Rideable
Returns:
the riders
See Also:
Rider

displayText

public java.lang.String displayText(MOB mob)
Description copied from interface: Physical
Returns the displayText, but as seen by the given viewer. Can differ from displayText() without being saved to the DB. Display Texts are normally the way something appears in a room, or is the roomTitle of rooms.

Specified by:
displayText in interface Physical
Overrides:
displayText in class StdMOB
Parameters:
mob - the mob viewing the physical thing
Returns:
the displayText as seen by the viewer
See Also:
Environmental.displayText()

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
Overrides:
recoverPhyStats in class StdMOB
See Also:
Affectable.basePhyStats(), Affectable.phyStats(), Affectable.addEffect(Ability), Behavable.addBehavior(Behavior), PhyStats

affectCharStats

public void affectCharStats(MOB affected,
                            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
Overrides:
affectCharStats in class StdMOB
Parameters:
affected - 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 affected,
                            CharState affectableStats)
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
Overrides:
affectCharState in class StdMOB
Parameters:
affected - the host of the CharState object being affected
affectableStats - the particular CharState object being affected
See Also:
CharState, MOB, MOB.baseState(), MOB.curState(), MOB.recoverMaxState()

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
Overrides:
affectPhyStats in class StdMOB
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()

amRiding

public boolean amRiding(Rider mob)
Description copied from interface: Rideable
Returns whether Rider is currently mounted on this Rideable

Specified by:
amRiding in interface Rideable
Parameters:
mob - the Rider to check this Rideable for
Returns:
true if the Rider is mounted on this Rideable
See Also:
Rider, Rideable

stateString

public java.lang.String stateString(Rider R)
Description copied from interface: Rideable
Returns a string grammatically correct for the given rider when they are mounted on this Rideable

Specified by:
stateString in interface Rideable
Parameters:
R - The rider object to make grammatically correct.
Returns:
a string describing the riders state of riding this Rideable
See Also:
Rider, Rideable.setStateString(String), Rideable.getStateString()

getStateString

public java.lang.String getStateString()
Description copied from interface: Rideable
Returns the custom string grammatically correct for the given rider when they are mounted on this Rideable

Specified by:
getStateString in interface Rideable
Returns:
a custom string describing the riders state of riding this Rideable
See Also:
Rider, Rideable.setStateString(String), Rideable.stateString(Rider)

setStateString

public void setStateString(java.lang.String str)
Description copied from interface: Rideable
Returns a string grammatically correct for the given rider when they are mounted on this Rideable

Specified by:
setStateString in interface Rideable
Parameters:
str - a string describing the riders state of riding this Rideable
See Also:
Rider, Rideable.stateString(Rider), Rideable.getStateString()

mountString

public java.lang.String mountString(int commandType,
                                    Rider R)
Description copied from interface: Rideable
Returns a string grammatically correct for the given rider when they are mounting this Rideable

Specified by:
mountString in interface Rideable
Parameters:
commandType - one of the RIDEABLE_ constants as a type
R - The rider object to make grammatically correct.
Returns:
a string describing the riders state of mounting this Rideable
See Also:
Rider, Rideable.setMountString(String), Rideable.getMountString(), Rideable.RIDEABLE_DESCS

getMountString

public java.lang.String getMountString()
Description copied from interface: Rideable
Returns a custom string grammatically correct for the given rider when they are mounting this Rideable

Specified by:
getMountString in interface Rideable
Returns:
a custom string describing the riders state of mounting this Rideable
See Also:
Rider, Rideable.setMountString(String), Rideable.mountString(int, Rider), Rideable.RIDEABLE_DESCS

setMountString

public void setMountString(java.lang.String str)
Description copied from interface: Rideable
Setss a string grammatically correct for the given rider when they are mounting this Rideable

Specified by:
setMountString in interface Rideable
Parameters:
str - a string describing the riders state of mounting this Rideable
See Also:
Rider, Rideable.mountString(int, Rider), Rideable.getDismountString(), Rideable.RIDEABLE_DESCS

dismountString

public java.lang.String dismountString(Rider R)
Description copied from interface: Rideable
Returns a string grammatically correct for the given rider when they are dismounting this Rideable

Specified by:
dismountString in interface Rideable
Parameters:
R - The rider object to make grammatically correct.
Returns:
a string describing the riders state of dismounting this Rideable
See Also:
Rider, Rideable.setDismountString(String), Rideable.getDismountString()

getDismountString

public java.lang.String getDismountString()
Description copied from interface: Rideable
Returns a custom string grammatically correct for the given rider when they are dismounting this Rideable

Specified by:
getDismountString in interface Rideable
Returns:
a custom string describing the riders state of dismounting this Rideable
See Also:
Rider, Rideable.setDismountString(String), Rideable.dismountString(Rider)

setDismountString

public void setDismountString(java.lang.String str)
Description copied from interface: Rideable
Sets a string grammatically correct for the given rider when they are dismounting this Rideable

Specified by:
setDismountString in interface Rideable
Parameters:
str - a string describing the riders state of dismounting this Rideable
See Also:
Rider, Rideable.dismountString(Rider), Rideable.getDismountString()

rideString

public java.lang.String rideString(Rider R)
Description copied from interface: Rideable
Returns a verb string describing what one does when one rides this Rideable from room to room.

Specified by:
rideString in interface Rideable
Parameters:
R - The rider object to make grammatically correct.
Returns:
a string describing the riders verb of riding this Rideable somewhere
See Also:
Rider, Rideable.setRideString(String), Rideable.getRideString()

getRideString

public java.lang.String getRideString()
Description copied from interface: Rideable
Returns a custom verb string describing what one does when one rides this Rideable from room to room.

Specified by:
getRideString in interface Rideable
Returns:
a custom string describing the riders verb of riding this Rideable somewhere
See Also:
Rider, Rideable.setRideString(String), Rideable.rideString(Rider)

setRideString

public void setRideString(java.lang.String str)
Description copied from interface: Rideable
Sets a verb string describing what one does when one rides this Rideable from room to room.

Specified by:
setRideString in interface Rideable
Parameters:
str - a string describing the riders verb of riding this Rideable somewhere
See Also:
Rider, Rideable.rideString(Rider), Rideable.getRideString()

stateStringSubject

public java.lang.String stateStringSubject(Rider R)
Description copied from interface: Rideable
Returns a string grammatically correct for this Rideable when Riders are mounted

Specified by:
stateStringSubject in interface Rideable
Parameters:
R - The rider object to make grammatically correct.
Returns:
a string describing the Riderable state of being ridden
See Also:
Rider, Rideable.setStateStringSubject(String), Rideable.getStateStringSubject()

getStateStringSubject

public java.lang.String getStateStringSubject()
Description copied from interface: Rideable
Returns a custom string grammatically correct for this Rideable when Riders are mounted

Specified by:
getStateStringSubject in interface Rideable
Returns:
a custom string describing the Riderable state of being ridden
See Also:
Rider, Rideable.setStateStringSubject(String), Rideable.stateStringSubject(Rider)

setStateStringSubject

public void setStateStringSubject(java.lang.String str)
Description copied from interface: Rideable
Sets a string grammatically correct for this Rideable when Riders are mounted

Specified by:
setStateStringSubject in interface Rideable
Parameters:
str - a string describing the Riderable state of being ridden
See Also:
Rider, Rideable.stateStringSubject(Rider), Rideable.getStateStringSubject()

getRideBuddies

public java.util.Set<MOB> getRideBuddies(java.util.Set<MOB> list)
Description copied from interface: MOB
This method recursively returns whoever this mob is riding, and if they are a rideable, who all is riding with him.

Specified by:
getRideBuddies in interface Rideable
Specified by:
getRideBuddies in interface MOB
Overrides:
getRideBuddies in class StdMOB
Parameters:
list - the required list to populate with riders and rideable
Returns:
the same list sent in
See Also:
Rider, Rideable

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
Overrides:
okMessage in class StdMOB
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()

executeMsg

public void executeMsg(Environmental myHost,
                       CMMsg msg)
Description copied from interface: MsgListener
The general message event handler for the object. Messages passed herein may not necessarily be FOR this object, or from it, but will almost always represent events happening in the same room. The messages have already been through an approval process, so this method is called only to affect the final execution of the meaning of the message. Every game event goes through these methods.

Specified by:
executeMsg in interface MsgListener
Overrides:
executeMsg in class StdMOB
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