Passageclass

travel.t[2408]

Superclass
Tree

Subclass
Tree

Global
Objects

Property
Summary

Method
Summary

Property
Details

Method
Details

Base class for passages between rooms. This can be used for a passage that not only connects the rooms but also exists as an object in its own right within the rooms it connects.

In most cases, two passage objects will exist - one on each side of the passage, so one object in each room connected. One of the objects should be designated as the “master”; the other is the “slave.” The master object is the one which should implement all special behavior involving state changes (such as opening or closing a door).

This basic passage is not designed to be opened and closed; use Door for a passage that can be opened and closed.

class Passage :   Linkable Fixture TravelConnector

Superclass Tree   (in declaration order)

Passage
Linkable
`                 object [Fixture](../object/Fixture.html) [NonPortable](../object/NonPortable.html) [Thing](../object/Thing.html) [VocabObject](../object/VocabObject.html)                                         object [TravelConnector](../object/TravelConnector.html) [Thing](../object/Thing.html) [VocabObject](../object/VocabObject.html)                                 object`

Subclass Tree  

Passage
Stairway
StairwayDown
StairwayUp
ThroughPassage
BasicDoor
Door
AutoClosingDoor
SecretDoor
HiddenDoor
ExitOnlyPassage
PathPassage

Global Objects  

(none)

Summary of Properties  

destination isOpen_ otherSide

Inherited from Fixture :
cannotMoveMsg cannotPutMsg cannotTakeMsg

Inherited from NonPortable :
bulk contentsListed isListed isListedInContents isListedInInventory weight

Inherited from Thing :
actorInAName actorInName actorInPrep actorIntoName actorOutOfName actorOutOfPrep aDisambigName allStates aName brightness canBeHeard canBeSeen canBeSmelled canBeTouched canMatchHer canMatchHim canMatchIt canMatchThem circularlyInMessage collectiveGroup collectiveGroups contents contentsListedInExamine contentsListedSeparately contentsLister descContentsLister described disambigEquivName disambigName distantDesc distantInitSpecialDesc distantSpecialDesc distinguishers dummyName effectiveFollowLocation equivalenceKey equivalentGrouper equivalentGrouperClass equivalentGrouperTable esEndingPat explicitVisualSenseInfo getState globalParamName holdingIndex iesEndingPat initDesc initNominalRoomPartLocation initSpecialDesc inlineContentsLister isEquivalent isHer isHim isInInitState isKnown isLikelyCommandTarget isListedAboardVehicle isMassNoun isPlural isProperName isQualifiedName isThingConstructed isTopLevel listName listWith location lookInLister moved name nameDoes nameSays nameSees notTravelReadyMsg objectNotifyList objInPrep obscuredInitSpecialDesc obscuredSpecialDesc owner patElevenEighteen patIsAlpha patLeadingTagOrQuote patOfPhrase patOneLetterAnWord patOneLetterWord patSingleApostropheS patTagOrQuoteChar patUpperOrDigit patVowelY pluralDisambigName pluralName pronounSelector roomDarkName roomLocation roomName seen sightPresence sightSize smellPresence smellSize soundPresence soundSize specialContentsLister specialDesc specialDescBeforeContents specialDescListWith specialDescOrder specialNominalRoomPartLocation suppressAutoSeen takeFromNotInMessage theDisambigName theName theNamePossNoun tmpAmbient_ tmpAmbientFill_ tmpAmbientWithin_ tmpFillMedium_ tmpObstructor_ tmpObstructorWithin_ tmpPathIsIn_ tmpTrans_ tmpTransWithin_ touchPresence touchSize verbCan verbCannot verbCant verbEndingSD verbEndingSEd verbEndingSMessageBuilder_ verbMust verbToCome verbToDo verbToGo verbToLeave verbToSay verbToSee verbWill verbWont

Inherited from VocabObject :
canResolvePossessive disambigPromptOrder pluralOrder vocabLikelihood vocabWords weakTokens

Inherited from TravelConnector :
connectorStagingLocation isCircularPassage isConnectorListed rememberCircularPassage travelBarrier travelMemory

Summary of Methods  

canActorTravel cannotTravel connectorBack dobjFor(LookThrough) dobjFor(TravelVia) fixedSource getDestination getFacets initializeThing initMasterObject isConnectorPassable isConnectorVisibleInDark isOpen

Inherited from Linkable :
masterObject

