Query Defaults. This provides the default handlers for all query methods. These are the results that you get using the basic adventure game "physics" model to answer the questions, ignoring any special exceptions defined by the game.
This is the lowest-ranking Special object, and is always active.
QDefaults : Special
Superclass Tree (in declaration order)
QDefaults
Special
object
Summary of Properties
active
priority
Inherited from Special
:
all
allActive_
Summary of Methods
canHear
canReach
canSee
canSmell
canTalkTo
canThrowTo
inLight
knownScopeList
reachBlocker
reachProblem
reachProblemCheck
reachProblemVerify
scentBlocker
scopeList
sightBlocker
soundBlocker
topicScopeList
Inherited from Special
:
allActive
classInit
first
next
Properties
this is the defaults object, so it's always active
this is the defaults object, so it has the lower priority
Methods
Can A hear B? We return true if there's a clear sound path from A to B.
Can we reach from A to B? We return true if there's a clear reach path from A to B, which we take to be the case if we can't find any problems in reaching from A to B.
Can A see B? We return true if and only if B is in light and there's a clear sight path from A to B. Also A can't see B is B is explicitly hidden.
Can A smell B? We return true if there's a clear scent path from A to B.
Determine if A can talk to B. In the base situation A can talk to B if A can hear B.
Determine if A can throw something to B. In the base situation A can throw to B if A can reach B.
Is A in the light? This determines if there's light shining on the exterior surface of A.
Get a list of all objects that are known to the player char
Determine if A can reach B, and if not, what stands in the way. Returns a list of containers along the path between A and B that obstruct the reach. If the two objects are in separate rooms, the top-level room containing A is in the list to represent the room separation. If there's no obstruction, we return an empty list.
Determine if there is anything preventing or hindering A from reaching B; if so return a ReachProblem object describing the problem in a way that a check or verify routine can act on (possibly with an implicit action to remove the problem). If not, return an empty list.
NOTE: if you provide your own version of this method on a Special it must return either an empty list (to indicate that there are no problems with reaching from A to B) or a list of one or more ReachProblem objects describing what is preventing A from reaching B.
Your own Special should normally leave reachProblem() alone and override reachProblemVerify() and/or reachProblemCheck().
Return our list of issues.
Return a list of reach issues that might occur at the verify stage.
Determine if A can smell B, and if not, what stands in the way. Returns a list of obstructions to scent between A and B. If the two objects are in separate rooms, the outermost room containing A represents the room separation. If there are no obstructions, returns an empty list.
Get the list of objects that are in scope for the given actor. Returns a ScopeList object containing the scope. You can convert the ScopeList to an ordinary list of objects via toList().
Determine if there's anything blocking the sight path from A to B. Returns a list of objects blocking sight; if there's no obstruction, returns an empty list. If the two objects are in separate rooms, the outermost room containing 'a' represents the room separation. If there's no obstruction, returns an empty list.
Determine if A can hear B, and if not, what stands in the way. We return a list of the obstructions to sound between A and B. If the two objects are in separate rooms, the top level room containing A represents the room separation. If there are no sound obstructions, returns an empty list.
Get a list of all known mentionable objects, which we assume will include both known Things and known Topics
Adv3Lite Library Reference Manual
Generated on 25/04/2024 from adv3Lite version 2.0