com.planet_ink.coffee_mud.Items.MiscMagic
Class StdDeckOfCards
java.lang.Object
com.planet_ink.coffee_mud.Items.Basic.StdItem
com.planet_ink.coffee_mud.Items.Basic.StdContainer
com.planet_ink.coffee_mud.Items.MiscMagic.StdHandOfCards
com.planet_ink.coffee_mud.Items.MiscMagic.StdDeckOfCards
- All Implemented Interfaces:
- Affectable, Behavable, CloseableLockable, CMObject, Contingent, DBIdentifiable, Environmental, Modifiable, MsgListener, Physical, PhysicalAgent, Readable, Rider, StatsAffecting, Tickable, Container, DeckOfCards, HandOfCards, Item, MiscMagic, Wearable, java.lang.Cloneable, java.lang.Comparable<CMObject>
public class StdDeckOfCards
- extends StdHandOfCards
- implements DeckOfCards
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Wearable |
Wearable.CODES |
Fields inherited from class com.planet_ink.coffee_mud.Items.Basic.StdItem |
affectPhyStats, affects, baseGoldValue, basePhyStats, behaviors, cachedImageName, CODES, databaseID, description, destroyed, displayText, dispossessionTime, material, me, miscText, myContainer, myUses, myWornCode, name, owner, phyStats, properWornBitmap, rawImageName, riding, scripts, secretIdentity, tickCtr, tickStatus, wornLogicalAnd, xtraValues |
Fields inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Container |
CONTAIN_ANYTHING, CONTAIN_BODIES, CONTAIN_CAGED, CONTAIN_CLOTHES, CONTAIN_COINS, CONTAIN_DAGGERS, CONTAIN_DESCS, CONTAIN_DRINKABLES, CONTAIN_EATABLES, CONTAIN_FOOTWEAR, CONTAIN_KEYS, CONTAIN_LIQUID, CONTAIN_ONEHANDWEAPONS, CONTAIN_OTHERWEAPONS, CONTAIN_RAWMATERIALS, CONTAIN_READABLES, CONTAIN_SCROLLS, CONTAIN_SMOKEABLES, CONTAIN_SSCOMPONENTS, CONTAIN_SWORDS |
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.Items.interfaces.Wearable |
DEFAULT_WORN_CODES, DEFAULT_WORN_DEPENDENCYGRID, DEFAULT_WORN_DESCS, DEFAULT_WORN_ORDER, DEFAULT_WORN_USUAL_NAMES, DEFAULT_WORN_WEIGHT_POINTS, DEFAULT_WORN_WEIGHTS, FILTER_ANY, FILTER_MOBINVONLY, FILTER_ROOMONLY, FILTER_UNWORNONLY, FILTER_WORNONLY, HIGHEST_WORN_CODE, IN_INVENTORY, WORN_ABOUT_BODY, WORN_ARMS, WORN_BACK, WORN_EARS, WORN_EYES, WORN_FEET, WORN_FLOATING_NEARBY, WORN_HANDS, WORN_HEAD, WORN_HELD, WORN_LEFT_FINGER, WORN_LEFT_WRIST, WORN_LEGS, WORN_MOUTH, WORN_NECK, WORN_RIGHT_FINGER, WORN_RIGHT_WRIST, WORN_TORSO, WORN_WAIST, WORN_WIELD |
Method Summary |
protected boolean |
abilityImbuesMagic()
|
boolean |
addCard(PlayingCard card)
Returns the given card item object to
the deck by removing it from its current
owner and adding it back to the decks owner
and container. |
HandOfCards |
addPlayerHand(MOB player,
HandOfCards cards)
Adds and possibly creates a hand for the given player
if no hand is passed in, a new empty one is created
the hand is then added to our table, keyed by the player
object |
DeckOfCards |
createDeck(Environmental owner)
Creates a new deck of 52 cards of the same time as the
underlying object. |
HandOfCards |
getPlayerHand(MOB player)
If a hand of cards has previously been added to this
deck for internal management, this method will return
that hand given the player object. |
java.lang.String |
ID()
The CoffeeMud Java Class ID shared by all instances of
this object. |
protected PlayingCard |
makePlayingCard(int cardBitCode)
|
boolean |
okMessage(Environmental myHost,
CMMsg msg)
The general message event previewer for the object. |
void |
removePlayerHand(MOB player)
If the given player object has a hand of cards currently
being managed by this deck, this method will remove all
of the cards from the hand, return them to the deck,
then remove the hand from management, and destroy the hand. |
boolean |
resetDeckBackTo52Cards()
Resets the deck back to 52 cards. |
Methods inherited from class com.planet_ink.coffee_mud.Items.MiscMagic.StdHandOfCards |
canContain, containsAtLeastOneOfSuit, containsAtLeastOneOfSuit, containsAtLeastOneOfValue, containsAtLeastOneOfValue, containsCard, containsCard, createEmptyHand, executeMsg, getCard, getCard, getContents, getContentsEncoded, getFirstCardOfSuit, getFirstCardOfSuit, getFirstCardOfValue, getFirstCardOfValue, getTopCardFromDeck, numberOfCards, removeAllCards, removeCard, shuffleDeck, sortByValueAceHigh, sortByValueAceLow |
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdContainer |
capacity, containTypes, defaultsClosed, defaultsLocked, emptyPlease, getDeepContents, hasADoor, hasALock, hasContent, isInside, isLocked, isOpen, keyName, numberOfItems, openDelayTicks, recursiveWeight, setCapacity, setContainTypes, setDoorsNLocks, setKeyName, setMiscText, setOpenDelayTicks, tick |
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdItem |
addBehavior, addEffect, addNonUninvokableEffect, addScript, affectCharState, affectCharStats, affectPhyStats, alreadyWornMsg, amBeingWornProperly, amDestroyed, amWearingAt, baseGoldValue, basePhyStats, behaviors, canSaveDatabaseID, canWear, canWearComplete, cloneFix, compareProperLocations, compareTo, container, copyOf, databaseID, delAllBehaviors, delAllEffects, delAllScripts, delBehavior, delEffect, delScript, description, description, destroy, displayText, displayText, eachBehavior, eachEffect, eachScript, effects, expirationDate, fetchBehavior, fetchBehavior, fetchEffect, fetchEffect, fetchScript, fitsOn, getCodeNum, getSaveStatIndex, getStat, getStatCodes, getTickStatus, I, image, initializeClass, isGeneric, isReadable, isSavable, isStat, L, material, maxRange, minRange, miscTextFormat, name, Name, name, newInstance, numBehaviors, numEffects, numScripts, owner, phyStats, rawImage, rawLogicalAnd, rawProperLocationBitmap, rawSecretIdentity, rawWornCode, readableText, recoverPhyStats, removeFromOwnerContainer, riding, sameAs, scripts, secretIdentity, setBasePhyStats, setBaseValue, setContainer, setDatabaseID, setDescription, setDisplayText, setExpirationDate, setImage, setMaterial, setName, setOwner, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, setReadable, setReadableText, setRiding, setSavable, setSecretIdentity, setStat, setUsesRemaining, stopTicking, subjectToWearAndTear, tackOns, text, ultimateContainer, unWear, usesRemaining, value, wearAt, wearEvenIfImpossible, wearIfPossible, wearIfPossible, whereCantWear |
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.Items.interfaces.HandOfCards |
containsAtLeastOneOfSuit, containsAtLeastOneOfSuit, containsAtLeastOneOfValue, containsAtLeastOneOfValue, containsCard, containsCard, createEmptyHand, getCard, getCard, getContentsEncoded, getFirstCardOfSuit, getFirstCardOfSuit, getFirstCardOfValue, getFirstCardOfValue, getTopCardFromDeck, numberOfCards, removeAllCards, removeCard, shuffleDeck, sortByValueAceHigh, sortByValueAceLow |
Methods inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Item |
baseGoldValue, container, material, numberOfItems, owner, rawSecretIdentity, recursiveWeight, removeFromOwnerContainer, secretIdentity, setBaseValue, setContainer, setMaterial, setOwner, setSecretIdentity, setUsesRemaining, stopTicking, subjectToWearAndTear, ultimateContainer, usesRemaining, value |
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 java.lang.Comparable |
compareTo |
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.Items.interfaces.Wearable |
amBeingWornProperly, amWearingAt, canWear, compareProperLocations, fitsOn, rawLogicalAnd, rawProperLocationBitmap, rawWornCode, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, unWear, wearAt, wearEvenIfImpossible, wearIfPossible, wearIfPossible, whereCantWear |
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.CloseableLockable |
defaultsClosed, defaultsLocked, hasADoor, hasALock, isLocked, isOpen, keyName, openDelayTicks, setDoorsNLocks, setKeyName, setOpenDelayTicks |
cardsCache
protected java.util.List<Item> cardsCache
StdDeckOfCards
public StdDeckOfCards()
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 StdHandOfCards
- Returns:
- the name of this class
abilityImbuesMagic
protected boolean abilityImbuesMagic()
- Overrides:
abilityImbuesMagic
in class StdItem
makePlayingCard
protected PlayingCard makePlayingCard(int cardBitCode)
createDeck
public DeckOfCards createDeck(Environmental owner)
- Description copied from interface:
DeckOfCards
- Creates a new deck of 52 cards of the same time as the
underlying object. The deck is then handed over to
the mob or room specified.
- Specified by:
createDeck
in interface DeckOfCards
- Parameters:
owner
- a mob or room to receive the new deck.
- Returns:
- the new deck of 52 cards, not shuffled.
resetDeckBackTo52Cards
public boolean resetDeckBackTo52Cards()
- Description copied from interface:
DeckOfCards
- Resets the deck back to 52 cards. It will
grab cards from all external sources first
and return them to the deck container owner.
If this fails to produce 52 cards, it will
create a set of cards for the deck.
this method also destroys any hands being
managed.
- Specified by:
resetDeckBackTo52Cards
in interface DeckOfCards
- Returns:
- true
getPlayerHand
public HandOfCards getPlayerHand(MOB player)
- Description copied from interface:
DeckOfCards
- If a hand of cards has previously been added to this
deck for internal management, this method will return
that hand given the player object.
- Specified by:
getPlayerHand
in interface DeckOfCards
- Parameters:
player
- the player whose hand to look for
- Returns:
- the hand belonging to that player, or null
addPlayerHand
public HandOfCards addPlayerHand(MOB player,
HandOfCards cards)
- Description copied from interface:
DeckOfCards
- Adds and possibly creates a hand for the given player
if no hand is passed in, a new empty one is created
the hand is then added to our table, keyed by the player
object
- Specified by:
addPlayerHand
in interface DeckOfCards
- Parameters:
player
- the player whose hand this will becards
- the hand, or null to make a new one
- Returns:
- the hand of cards passed in or created
removePlayerHand
public void removePlayerHand(MOB player)
- Description copied from interface:
DeckOfCards
- If the given player object has a hand of cards currently
being managed by this deck, this method will remove all
of the cards from the hand, return them to the deck,
then remove the hand from management, and destroy the hand.
- Specified by:
removePlayerHand
in interface DeckOfCards
- Parameters:
player
- the player whose hand to remove.
addCard
public boolean addCard(PlayingCard card)
- Description copied from interface:
HandOfCards
- Returns the given card item object to
the deck by removing it from its current
owner and adding it back to the decks owner
and container. If doing this causes a players
hand to be devoid of cards, the hand container
is destroyed.
- Specified by:
addCard
in interface DeckOfCards
- Specified by:
addCard
in interface HandOfCards
- Overrides:
addCard
in class StdHandOfCards
- Parameters:
card
- the card to remove
- Returns:
- true if the card was moved, false if pigs fly
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 StdContainer
- Parameters:
myHost
- either the initiator of the event, or the host of this objectmsg
- the CMMsg that wants to be executed
- Returns:
- whether this message is allowed to execute
- See Also:
CMMsg
,
CMMsg.source()