com.planet_ink.coffee_mud.Items.CompTech
Class StdShipEngine
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.BasicTech.StdElecContainer
com.planet_ink.coffee_mud.Items.CompTech.StdElecCompContainer
com.planet_ink.coffee_mud.Items.CompTech.StdCompFuelConsumer
com.planet_ink.coffee_mud.Items.CompTech.StdCompGenerator
com.planet_ink.coffee_mud.Items.CompTech.StdShipEngine
- All Implemented Interfaces:
- Affectable, Behavable, CloseableLockable, CMObject, Contingent, DBIdentifiable, Environmental, Modifiable, MsgListener, Physical, PhysicalAgent, Readable, Rider, StatsAffecting, Tickable, Container, Electronics, FuelConsumer, Item, PowerGenerator, PowerSource, ShipEngine, TechComponent, Technical, Wearable, java.lang.Cloneable, java.lang.Comparable<CMObject>
- Direct Known Subclasses:
- GenShipEngine
public class StdShipEngine
- extends StdCompGenerator
- implements ShipEngine
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 |
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 |
Method Summary |
void |
executeMsg(Environmental myHost,
CMMsg msg)
The general message event handler for the object. |
TechComponent.ShipDir[] |
getAvailPorts()
Gets set of available thrust ports on this engine. |
protected double |
getComputedEfficiency()
|
double |
getFuelEfficiency()
Gets the fuel efficiency pct, denoting how well the engine uses
fuel to product thrust. |
int |
getMaxThrust()
Gets the maximum amount of thrust that this engine can put out. |
int |
getMinThrust()
Gets the minimum amount of thrust that this engine can put out. |
long |
getSpecificImpulse()
Specific Impulse has to do with the efficiency of conversion of
fuel into thrust. |
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. |
double |
getThrust()
Gets the current amount of thrust being emitted by this ShipEngine,
typically only describing the AFT thrust, since all other thrust
is done in spurts. |
java.lang.String |
ID()
The CoffeeMud Java Class ID shared by all instances of
this object. |
boolean |
isConstantThruster()
Gets whether this engine, once thrust is engaged, will continue
to thrust at that speed, thus accelerating. |
boolean |
sameAs(Environmental E)
Whether this object instance is functionally identical to the object passed in. |
void |
setAvailPorts(TechComponent.ShipDir[] ports)
Sets set of available thrust ports on this engine. |
void |
setConstantThruster(boolean isConstant)
Sets whether this engine, once thrust is engaged, will continue
to thrust at that speed, thus accelerating. |
void |
setFuelEfficiency(double amt)
Sets the fuel efficiency pct, denoting how well the engine uses
fuel to product thrust. |
void |
setMaxThrust(int max)
Sets the maximum amount of thrust that this engine can put out. |
void |
setMinThrust(int min)
Sets the minimum amount of thrust that this engine can put out. |
void |
setSpecificImpulse(long amt)
Specific Impulse has to do with the efficiency of conversion of
fuel into thrust. |
void |
setThrust(double current)
Gets the current amount of thrust being emitted by this ShipEngine,
typically only describing the AFT thrust, since all other thrust
is done in spurts. |
protected boolean |
willConsumeFuelIdle()
|
Methods inherited from class com.planet_ink.coffee_mud.Items.CompTech.StdCompFuelConsumer |
canContain, clearFuelCache, consumeFuel, containTypes, copyOf, engineShutdown, getConsumedFuelTypes, getFuel, getFuelRemaining, getTicksPerFuelConsume, getTotalFuelCapacity, setConsumedFuelType, setContainTypes, setOwner, setTicksPerFuelConsume |
Methods inherited from class com.planet_ink.coffee_mud.Items.CompTech.StdElecCompContainer |
destroy, getInstalledFactor, getRechargeRate, isAllWiringHot, isInstalled, isThisPanelActivated, okMessage, powerNeeds, reportError, setInstalledFactor, setRechargeRate, subjectToWearAndTear |
Methods inherited from class com.planet_ink.coffee_mud.Items.BasicTech.StdElecContainer |
activate, activated, getFinalManufacturer, getManufacturerName, powerCapacity, powerRemaining, setManufacturerName, setPowerCapacity, setPowerRemaining, setTechLevel, techLevel |
Methods inherited from class com.planet_ink.coffee_mud.Items.Basic.StdContainer |
capacity, defaultsClosed, defaultsLocked, emptyPlease, getContents, getDeepContents, hasADoor, hasALock, hasContent, isInside, isLocked, isOpen, keyName, numberOfItems, openDelayTicks, recursiveWeight, setCapacity, setDoorsNLocks, setKeyName, setMiscText, setOpenDelayTicks, tick |
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, 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, numEffects, numScripts, owner, phyStats, rawImage, rawLogicalAnd, rawProperLocationBitmap, rawSecretIdentity, rawWornCode, readableText, recoverPhyStats, removeFromOwnerContainer, riding, scripts, secretIdentity, setBasePhyStats, setBaseValue, setContainer, setDatabaseID, setDescription, setDisplayText, setExpirationDate, setImage, setMaterial, setName, setRawLogicalAnd, setRawProperLocationBitmap, setRawWornCode, setReadable, setReadableText, setRiding, setSavable, setSecretIdentity, setStat, setUsesRemaining, stopTicking, 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.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 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 |
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.CloseableLockable |
defaultsClosed, defaultsLocked, hasADoor, hasALock, isLocked, isOpen, keyName, openDelayTicks, setDoorsNLocks, setKeyName, setOpenDelayTicks |
maxThrust
protected int maxThrust
minThrust
protected int minThrust
thrust
protected double thrust
specificImpulse
protected long specificImpulse
fuelEfficiency
protected double fuelEfficiency
constantThrust
protected boolean constantThrust
lastThrustMs
protected final long[] lastThrustMs
ports
protected TechComponent.ShipDir[] ports
StdShipEngine
public StdShipEngine()
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 StdCompGenerator
- Returns:
- the name of this class
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 StdCompGenerator
- 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)
getFuelEfficiency
public double getFuelEfficiency()
- Description copied from interface:
ShipEngine
- Gets the fuel efficiency pct, denoting how well the engine uses
fuel to product thrust. Basically, this is what specific impulse
SHOULD be.
- Specified by:
getFuelEfficiency
in interface ShipEngine
- Returns:
- the fuel efficiency pct
- See Also:
ShipEngine.setFuelEfficiency(double)
setFuelEfficiency
public void setFuelEfficiency(double amt)
- Description copied from interface:
ShipEngine
- Sets the fuel efficiency pct, denoting how well the engine uses
fuel to product thrust. Basically, this is what specific impulse
SHOULD be.
- Specified by:
setFuelEfficiency
in interface ShipEngine
- Parameters:
amt
- the fuel efficiency pct- See Also:
ShipEngine.getFuelEfficiency()
getMaxThrust
public int getMaxThrust()
- Description copied from interface:
ShipEngine
- Gets the maximum amount of thrust that this engine can put out.
- Specified by:
getMaxThrust
in interface ShipEngine
- Returns:
- the maximum amount of thrust that this engine can put out.
- See Also:
ShipEngine.setMaxThrust(int)
setMaxThrust
public void setMaxThrust(int max)
- Description copied from interface:
ShipEngine
- Sets the maximum amount of thrust that this engine can put out.
- Specified by:
setMaxThrust
in interface ShipEngine
- Parameters:
max
- the maximum amount of thrust that this engine can put out.- See Also:
ShipEngine.getMaxThrust()
getThrust
public double getThrust()
- Description copied from interface:
ShipEngine
- Gets the current amount of thrust being emitted by this ShipEngine,
typically only describing the AFT thrust, since all other thrust
is done in spurts.
- Specified by:
getThrust
in interface ShipEngine
- Returns:
- the current amount of aft thrust
- See Also:
ShipEngine.setThrust(double)
setThrust
public void setThrust(double current)
- Description copied from interface:
ShipEngine
- Gets the current amount of thrust being emitted by this ShipEngine,
typically only describing the AFT thrust, since all other thrust
is done in spurts.
- Specified by:
setThrust
in interface ShipEngine
- Parameters:
current
- the current amount of aft thrust- See Also:
ShipEngine.getThrust()
getSpecificImpulse
public long getSpecificImpulse()
- Description copied from interface:
ShipEngine
- Specific Impulse has to do with the efficiency of conversion of
fuel into thrust.
- Specified by:
getSpecificImpulse
in interface ShipEngine
- Returns:
- efficiency of conversion of fuel into thrust
- See Also:
ShipEngine.setSpecificImpulse(long)
setSpecificImpulse
public void setSpecificImpulse(long amt)
- Description copied from interface:
ShipEngine
- Specific Impulse has to do with the efficiency of conversion of
fuel into thrust.
- Specified by:
setSpecificImpulse
in interface ShipEngine
- Parameters:
amt
- efficiency of conversion of fuel into thrust- See Also:
ShipEngine.getSpecificImpulse()
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 StdCompGenerator
- Returns:
- the tech type eum
- See Also:
Technical.TechType
willConsumeFuelIdle
protected boolean willConsumeFuelIdle()
- Overrides:
willConsumeFuelIdle
in class StdCompFuelConsumer
getComputedEfficiency
protected double getComputedEfficiency()
- Overrides:
getComputedEfficiency
in class StdElecCompContainer
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 StdCompGenerator
- Parameters:
myHost
- either the initiator of the event, or the host of this objectmsg
- the CMMsg that needs to be executed- See Also:
CMMsg
getMinThrust
public int getMinThrust()
- Description copied from interface:
ShipEngine
- Gets the minimum amount of thrust that this engine can put out.
- Specified by:
getMinThrust
in interface ShipEngine
- Returns:
- the minimum amount of thrust that this engine can put out.
- See Also:
ShipEngine.setMinThrust(int)
setMinThrust
public void setMinThrust(int min)
- Description copied from interface:
ShipEngine
- Sets the minimum amount of thrust that this engine can put out.
- Specified by:
setMinThrust
in interface ShipEngine
- Parameters:
min
- the minimum amount of thrust that this engine can put out.- See Also:
ShipEngine.getMinThrust()
isConstantThruster
public boolean isConstantThruster()
- Description copied from interface:
ShipEngine
- Gets whether this engine, once thrust is engaged, will continue
to thrust at that speed, thus accelerating. True if it does,
and false if whatever speed you get out of it is all you get.
- Specified by:
isConstantThruster
in interface ShipEngine
- Returns:
- true for an accelerator, false for one shot
- See Also:
ShipEngine.setConstantThruster(boolean)
setConstantThruster
public void setConstantThruster(boolean isConstant)
- Description copied from interface:
ShipEngine
- Sets whether this engine, once thrust is engaged, will continue
to thrust at that speed, thus accelerating. True if it does,
and false if whatever speed you get out of it is all you get.
- Specified by:
setConstantThruster
in interface ShipEngine
- Parameters:
isConstant
- true for an accelerator, false for one shot- See Also:
ShipEngine.isConstantThruster()
getAvailPorts
public TechComponent.ShipDir[] getAvailPorts()
- Gets set of available thrust ports on this engine.
- Specified by:
getAvailPorts
in interface ShipEngine
- Returns:
- the set of available thrust ports.
- See Also:
ShipEngine.setAvailPorts(TechComponent.ShipDir[])
setAvailPorts
public void setAvailPorts(TechComponent.ShipDir[] ports)
- Sets set of available thrust ports on this engine.
- Specified by:
setAvailPorts
in interface ShipEngine
- Parameters:
ports
- the set of available thrust ports.- See Also:
ShipEngine.getAvailPorts()