com.planet_ink.coffee_mud.core.interfaces
Interface ItemPossessor

All Superinterfaces:
Affectable, Behavable, java.lang.Cloneable, CMObject, java.lang.Comparable<CMObject>, Contingent, Environmental, ItemCollection, Modifiable, MsgListener, Physical, PhysicalAgent, StatsAffecting, Tickable
All Known Subinterfaces:
Deity, GridLocale, LocationRoom, MOB, Room
All Known Implementing Classes:
Alligator, AngryCitizen, Ape, Assassin, Beaver, Bee, BlackBear, BlackDragon, BlueDragon, BrassDragon, BronzeDragon, BrownBear, BrownSnake, Buck, Buffalo, Bugbear, Bull, Cat, CaveGrid, CaveMaze, CaveRoom, CaveSurface, Centaur, Centipede, Cheetah, Chicken, Chimp, Citizen, CityStreet, ClimbableLedge, ClimbableSurface, Cobra, CommonBat, CopperDragon, Cougar, Cow, Coyote, Crocodile, Deer, Desert, DesertGrid, DesertMaze, DesertThinGrid, DireWolf, Doe, Dog, Dolphin, Doppleganger, Dragon, DrowElf, DrowPriestess, DrowWarrior, DrowWizard, Duck, Elephant, EndlessOcean, EndlessSky, EndlessThinOcean, EndlessThinSky, Falcon, FireGiant, FlyingInsect, Fox, Frog, FrostGiant, FrozenMountains, FrozenPlains, GardenSnake, GenAuctioneer, GenBanker, GenCow, GenDeity, GenHorse, GenLibrarian, GenMob, GenPostman, GenRideable, GenShopkeeper, GenUndead, GiantBat, GiantScorpion, Gnoll, Goat, GoatDoe, Goblin, GoldDragon, Gorilla, GreatLake, GreatThinLake, GreenDragon, Hawk, HeavenlyServent, HideoutShelter, HillGiant, Hills, HillsGrid, HillsThinGrid, Hornet, Horse, HotRoom, IcePlains, IceRoom, IndoorInTheAir, IndoorShallowWater, IndoorUnderWater, IndoorUnderWaterColumnGrid, IndoorUnderWaterGrid, IndoorUnderWaterThinGrid, IndoorWaterSurface, IndoorWaterSurfaceColumn, IndoorWaterThinSurface, InTheAir, InvisibleStalker, Jaguar, Jungle, JungleGrid, JungleThinGrid, Kitten, LargeBat, LargeCaveRoom, LargeStoneRoom, LargeWoodRoom, Lion, Lizard, LizardMan, LizardManShaman, LongerRoad, LongestRoad, LongRoad, MagicFreeRoom, MagicShelter, MetalRoom, MetalRoomMaze, Minotaur, Monkey, MountainLion, Mountains, MountainsGrid, MountainsMaze, MountainsThinGrid, MountainSurface, MountainSurfaceGrid, MountainSurfaceThinGrid, Mouse, Naga, OceanGrid, OceanThinGrid, Ogre, Orc, OverTheLedge, Owl, Panther, Parakeet, Pegasus, PegasusGreater, Penguin, Pig, Plains, PlainsGrid, PlainsThinGrid, Puppy, Python, Rabbit, Rat, Rattlesnake, Raven, RedDragon, Road, RoadGrid, RoadThinGrid, SaltWaterSurface, SaltWaterSurfaceColumn, SaltWaterThinSurface, Scorpion, Seal, SeaPort, SewerMaze, SewerRoom, ShallowWater, Shark, Sheep, Shore, SilverDragon, Skeleton, Snake, SpacePort, Spider, Squirrel, StdAuctioneer, StdBanker, StdDeity, StdFactoryMOB, StdGrid, StdLibrarian, StdMaze, StdMOB, StdPostman, StdRideable, StdRoom, StdShopKeeper, StdThinGrid, StoneGiant, StoneGolem, StoneGrid, StoneMaze, StoneRoom, StoneThinGrid, Swamp, SwampGrid, SwampThinGrid, Swordfish, Teacher, ThinRoom, Tiger, Toad, TreeSurface, Troll, Turtle, UmberHulk, Undead, UnderSaltWater, UnderSaltWaterColumnGrid, UnderSaltWaterGrid, UnderSaltWaterMaze, UnderSaltWaterThinGrid, UnderWater, UnderWaterColumnGrid, UnderWaterGrid, UnderWaterMaze, UnderWaterThinGrid, Vulture, Walrus, WaterSurface, WaterSurfaceColumn, WaterThinSurface, WetCaveGrid, WetCaveMaze, WetCaveRoom, Whale, Whirlpool, WhiteBear, WhiteDragon, WildEagle, Wolf, Wolverine, WoodenDeck, WoodRoom, WoodRoomGrid, WoodRoomMaze, WoodRoomThinGrid, Woods, WoodsGrid, WoodsMaze, WoodsThinGrid, Worm, Wyvern, Zombie

public interface ItemPossessor
extends PhysicalAgent, ItemCollection

An interface for something capable of possessing Items


Nested Class Summary
static class ItemPossessor.Expire
          constants for the addItem methods to denote how long the item lives before expiring
static class ItemPossessor.Find
          constant for the findItem/findItems method denoting special modifying flags on the search
static class ItemPossessor.Move
          constant for the moveItemTo methods to denote flags are being given -- normal operation
 
Field Summary
 
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 addItem(Item item, ItemPossessor.Expire expire)
          Adds a new item to its possessor, with an expiration code.
 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 container, 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.
 
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
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.ItemCollection
addItem, delAllItems, delItem, eachItem, findItem, findItem, findItems, findItems, getItem, getRandomItem, isContent, items, numItems
 

Method Detail

addItem

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

Parameters:
item - the item to add
expire - the expiration argument to decide when it will get cleaned up
See Also:
ItemPossessor.Expire

moveItemTo

void moveItemTo(Item container,
                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. An expiration can be set on the move to have the items expire. Duplicates will not be permitted.

Parameters:
container - the item to add
expire - the expiration code
moveFlags - any flags related to the move
See Also:
ItemPossessor.Expire

moveItemTo

void moveItemTo(Item container)
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.

Parameters:
container - the item to add
See Also:
ItemPossessor.Expire