Inherited from Fixture :
dobjFor(Move) dobjFor(MoveTo) dobjFor(MoveWith) dobjFor(Pull) dobjFor(Push) dobjFor(PushTravel) dobjFor(PutBehind) dobjFor(PutIn) dobjFor(PutOn) dobjFor(PutUnder) dobjFor(Take) dobjFor(TakeFrom) dobjFor(ThrowAt) dobjFor(ThrowDir) hideFromAll hideFromDefault isOwnedBy verifyMoveTo

Inherited from NonPortable :
contentsInFixedIn dobjFor(Examine) dobjFor(ShowTo) isHeldBy meetsObjHeld

Inherited from Thing :
acceptCommand addAllContents addDirectConnections addObjectNotifyItem addToContents addToSenseInfoTable adjustLookAroundTable adjustThrowDestination afterAction afterTravel allContents aNameFrom aNameObj aNameOwnerLoc announceDefaultObject appendHeldContents atmosphereList baseMoveInto basicExamine basicExamineFeel basicExamineListen basicExamineSmell basicExamineTaste beforeAction beforeTravel buildContainmentPaths cacheAmbientInfo cacheSenseInfo cacheSensePath canBeHeardBy canBeSeenBy canBeSensed canBeSmelledBy canBeTouchedBy canDetailsBeSensed canHear canMatchPronounType canMoveViaPath cannotGoShowExits cannotReachObject cannotSeeSmellSource cannotSeeSoundSource canOwn canSee canSmell canThrowViaPath canTouch canTouchViaPath checkActorOutOfNested checkBulkChange checkBulkChangeWithin checkMoveViaPath checkStagingLocation checkThrowViaPath checkTouchViaPath checkTravelerDirectlyInRoom childInName childInNameGen childInNameWithOwner childInRemoteName clearSenseInfo cloneForMultiInstanceContents cloneMultiInstanceContents conjugateRegularVerb connectionTable construct countDisambigName countListName countName countNameFrom countNameOwnerLoc darkRoomContentsLister defaultDistantDesc defaultObscuredDesc desc directionForConnector distantSmellDesc distantSoundDesc dobjFor(AskAbout) dobjFor(AskFor) dobjFor(AskVague) dobjFor(AttachTo) dobjFor(Attack) dobjFor(AttackWith) dobjFor(Board) dobjFor(Break) dobjFor(Burn) dobjFor(BurnWith) dobjFor(Clean) dobjFor(CleanWith) dobjFor(Climb) dobjFor(ClimbDown) dobjFor(ClimbUp) dobjFor(Close) dobjFor(Consult) dobjFor(ConsultAbout) dobjFor(CutWith) dobjFor(Detach) dobjFor(DetachFrom) dobjFor(Dig) dobjFor(DigWith) dobjFor(Doff) dobjFor(Drink) dobjFor(Drop) dobjFor(Eat) dobjFor(Enter) dobjFor(EnterOn) dobjFor(Extinguish) dobjFor(Fasten) dobjFor(FastenTo) dobjFor(Feel) dobjFor(Flip) dobjFor(Follow) dobjFor(GetOffOf) dobjFor(GetOutOf) dobjFor(GiveTo) dobjFor(GoThrough) dobjFor(JumpOff) dobjFor(JumpOver) dobjFor(Kiss) dobjFor(LieOn) dobjFor(Light) dobjFor(ListenTo) dobjFor(Lock) dobjFor(LockWith) dobjFor(LookBehind) dobjFor(LookIn) dobjFor(LookUnder) dobjFor(Open) dobjFor(PlugIn) dobjFor(PlugInto) dobjFor(Pour) dobjFor(PourInto) dobjFor(PourOnto) dobjFor(Read) dobjFor(Remove) dobjFor(Screw) dobjFor(ScrewWith) dobjFor(Search) dobjFor(Set) dobjFor(SetTo) dobjFor(SitOn) dobjFor(Smell) dobjFor(StandOn) dobjFor(Strike) dobjFor(Switch) dobjFor(TalkTo) dobjFor(Taste) dobjFor(TellAbout) dobjFor(TellVague) dobjFor(Throw) dobjFor(ThrowTo) dobjFor(Turn) dobjFor(TurnOff) dobjFor(TurnOn) dobjFor(TurnTo) dobjFor(TurnWith) dobjFor(TypeLiteralOn) dobjFor(TypeOn) dobjFor(Unfasten) dobjFor(UnfastenFrom) dobjFor(Unlock) dobjFor(UnlockWith) dobjFor(Unplug) dobjFor(UnplugFrom) dobjFor(Unscrew) dobjFor(UnscrewWith) dobjFor(Wear) examineListContents examineListContentsWith examineSpecialContents examineStatus failCheck feelDesc fillMedium findOpaqueObstructor findTouchObstructor forEachConnectedContainer forEachContainer fromPOV getAllForTakeFrom getAllPathsTo getAnnouncementDistinguisher getBagAffinities getBagsOfHolding getBestDistinguisher getBulk getBulkWithin getCarryingActor getCommonContainer getCommonDirectContainer getConnectedContainers getConnectorTo getContentsForExamine getDestName getDropDestination getEncumberingBulk getEncumberingWeight getExtraScopeItems getHitFallDestination getIdentityObject getInScopeDistinguisher getListedContents getLocPushTraveler getLocTraveler getMovePathTo getNoise getNominalDropDestination getNominalOwner getObjectNotifyList getOdor getOutermostRoom getOutermostVisibleRoom getRoomNotifyList getRoomPartLocation getStateWithInfo getStatuslineExitsHeight getThrowPathTo getTouchPathTo getTravelConnector getVisualSenseInfo getWeight hasCollectiveGroup initializeEquivalent initializeLocation inRoomName iobjFor(AttachTo) iobjFor(AttackWith) iobjFor(BurnWith) iobjFor(CleanWith) iobjFor(CutWith) iobjFor(DetachFrom) iobjFor(DigWith) iobjFor(FastenTo) iobjFor(GiveTo) iobjFor(LockWith) iobjFor(MoveWith) iobjFor(PlugInto) iobjFor(PourInto) iobjFor(PourOnto) iobjFor(PutBehind) iobjFor(PutIn) iobjFor(PutOn) iobjFor(PutUnder) iobjFor(ScrewWith) iobjFor(ShowTo) iobjFor(TakeFrom) iobjFor(ThrowAt) iobjFor(ThrowTo) iobjFor(TurnWith) iobjFor(UnfastenFrom) iobjFor(UnlockWith) iobjFor(UnplugFrom) iobjFor(UnscrewWith) isActorTravelReady isComponentOf isDirectlyIn isIn isInFixedIn isListed isListedInContents isListedInInventory isListedInRoomPart isLookAroundCeiling isNominallyIn isNominallyInRoomPart isOccludedBy isOrIsIn isShipboard isVocabEquivalent itIs itNom itObj itPossAdj itPossNoun itVerb listCardinality localDirectionLinkForConnector lookAround lookAroundPov lookAroundWithin lookAroundWithinContents lookAroundWithinDesc lookAroundWithinName lookAroundWithinSense lookAroundWithinShowExits lookInDesc mainExamine mainMoveInto mapPushTravelHandlers mapPushTravelHandlers mapPushTravelHandlers mapPushTravelHandlers mapPushTravelHandlers mergeSenseInfo mergeSenseInfoTable moveInto moveIntoForTravel moveIntoNotifyPath mustMoveObjInto nameIs nameIsnt nameVerb normalizePath notePromptByOwnerLoc notePromptByPossAdj noteSeenBy notifyInsert notifyMoveInto notifyMoveViaPath notifyRemove obscuredDesc obscuredSmellDesc obscuredSoundDesc pluralNameFrom processThrow propHidesProp propWithPresent putInName receiveDrop remoteDesc remoteInitSpecialDesc remoteRoomContentsLister remoteSpecialDesc removeFromContents removeObjectNotifyItem restoreLocation roomActorThereDesc roomContentsLister roomDaemon roomDarkDesc roomDesc roomFirstDesc roomRemoteDesc roomTravelPreCond saveLocation selectPathTo sendNotifyInsert sendNotifyRemove senseAmbientMax senseInfoTable senseObj sensePathFromWithin sensePathFromWithout sensePathToContents sensePathToLoc sensePresenceList setAllSeenBy setContentsSeenBy setGlobalParamName setVisualSenseInfo shineFromWithin shineFromWithout shineOnContents shineOnLoc showDistantSpecialDesc showDistantSpecialDescInContents showInventoryContents showInventoryItem showInventoryItemCounted showListItem showListItemCounted showListItemCountedGen showListItemGen showObjectContents showObscuredSpecialDesc showObscuredSpecialDescInContents showRemoteSpecialDesc showRemoteSpecialDescInContents showSpecialDesc showSpecialDescInContents showSpecialDescInContentsWithInfo showSpecialDescWithInfo showStatuslineExits showWornItem showWornItemCounted smellDesc smellHereDesc soundDesc soundHereDesc specialDescList specialPathFrom statusName stopThrowViaPath superHidesSuper tasteDesc thatNom thatObj theNameFrom theNameObj theNameOwnerLoc theNameWithOwner throwTargetCatch throwTargetHitWith throwViaPath transmitAmbient transSensingIn transSensingOut traversePath tryHolding tryImplicitRemoveObstructor tryMovingObjInto useInitDesc useInitSpecialDesc useSpecialDesc useSpecialDescInContents useSpecialDescInRoom useSpecialDescInRoomPart verbEndingEs verbEndingIes verbEndingS verbToHave verbWas verifyFollowable verifyInsert verifyRemove whatIf whatIfHeldBy withVisualSenseInfo

