The Four-Eyed Guide to TADS 3 by David Welbourn index
Related action: CLOSE dobjList.
>open >open floor |
open matches VerbRule(Open) which invokes OpenAction. [TODO]
actions.t | Short description |
---|---|
DefineTAction(Open) | Defines class OpenAction: TAction |
DefineTAction(TestOpen) | Defines class TestOpenAction: TAction TestOpenAction is a fake action used internally to test whether or not a thing is locked as part of an OpenAction. |
Note: DefineTAction(name) is a macro defined in adv3.h. | Note: TAction is a class defined in action.t. |
precond.t | Short description |
touchObj | |
objects.t | Short description |
class BasicOpenable: Linkable | The basic mix-in class for openable and closable objects. A BasicOpenable merely keeps track of its open/closed status; it has no special handling for the verbs OPEN and CLOSE. That's done by the Openable class. |
BasicOpenable.initiallyOpen | Set this to true if the object is initially open at the start of the game. |
BasicOpenable.isOpen() | Returns true if the item is currently open; returns nil if it's closed. |
BasicOpenable.makeOpen(stat) | obj.makeOpen(true) opens the object; obj.makeOpen(nil) closes it. |
BasicOpenable.openDesc | Returns the string 'open' if the object is open; returns 'closed' if it's closed. |
BasicOpenable.isOpen_ | This is where the open/closed status is really stored, but don't touch it directly. Use .initiallyOpen to initially set it; use .makeOpen(stat) to change it; use .isOpen() to read it. |
class Openable: BasicOpenable | |
Openable.dobjFor(Close) | If it's closed, the player is told it's already closed, e.g.: 'The safe is already closed.' If it's open, the game closes it with minimal fuss, e.g.: 'Closed.' |
thing.t | Short description |
Thing.dobjFor(Open) | By default, one must be able to touch something before one can open it. Also, it is illogical to open most things, e.g.: 'That is not something you can open.' |
travel.t | Short description |
Door.dobjFor(Close) | Handled almost the same as an Openable, except that the likelihood of closing a door one just travelled through is boosted to logical rank 120. |
class AutoClosingDoor: Door | This subclass of Door automatically closes itself when one goes through it, e.g.: 'After you go through the porch door, it closes behind you.' |
en_us\en_us.t | Short description |
VerbRule(Open) | Associates the grammar "open dobjList" with OpenAction. |
class EnTestOpenAction: TestOpenAction | |
Note: VerbRule(tag) is a macro defined in en_us.h. | Note: OpenAction and TestOpenAction are defined in actions.t (see above). |
en_us\msg_neu.t | Short description |
playerActionMessages.okayClose | 'Closed. ' |
playerActionMessages.doorClosesBehind(obj) | 'After {you/he} go{es} through {the obj/him}, {it/he} close{s} behind {you/him}. ' |
playerActionMessages.cannotOpen | |
playerActionMessages.alreadyClosed | '{The dobj/he} {is} already closed. ' |
playerActionMessages.currentlyClosed | '{It\'s dobj} currently closed. ' |
npcActionMessages.okayClose | '{You/he} close{s} {the dobj/him}. ' |