com.planet_ink.coffee_mud.Items.interfaces
Interface Software

All Superinterfaces:
Affectable, Behavable, java.lang.Cloneable, CMObject, java.lang.Comparable<CMObject>, Contingent, DBIdentifiable, Environmental, Item, Modifiable, MsgListener, Physical, PhysicalAgent, Readable, Rider, StatsAffecting, Technical, Tickable, Wearable
All Known Implementing Classes:
EmissionScanProgram, GenShipProgram, GenSoftware, HealthScanProgram, LifeScanProgram, RocketShipProgram, ShipTelnetProgram, StdProgram

public interface Software
extends Item, Technical

Software is a plain technical item that monitors and manipulates other space ship components and systems, while also managing a user interface for players/mobs monitoring the software. These user interfaces are divided into menus. Each software can specify a "parent menu", referring to another software or system that gives access to this software.


Nested Class Summary
 
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
 void addScreenMessage(java.lang.String msg)
          Adds a new message to the screen from this program, which will be received by those monitoring the computer
 java.lang.String getActivationMenu()
          Returns the menu name of this software, so that it can be identified on its parent screen.
 java.lang.String getCurrentScreenDisplay()
          Returns the full screen appearance of this program when it is activated and on the screen.
 java.lang.String getInternalName()
          Returns the internal name of this software.
 java.lang.String getParentMenu()
          The parent menu that this software gets access from.
 java.lang.String getScreenMessage()
          Returns any new messages from this program when it is activated and on the screen.
 boolean isActivationString(java.lang.String word)
          Returns whether the given computer-entry command should be responded to by THIS software object on an activation command.
 boolean isCommandString(java.lang.String word, boolean isActive)
          Returns whether the given computer-entry command should be responded to by THIS software object on a WRITE/ENTER command.
 boolean isDeActivationString(java.lang.String word)
          Returns whether the given computer-entry command should be responded to by THIS software object on a deactivation command.
 void setCircuitKey(java.lang.String key)
          Software runs on computers, and computers run on power systems.
 
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

getParentMenu

java.lang.String getParentMenu()
The parent menu that this software gets access from. When Software is available from root, "" is returned.

Returns:
parent menu that this software gets access from

getInternalName

java.lang.String getInternalName()
Returns the internal name of this software.

Returns:
the internal name of this software.

isActivationString

boolean isActivationString(java.lang.String word)
Returns whether the given computer-entry command should be responded to by THIS software object on an activation command.

Parameters:
word - the computer-entry command entered
Returns:
true if this software should respond.

isDeActivationString

boolean isDeActivationString(java.lang.String word)
Returns whether the given computer-entry command should be responded to by THIS software object on a deactivation command.

Parameters:
word - the computer-entry command entered
Returns:
true if this software should respond.

isCommandString

boolean isCommandString(java.lang.String word,
                        boolean isActive)
Returns whether the given computer-entry command should be responded to by THIS software object on a WRITE/ENTER command.

Parameters:
word - the computer-entry command
isActive - true if the software is already activated
Returns:
true if this software can respond

getActivationMenu

java.lang.String getActivationMenu()
Returns the menu name of this software, so that it can be identified on its parent screen.

Returns:
the menu name of this software

addScreenMessage

void addScreenMessage(java.lang.String msg)
Adds a new message to the screen from this program, which will be received by those monitoring the computer

Parameters:
msg - the new message for the screen
See Also:
getScreenMessage(), getCurrentScreenDisplay()

getScreenMessage

java.lang.String getScreenMessage()
Returns any new messages from this program when it is activated and on the screen. Seen by those monitoring the computer.

Returns:
the new screen messages
See Also:
addScreenMessage(String), getCurrentScreenDisplay()

getCurrentScreenDisplay

java.lang.String getCurrentScreenDisplay()
Returns the full screen appearance of this program when it is activated and on the screen. Only those intentially looking at the screen again, or forced by the program, will see this larger message.

Returns:
the entire screen message
See Also:
addScreenMessage(String), getScreenMessage()

setCircuitKey

void setCircuitKey(java.lang.String key)
Software runs on computers, and computers run on power systems. This method tells the software what the power system "circuit" key is that the computer host is running on, allowing the software to find other equipment on the same circuit and control it.

Parameters:
key - the circuit key