Thingclass | thing.t[979], senseRegion.t[560], english.t[2138], beliefcalcs.t[282], brightness.t[34], cmdhelp.t[855], factrel.t[711], postures.t[114], roomparts.t[154], sensory.t[561], signals.t[201], tiaaction.t[380], weight.t[15] |
Superclass Tree | Subclass Tree | Global Objects | Property Summary | Method Summary | Property Details | Method Details |
Modified in senseRegion.t[560]:
Modifications to Thing to support the other mods required for use with SenseRegion.
Modified in english.t[2138]:
English modifications for Thing. This adds some methods that vary by language, so they can't be defined in the generic Thing class.
Modified in beliefcalcs.t[282]:
Modify setInformed() on Thing to accept a BelVal arg (by converting it to the equivalent enum)
Modified in cmdhelp.t[855]:
Modifications to Thing for the CMDHELP EXTENSION
Modified in factrel.t[711]:
Then carry out the inherited handling and return the result.
Modified in postures.t[114]:
Modifications to Thing needed for the POSTURES EXTENSION.
Modified in roomparts.t[154]:
Modifications to Thing to allow things to be associated with room parts. Note that a Thing associated with a room part should be directly located in the room, not in the room part. [MODIFIED FOR ROOMPARTS EXTENSION]
Modified in sensory.t[561]:
Modifications to Thing to work with the <i>SENSORY EXTENSION</i>
Modified in tiaaction.t[380]:
MODIFICATION TO THING FOR TIAACTION EXTENSION
Modified in weight.t[15]:
Modifications to Thing class for WEIGHT extension
class
Thing : ReplaceRedirector Mentionable
Thing
ReplaceRedirector
Redirector
object
Mentionable
LMentionable
object
Thing
Actor
Player
Button
Collective
DispensingCollective
Consultable
Container
Booth
OpenableContainer
KeyedContainer
LockableContainer
Door
DSDoor
SymDoor
SecretDoor
Fixture
CollectiveGroup
MobileCollectiveGroup
Component
ContainerDoor
Decoration
Distant
RoomPart
Ceiling
DefaultWall
SensoryEmanation
Noise
SimpleNoise
Odor
SimpleOdor
Unthing
Enterable
Heavy
Floor
Food
Immovable
Key
Lever
MinorItem
Passage
DSPassage
SymPassage
PathPassage
DSPathPassage
SymPathPassage
RearContainer
Room
OutdoorRoom
ScenItem
MultiScenItem
Settable
Dial
NumberedDial
SimpleAttachable
AttachableComponent
NearbyAttachable
Attachable
StairwayDown
StairwayUp
DSStairway
SymStairway
SubComponent
Surface
Platform
Bed
Chair
Switch
Flashlight
Underside
Wearable
dummy_
failVerifyObj
firstPersonObj
lightProbe_
pluralDummy_
scopeProbe_
actorAlreadyInMsg
actorAlreadyOnMsg
actorNotInMsg
actorNotOnMsg
allowImplicitSay
allowPourIntoMe
allowPourOntoMe
alreadyCleanMsg
alreadyClosedMsg
alreadyFastenedMsg
alreadyHasMsg
alreadyHeldMsg
alreadyInMsg
alreadyLitMsg
alreadyLockedMsg
alreadyMovedToMsg
alreadyOnMsg
alreadyOpenMsg
alreadyPresentMsg
alreadyThereMsg
alreadyWornMsg
autoGetOutToReach
autoTakeOnFindHidden
autoUnlock
brightness
brightnessForReading
brightnessOff
brightnessOn
bulk
bulkCapacity
canAttachToMe
canAttackWithMe
canBurnWithMe
canCleanWithMe
canClimbDownMe
canClimbUpMe
canCutWithMe
canDetachFromMe
canDigWithMe
canDropContents
canEnterOnMe
canFastenToMe
canGoAlongMe
canGoThroughMe
canHearIn
canHearOut
canJumpOffMe
canJumpOverMe
canLieInMe
canLieOnMe
canLockWithMe
canLookBehindMe
canLookThroughMe
canLookUnderMe
canMoveToMe
canMoveWithMe
cannotAttachMsg
cannotAttachToMsg
cannotAttachToSelfMsg
cannotAttackMsg
cannotAttackWithMsg
cannotAttackWithSelfMsg
cannotBoardMsg
cannotBreakMsg
cannotBurnMsg
cannotBurnWithMsg
cannotCleanMsg
cannotCleanWithMsg
cannotClimbDownMsg
cannotClimbMsg
cannotCloseMsg
cannotConsultMsg
cannotCutMsg
cannotCutWithMsg
cannotCutWithSelfMsg
cannotDetachFromMsg
cannotDetachFromSelfMsg
cannotDetachMsg
cannotDigMsg
cannotDigWithMsg
cannotDigWithSelfMsg
cannotDoffMsg
cannotDrinkMsg
cannotDropMsg
cannotEatMsg
cannotEnterMsg
cannotEnterOnMsg
cannotExtinguishMsg
cannotFastenMsg
cannotFastenToMsg
cannotFastenToSelfMsg
cannotFeelMsg
cannotFlipMsg
cannotFollowMsg
cannotFollowSelfMsg
cannotGetInCarriedMsg
cannotGetOnCarriedMsg
cannotGiveToMsg
cannotGiveToSelfMsg
cannotGoAlongMsg
cannotGoNearThereMsg
cannotGoThroughMsg
cannotJumpOffMsg
cannotJumpOverMsg
cannotKissMsg
cannotLieInMsg
cannotLieOnMsg
cannotLightMsg
cannotLockWithMsg
cannotLockWithSelfMsg
cannotLookBehindMsg
cannotLookThroughMsg
cannotLookUnderMsg
cannotMoveMsg
cannotMoveToMsg
cannotMoveToSelfMsg
cannotMoveWithMsg
cannotMoveWithSelfMsg
cannotOpenMsg
cannotPlugIntoMsg
cannotPlugIntoSelfMsg
cannotPlugMsg
cannotPourIntoMsg
cannotPourIntoSelfMsg
cannotPourMsg
cannotPourOntoMsg
cannotPourOntoSelfMsg
cannotPullMsg
cannotPurloinContainerMsg
cannotPurloinRoomMsg
cannotPurloinSelfMsg
cannotPushDownMsg
cannotPushIntoMsg
cannotPushMsg
cannotPushOwnContainerMsg
cannotPushThroughMsg
cannotPushUpMsg
cannotPushViaSelfMsg
cannotPutBehindMsg
cannotPutInMsg
cannotPutInSelfMsg
cannotPutMsg
cannotPutOnMsg
cannotPutUnderMsg
cannotReadMsg
cannotRemoveMsg
cannotScrewMsg
cannotScrewWithMsg
cannotScrewWithSelfMsg
cannotSetMsg
cannotSetToMsg
cannotShowToMsg
cannotShowToSelfMsg
cannotSitInMsg
cannotSitOnMsg
cannotSmellMsg
cannotStandInMsg
cannotStandOnMsg
cannotTakeFromSelfMsg
cannotTakeMsg
cannotTakeMyContainerMsg
cannotTakeSelfMsg
cannotTalkToMsg
cannotTalkToSelfMsg
cannotTasteMsg
cannotThrowAtMsg
cannotThrowAtSelfMsg
cannotThrowMsg
cannotThrowToMsg
cannotThrowToSelfMsg
cannotTurnMsg
cannotTurnToMsg
cannotTurnWithMsg
cannotTurnWithSelfMsg
cannotTypeOnMsg
cannotUnfastenFromMsg
cannotUnfastenFromSelfMsg
cannotUnfastenMsg
cannotUnlockWithMsg
cannotUnlockWithSelfMsg
cannotUnplugFromMsg
cannotUnplugFromSelfMsg
cannotUnplugMsg
cannotUnscrewMsg
cannotUnscrewWithMsg
cannotUnscrewWithSelfMsg
cannotWearMsg
cannotWriteOnMsg
canPlugIntoMe
canPourIntoMe
canPourOntoMe
canPullTravel
canPushTravel
canPutBehindMe
canPutInMe
canPutUnderMe
canReachIn
canReachOut
canScrewWithMe
canSeeIn
canSeeOut
canSetMeTo
canSitInMe
canSitOnMe
canSmellIn
canSmellOut
canStandInMe
canStandOnMe
canSupply
canTalkToMe
canThrowAtMe
canThrowToMe
canTurnMeTo
canTurnWithMe
canTypeOnMe
canUnfastenFromMe
canUnlockWithMe
canUnplugFromMe
canUnscrewWithMe
canWriteOnMe
checkAttackMsg
checkFeelMsg
checkKissMsg
circularlyInMsg
collectiveGroups
contents
contentsListed
contentsListedInExamine
contentsListedInLook
contentsListedInSearch
contType
currentInterlocutor
curSetting
darkName
decorationActions
decorationActions
defaultPosture
desc
directlyHeld
directlyIn
directlyWorn
distinguishByContents
dontNeedCleaningObjMsg
dropItemsBehind
dropItemsUnder
dropLocation
enclosing
examined
examineListed
examineLister
exitLocation
extContents
familiar
feelDesc
findHiddenDest
fluidName
futileToAttackMsg
futileToKissMsg
getBulkHiddenBehind
getBulkHiddenIn
getBulkHiddenUnder
getFacets
getOutermostRoom
getOutToJump
getWeightHiddenBehind
getWeightHiddenIn
getWeightHiddenUnder
globalParamName
groupOrder
hearNothingMsg
hiddenBehind
hiddenIn
hiddenUnder
illuminationThreshold
inDarkDesc
indirectLockableMsg
informedNameTab
initiallyKnowsAbout
initSpecialDesc
intContents
interiorDesc
inventoryListed
isAttachable
isAttackable
isBoardable
isBreakable
isBurnable
isClean
isCleanable
isClimbable
isCloseable
isConsultable
isCuttable
isDecoration
isDetachable
isDiggable
isDoffable
isDrinkable
isDroppable
isEdible
isEnterable
isExtinguishable
isFastenable
isFastened
isFeelable
isFixed
isFlippable
isFollowable
isHidden
isInitialPlayerChar
isKissable
isLightable
isListed
isLit
isLocked
isMoveable
isOn
isOpen
isOpenable
isPlayerChar
isPlugable
isPourable
isProminentNoise
isProminentSmell
isPullable
isPushable
isReadable
isRemoveable
isScrewable
isSettable
isSmellable
isSwitchable
isTakeable
isTasteable
isThrowable
isTransparent
isTurnable
isUnfastenable
isUnplugable
isUnscrewable
isVehicle
isWearable
keyDoesntWorkMsg
keyList
keyNotNeededMsg
kissRank
known
knownKeyList
knownProp
lastSeenAt
lieOnScore
lightSources
listableContents
listenDesc
listenDescWithoutSource
listenDescWithSource
listOrder
listWith
location
lockability
lockedMsg
lookBehindMsg
lookInMsg
lookListed
lookThroughMsg
lookUnderMsg
markInventoryAsSeen
matchPullOnly
matchPushOnly
maxBulkHiddenBehind
maxBulkHiddenIn
maxBulkHiddenUnder
maxItemsCarried
maxSingleBulk
maxSingleWeight
maxWeightHiddenBehind
maxWeightHiddenIn
maxWeightHiddenUnder
mentioned
moved
movedTo
moveNoEffectMsg
mustBeCleanedWith
myInventoryLister
myLookBehindLister
myLookInLister
myLookUnderLister
myOpeningContentsLister
myThoughtManager
myWornLister
needsCleaning
noLongerTalkingToAnyoneMsg
nominalContents
noNeedToCleanMsg
notFastenedMsg
notHoldingMsg
notImportantMsg
notInMsg
notLitMsg
notLockableMsg
notLockedMsg
notSwitchableMsg
notTalkingToAnyoneMsg
notWornMsg
objInPrep
objIntoPrep
okayCleanMsg
okayGetOutOfMsg
okayLieInMsg
okayLieOnMsg
okayLockMsg
okayOpenMsg
okayPushIntoMsg
okayPushOutOfMsg
okaySetMsg
okaySitInMsg
okaySitOnMsg
okayStandInMsg
okayStandOnMsg
okayUnlockMsg
opacity
opened
openStatusReportable
owner
ownsContents
paraBrksBtwnSubcontents
partOfYouMsg
posture
preCondActor
pullNoEffectMsg
pushNoEffectMsg
readDesc
recognizableInDark
remapActor
remapBehind
remapIn
remapOn
remapProps
remapUnder
roomContentsLister
roomPart
roomPartDesc
roomSubContentsLister
roomTitle
searchListed
seen
seenProp
shouldBeBroken
shouldNotBreakMsg
shouldNotPourIntoMsg
shouldNotPourOntoMsg
sightSize
sitOnScore
smellDesc
smellDescWithoutSource
smellDescWithSource
smellNothingMsg
smellObj
smellSize
soundObj
soundSize
specialDesc
specialDescBeforeContents
specialDescListWith
specialDescOrder
stagingLocation
standOnScore
stateDesc
tasteDesc
throwFallsShortMsg
tooDarkToReadMsg
tooDarkToSeeMsg
tooFarAwayToHearMsg
tooFarAwayToReadMsg
tooFarAwayToSeeDetailMsg
tooFarAwayToSmellMsg
totalWeight
turnLastExamined
turnLastMoved
turnLastMovedInto
turnNoEffectMsg
useInitSpecialDesc
useKey_
useSpecialDesc
viaMode
visibleInDark
vocabLikelihood
weight
weightCapacity
withKeyMsg
wornBy
Inherited from Mentionable
:
ambiguouslyPlural
disambigGroup
disambigMatchPhrases
disambigName
disambigOrder
isHer
isHim
isIt
massNoun
matchPhrases
matchPhrasesExclude
name
person
plural
proper
qualified
states
vocab
vocabWords
Inherited from LMentionable
:
acronymPluralPat
alphaCharPat
aName
apostPluralPat
apostSPat
deannotatePat
dictComp
dummyName
elevenEighteenPat
emptyVocabWords
esPluralPat
firstWordPat
heName
herName
hersName
himName
iesPluralPat
irregularPlurals
lastWordPat
leadingTagOrQuotePat
menPluralPat
objInName
objIntoName
objName
objOutOfName
oneLetterAnWordPat
oneLetterWordPat
ownerNamed
pluralPat
posPat
possAdj
possEnding
possNoun
prepList
prepPhrasePat
prepWordPat
pronounMap
properNamePat
properPat
reflexiveName
specialAOrAn
tagOrQuotePat
thatName
thatObjName
theName
theObjName
trimPat
truncationLength
weakWordPat
abcName
accumulateBrightness
accumulatedBrightnessWithin
actionMoveInto
actorAction
addToAllContents
addToContents
afterAction
afterTravel
allContents
allowReachOut
aobjFor
beforeAction
beforeMovePushable
beforeTravel
brightnessWithin
byRoom
canHear
cannotPushTravelMsg
cannotReachOutMsg
canReach
canSee
canSmell
canTalkTo
checkDisplay
checkForContradictions
checkInsert
checkPushTravel
checkReach
checkReachIn
checkRemove
checkRoomToHold
checkSetting
childLocType
commonContainingParent
commonInteriorParent
containerPath
containerPathBlock
darkDesc
describeMovePushable
describePushTravel
directChildParent
discover
display
displayAlt
dobjFor(AskAbout)
dobjFor(AskFor)
dobjFor(Attach)
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(ConsultAbout)
dobjFor(Cut)
dobjFor(CutWith)
dobjFor(Default)
dobjFor(Detach)
dobjFor(DetachFrom)
dobjFor(Dig)
dobjFor(DigWith)
dobjFor(Doff)
dobjFor(Drink)
dobjFor(Drop)
dobjFor(Eat)
dobjFor(Enter)
dobjFor(EnterOn)
dobjFor(Examine)
dobjFor(Extinguish)
dobjFor(Fasten)
dobjFor(FastenTo)
dobjFor(Feel)
dobjFor(Flip)
dobjFor(Follow)
dobjFor(GetOff)
dobjFor(GetOutOf)
dobjFor(GiveTo)
dobjFor(GiveToImplicit)
dobjFor(GoAlong)
dobjFor(GoNear)
dobjFor(GoThrough)
dobjFor(GoTo)
dobjFor(JumpOff)
dobjFor(JumpOver)
dobjFor(Kiss)
dobjFor(LieIn)
dobjFor(LieOn)
dobjFor(LieOn)
dobjFor(Light)
dobjFor(ListenTo)
dobjFor(Lock)
dobjFor(LockWith)
dobjFor(LookBehind)
dobjFor(LookIn)
dobjFor(LookThrough)
dobjFor(LookUnder)
dobjFor(Move)
dobjFor(MoveTo)
dobjFor(MoveWith)
dobjFor(Open)
dobjFor(PlugIn)
dobjFor(PlugInto)
dobjFor(Pour)
dobjFor(PourInto)
dobjFor(PourOnto)
dobjFor(Pull)
dobjFor(Purloin)
dobjFor(Push)
dobjFor(PushTravelClimbDown)
dobjFor(PushTravelClimbUp)
dobjFor(PushTravelDir)
dobjFor(PushTravelEnter)
dobjFor(PushTravelGetOutOf)
dobjFor(PushTravelThrough)
dobjFor(PutBehind)
dobjFor(PutIn)
dobjFor(PutOn)
dobjFor(PutUnder)
dobjFor(QueryAbout)
dobjFor(Read)
dobjFor(Remove)
dobjFor(SayTo)
dobjFor(Screw)
dobjFor(ScrewWith)
dobjFor(Search)
dobjFor(Set)
dobjFor(SetTo)
dobjFor(ShowTo)
dobjFor(ShowToImplicit)
dobjFor(SitIn)
dobjFor(SitOn)
dobjFor(SitOn)
dobjFor(SmellSomething)
dobjFor(StandIn)
dobjFor(StandOn)
dobjFor(StandOn)
dobjFor(Strike)
dobjFor(SwitchOff)
dobjFor(SwitchOn)
dobjFor(SwitchVague)
dobjFor(Take)
dobjFor(TakeFrom)
dobjFor(TakeFrom)
dobjFor(TalkAbout)
dobjFor(TalkTo)
dobjFor(Taste)
dobjFor(TellAbout)
dobjFor(Throw)
dobjFor(ThrowAt)
dobjFor(ThrowDir)
dobjFor(ThrowTo)
dobjFor(Turn)
dobjFor(TurnTo)
dobjFor(TurnWith)
dobjFor(TypeOn)
dobjFor(TypeOnVague)
dobjFor(Unfasten)
dobjFor(UnfastenFrom)
dobjFor(Unlock)
dobjFor(UnlockWith)
dobjFor(Unplug)
dobjFor(UnplugFrom)
dobjFor(Unscrew)
dobjFor(UnscrewWith)
dobjFor(Wear)
dobjFor(WriteOn)
doPushTravel
examineStatus
filterResolveList
findHidden
findPlausibleKey
firstContainerPathBlock
forget
getBulkWithin
getCarriedBulk
getCarriedWeight
getStatuslineExitsHeight
getWeightWithin
handleCommand
hasSeen
hideFromAll
informedAbout
interiorParent
iobjFor(AttachTo)
iobjFor(AttackWith)
iobjFor(BurnWith)
iobjFor(CleanWith)
iobjFor(CutWith)
iobjFor(Default)
iobjFor(DetachFrom)
iobjFor(DigWith)
iobjFor(FastenTo)
iobjFor(GiveTo)
iobjFor(LockWith)
iobjFor(MoveTo)
iobjFor(MoveWith)
iobjFor(PlugInto)
iobjFor(PourInto)
iobjFor(PourOnto)
iobjFor(PushTravelClimbDown)
iobjFor(PushTravelClimbUp)
iobjFor(PushTravelEnter)
iobjFor(PushTravelGetOutOf)
iobjFor(PushTravelThrough)
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)
isAudibleFrom
isChild
isDirectChild
isDirectlyHeldBy
isDirectlyIn
isDirectlyWornBy
isHeldBy
isIlluminated
isIn
isInterior
isOrIsIn
isOutside
isReadableFrom
isSmellableFrom
isThereALightSourceIn
isVisibleFrom
isWornBy
knowsAbout
listableContentsOf
listContents
listenDesc
listRemoteContents
listSubcontentsOf
litWithin
locationWhich
locType
lookAroundWithin
makeCleaned
makeFastened
makeLit
makeLocked
makeMovedTo
makeOn
makeOpen
makeSetting
makeWorn
markContradiction
moveHidden
moveInto
moveMLIntoAdd
moveMLOutOf
nestedLoc
nominalOwner
noteSeen
notifyContradiction
notifyEvent
notifyInsert
notifyRemove
notifySightEvent
notifySmellEvent
notifySoundEvent
notionalContents
outermostParent
outermostVisibleParent
ownedBy
preAction
preinitThing
pushTravelRevealItems
reachBlockedMsg
remoteBrightness
remoteInitSpecialDesc
remoteObjInName
remoteSpecialDesc
removeFromContents
revealOnMove
roomHeadline
roomSubhead
sayCantBearMoreWeight
sayDontKnowHowToGetThere
sayDontKnowHowToReach
sayFindHidden
sayPushTravel
sayTooHeavy
sayTooHeavyToHide
scoreObject
setHasSeen
setInformed
setKnown
setKnowsAbout
setSeen
shinesOut
showConnectedMiscContents
showFirstConnectedSpecials
showRemoteSpecialDesc
showSecondConnectedSpecials
showSpecialDesc
showStatuslineExits
smellDesc
statusName
totalBulkIn
totalWeightIn
traceContainerPath
travelVia
tryCheck
tryMakingPosture
unmention
unmentionRemoteContents
verifyActor
verifyEnterPosture
verifyPushTravel
wouldBeLitFor
Inherited from ReplaceRedirector
:
redirect
Inherited from Redirector
:
doInstead
doNested
doOtherAction
Inherited from Mentionable
:
construct
matchName
matchNameCommon
matchNameDisambig
phraseMatchName
simpleMatchName
Inherited from LMentionable
:
addDictWord
addVocab
addVocabWord
aNameFrom
aNameFromPoss
classInit
contify
distinguishedName
ifPronoun
inheritVocab
initVocab
initVocabWord
locify
matchPronoun
pluralNameFrom
pluralWordFrom
possessify
pronoun
removeVocabWord
replaceVocab
theNameFrom
theNameIs
actorAlreadyInMsg | thing.t[6694] |
actorAlreadyOnMsg | thing.t[6561] |
actorNotInMsg | thing.t[6761] |
actorNotOnMsg | thing.t[6762] |
allowImplicitSay | thing.t[9064] |
allowPourIntoMe | thing.t[8370] |
allowPourOntoMe | thing.t[8322] |
alreadyCleanMsg | thing.t[7159] |
alreadyClosedMsg | thing.t[4940] |
alreadyFastenedMsg | thing.t[7832] |
alreadyHasMsg | thing.t[9132] |
alreadyHeldMsg | thing.t[4345] |
alreadyInMsg | thing.t[5534] |
alreadyLitMsg | thing.t[6996] |
alreadyLockedMsg | thing.t[5999] |
alreadyMovedToMsg | thing.t[6964] |
alreadyOnMsg | thing.t[6288] |
alreadyOpenMsg | thing.t[4897] |
alreadyPresentMsg | thing.t[7688] |
alreadyThereMsg | thing.t[7686] |
alreadyWornMsg | thing.t[6421] |
autoGetOutToReach | thing.t[3496] |
autoTakeOnFindHidden | thing.t[5076] |
autoUnlock | thing.t[4822] |
brightness | brightness.t[79] |
The strength of the light the object is giving off, if indeed it is giving off light. This value should be one of the following:
0: The object is giving off no light at all.
1: The object is self-illuminating, but doesn't give off enough light to illuminate any other objects. This is suitable for something like an LED digital clock.
2: The object gives off dim light. This level is bright enough to illuminate nearby objects, but not enough to go through obscuring media, and not enough for certain activities requiring strong lighting, such as reading.
3: The object gives off medium light. This level is bright enough to illuminate nearby objects, and is enough for most activities, including reading and the like. Traveling through an obscuring medium reduces this level to dim (2).
4: The object gives off strong light. This level is bright enough to illuminate nearby objects, and travel through an obscuring medium reduces it to medium light (3).
There is nothing to stop game code using a higher value still to model a a super-powerful light source if that seems suitable to the situation being modelled in the game, but this probably will only rarely be necessary.
Note that the special value -1 is reserved as an invalid level, used to flag certain events (such as the need to recalculate the ambient light level from a new point of view).
Most objects do not give off light at all.
Return the appropriate on/off brightness, depending on whether or not we're currently lit
brightnessForReading | brightness.t[375] |
brightnessOff | brightness.t[43] |
brightnessOn | brightness.t[37] |
bulk | thing.t[2052] |
bulkCapacity | thing.t[2058] |
canAttachToMe | thing.t[7719] |
canAttackWithMe | thing.t[4711] |
canBurnWithMe | thing.t[6382] |
canCleanWithMe | thing.t[7209] |
canClimbDownMe | thing.t[6487] |
canClimbUpMe | thing.t[6472] |
canCutWithMe | thing.t[5048] |
canDetachFromMe | thing.t[7773] |
canDigWithMe | thing.t[7246] |
canDropContents | thing.t[4544] |
canEnterOnMe | thing.t[8205] |
canFastenToMe | thing.t[7846] |
canGoAlongMe | thing.t[5432] |
canGoThroughMe | thing.t[5415] |
canHearIn | thing.t[3398] |
By default, we can hear in for all containers, since most materials transmit at least some sound even if they're opaque to light. For a soundproof material (a glass booth, say), you could override this to make it (!enclosing) instead.
canHearOut | thing.t[3410] |
By default, we can hear out for all containers, since most materials transmit at least some sound even if they're opaque to light. For a soundproof material (a glass both, say), you could override this to make it (!enclosing) instead.
canJumpOffMe | thing.t[8095] |
canJumpOverMe | thing.t[8126] |
canLieInMe | postures.t[134] |
canLieOnMe | thing.t[6586] |
canLockWithMe | thing.t[6006] |
canLookBehindMe | thing.t[5296] |
canLookThroughMe | thing.t[5392] |
canLookUnderMe | thing.t[5205] |
canMoveToMe | thing.t[6936] |
canMoveWithMe | thing.t[6869] |
cannotAttachMsg | thing.t[7735] |
cannotAttachToMsg | thing.t[7737] |
cannotAttachToSelfMsg | thing.t[7740] |
cannotAttackMsg | thing.t[4670] |
cannotAttackWithMsg | thing.t[4717] |
cannotAttackWithSelfMsg | thing.t[4714] |
cannotBoardMsg | thing.t[6560] |
cannotBreakMsg | thing.t[4744] |
cannotBurnMsg | thing.t[6394] |
cannotBurnWithMsg | thing.t[6396] |
cannotCleanMsg | thing.t[7156] |
cannotCleanWithMsg | thing.t[7222] |
cannotClimbDownMsg | thing.t[6500] |
cannotClimbMsg | thing.t[6485] |
cannotCloseMsg | thing.t[4939] |
cannotConsultMsg | thing.t[8265] |
cannotCutMsg | thing.t[5064] |
cannotCutWithMsg | thing.t[5066] |
cannotCutWithSelfMsg | thing.t[5068] |
cannotDetachFromMsg | thing.t[7785] |
cannotDetachFromSelfMsg | thing.t[7788] |
cannotDetachMsg | thing.t[7756] |
cannotDigMsg | thing.t[7277] |
cannotDigWithMsg | thing.t[7279] |
cannotDigWithSelfMsg | thing.t[7281] |
cannotDoffMsg | thing.t[6455] |
cannotDrinkMsg | thing.t[7078] |
cannotDropMsg | thing.t[4535] |
cannotEatMsg | thing.t[7060] |
cannotEnterMsg | thing.t[6693] |
cannotEnterOnMsg | thing.t[8224] |
cannotExtinguishMsg | thing.t[7036] |
cannotFastenMsg | thing.t[7829] |
cannotFastenToMsg | thing.t[7862] |
cannotFastenToSelfMsg | thing.t[7865] |
cannotFeelMsg | thing.t[4241] |
cannotFlipMsg | thing.t[6352] |
cannotFollowMsg | thing.t[4624] |
cannotFollowSelfMsg | thing.t[4627] |
cannotGetInCarriedMsg | thing.t[6697] |
cannotGetOnCarriedMsg | thing.t[6564] |
cannotGiveToMsg | thing.t[9148] |
cannotGiveToSelfMsg | thing.t[9151] |
cannotGoAlongMsg | thing.t[5445] |
cannotGoNearThereMsg | thing.t[9346] |
cannotGoThroughMsg | thing.t[5428] |
cannotJumpOffMsg | thing.t[8123] |
cannotJumpOverMsg | thing.t[8144] |
cannotKissMsg | thing.t[8076] |
cannotLieInMsg | postures.t[462] |
cannotLieOnMsg | thing.t[6649] |
cannotLightMsg | thing.t[6994] |
cannotLockWithMsg | thing.t[6023] |
cannotLockWithSelfMsg | thing.t[6026] |
cannotLookBehindMsg | thing.t[5381] |
cannotLookThroughMsg | thing.t[5408] |
cannotLookUnderMsg | thing.t[5285] |
cannotMoveMsg | thing.t[6839] |
cannotMoveToMsg | thing.t[6958] |
cannotMoveToSelfMsg | thing.t[6961] |
cannotMoveWithMsg | thing.t[6886] |
cannotMoveWithSelfMsg | thing.t[6889] |
cannotOpenMsg | thing.t[4896] |
cannotPlugIntoMsg | thing.t[7965] |
cannotPlugIntoSelfMsg | thing.t[7963] |
cannotPlugMsg | thing.t[7961] |
cannotPourIntoMsg | thing.t[8397] |
cannotPourIntoSelfMsg | thing.t[8395] |
cannotPourMsg | thing.t[8391] |
cannotPourOntoMsg | thing.t[8399] |
cannotPourOntoSelfMsg | thing.t[8393] |
cannotPullMsg | thing.t[5486] |
cannotPurloinContainerMsg | thing.t[9317] |
cannotPurloinRoomMsg | thing.t[9315] |
cannotPurloinSelfMsg | thing.t[9313] |
cannotPushDownMsg | thing.t[8983] |
cannotPushIntoMsg | thing.t[8895] |
cannotPushMsg | thing.t[5464] |
cannotPushOwnContainerMsg | thing.t[8547] |
cannotPushThroughMsg | thing.t[8849] |
cannotPushUpMsg | thing.t[8959] |
cannotPushViaSelfMsg | thing.t[8550] |
cannotPutBehindMsg | thing.t[5847] |
cannotPutInMsg | thing.t[5661] |
cannotPutInSelfMsg | thing.t[5540] |
cannotPutMsg | thing.t[5496] |
cannotPutOnMsg | thing.t[5570] |
cannotPutUnderMsg | thing.t[5754] |
cannotReadMsg | thing.t[4599] |
cannotRemoveMsg | thing.t[6804] |
cannotScrewMsg | thing.t[8487] |
cannotScrewWithMsg | thing.t[8489] |
cannotScrewWithSelfMsg | thing.t[8491] |
cannotSetMsg | thing.t[8165] |
cannotSetToMsg | thing.t[7563] |
cannotShowToMsg | thing.t[9179] |
cannotShowToSelfMsg | thing.t[9182] |
cannotSitInMsg | postures.t[430] |
cannotSitOnMsg | thing.t[6647] |
cannotSmellMsg | thing.t[4168] |
cannotStandInMsg | postures.t[395] |
cannotStandOnMsg | thing.t[6645] |
cannotTakeFromSelfMsg | thing.t[7368] |
cannotTakeMsg | thing.t[4342] |
cannotTakeMyContainerMsg | thing.t[4348] |
cannotTakeSelfMsg | thing.t[4350] |
cannotTalkToMsg | thing.t[9106] |
cannotTalkToSelfMsg | thing.t[9109] |
cannotTasteMsg | thing.t[4211] |
cannotThrowAtMsg | thing.t[7436] |
cannotThrowAtSelfMsg | thing.t[7439] |
cannotThrowMsg | thing.t[4781] |
cannotThrowToMsg | thing.t[7471] |
cannotThrowToSelfMsg | thing.t[7474] |
cannotTurnMsg | thing.t[4973] |
cannotTurnToMsg | thing.t[7525] |
cannotTurnWithMsg | thing.t[5017] |
cannotTurnWithSelfMsg | thing.t[5020] |
cannotTypeOnMsg | thing.t[8197] |
cannotUnfastenFromMsg | thing.t[7914] |
cannotUnfastenFromSelfMsg | thing.t[7917] |
cannotUnfastenMsg | thing.t[7911] |
cannotUnlockWithMsg | thing.t[5953] |
cannotUnlockWithSelfMsg | thing.t[5956] |
cannotUnplugFromMsg | thing.t[8004] |
cannotUnplugFromSelfMsg | thing.t[8001] |
cannotUnplugMsg | thing.t[7998] |
cannotUnscrewMsg | thing.t[8492] |
cannotUnscrewWithMsg | thing.t[8494] |
cannotUnscrewWithSelfMsg | thing.t[8496] |
cannotWearMsg | thing.t[6420] |
cannotWriteOnMsg | thing.t[8243] |
canPlugIntoMe | thing.t[7926] |
canPourIntoMe | thing.t[8363] |
canPourOntoMe | thing.t[8316] |
canPullTravel | thing.t[8563] |
canPushTravel | thing.t[8556] |
canPutBehindMe | thing.t[2354] |
canPutInMe | thing.t[2361] |
canPutUnderMe | thing.t[2347] |
canReachIn | thing.t[3440] |
canReachOut | thing.t[3433] |
canScrewWithMe | thing.t[8411] |
canSeeIn | thing.t[3378] |
canSeeOut | thing.t[3386] |
canSetMeTo | thing.t[7528] |
canSitInMe | postures.t[133] |
canSitOnMe | thing.t[6585] |
Note that none of these three properties (canSitOnMe, canLieOnMe, canStandOnMe) should normally be overridden to simply true, since they cannot make it possible to sit, lie or stand on something for which isBoardable is not true (or which contType is not On).
canSmellIn | thing.t[3418] |
canSmellOut | thing.t[3426] |
canStandInMe | postures.t[132] |
canStandOnMe | thing.t[6587] |
canSupply | thing.t[7374] |
canTalkToMe | thing.t[9002] |
Indeed, the handling of conversational commands on Thing is minimal; they are simply ruled out at the verify stage, since most Things can't converse. The implementation of these actions that allows conversation to take place is on the Actor class. We do however define a canTalkToMe property so that Actor can use the verify handling defined on Thing by just overriding it.
Things can't be talked to, so game code shouldn't normally override this property; it's there to be overridden on the Actor class.
canThrowAtMe | thing.t[7400] |
canThrowToMe | thing.t[7453] |
canTurnMeTo | thing.t[7479] |
canTurnWithMe | thing.t[5000] |
canTypeOnMe | thing.t[8168] |
canUnfastenFromMe | thing.t[7898] |
canUnlockWithMe | thing.t[5936] |
canUnplugFromMe | thing.t[7968] |
canUnscrewWithMe | thing.t[8452] |
canWriteOnMe | thing.t[8228] |
checkAttackMsg | thing.t[4667] |
checkFeelMsg | thing.t[4249] |
checkKissMsg | thing.t[8083] |
circularlyInMsg | thing.t[5537] |
collectiveGroups | thing.t[3190] |
contents | thing.t[2410] |
contentsListed | thing.t[1917] |
contentsListedInExamine | thing.t[1929] |
contentsListedInLook | thing.t[1923] |
contentsListedInSearch | thing.t[1936] |
contType | thing.t[2406] |
currentInterlocutor | thing.t[3782] |
curSetting | thing.t[7522] |
darkName | thing.t[1017] |
decorationActions | thing.t[4025] |
If we're compiling for debugging, it will be useful to allow the GONEAR command with Decorations for testing purposes, but this can't be included in a release build without causing a compilation error, so we define the decorationActions property with different lists of actions depending on whether we're compiling for debugging or release.
decorationActions | thing.t[4027] |
defaultPosture | postures.t[129] |
desc | thing.t[1638] |
directlyHeld | thing.t[2324] |
directlyIn | thing.t[3302] |
directlyWorn | thing.t[2338] |
distinguishByContents OVERRIDDEN | thing.t[2398] |
dontNeedCleaningObjMsg | thing.t[7166] |
dropItemsBehind | thing.t[4356] |
dropItemsUnder | thing.t[4362] |
dropLocation | thing.t[4538] |
enclosing | thing.t[3370] |
For an object that's sometimes fully enclosing and sometimes not, such as a cabinet with a door that can be opened and closed, this should be overridden with a method that figures the current value based on the open/closed state.
Note that this only applies to our *interior* contents, such as contents of location type In. Contents that are atop the object or otherwise arranged around the exterior aren't affected by this.
examined | thing.t[3613] |
examineListed | thing.t[1906] |
examineLister | thing.t[1674] |
exitLocation | thing.t[6712] |
extContents | thing.t[2671] |
familiar | thing.t[3644] |
feelDesc | thing.t[1963] |
findHiddenDest | thing.t[5084] |
fluidName | thing.t[8281] |
futileToAttackMsg | thing.t[4694] |
futileToKissMsg | thing.t[8074] |
getBulkHiddenBehind | thing.t[2233] |
getBulkHiddenIn | thing.t[2232] |
getBulkHiddenUnder | thing.t[2231] |
getFacets | thing.t[3880] |
getOutermostRoom | thing.t[2790] |
getOutToJump | thing.t[8089] |
getWeightHiddenBehind | weight.t[143] |
getWeightHiddenIn | weight.t[142] |
getWeightHiddenUnder | weight.t[141] |
globalParamName | thing.t[2000] |
groupOrder | thing.t[3184] |
hearNothingMsg | thing.t[4201] |
hiddenBehind | thing.t[2208] |
hiddenIn | thing.t[2216] |
hiddenUnder | thing.t[2197] |
illuminationThreshold | brightness.t[369] |
The illumination threshold is the available brightness (returned by the brightnessWithin method) that needs to be exceeded in our interior to be able to examine objects or look around or satisfy other visibility criteris (mostly where the objVisible precondition is applies to the current action). The default illuminationThreshold is 1, which mimics the behaviour of both the adv3 library and the adv3Lite library in the absence of this extension.
inDarkDesc | thing.t[2024] |
indirectLockableMsg | thing.t[5928] |
informedNameTab | thing.t[3730] |
initiallyKnowsAbout | thing.t[3774] |
initSpecialDesc | thing.t[1809] |
intContents | thing.t[2664] |
interiorDesc | thing.t[1038] |
inventoryListed | thing.t[1903] |
isAttachable | thing.t[7696] |
isAttackable | thing.t[4635] |
isBoardable | thing.t[2368] |
isBreakable | thing.t[4725] |
isBurnable | thing.t[6356] |
isClean | thing.t[7089] |
isCleanable | thing.t[7086] |
isClimbable | thing.t[6460] |
isCloseable | thing.t[4902] |
isConsultable | thing.t[8246] |
isCuttable | thing.t[5023] |
isDecoration | thing.t[4009] |
isDetachable | thing.t[7743] |
isDiggable | thing.t[7225] |
isDoffable | thing.t[6425] |
isDrinkable | thing.t[7063] |
isDroppable | thing.t[4532] |
isEdible | thing.t[2372] |
isEnterable | thing.t[6656] |
isExtinguishable | thing.t[7006] |
isFastenable | thing.t[7796] |
isFastened | thing.t[7799] |
isFeelable | thing.t[4238] |
isFixed | thing.t[1883] |
isFlippable | thing.t[6341] |
isFollowable | thing.t[4606] |
isHidden | thing.t[2249] |
isInitialPlayerChar | thing.t[2679] |
isKissable | thing.t[8029] |
isLightable | thing.t[2032] |
isListed | thing.t[1895] |
isLit | thing.t[2007] |
isLocked | thing.t[2279] |
isMoveable | thing.t[6814] |
isOn | thing.t[2297] |
isOpen | thing.t[4798] |
isOpenable | thing.t[4791] |
isPlayerChar | thing.t[3966] |
isPlugable | thing.t[7925] |
isPourable | thing.t[8271] |
isProminentNoise | thing.t[1972] |
isProminentSmell | thing.t[1960] |
isPullable | thing.t[5470] |
isPushable | thing.t[5449] |
isReadable | thing.t[4577] |
isRemoveable | thing.t[6796] |
isScrewable | thing.t[8408] |
isSettable | thing.t[8148] |
isSmellable | thing.t[4165] |
isSwitchable | thing.t[2294] |
isTakeable | thing.t[4278] |
isTasteable | thing.t[4207] |
isThrowable | thing.t[4750] |
isTransparent | thing.t[3352] |
This property controls transparency symmetrically (looking in from outside and looking out from within). The library also lets you control transparency asymmetrically, using canSeeIn and canSeeOut. Those values are by default derived from this one, but you can override them separately to create something like a one-way mirror.
isTurnable | thing.t[4948] |
isUnfastenable | thing.t[7867] |
isUnplugable | thing.t[7967] |
isUnscrewable | thing.t[8451] |
isVehicle | thing.t[3151] |
isWearable | thing.t[2303] |
keyDoesntWorkMsg | thing.t[6255] |
keyList | thing.t[5855] |
keyNotNeededMsg | thing.t[5926] |
kissRank | thing.t[8035] |
known | thing.t[3717] |
knownKeyList | thing.t[5861] |
knownProp | thing.t[3726] |
lastSeenAt | thing.t[3629] |
lieOnScore | thing.t[6602] |
lightSources | brightness.t[287] |
listableContents | thing.t[1980] |
listenDesc | thing.t[1966] |
listenDescWithoutSource | sensory.t[635] |
listenDescWithSource | sensory.t[629] |
listOrder | thing.t[3172] |
listWith | thing.t[3178] |
location | thing.t[2421] |
lockability | thing.t[2273] |
lockedMsg | thing.t[4898] |
lookBehindMsg | thing.t[5384] |
lookInMsg | thing.t[5171] |
lookListed | thing.t[1900] |
lookThroughMsg | thing.t[5411] |
lookUnderMsg | thing.t[5288] |
markInventoryAsSeen | thing.t[1944] |
matchPullOnly | thing.t[8540] |
matchPushOnly | thing.t[8532] |
maxBulkHiddenBehind | thing.t[2227] |
maxBulkHiddenIn | thing.t[2228] |
maxBulkHiddenUnder | thing.t[2226] |
maxItemsCarried | thing.t[2074] |
maxSingleBulk | thing.t[2066] |
maxSingleWeight | weight.t[41] |
maxWeightHiddenBehind | weight.t[137] |
maxWeightHiddenIn | weight.t[138] |
maxWeightHiddenUnder | weight.t[136] |
mentioned | thing.t[1778] |
moved | thing.t[3605] |
movedTo | thing.t[6930] |
moveNoEffectMsg | thing.t[6861] |
mustBeCleanedWith | thing.t[7098] |
myInventoryLister | thing.t[3799] |
myLookBehindLister | thing.t[5377] |
myLookInLister | thing.t[5162] |
myLookUnderLister | thing.t[5282] |
myOpeningContentsLister | thing.t[4891] |
myThoughtManager | thing.t[3993] |
myWornLister | thing.t[3802] |
needsCleaning | thing.t[7092] |
noLongerTalkingToAnyoneMsg | thing.t[9245] |
nominalContents OVERRIDDEN | thing.t[2389] |
Note that this is always a single object (or nil), not the whole list of contents. We can only be named by one content object. (So you can't have a "box of books and papers" by having separate nominal contents objects for the books and the papers; although you could fake it by creating a "books and papers" object.)
noNeedToCleanMsg | thing.t[7162] |
notFastenedMsg | thing.t[7919] |
notHoldingMsg | thing.t[4573] |
notImportantMsg | thing.t[4052] |
notInMsg | thing.t[7365] |
notLitMsg | thing.t[7033] |
notLockableMsg | thing.t[5924] |
notLockedMsg | thing.t[5929] |
notSwitchableMsg | thing.t[6286] |
notTalkingToAnyoneMsg | thing.t[9242] |
notWornMsg | thing.t[6457] |
objInPrep | thing.t[2039] |
objIntoPrep | thing.t[2046] |
okayCleanMsg | thing.t[7169] |
okayGetOutOfMsg | thing.t[6759] |
okayLieInMsg | postures.t[459] |
okayLieOnMsg | postures.t[274] |
okayLockMsg | thing.t[6182] |
okayOpenMsg | thing.t[4893] |
okayPushIntoMsg | thing.t[8867] |
okayPushOutOfMsg | thing.t[8935] |
okaySetMsg | thing.t[7560] |
okaySitInMsg | postures.t[427] |
okaySitOnMsg | postures.t[242] |
okayStandInMsg | postures.t[398] |
okayStandOnMsg | postures.t[212] |
okayUnlockMsg | thing.t[6103] |
opacity | brightness.t[93] |
Our opacity is the extent to which we reduce the brightness of any light that passes through us. An opacity of 4 or more will cut off the brightest light, while an opacity of 0 means we're transparent. By default we have an opacity of 0 if we're transparent and 4 otherwise.
Note that if we want any light to penetrate us at all we should set transparency to true (we're at least somewhat light permeable) and then set opacity to some suitable value (if we don't want it to be zero, which is otherwise the default for a transparent object).
opened | thing.t[4816] |
openStatusReportable | thing.t[1786] |
owner | thing.t[3212] |
This should only return the *explicit* owner(s), not an implied locational owner. For example, if Bob is holding a key, it's implicitly BOB'S KEY. However, the key may or may not still be Bob's after he drops it. If the key is something that's understood to belong to Bob, whether it's currently in his physical possession or not, then this routine would return Bob; otherwise it would return nil.
An object can have multiple explicit owners, in which case it'll be recognized with a possessive qualifier for any of the owners. The first owner in the list is the nominal owner, meaning its the one we'll use if we're called upon to display the object's name with a possessive phrase.
ownsContents | thing.t[3231] |
By default, most objects are not nominal owners. Actors generally should set this to true, so that (for example) anything Bob is carrying can be described as Bob's. Something with contType = Carrier is likely to be an actor and hence something that can own its contents.
paraBrksBtwnSubcontents | thing.t[1540] |
partOfYouMsg | thing.t[4574] |
posture | postures.t[123] |
preCondActor | thing.t[4072] |
pullNoEffectMsg | thing.t[5489] |
pushNoEffectMsg | thing.t[5467] |
readDesc | thing.t[1951] |
recognizableInDark | thing.t[1011] |
remapActor | thing.t[4070] |
remapBehind | thing.t[2161] |
remapIn | thing.t[2141] |
remapOn | thing.t[2147] |
remapProps | thing.t[2132] |
remapUnder | thing.t[2154] |
roomContentsLister | thing.t[1095] |
roomPart | roomparts.t[164] |
roomPartDesc | roomparts.t[170] |
roomSubContentsLister | thing.t[1102] |
roomTitle OVERRIDDEN | thing.t[1014] |
searchListed | thing.t[1911] |
seen | thing.t[3621] |
seenProp | thing.t[3727] |
shouldBeBroken | thing.t[4728] |
shouldNotBreakMsg | thing.t[4747] |
shouldNotPourIntoMsg | thing.t[8401] |
shouldNotPourOntoMsg | thing.t[8404] |
sightSize | senseRegion.t[794] |
sitOnScore | thing.t[6601] |
By default we'll give each posture a score of 100, the normal logical verify score. Note that these scores have no effect if the corresponding can xxxOnMe property is nil.
smellDesc | thing.t[1954] |
smellDescWithoutSource | sensory.t[609] |
smellDescWithSource | sensory.t[603] |
smellNothingMsg | thing.t[4187] |
smellObj | sensory.t[702] |
smellSize | senseRegion.t[810] |
soundObj | sensory.t[705] |
soundSize | senseRegion.t[802] |
specialDesc | thing.t[1795] |
specialDescBeforeContents | thing.t[1833] |
specialDescListWith | thing.t[1836] |
specialDescOrder | thing.t[1824] |
stagingLocation | thing.t[6715] |
standOnScore | thing.t[6603] |
stateDesc | thing.t[1645] |
tasteDesc | thing.t[1975] |
throwFallsShortMsg | thing.t[7477] |
tooDarkToReadMsg | brightness.t[395] |
tooDarkToSeeMsg | thing.t[4159] |
tooFarAwayToHearMsg | senseRegion.t[962] |
tooFarAwayToReadMsg | senseRegion.t[981] |
tooFarAwayToSeeDetailMsg | senseRegion.t[907] |
tooFarAwayToSmellMsg | senseRegion.t[1036] |
totalWeight | weight.t[20] |
turnLastExamined | cmdhelp.t[873] |
turnLastMoved | cmdhelp.t[856] |
turnLastMovedInto | cmdhelp.t[857] |
turnNoEffectMsg | thing.t[4976] |
useInitSpecialDesc | thing.t[1816] |
useKey_ | thing.t[6257] |
useSpecialDesc | thing.t[1805] |
viaMode | thing.t[8543] |
visibleInDark | thing.t[2016] |
vocabLikelihood | thing.t[3873] |
weight | weight.t[17] |
weightCapacity | weight.t[38] |
withKeyMsg | thing.t[6184] |
wornBy | thing.t[2309] |
abcName (action, role) | english.t[2182] |
accumulateBrightness (maxBrightness) | brightness.t[326] |
Note that accumulateBrightness is provided to allow it to be readily overridden by game code, but is not designed to be directly called from game code, which should call it only via accumulatedBrightnessWithin();
accumulatedBrightnessWithin ( ) | brightness.t[296] |
actionMoveInto (newCont) | thing.t[2483], cmdhelp.t[863], roomparts.t[178], signals.t[275] |
Modified in cmdhelp.t[863]:
Modified for CMDHELP EXTENSION. Note the last turns on which this object was moved and on which something was moved into this object.
Modified in roomparts.t[178]:
We modify actionMoveInto here so that an action that results in moving an object (e.g. taking a picture that's notionally hanging on a wall) removes the association between the object and its room part. [MODIFIED FOR ROOMPARTS EXTENSION]
Modified in signals.t[275]:
emit a actmoveSignal or unlitSignal when this object moved as part of action handling. [SIGNALS EXTENSION]
actorAction ( ) | thing.t[3948] |
addToAllContents (vec, lst) | thing.t[3293] |
addToContents (obj, vec?) | thing.t[2430] |
afterAction ( ) | thing.t[3963] |
afterTravel (traveler, connector) | thing.t[3894] |
allContents ( ) | thing.t[3284] |
allowReachOut (obj) | thing.t[3488] |
aobjFor (Default) | tiaaction.t[382] |
beforeAction ( ) | thing.t[3956] |
beforeMovePushable (connector, dir) | thing.t[8728] |
beforeTravel (traveler, connector) | thing.t[3887] |
brightnessWithin ( ) | brightness.t[111] |
byRoom (arg) | thing.t[3987] |
canHear (obj) | thing.t[2572] |
cannotPushTravelMsg ( ) | thing.t[8650] |
cannotReachOutMsg (target) | thing.t[3529] |
canReach (obj) | thing.t[2578] |
canSee (obj) | thing.t[2569] |
canSmell (obj) | thing.t[2575] |
canTalkTo (other) | thing.t[3789] |
checkDisplay (prop) | thing.t[1766] |
checkForContradictions (tag, val) | factrel.t[728] |
checkInsert (obj) | thing.t[2106], weight.t[48] |
Modified in weight.t[48]:
Check whether obj can be inserted into us without exceeding our bulk and weight constraints. [WEIGHT EXTENSION]
checkPushTravel ( ) | thing.t[8660] |
checkReach (actor) | thing.t[3464] |
checkReachIn (actor, target?) | thing.t[3478] |
checkRemove (obj) | thing.t[2527] |
checkRoomToHold ( ) | thing.t[4502], weight.t[99] |
Modified in weight.t[99]:
Check whether the actor has the bulk and weight capacity to hold us. [WEIGHT EXTENSION]
checkSetting (val) | thing.t[7519] |
childLocType (child) | thing.t[2851] |
commonContainingParent (other) | thing.t[2870] |
commonInteriorParent (other) | thing.t[2909] |
containerPath (other) | thing.t[2954] |
containerPathBlock (other, inProp, outProp) | thing.t[3033] |
We trace the containment path, using traceContainerPath(). For each outbound container on the path, we evaluate the container's outProp property: if this is nil, we add that container to the blockage list. Next, if there's no common parent, we add the outermost room containing 'self' to the list. Next, we trace the inbound path, evaluating each container's inProp property: if nil, we add that container to the blockage list.
Finally, we return the blockage list. This is a vector giving all of the blockages we found, in the order we encountered them.
darkDesc ( ) | thing.t[1020] |
describeMovePushable (connector, dest) | thing.t[8791] |
describePushTravel (via) | thing.t[8807] |
directChildParent (other) | thing.t[2833] |
discover (stat, =, true) | thing.t[2256], signals.t[221] |
Modified in signals.t[221]:
emit a discoverSignal or undiscoverSignal when this object is discovered or undiscovered. SIGNALS EXTENSION]
display (prop) | thing.t[1682] |
displayAlt (prop, altMsg?) | thing.t[1731] |
This method is primarily for use with properties such as smellDesc and listenDesc for which alternatives may need to be displayed if they don't display anything.
dobjFor(AskAbout) | thing.t[9005] |
dobjFor(AskFor) | thing.t[9018] |
dobjFor(Attach) | thing.t[7698] |
dobjFor(AttachTo) | thing.t[7709] |
dobjFor(Attack) | thing.t[4637] |
dobjFor(AttackWith) | thing.t[4672] |
dobjFor(Board) | thing.t[6528], postures.t[281] |
Modified in postures.t[281]:
If an actor Boards something, we need to know what posture the actor ends up in; we use the new location's default posture. [MODIFIED FOR POSTURES EXTENSION]
dobjFor(Break) | thing.t[4730] |
dobjFor(Burn) | thing.t[6358] |
dobjFor(BurnWith) | thing.t[6368] |
dobjFor(Clean) | thing.t[7115] |
An object starts out with isClean = nil. Cleaning the object makes isClean true (at which point it doesn't need cleaning again).
If an object needs another object to be cleaned with (e.g. if in order to clean the window you need a wet sponge to clean it with), this can be defined by setting mustBeCleanedWith to an object or a list of objects that can be used to clean this direct object.
dobjFor(CleanWith) | thing.t[7171] |
dobjFor(Climb) | thing.t[6462] |
dobjFor(ClimbDown) | thing.t[6489] |
dobjFor(ClimbUp) | thing.t[6474] |
dobjFor(Close) | thing.t[4904] |
dobjFor(ConsultAbout) | thing.t[8253] |
dobjFor(Cut) | thing.t[5025] |
dobjFor(CutWith) | thing.t[5037] |
dobjFor(Default) | thing.t[4035] |
dobjFor(Detach) | thing.t[7745] |
dobjFor(DetachFrom) | thing.t[7759] |
dobjFor(Dig) | thing.t[7227] |
dobjFor(DigWith) | thing.t[7254] |
dobjFor(Doff) | thing.t[6427] |
dobjFor(Drink) | thing.t[7065] |
dobjFor(Drop) | thing.t[4546] |
dobjFor(Eat) | thing.t[7039] |
dobjFor(Enter) | thing.t[6660], postures.t[469] |
Modified in postures.t[469]:
When an actor enters something we need to determine what posture the actor ends up in. [MODIFIED FOR POSTURES EXTENSION]
dobjFor(EnterOn) | thing.t[8213] |
dobjFor(Examine) | thing.t[4077], senseRegion.t[862], cmdhelp.t[879] |
Modified in senseRegion.t[862]:
Modify the effect of Examine to show the remoteDesc if appropriate, or else our regular desc if our sightSize is large, or else a message to say we're too far away to see any detail. If we're in the same room as the actor, simply carry out the regular (inherited) method.
Modified in cmdhelp.t[879]:
Modified for CMDHELP EXTENSION. Note the last turn on which this object was examined.
dobjFor(Extinguish) | thing.t[7008] |
dobjFor(Fasten) | thing.t[7808] |
dobjFor(FastenTo) | thing.t[7836] |
dobjFor(Feel) | thing.t[4251] |
dobjFor(Flip) | thing.t[6343] |
dobjFor(Follow) | thing.t[4608] |
dobjFor(GetOff) | thing.t[6717], postures.t[308] |
Modified in postures.t[308]:
If an actor gets off something, we need to know what posture the actor ends up in. We use the new location's defaultPosture. [MODIFIED FOR POSTURES EXTENSION]
dobjFor(GetOutOf) | thing.t[6737], postures.t[489] |
Modified in postures.t[489]:
When an actor gets out of something we need to determine what posture the actor ends up in. We use the new location's default posture. [MODIFIED FOR POSTURES EXTENSION]
dobjFor(GiveTo) | thing.t[9112] |
dobjFor(GiveToImplicit) | thing.t[9213] |
dobjFor(GoAlong) | thing.t[5434] |
dobjFor(GoNear) | thing.t[9324] |
dobjFor(GoThrough) | thing.t[5417] |
dobjFor(GoTo) | thing.t[7570] |
dobjFor(JumpOff) | thing.t[8097] |
dobjFor(JumpOver) | thing.t[8132] |
dobjFor(Kiss) | thing.t[8037] |
dobjFor(LieIn) | thing.t[6706], postures.t[436] |
Modified in postures.t[436]:
LieIn is handled much like StandIn [MODIFIED FOR POSTURES EXTENSION]
dobjFor(LieOn) | thing.t[6572], postures.t[250] |
Modified in postures.t[250]:
Modification for LieOn handling [DEFINED IN POSTURES EXTENSION] If the actor is already on the dobj, we just try to change the actor's posture to lying. Otherwise we first move the actor to the dobj and then change the actor's posture to lying.
dobjFor(LieOn) | thing.t[6631] |
dobjFor(Light) | thing.t[6970] |
dobjFor(ListenTo) | thing.t[4189], senseRegion.t[916], sensory.t[642] |
Modified in senseRegion.t[916]:
Modify the effect of ListenTo to show the remoteListenDesc if appropriate, or else our regular listenDesc if our soundSize is large, or else a message to say we're too far away to hear. If we're in the same room as the actor, simply carry out the regular (inherited) method.
Modified in sensory.t[642]:
[MODIFIED FOR SENSORY EXTENSION] If I have an associated Noise object which isn't emanating, assume I have fallen silent, otherwise carry out the inherited handling.
dobjFor(Lock) | thing.t[6105] |
dobjFor(LockWith) | thing.t[5958] |
dobjFor(LookBehind) | thing.t[5298] |
dobjFor(LookIn) | thing.t[5086] |
dobjFor(LookThrough) | thing.t[5394] |
dobjFor(LookUnder) | thing.t[5208] |
dobjFor(Move) | thing.t[6821] |
dobjFor(MoveTo) | thing.t[6904] |
This might be useful, say, if you wanted the player to have to MOVE the chair TO the bookcase before being able to reach the top shelf by standing on the chair, since you could then check the value of the chair's movedTo property before deciding whether the top shelf was accesssible.
dobjFor(MoveWith) | thing.t[6841] |
dobjFor(Open) | thing.t[4825] |
dobjFor(PlugIn) | thing.t[8006] |
dobjFor(PlugInto) | thing.t[7934] |
dobjFor(Pour) | thing.t[8289] |
dobjFor(PourInto) | thing.t[8348] |
dobjFor(PourOnto) | thing.t[8299] |
dobjFor(Pull) | thing.t[5472] |
dobjFor(Purloin) | thing.t[9256] |
dobjFor(Push) | thing.t[5451] |
dobjFor(PushTravelClimbDown) | thing.t[8961] |
dobjFor(PushTravelClimbUp) | thing.t[8937] |
dobjFor(PushTravelDir) | thing.t[8569] |
dobjFor(PushTravelEnter) | thing.t[8859] |
dobjFor(PushTravelGetOutOf) | thing.t[8897] |
dobjFor(PushTravelThrough) | thing.t[8828] |
dobjFor(PutBehind) | thing.t[5756] |
dobjFor(PutIn) | thing.t[5572] |
dobjFor(PutOn) | thing.t[5499] |
dobjFor(PutUnder) | thing.t[5663] |
dobjFor(QueryAbout) | thing.t[9066] |
dobjFor(Read) | thing.t[4579], senseRegion.t[969], brightness.t[382] |
Modified in senseRegion.t[969]:
Modify the effect of a Read action to prevent this item being read from a remote location unless isReadableFrom(gActor) is true.
Modified in brightness.t[382]:
If the available light is less than the light we need to read this item (its brightnessForReading) then stop the read action at the check stage by displaying our tooDarkToReadMsg.
dobjFor(Remove) | thing.t[6771] |
dobjFor(SayTo) | thing.t[9046] |
dobjFor(Screw) | thing.t[8418] |
dobjFor(ScrewWith) | thing.t[8428] |
dobjFor(Search) | thing.t[6807] |
dobjFor(Set) | thing.t[8154] |
dobjFor(SetTo) | thing.t[7530] |
dobjFor(ShowTo) | thing.t[9153] |
dobjFor(ShowToImplicit) | thing.t[9185] |
dobjFor(SitIn) | thing.t[6705], postures.t[404] |
Modified in postures.t[404]:
SitIn is handled much like StandIn [MODIFIED FOR POSTURES EXTENSION]
dobjFor(SitOn) | thing.t[6571], postures.t[219] |
Modified in postures.t[219]:
Modification for SitOn handling [DEFINED IN POSTURES EXTENSION] If the actor is already on the dobj, we just try to change the actor's posture to sitting. Otherwise we first move the actor to the dobj and then change the actor's posture to sitting.
dobjFor(SitOn) | thing.t[6618] |
dobjFor(SmellSomething) | thing.t[4170], senseRegion.t[990], sensory.t[663] |
Modified in senseRegion.t[990]:
Modify the effect of SmellSomething to show the remoteSmellDesc if appropriate, or else our regular smellDesc if our smellSize is large, or else a message to say we're too far away to smell. If we're in the same room as the actor, simply carry out the regular (inherited) method.
Modified in sensory.t[663]:
[MODIFIED FOR SENSORY EXTENSION] If I have an associated Odor object which isn't emanating, assume I no longer smell of anything, otherwise carry out the inherited handling.
dobjFor(StandIn) | thing.t[6704], postures.t[354] |
Modified in postures.t[354]:
[MODIFIED FOR POSTURES EXTENSION]
dobjFor(StandOn) | thing.t[6570], postures.t[182] |
Modified in postures.t[182]:
Modification for StandOn handling [DEFINED IN POSTURES EXTENSION] If the actor is already on the dobj, we just try to change the actor's posture to standing. Otherwise we first move the actor to the dobj and then change the actor's posture to standing.
dobjFor(StandOn) | thing.t[6605] |
dobjFor(Strike) | thing.t[4719] |
dobjFor(SwitchOff) | thing.t[6290] |
dobjFor(SwitchOn) | thing.t[6261] |
dobjFor(SwitchVague) | thing.t[6317] |
dobjFor(Take) | thing.t[4280] |
dobjFor(TakeFrom) | thing.t[7289] |
dobjFor(TakeFrom) | thing.t[7291] |
dobjFor(TalkAbout) | thing.t[9079] |
dobjFor(TalkTo) | thing.t[9092] |
dobjFor(Taste) | thing.t[4213] |
dobjFor(TellAbout) | thing.t[9032] |
dobjFor(Throw) | thing.t[6502] |
dobjFor(ThrowAt) | thing.t[7376] |
dobjFor(ThrowDir) | thing.t[4752] |
dobjFor(ThrowTo) | thing.t[7441] |
dobjFor(Turn) | thing.t[4951] |
dobjFor(TurnTo) | thing.t[7486] |
dobjFor(TurnWith) | thing.t[4978] |
dobjFor(TypeOn) | thing.t[8186] |
dobjFor(TypeOnVague) | thing.t[8176] |
dobjFor(Unfasten) | thing.t[7869] |
dobjFor(UnfastenFrom) | thing.t[7885] |
dobjFor(Unlock) | thing.t[6029] |
dobjFor(UnlockWith) | thing.t[5869] |
dobjFor(Unplug) | thing.t[8017] |
dobjFor(UnplugFrom) | thing.t[7970] |
dobjFor(Unscrew) | thing.t[8454] |
dobjFor(UnscrewWith) | thing.t[8464] |
dobjFor(Wear) | thing.t[6398] |
dobjFor(WriteOn) | thing.t[8231] |
doPushTravel (via) | thing.t[8674] |
examineStatus ( ) | thing.t[1651] |
filterResolveList (np, cmd, mode) OVERRIDDEN | senseRegion.t[1067] |
findHidden (prop, prep) | thing.t[5180] |
findPlausibleKey (silent, =, nil) | thing.t[6191] |
firstContainerPathBlock (other, inProp, outProp) | thing.t[3054] |
forget (tag) | thing.t[3749] |
getBulkWithin ( ) | thing.t[2077] |
getCarriedBulk ( ) | thing.t[2090] |
getCarriedWeight ( ) | weight.t[32] |
getStatuslineExitsHeight ( ) | thing.t[1603] |
getWeightWithin ( ) | weight.t[23] |
handleCommand (action) | thing.t[3923] |
hasSeen (obj) | thing.t[3681] |
hideFromAll (action) | thing.t[3981] |
It shouldn't be necessary to use this method very often, since the normal approach will be to override the getAll() method on the appropriate action. It may be useful to use this method to handle exceptional cases, however.
informedAbout (tag) | thing.t[3761] |
interiorParent ( ) | thing.t[2793] |
iobjFor(AttachTo) | thing.t[7721] |
iobjFor(AttackWith) | thing.t[4696] |
iobjFor(BurnWith) | thing.t[6384] |
iobjFor(CleanWith) | thing.t[7211] |
iobjFor(CutWith) | thing.t[5050] |
iobjFor(Default) | thing.t[4043] |
iobjFor(DetachFrom) | thing.t[7775] |
iobjFor(DigWith) | thing.t[7264] |
iobjFor(FastenTo) | thing.t[7848] |
iobjFor(GiveTo) | thing.t[9134] |
iobjFor(LockWith) | thing.t[6008] |
iobjFor(MoveTo) | thing.t[6938] |
iobjFor(MoveWith) | thing.t[6871] |
iobjFor(PlugInto) | thing.t[7949] |
iobjFor(PourInto) | thing.t[8372] |
iobjFor(PourOnto) | thing.t[8326] |
iobjFor(PushTravelClimbDown) | thing.t[8969] |
iobjFor(PushTravelClimbUp) | thing.t[8945] |
iobjFor(PushTravelEnter) | thing.t[8869] |
iobjFor(PushTravelGetOutOf) | thing.t[8911] |
iobjFor(PushTravelThrough) | thing.t[8836] |
iobjFor(PutBehind) | thing.t[5792], weight.t[201] |
Modified in weight.t[201]:
Modifications to PutBehind handling to check for weight hidden behind this item. [WEIGHT EXTENSION]
iobjFor(PutIn) | thing.t[5608], weight.t[159] |
Modified in weight.t[159]:
Modifications to PutIn handling to check for weight hidden inside this item. [WEIGHT EXTENSION]
iobjFor(PutOn) | thing.t[5542] |
iobjFor(PutUnder) | thing.t[5700], weight.t[180] |
Modified in weight.t[180]:
Modifications to PutUnder handling to check for weight hidden under this item. [WEIGHT EXTENSION]
iobjFor(ScrewWith) | thing.t[8438] |
iobjFor(ShowTo) | thing.t[9166] |
iobjFor(TakeFrom) | thing.t[7344] |
iobjFor(ThrowAt) | thing.t[7402], senseRegion.t[1039] |
Modified in senseRegion.t[1039]:
Modify the effects of throwing something at this object
iobjFor(ThrowTo) | thing.t[7455] |
iobjFor(TurnWith) | thing.t[5002] |
iobjFor(UnfastenFrom) | thing.t[7900] |
iobjFor(UnlockWith) | thing.t[5938] |
iobjFor(UnplugFrom) | thing.t[7984] |
iobjFor(UnscrewWith) | thing.t[8474] |
isAudibleFrom (pov) | senseRegion.t[766] |
isChild (obj, typ) | thing.t[2591] |
'typ' is a LocType giving the relationship to test for, or nil. If it's nil, we'll return true if we have any containment relationship to 'obj'.
isDirectChild (obj, typ) | thing.t[2610] |
isDirectlyHeldBy (obj) | thing.t[2318] |
isDirectlyIn (cont) | thing.t[2625] |
isDirectlyWornBy (obj) | thing.t[2335] |
isHeldBy (obj) | thing.t[3140] |
isIlluminated ( ) | thing.t[1044], brightness.t[341] |
Modified in brightness.t[341]:
[BRIGHTNESS EXTENSION]
Change the definition of having sufficient light to see by to have an accumulated brightess within greater than our illumination threshold. We only do this if the light probe is off-stage, however, since otherwise we'll cause a stack overflow via a circular reference while the brightnessWithin is being calculated; if the lightProbe_ is in use we accordingly fall back on the inherited handling. (This will need looking at since it prevents recogition of a light source in a remote location in the same SenseRegion).
isIn (cont) | thing.t[2640] |
isInterior (obj) | thing.t[2811] |
isOrIsIn (cont) | thing.t[2655] |
isOutside (obj) | thing.t[3132] |
isReadableFrom (pov) | senseRegion.t[782] |
isSmellableFrom (pov) | senseRegion.t[773] |
isThereALightSourceIn (lst) | thing.t[1065] |
isVisibleFrom (pov) | senseRegion.t[758] |
isWornBy (obj) | thing.t[2328] |
knowsAbout (obj) | thing.t[3688] |
listableContentsOf (cont) | thing.t[1983] |
listContents (lister, =, &, roomContentsLister) | thing.t[1170] |
listenDesc ( ) | sensory.t[617] |
listRemoteContents (lst, lister, pov) | senseRegion.t[598] |
listSubcontentsOf (contList, lister, =, &, examineLister) | thing.t[1351] |
litWithin ( ) | thing.t[3573], brightness.t[353] |
Modified in brightness.t[353]:
For the purposes of the BRIGHTNESS EXTENSION, litWithin() should return the same result as isIlluminated.
locationWhich (func) | thing.t[3327] |
locType ( ) | thing.t[3089] |
lookAroundWithin ( ) | thing.t[1110] |
makeCleaned (stat) | thing.t[7153] |
makeFastened (stat) | thing.t[7806] |
makeLit (stat) | thing.t[2010], english.t[2161], signals.t[211] |
Modified in english.t[2161]:
Check whether we need to add or remove the LitUnlit State from our list of states.
Modified in signals.t[211]:
emit a litSignal or unlitSignal when this object is lit or unlit. [SIGNALS EXTENSION]
makeLocked (stat) | thing.t[2286], signals.t[231] |
Modified in signals.t[231]:
emit a lockSignal or unlockSignal when this object is locked or unlocked. [SIGNALS EXTENSION]
makeMovedTo (loc) | thing.t[6933] |
makeOn (stat) | thing.t[2300], signals.t[241] |
Modified in signals.t[241]:
emit an onSignal or offSignal when this object is turned on or off [SIGNALS EXTENSION]
makeOpen (stat) | thing.t[4805], signals.t[297] |
Modified in signals.t[297]:
emit an openSignal or closeSignal when this object is open or closed. [SIGNALS EXTENSION]
makeSetting (val) | thing.t[7557] |
makeWorn (stat) | thing.t[2315], signals.t[251] |
Modified in signals.t[251]:
emit a wornSignal or doffSignal when this object is worn or doffed (taken off). [SIGNALS EXTENSION]
markContradiction (tag, factList) | factrel.t[762] |
moveHidden (prop, loc) | thing.t[4483] |
moveInto (newCont) | thing.t[2458], signals.t[264] |
Modified in signals.t[264]:
emit a moveSignal when this object is moved. [SIGNALS EXTENSION]
moveMLIntoAdd (ml) | thing.t[2545] |
moveMLOutOf (ml) | thing.t[2559] |
nestedLoc (actor) | postures.t[515] |
nominalOwner ( ) | thing.t[3238] |
noteSeen ( ) | thing.t[3632], signals.t[286] |
Modified in signals.t[286]:
emit a seenSignal or unlitSignal when this object is seen. [SIGNALS EXTENSION]
notifyContradiction (fact, factList) | factrel.t[792] |
notifyEvent (event, source) | sensory.t[583] |
notifyInsert (obj) | thing.t[2537] |
notifyRemove (obj) | thing.t[2517] |
notifySightEvent (event, source) | sensory.t[573] |
notifySmellEvent (event, source) | sensory.t[570] |
notifySoundEvent (event, source) | sensory.t[567] |
notionalContents ( ) | thing.t[2170] |
outermostParent ( ) | thing.t[3126] |
outermostVisibleParent ( ) | thing.t[3061] |
ownedBy (obj) | thing.t[3262] |
We return true if 'obj' is an explicit owner, OR self is contained within 'obj', OR self is contained within an object owned by 'obj'. (The latter case is for things like BOB'S TWENTY DOLLAR BILL, which is Bob's by virtue of being inside a wallet explicitly owned by Bob.)
preAction (lst) | thing.t[3939] |
preinitThing ( ) | thing.t[2682] |
pushTravelRevealItems ( ) | thing.t[8625] |
reachBlockedMsg (target) | thing.t[3505] |
remoteBrightness (pov) | brightness.t[102] |
Our remote brightness when viewed from pov, where pov is in a remote location. By default we just return our brightness, but game code may wish to override when, for example, we're a torch/flashlight that's been dropped on the far side of a field at night.
remoteInitSpecialDesc (pov) | senseRegion.t[751] |
remoteObjInName (pov) | senseRegion.t[853] |
remoteSpecialDesc (pov) | senseRegion.t[744] |
removeFromContents (obj, vec?) | thing.t[2444] |
revealOnMove ( ) | thing.t[4376] |
Note that we don't provide any handling for the hiddenIn property here, on the assumption that items hidden in something may well stay there when it's moved; but this method can always be overridden to provide custom behaviour.
roomHeadline (pov) | thing.t[992] |
// roomSubhead (pov) Interface description only | thing.t[3164], english.t[2146], postures.t[509] |
We leave this to the language library to define, since the exact syntax varies by language.
Modified in english.t[2146]:
Show the nested room subhead. This shows the actor's immediate container as an addendum to the room name in the room description headline.
[Required]
Modified in postures.t[509]:
Include the actor's posture in the subheading (e.g. '(sitting on the chair)') [MODIFIED FOR POSTURES EXTENSION]
sayCantBearMoreWeight (obj) | weight.t[86] |
sayDontKnowHowToGetThere ( ) | thing.t[7678] |
sayDontKnowHowToReach ( ) | thing.t[7681] |
sayFindHidden (prop, prep) | thing.t[5194] |
sayPushTravel (dir) | thing.t[8617] |
sayTooHeavy (obj) | weight.t[76] |
sayTooHeavyToHide (obj, insType) | weight.t[222] |
scoreObject (cmd, role, lst, m) | thing.t[3844] |
Our job here is to read the player's mind. The question before us is: did the player mean *this* object when typing this noun phrase? Obviously we can't really know what's in the player's mind, but in many cases we can make an educated guess based on what ought to make the most sense in context. The context in this case is the state of the simulated game world, as it's portrayed to the player. That last bit is important: be cognizant of what the player is *meant* to know at this point. DON'T base the score on information that the player isn't supposed to know, though: that could give away secrets that the player is meant to discover on her own.
Before this routine is called, the Action has already assigned an initial score to each object, but this routine can override the initial score by assigning its own score value. This routine is most useful in cases where a particular object has a special affinity for a verb, or for the verb in combination with particular other objects involved in the command.
'cmd' is the Command object. 'role' is the noun phrase's role in the command (DirectObject, IndirectObject, etc). 'lst' is a list of NPMatch objects identifying the objects that matched the noun phrase. 'm' is the NPMatch object for self.
To override or adjust the score, simply set m.score to the new value. This routine is also free to override the scores of any other objects in the list, if needed.
By default, we don't make any adjustment - we simply accept the initial score calculated by the Action, by leaving m.score unchanged.
See Action.scoreObjects() for full details.
setHasSeen (obj) | thing.t[3675] |
setInformed (tag, val?) | thing.t[3737], beliefcalcs.t[283], factrel.t[712] |
setKnown ( ) | thing.t[3672] |
setKnowsAbout (obj, val?) | thing.t[3656] |
setSeen ( ) | thing.t[3678] |
shinesOut ( ) | thing.t[3546] |
showConnectedMiscContents (pov) | thing.t[1566] |
showFirstConnectedSpecials (pov) | thing.t[1565] |
showRemoteSpecialDesc (pov) | senseRegion.t[566] |
showSecondConnectedSpecials (pov) | thing.t[1567] |
showSpecialDesc ( ) | thing.t[1840] |
showStatuslineExits ( ) | thing.t[1612] |
smellDesc ( ) | sensory.t[591] |
statusName (actor) | thing.t[1581] |
By long-standing convention, each location in a game usually has a distinctive name that's displayed here. Players usually find these names helpful in forming a mental map of the game.
By default, if we have an enclosing location, and the actor can see the enclosing location, we'll defer to the location. Otherwise, we'll display our roo interior name.
totalBulkIn (lst) | thing.t[2236] |
totalWeightIn (lst) | weight.t[146] |
traceContainerPath (other, outFunc, parentFunc, inFunc) | thing.t[2989] |
We'll start by working up the containment tree from 'self' to the nearest interior container we have in common with 'other' - that is, the nearest object that contains both 'self' and 'other' with an interior location type for each object. For each container BELOW the common parent, we call outFunc(container).
Next, we call parentFunc(container) on the common container. If there is no common container, we call parentFunc(nil).
Next, we work back down the containment tree from the common parent to 'other'. For each container below the common parent, we call inFunc(container).
travelVia (conn, announceArrival, =, true) | thing.t[3901] |
tryCheck (prop) | thing.t[3309] |
tryMakingPosture (pos) | postures.t[140] |
unmention (lst) | thing.t[1547] |
unmentionRemoteContents ( ) | thing.t[1564] |
verifyActor ( ) | thing.t[4059] |
verifyEnterPosture (pos) | postures.t[328] |
verifyPushTravel (via) | thing.t[8505] |
wouldBeLitFor (actor) | thing.t[1621] |