TIAction class | action.t[2226], english.t[5892]

A TIAction is an action that applies to both a direct object and an indirect object. Since it inherits from TAction we only need to define the additional methods and properties relating to the handling of indirect objects.

Modified in english.t[5892]:
return the complete phrase string

`class TIAction : TAction`

Superclass Tree (in declaration order)

`TIAction`
`TAction`
`Action`
`ReplaceRedirector`
`Redirector`
`object`

Subclass Tree

`TIAction`
`TIAAction`

Global Objects

`AttachTo AttackWith BurnWith CleanWith CutWith DetachFrom DigWith DoNothing FastenTo GiveTo LockWith MoveAwayFrom MoveTo MoveWith PlugInto PourInto PourOnto PushTravelClimbDown PushTravelClimbUp PushTravelEnter PushTravelGetOutOf PushTravelThrough PutBehind PutIn PutOn PutUnder ScrewWith ShowTo TakeFrom ThrowAt ThrowTo TurnWith UnfastenFrom UnlockWith UnplugFrom UnscrewWith`

Summary of Properties

`actionIobjProp checkIobjProp curIobj ioActionList preCondIobjProp resolveIobjFirst verIobjProp`

Inherited from `TAction` :
`actionList announceMultiAction announceMultiCheck announceMultiVerify aqinfo combineDuplicateObjects curDobj curObj dqinfo gActor haltOnMessageInCheck iqinfo lastVerifyMsg reportFailureAfterSuccess reportList signal verifyTab`

Inherited from `Action` :
`actionFailed advanceOnFailure againRepeatsParse allowAll extraMessageParams failCheckMsg failedActionCountsAsTurn implicitTimeTaken includeInUndo isConversational isImplicit isRepeatable oldRoom parentAction parentAllowAll preCond redirectParent reportImplicitActions scopeList spellingPriority synthParamID timeTaken turnsTaken unhides verbRule verifyObj wasIlluminated`

``

``

Summary of Methods

`checkAction doActionOnce execAction execResolvedAction getMessageParam getVerbPhrase getVerbPhrase2 mmAction mmCheck reportAction reset resolvedObjectsInScope setResolvedObjects`

Inherited from `TAction` :
`addVerifyResult check checkPreCond doAction execCycle getAll getVerbPhrase1 makeScopeUniversal vPhrase`

Inherited from `Action` :
`acknowledgeNotifyStatus addExtraScopeItems addImplicitTime advanceTime afterAction announceObject beforeAction buildImplicitActionAnnouncement buildScopeList checkActionPreconditions commandNotPresent exec execGroup getAllUnhidden getPostImplicitReports implicitAnnouncement scoreObjects setMessageParam setMessageParams spPrefix spSuffix synthMessageParam turnSequence verify verifyObjRole wrapObjectsNP`

Inherited from `ReplaceRedirector` :
`redirect`

Inherited from `Redirector` :
`askMissingLiteral doInstead doNested doOtherAction`

Properties

`actionIobjProp` | `action.t[2235]`

no description available

`checkIobjProp` | `action.t[2234]`

no description available

`curIobj` | `action.t[2229]`

The current indirect object of this action.

`ioActionList` | `action.t[2242]`

A list of the indirect objects that this actually actually ends up acting on at the action stage.

`preCondIobjProp` | `action.t[2236]`

no description available

`resolveIobjFirst` | `action.t[2248]`

Flag: should we resolve the indirect object of this action before the direct object?

`verIobjProp` | `action.t[2233]`

The various methods to call on the indirect object of this action.

Methods

`checkAction (cmd)`OVERRIDDEN | `action.t[2281]`

execute the resolved action.

`doActionOnce ( )`OVERRIDDEN | `action.t[2453]`

Execute the action phase of the action on both objects. Note that although some TIActions can operate on multiple direct objects, none defined in the library acts on multiple indirect objects, so there's only minimal support for the latter possibility.

`execAction (cmd)`OVERRIDDEN | `action.t[2259]`

execute this action.

`execResolvedAction ( )`OVERRIDDEN | `action.t[2380]`

Execute this action as a resolved action, that is once its direct and indirect objects are known.

`getMessageParam (objName)`OVERRIDDEN | `action.t[2361]`

Get the message parameters relating to this action

`getVerbPhrase (inf, ctx)`OVERRIDDEN | `english.t[5894]`

get the verb phrase in infinitive or participle form

`getVerbPhrase2 (inf, vp, dobjText, dobjIsPronoun, iobjText)` | `english.t[5929]`

Get the verb phrase for a two-object (dobj + iobj) phrasing. This is a class method, so that it can be reused by unrelated (i.e., non-TIAction) classes that also use two-object syntax but with other internal structures. This is the two-object equivalent of TAction.getVerbPhrase1().

`mmAction (dobj, iobj)` | `action.t[2567]`

no description available

`mmCheck (dobj, iobj)` | `action.t[2566]`

These three methods so nothing by default, but provide hooks for implementing multimethod TIAction handling. The idea is that in code that makes use of this they would call verifyWhateveAction, checkWhateverAction and ActionWhateverAction multimethod functions (depending on the particular action.

`reportAction ( )`OVERRIDDEN | `action.t[2344]`

Carry out the report phase for this action. If there's anything in the ioActionList and we're not an implicit action, call the report method on the indirect object. Then carry out the inherited handling (which does the same on the direct object). Note that this method is called by the current Command object once its finished iterating over all the objects involved in the command.

`reset ( )`OVERRIDDEN | `action.t[2251]`

Reset the action variables to their initial state.

`resolvedObjectsInScope ( )`OVERRIDDEN | `action.t[2328]`

Test whether both the direct and the indirect objects for this action are in scope.

`setResolvedObjects (dobj, iobj)`OVERRIDDEN | `action.t[2318]`

Set the resolved objects for this action.

Adv3Lite Library Reference Manual
Generated on 26/02/2025 from adv3Lite version 2.2