com.planet_ink.coffee_mud.Items.interfaces
Interface ShipEngine

All Superinterfaces:
Affectable, Behavable, java.lang.Cloneable, CMObject, java.lang.Comparable<CMObject>, Contingent, DBIdentifiable, Electronics, Environmental, Item, Modifiable, MsgListener, Physical, PhysicalAgent, Readable, Rider, StatsAffecting, TechComponent, Technical, Tickable, Wearable
All Known Implementing Classes:
GenShipEngine, GenShipThruster, GenSpaceDrive, StdShipEngine, StdShipFuellessThruster, StdShipThruster

public interface ShipEngine
extends TechComponent

A ShipEngine is a special TechComponent that is often a fuel consumer, and which has special tracked attributes related to its ability to propel a ship and, usually, consume fuel.


Nested Class Summary
 
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.Items.interfaces.TechComponent
TechComponent.ShipDir
 
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Technical
Technical.TechCommand, Technical.TechType
 
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Wearable
Wearable.CODES
 
Field Summary
 
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
 boolean consumeFuel(int amount)
          Forces this engine to consumer some amount of its fuel, without any other effect.
 TechComponent.ShipDir[] getAvailPorts()
          Gets set of available thrust ports on this engine.
 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.
 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.
 boolean isConstantThruster()
          Gets whether this engine, once thrust is engaged, will continue to thrust at that speed, thus accelerating.
 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 aftThrust)
          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.
 
Methods inherited from interface com.planet_ink.coffee_mud.Items.interfaces.TechComponent
getInstalledFactor, getRechargeRate, isInstalled, setInstalledFactor, setRechargeRate
 
Methods inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Electronics
activate, activated, getFinalManufacturer, getManufacturerName, powerCapacity, powerNeeds, powerRemaining, setManufacturerName, setPowerCapacity, setPowerRemaining
 
Methods inherited from interface com.planet_ink.coffee_mud.Items.interfaces.Technical
getTechType, setTechLevel, techLevel
 
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.Rider
riding, setRiding
 
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.DBIdentifiable
canSaveDatabaseID, databaseID, setDatabaseID
 
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.Readable
isReadable, readableText, setReadable, setReadableText
 

Method Detail

getAvailPorts

TechComponent.ShipDir[] getAvailPorts()
Gets set of available thrust ports on this engine.

Returns:
the set of available thrust ports.
See Also:
setAvailPorts(com.planet_ink.coffee_mud.Items.interfaces.TechComponent.ShipDir[])

setAvailPorts

void setAvailPorts(TechComponent.ShipDir[] ports)
Sets set of available thrust ports on this engine.

Parameters:
ports - the set of available thrust ports.
See Also:
getAvailPorts()

getMaxThrust

int getMaxThrust()
Gets the maximum amount of thrust that this engine can put out.

Returns:
the maximum amount of thrust that this engine can put out.
See Also:
setMaxThrust(int)

setMaxThrust

void setMaxThrust(int max)
Sets the maximum amount of thrust that this engine can put out.

Parameters:
max - the maximum amount of thrust that this engine can put out.
See Also:
getMaxThrust()

getMinThrust

int getMinThrust()
Gets the minimum amount of thrust that this engine can put out.

Returns:
the minimum amount of thrust that this engine can put out.
See Also:
setMinThrust(int)

setMinThrust

void setMinThrust(int min)
Sets the minimum amount of thrust that this engine can put out.

Parameters:
min - the minimum amount of thrust that this engine can put out.
See Also:
getMinThrust()

isConstantThruster

boolean isConstantThruster()
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.

Returns:
true for an accelerator, false for one shot
See Also:
setConstantThruster(boolean)

setConstantThruster

void setConstantThruster(boolean isConstant)
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.

Parameters:
isConstant - true for an accelerator, false for one shot
See Also:
isConstantThruster()

getThrust

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.

Returns:
the current amount of aft thrust
See Also:
setThrust(double)

setThrust

void setThrust(double aftThrust)
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.

Parameters:
aftThrust - the current amount of aft thrust
See Also:
getThrust()

getSpecificImpulse

long getSpecificImpulse()
Specific Impulse has to do with the efficiency of conversion of fuel into thrust.

Returns:
efficiency of conversion of fuel into thrust
See Also:
setSpecificImpulse(long)

setSpecificImpulse

void setSpecificImpulse(long amt)
Specific Impulse has to do with the efficiency of conversion of fuel into thrust.

Parameters:
amt - efficiency of conversion of fuel into thrust
See Also:
getSpecificImpulse()

getFuelEfficiency

double getFuelEfficiency()
Gets the fuel efficiency pct, denoting how well the engine uses fuel to product thrust. Basically, this is what specific impulse SHOULD be.

Returns:
the fuel efficiency pct
See Also:
setFuelEfficiency(double)

setFuelEfficiency

void setFuelEfficiency(double amt)
Sets the fuel efficiency pct, denoting how well the engine uses fuel to product thrust. Basically, this is what specific impulse SHOULD be.

Parameters:
amt - the fuel efficiency pct
See Also:
getFuelEfficiency()

consumeFuel

boolean consumeFuel(int amount)
Forces this engine to consumer some amount of its fuel, without any other effect. If there was not enough fuel to be consumed, it might result in de-activation.

Parameters:
amount - the amount of fuel to consume
Returns:
true if there was NOT enough fuel, false if fuel was consumed OK.