AgainAction class | actions.t[70]

Special "again" action. This command repeats the previous command.

`DefineIAction(Again) // original source text`
`class AgainAction : IAction // after macro expansion`

Superclass Tree (in declaration order)

`AgainAction`
`IAction`
`Action`
`BasicProd`
`object`

Subclass Tree

`AgainAction`
`predicate(Again)`

Global Objects

(none)

Summary of Properties

`actionTime includeInUndo isRepeatable lastAction lastIssuingActor lastTargetActor lastTargetActorPhrase`

``

Inherited from `Action` :
`afterActionMainList beforeAfterObjs defaultForRecursion extraMessageParams implicitMsg isImplicit iterationCanceled originalAction parentAction preCond predicateNounPhrases pronounOverride remappedFrom showDefaultReports synthParamID verbFlags verifiedOkay`

Inherited from `BasicProd` :
`firstTokenIndex isSpecialResponseMatch lastTokenIndex`

Summary of Methods

`clearForAgain doAction saveForAgain`

Inherited from `IAction` :
`doActionMain resolveNouns`

Inherited from `Action` :
`actionOfKind addBeforeAfterObj afterAction afterActionMain announceActionObject announceAllDefaultObjects announceDefaultObject beforeAction beforeActionMain cacheMultiObjectAnnouncements callAfterActionMain callCatchAllProp callPreConditions callVerifyPreCond callVerifyProp cancelIteration checkAction checkPreConditions checkRemapping combineRemappedVerifyResults createActionFrom createActionInstance createTopicQualifierResolver doActionOnce execAction filterAmbiguousWithVerify filterFacets filterPluralWithVerify finishResolveList getAnaphoricBinding getCurrentObjects getDefaultWithVerify getEnteredVerbPhrase getImplicitPhrase getInfPhrase getMatchForRole getMessageParam getNotifyTable getObjectForRole getObjPreCondDescList getObjPreConditions getObjResponseProd getOriginalAction getOrigTokenList getOtherObjectRole getParticiplePhrase getPreCondDescList getPreCondPropForRole getPredicate getPronounOverride getQuestionInf getRemappedFrom getRemapPropForRole getResolvedObjList getResolveInfo getRoleFromIndex getSimpleSynonymRemap getSortedVerifyResults getVerbPhrase getVerifyPropForRole initTentative isConversational isNestedIn isPartOf isRemapped makeResolveInfo makeResolveInfoList maybeAnnounceDefaultObject maybeAnnounceImplicit maybeAnnounceMultiObject noMatch notifyBeforeAfter objListPronoun preAnnounceActionObject recalcSenseContext repeatAction resetAction resolveAction resolvedObjectsInScope runBeforeNotifiers saveActionForAgain setCurrentObjects setImplicit setMessageParam setMessageParams setNested setObjectMatches setOriginalAction setPronounOverride setRemapped setResolvedObjects spPrefix spSuffix synthMessageParam verifyAction verifyHandlersExist whatObj whatTranslate withVerifyResults zeroActionTime`

Inherited from `BasicProd` :
`canResolveTo getOrigText setOrigTokenList`

Properties

`actionTime` OVERRIDDEN | `actions.t[172]`

this command itself consumes no time on the game clock (although the action we perform might)

`includeInUndo` OVERRIDDEN | `actions.t[78]`

the undo command itself is not undoable (but the underlying command that we repeat might be)

`isRepeatable` OVERRIDDEN | `actions.t[72]`

for obvious reasons, 'again' is not itself repeatable with 'again'

`lastAction` | `actions.t[84]`

no description available

`lastIssuingActor` | `actions.t[81]`

information on the most recent command

`lastTargetActor` | `actions.t[82]`

no description available

`lastTargetActorPhrase` | `actions.t[83]`

no description available

Methods

`clearForAgain ( )` | `actions.t[97]`

forget the last command, so that AGAIN cannot be used

`doAction (issuingActor, targetActor, targetActorPhrase, countsAsIssuerTurn)`OVERRIDDEN | `actions.t[107]`

Execute the 'again' command. This action is special enough that we override its entire action processing sequence - this is necessary in case we're repeating another special command, such as 'again', and in any case is desirable because we don't want 'again' to count as a command in its own right; it's essentially just a macro that we replace with the original command.

`saveForAgain (issuingActor, targetActor, targetActorPhrase, action)` | `actions.t[87]`

save the most recent command so that it can be repeated if desired

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