Inherited from VocabObject :
addToDictionary expandPronounList filterResolveList inheritVocab initializeVocab initializeVocabWith matchName matchNameCommon matchNameDisambig throwNoMatchForLocation throwNoMatchForPossessive throwNothingInLocation

Inherited from TravelConnector :
actorTravelPreCond canTravelerPass checkTravelBarriers connectorGetConnectorTo connectorTravelPreCond createUnlistedProxy darkTravel describeArrival describeDeparture describeLocalArrival describeLocalDeparture describeRemoteTravel explainTravelBarrier getApparentDestination isConnectorApparent noteTraversal rememberTravel

Properties  

destination

travel.t[2423]

Our destination - this is where the actor ends up when traveling through the passage (assuming the passage is open). By default, we return the “room location” of our other side’s container; in cases where our other side is not directly in our destination room (for example, the other side is part of some larger object structure), this property should be overridden to specify the actual destination.

If our otherSide is nil, the passage doesn’t go anywhere. This can be useful to create things that look and act like passages, but which don’t actually go anywhere - in other words, passage-like decorations.

isOpen_

travel.t[2439]

internal open/closed status - open by default

otherSide

travel.t[2502]

Our corresponding passage object on the other side of the passage. This will be set automatically during initialization based on the masterObject property of the slave - it is not generally necessary to set this manually.

