SenseRegionclass

senseRegion.t[21]

Superclass
Tree

Subclass
Tree

Global
Objects

Property
Summary

Method
Summary

Property
Details

Method
Details

A SenseRegion is a special kind of Region allowing sensory connection between rooms

class SenseRegion :   Region

Superclass Tree   (in declaration order)

SenseRegion
Region
`                 object`

Subclass Tree  

(none)

Global Objects  

(none)

Summary of Properties  

autoGoTo canHearAcross canSeeAcross canSmellAcross canTalkAcross canThrowAcross contSpace fastGoTo

Inherited from Region :
extraScopeItems familiar regions roomList rooms

Summary of Methods  

addExtraScopeItems familiar setFamiliarRooms

Inherited from Region :
addToContents addToRoomList allRegions isCurrentlyWithin isIn isOrIsIn makeRegionLists moveMLIntoAdd moveMLOutOf notifyAfter notifyBefore regionAfterAction regionAfterTravel regionBeforeAction regionBeforeTravel regionDaemon removeFromContents travelerEntering travelerLeaving

Properties  

autoGoTo

senseRegion.t[187]

Flag: do we want the touchObj PreCondition to move the actor from one Room in the SenseRegion to another by implicit action to allow an actio to proceed? By default we set this to the value of contSpace, since if contSpace is true (i.e. we’re using this SenseRegion to model a fairly small continuous space, such as a room) it probably makes sense for autoGoTo to be true as well, but it’s nonetheless perfectly all right to override the values of autoGoTo and contSpace independently.

canHearAcross

senseRegion.t[30]

Is it possible to hear sounds (but not necessarily converse) in one room from another in this SenseRegion?

canSeeAcross

senseRegion.t[24]

Is it possible to see from one room to another in this SenseRegion?

canSmellAcross

senseRegion.t[33]

Do smells travel from one room to another in this SenseRegion?

canTalkAcross

senseRegion.t[45]

By default actors have to be in the same room to be able to converse. Even if sound can travel from one location to another that doesn’t necessarily mean that one could converse over that distance. The only exception might be where a senseRegion models a relatively small area, like two ends of a room.

Note that if canHearAcross is nil setting canTalkAcross to true will have no effect.

canThrowAcross

senseRegion.t[52]

Are rooms in this SenseRegion close enough together to allow objects to be thrown from one room to another; by default we’ll assume not.

contSpace

senseRegion.t[210]

Flag, do we want this SenseRegion to act as a continuous space (e.g. representing parts of the same room, so that moving from one room to another within this SenseRegion does not trigger a new room description, thereby creating the impression that we have moved within the same room rather than to another. This should probably be used sparingly and only for SenseRegions representing a relatively small area, otherwise the lack of a new room description (i.e. a LOOK AROUND) could be confusing to the player.

fastGoToOVERRIDDEN

senseRegion.t[197]

If our autoGoTo flag is set, our fastGoTo flag should normally also be set so that autoGoTo works smoothly without breaks for CONTINUE commands impeding the workings of an implicit GoTo. Note, however, that it’s perfectly okay to override fastGoTo to true on a SenseRegion for which autoGoTo is nil; it just may not be such a good idea to do it the other way round.

Methods  

addExtraScopeItems (action)OVERRIDDEN

senseRegion.t[112]

Add everything to scope for all the rooms that belong to this SenseRegion. We do this by sending a senseProbe into each of the rooms and adding what would be in scope for that probe.

familiar ( )

senseRegion.t[159]

Since the PC should be able to see round the whole of a SenseRegion, presumably the PC should also be able to find their way around a SenseRegion once any of its rooms has been visited, even if the PC is yet to visit the other rooms. We can achieve this effect by making the SenseRegion familiar once any of its rooms has been visited, provided there’s line of sight across the rooms in the SenseRegion and the PC is in a room in the SenseRegion which has light.

setFamiliarRooms ( )OVERRIDDEN

senseRegion.t[58]

Use this method to carry out some additional initialization useful to SenseRegions

Adv3Lite Library Reference Manual
Generated on 15/03/2023 from adv3Lite version 1.6.1