com.planet_ink.coffee_mud.Items.CompTech
Class StdShipShieldGenerator
java.lang.Object
com.planet_ink.coffee_mud.Items.Basic.StdItem
com.planet_ink.coffee_mud.Items.BasicTech.StdElecItem
com.planet_ink.coffee_mud.Items.CompTech.StdElecCompItem
com.planet_ink.coffee_mud.Items.CompTech.StdShipShieldGenerator
- All Implemented Interfaces:
- Affectable, Behavable, CMObject, Contingent, DBIdentifiable, Environmental, Modifiable, MsgListener, Physical, PhysicalAgent, Readable, Rider, StatsAffecting, Tickable, Electronics, Item, ShipWarComponent, TechComponent, Technical, Wearable, java.lang.Cloneable, java.lang.Comparable<CMObject>
- Direct Known Subclasses:
- GenShipShieldGenerator
public class StdShipShieldGenerator
- extends StdElecCompItem
- implements ShipWarComponent
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.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 |
void |
executeMsg(Environmental myHost,
CMMsg msg)
The general message event handler for the object. |
protected TechComponent.ShipDir[] |
getCurrentCoveredDirections()
|
int[] |
getDamageMsgTypes()
Gets the set of CMMsg message types that can be blocked
and or managed by these shields, or is generated by
this gun on any one attack. |
protected SpaceShip |
getMyShip()
|
TechComponent.ShipDir[] |
getPermittedDirections()
Gets the total set of ship directions that this shield
can ever cover or weapons fire at. |
int |
getPermittedNumDirections()
Gets the total number of quarters or sections of the
ship that can be covered by this shield or shot by
a gun at any one time. |
Technical.TechType |
getTechType()
Returns the tech type enum for this technical object, which describes more
about its functionality, and is in fact a kind of class proxy. |
java.lang.String |
ID()
The CoffeeMud Java Class ID shared by all instances of
this object. |
boolean |
okMessage(Environmental host,
CMMsg msg)
The general message event previewer for the object. |
int |
powerNeeds()
Returns the immediate power needs of this electrical item. |
boolean |
sameAs(Environmental E)
Whether this object instance is functionally identical to the object passed in. |
protected static void |
sendComputerMessage(ShipWarComponent me,
java.lang.String circuitKey,
MOB mob,
Item controlI,
java.lang.String code)
|
void |
setDamageMsgTypes(int[] newTypes)
Sets the set of CMMsg message types that can be blocked
and or managed by these shields, or is generated by
this gun on any one attack. |
void |
setOwner(ItemPossessor container)
Sets the Room or MOB representing where this item is located. |
void |
setPermittedDirections(TechComponent.ShipDir[] newPossDirs)
Sets the total set of ship directions that this shield
can ever cover or weapons fire at. |
void |
setPermittedNumDirections(int numDirs)
Sets the total number of quarters or sections of the
ship that can be covered by this shield or shot by
a gun at any one time. |
Methods inherited from class com.planet_ink.coffee_mud.Items.CompTech.StdElecCompItem |
destroy, getComputedEfficiency, getInstalledFactor, getRechargeRate, isAllWiringHot, isInstalled, isThisPanelActivated, reportError, sendLocalMessage, setInstalledFactor, setRechargeRate, subjectToWearAndTear |
Methods inherited from class com.planet_ink.coffee_mud.Items.BasicTech.StdElecItem |
activate, activated, getFinalManufacturer, getManufacturerName, powerCapacity, powerRemaining, setManufacturerName, setPowerCapacity, setPowerRemaining, setTechLevel, techLevel |
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdItem |
abilityImbuesMagic, 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, 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, numberOfItems, numEffects, numScripts, owner, phyStats, rawImage, rawLogicalAnd, rawProperLocationBitmap, rawSecretIdentity, rawWornCode, readableText, recoverPhyStats, recursiveWeight, removeFromOwnerContainer, riding, scripts, secretIdentity, setBasePhyStats, setBaseValue, setContainer, setDatabaseID, setDescription, setDisplayText, setExpirationDate, setImage, setMaterial, setMiscText, setName, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, setReadable, setReadableText, setRiding, setSavable, setSecretIdentity, setStat, setUsesRemaining, stopTicking, tackOns, text, tick, 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.Item |
baseGoldValue, container, material, numberOfItems, owner, rawSecretIdentity, recursiveWeight, removeFromOwnerContainer, secretIdentity, setBaseValue, setContainer, setMaterial, setSecretIdentity, setUsesRemaining, stopTicking, subjectToWearAndTear, ultimateContainer, usesRemaining, value |
Methods inherited from interface java.lang.Comparable |
compareTo |
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 |
StdShipShieldGenerator
public StdShipShieldGenerator()
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 StdElecCompItem
- Returns:
- the name of this class
getTechType
public Technical.TechType getTechType()
- Description copied from interface:
Technical
- Returns the tech type enum for this technical object, which describes more
about its functionality, and is in fact a kind of class proxy. I hope this
doesn't bog things down too much.
- Specified by:
getTechType
in interface Technical
- Overrides:
getTechType
in class StdElecItem
- Returns:
- the tech type eum
- See Also:
Technical.TechType
setOwner
public void setOwner(ItemPossessor container)
- Description copied from interface:
Item
- Sets the Room or MOB representing where this item is located. Containers are handled
by another pointer, container(), so those two methods be used together to determine
where a given item is. This method is called by the addItem method on mobs
and the addItem interface on Rooms. Alone, this method is insufficient to properly
determine an items location, so one of the two above should be called instead.
- Specified by:
setOwner
in interface Item
- Overrides:
setOwner
in class StdElecCompItem
- Parameters:
container
- the mob or room where the item is located- See Also:
ItemCollection.addItem(Item)
powerNeeds
public int powerNeeds()
- Description copied from interface:
Electronics
- Returns the immediate power needs of this electrical item.
Typically powerCapacity - powerAvailable
- Specified by:
powerNeeds
in interface Electronics
- Overrides:
powerNeeds
in class StdElecCompItem
- Returns:
- the amount of power this item can still absorb
- See Also:
Electronics.powerRemaining()
,
Electronics.powerCapacity()
getMyShip
protected SpaceShip getMyShip()
setPermittedDirections
public void setPermittedDirections(TechComponent.ShipDir[] newPossDirs)
- Description copied from interface:
ShipWarComponent
- Sets the total set of ship directions that this shield
can ever cover or weapons fire at. Some shields or guns
may only be mounted on* the front, rear, or other areas
of the ship. This tells the system the complete set of
coverage by the shield or weapon, even if it is
incapable of covering them all at once.
- Specified by:
setPermittedDirections
in interface ShipWarComponent
- Parameters:
newPossDirs
- the total set of ship directions- See Also:
ShipWarComponent.getPermittedDirections()
getPermittedDirections
public TechComponent.ShipDir[] getPermittedDirections()
- Description copied from interface:
ShipWarComponent
- Gets the total set of ship directions that this shield
can ever cover or weapons fire at. Some shields or guns
may only be mounted on* the front, rear, or other areas
of the ship. This tells the system the complete set of
coverage by the shield or weapon, even if it is
incapable of covering them all at once.
- Specified by:
getPermittedDirections
in interface ShipWarComponent
- Returns:
- the total set of ship directions
- See Also:
ShipWarComponent#setPermittedDirections(ShipDir[])
setPermittedNumDirections
public void setPermittedNumDirections(int numDirs)
- Description copied from interface:
ShipWarComponent
- Sets the total number of quarters or sections of the
ship that can be covered by this shield or shot by
a gun at any one time. The sections are always contiguous,
centered on a particular section, and moving outward
as per the ShipDir list order.
- Specified by:
setPermittedNumDirections
in interface ShipWarComponent
- Parameters:
numDirs
- the total number of sections covered- See Also:
TechComponent.ShipDir
,
ShipWarComponent.getPermittedDirections()
,
ShipWarComponent.setPermittedNumDirections(int)
getPermittedNumDirections
public int getPermittedNumDirections()
- Description copied from interface:
ShipWarComponent
- Gets the total number of quarters or sections of the
ship that can be covered by this shield or shot by
a gun at any one time. The sections are always contiguous,
centered on a particular section, and moving outward
as per the ShipDir list order.
- Specified by:
getPermittedNumDirections
in interface ShipWarComponent
- Returns:
- the total number of sections covered
- See Also:
TechComponent.ShipDir
,
ShipWarComponent.getPermittedDirections()
,
ShipWarComponent.setPermittedNumDirections(int)
setDamageMsgTypes
public void setDamageMsgTypes(int[] newTypes)
- Description copied from interface:
ShipWarComponent
- Sets the set of CMMsg message types that can be blocked
and or managed by these shields, or is generated by
this gun on any one attack. Really, only one value
makes sense on a gun and a shield, but multiple are
supported.
- Specified by:
setDamageMsgTypes
in interface ShipWarComponent
- Parameters:
newTypes
- the set of message types- See Also:
CMMsg.TYP_ACID
,
ShipWarComponent.getDamageMsgTypes()
getDamageMsgTypes
public int[] getDamageMsgTypes()
- Description copied from interface:
ShipWarComponent
- Gets the set of CMMsg message types that can be blocked
and or managed by these shields, or is generated by
this gun on any one attack. Really, only one value
makes sense on a gun and a shield, but multiple are
supported.
- Specified by:
getDamageMsgTypes
in interface ShipWarComponent
- Returns:
- the set of message types
- See Also:
CMMsg.TYP_ACID
,
ShipWarComponent.setDamageMsgTypes(int[])
getCurrentCoveredDirections
protected TechComponent.ShipDir[] getCurrentCoveredDirections()
okMessage
public boolean okMessage(Environmental host,
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 StdElecCompItem
- Parameters:
host
- 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()
sendComputerMessage
protected static void sendComputerMessage(ShipWarComponent me,
java.lang.String circuitKey,
MOB mob,
Item controlI,
java.lang.String code)
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 StdElecCompItem
- Parameters:
myHost
- either the initiator of the event, or the host of this objectmsg
- the CMMsg that needs to be executed- See Also:
CMMsg
sameAs
public boolean sameAs(Environmental E)
- Description copied from interface:
Environmental
- Whether this object instance is functionally identical to the object passed in. Works by repeatedly
calling getStat on both objects and comparing the values.
- Specified by:
sameAs
in interface Environmental
- Overrides:
sameAs
in class StdElecCompItem
- Parameters:
E
- the object to compare this one to
- Returns:
- whether this object is the same as the one passed in
- See Also:
Modifiable.getStatCodes()
,
Modifiable.getStat(String)