Methods  

canActorTravel (actor)

travel.t[2526]

can the given actor travel through this passage?

cannotTravel ( )

travel.t[2542]

Display our message when we don’t allow the actor to travel through the passage because the passage is closed. By default, we’ll simply display the default cannotTravel message for the actor’s location, but this can be overridden to provide a more specific report of the problem.

connectorBack (traveler, dest)OVERRIDDEN

travel.t[2515]

the connector back is our complementary side, if we have one

dobjFor(LookThrough)OVERRIDDEN

travel.t[2576]

inherit the default checks

dobjFor(TravelVia)OVERRIDDEN

travel.t[2549]

carry out travel via this connector

fixedSource (origin, traveler)OVERRIDDEN

travel.t[2512]

our source is always our destination, since we have a one-to-one relationship with our comlementary passage in the destination location (we point to it, it points to us)

getDestination (origin, traveler)OVERRIDDEN

travel.t[2426]

get my destination - just return my ‘destination’ property

getFacets ( )OVERRIDDEN

travel.t[2505]

our other side is the other facet of the passage

initializeThing ( )OVERRIDDEN

travel.t[2468]

Initialize. If we’re a slave, we’ll set up the otherSide relationship between this passage and our master passage.

initMasterObject (other)

travel.t[2494]

Initialize the master object. The other side of a two-sided door will call this on the master object to let the master object know about the other side. ‘other’ is the other-side object. By default, we’ll simply remember the other object in our own ‘otherSide’ property.

isConnectorPassable (origin, traveler)OVERRIDDEN

travel.t[2462]

a passage is passable when it’s open

isConnectorVisibleInDark (origin, actor)OVERRIDDEN

travel.t[2458]

We’re not visible in the dark if we’re closed. If we’re open, the normal rules apply.

Normally, a passage is visible in the dark if there’s light in the adjoining location: our model is that enough light is leaking in through the passage to make the passage itself visible, but not enough to light anything else in the current room. In the case of a closed passage, though, we assume that it completely blocks any light from the other room, eliminating any indication of a passage.

If you do want an openable passage to be visible in the dark even when it’s closed, it’s probably better to make the passage self-illuminating (i.e., with brightness 1), because this will put the passage in scope and thus allow it to be manipulated.

isOpen ( )

travel.t[2429]

get our open/closed status

TADS 3 Library Manual
Generated on 5/16/2013 from TADS version 3.1.3