BasicOpenable class | objects.t[3379]

A "basic openable" is an object that keeps open/closed status, and which can be linked to another object to maintain that status. This basic class doesn't handle any special commands; it's purely for keeping track of internal open/closed state.

`class BasicOpenable : Linkable`

Superclass Tree (in declaration order)

`BasicOpenable`
`Linkable`
`object`

Subclass Tree

`BasicOpenable`
`BasicDoor`
`Door`
`AutoClosingDoor`
`SecretDoor`
`HiddenDoor`
`Openable`
`Door`
`AutoClosingDoor`
`Matchbook`
`OpenableContainer`
`KeyedContainer`
`LockableContainer`

Global Objects

(none)

Summary of Properties

`cannotMoveThroughMsg cannotTouchThroughMsg initiallyOpen isOpen_ openDesc`

``

Summary of Methods

`initializeThing isOpen makeOpen tryImplicitRemoveObstructor`

Inherited from `Linkable` :
`masterObject`

Properties

`cannotMoveThroughMsg` | `objects.t[3468]`

no description available

`cannotTouchThroughMsg` | `objects.t[3467]`

if we can't reach or move something through the container, it must be because we're closed

`initiallyOpen` | `objects.t[3387]`

Initial open/closed setting. Set this to true to make the object open initially. If this object is linked to another object (as in the two sides of a door), you only need to set this property in the *master* object - the other side will automatically link up to the master object during initialization.

`isOpen_` | `objects.t[3474]`

Internal open/closed status. Do not use this for initialization - set initiallyOpen in the master object instead.

`openDesc` | `objects.t[3432]`

Open status name. This is an adjective describing whether the object is opened or closed. In English, this will return "open" or "closed."

Methods

`initializeThing ( )`OVERRIDDEN | `objects.t[3436]`

initialization

`isOpen ( )` | `objects.t[3393]`

Flag: door is open. Travel is only possible when the door is open. Return the master's status.

`makeOpen (stat)` | `objects.t[3412]`

Make the object open or closed. By default, we'll simply set the isOpen flag to the new status. Objects can override this to apply side effects of opening or closing the object.

`tryImplicitRemoveObstructor (sense, obj)` | `objects.t[3450]`

If we're obstructing a sense path, it must be because we're closed. Try implicitly opening.

TADS 3 Library Manual
Generated on 8/21/2012 from TADS version 3.1.2