IndirectLockable class | objects.t[3975]

A lockable that can't be locked and unlocked by direct action. The LOCK and UNLOCK commands cannot be used with this kind of lockable.

This is useful for a couple of situations. First, it's useful when we want to create a locked object that simply can't be unlocked, such as a locked door that forms a permanent boundary of the map. Second, it's useful for locked objects that must be unlocked by some other means, such as manipulating an external mechanism (pulling a lever, say). In these cases, the trick is to figure out the separate means of unlocking the door, so we don't want the LOCK and UNLOCK commands to work directly.

`class IndirectLockable : Lockable`

Superclass Tree (in declaration order)

`IndirectLockable`
`Lockable`
`Linkable`
`object`

Subclass Tree

(none)

Global Objects

(none)

Summary of Properties

`cannotLockMsg cannotUnlockMsg lockStatusObvious`

Inherited from `Lockable` :
`autoUnlockOnOpen initiallyLocked isLocked_ lockedDesc lockStatusReportable`

``

Summary of Methods

`dobjFor(Lock) dobjFor(LockWith) dobjFor(Unlock) dobjFor(UnlockWith)`

Inherited from `Lockable` :
`dobjFor(Open) examineStatus initializeThing isLocked makeLocked`

Inherited from `Linkable` :
`masterObject`

Properties

`cannotLockMsg` | `objects.t[4005]`

the message we display in response to LOCK/UNLOCK

`cannotUnlockMsg` | `objects.t[4006]`

no description available

`lockStatusObvious` OVERRIDDEN | `objects.t[4002]`

Since we can't be locked and unlocked with simple LOCK and UNLOCK commands, presume that the lock status isn't obvious. If the alternative mechanism that locks and unlocks the object makes the current status readily apparent, this should be overridden and set to true.

Methods

`dobjFor(Lock)`OVERRIDDEN | `objects.t[3976]`

no description available

`dobjFor(LockWith)`OVERRIDDEN | `objects.t[3984]`

no description available

`dobjFor(Unlock)`OVERRIDDEN | `objects.t[3985]`

no description available

`dobjFor(UnlockWith)`OVERRIDDEN | `objects.t[3993]`

no description available

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