PushTravelActionclassactions.t[2894]

Combined pushing-and-traveling action ("push crate north", "drag sled into cave"). All of these are based on a base action class, which defines the methods invoked on the object being pushed; the subclasses provide a definition of the connector that determines where the travel takes us.

DefineTAction(PushTravel)      // original source text
class PushTravelAction :   TAction      // after macro expansion

Superclass Tree   (in declaration order)

PushTravelAction
        TAction
                Action
                        BasicProd
                                object
                Resolver
                        object

Subclass Tree  

PushTravelAction
        PushTravelDirAction
                predicate(PushTravelDir)
                PushAftAction
                PushDownAction
                PushEastAction
                PushForeAction
                PushInAction
                PushNorthAction
                PushNortheastAction
                PushNorthwestAction
                PushOutAction
                PushPortAction
                PushSouthAction
                PushSoutheastAction
                PushSouthwestAction
                PushStarboardAction
                PushUpAction
                PushWestAction
        PushTravelViaIobjAction
                PushTravelClimbDownAction
                        predicate(PushTravelClimbDown)
                PushTravelClimbUpAction
                        predicate(PushTravelClimbUp)
                PushTravelEnterAction
                        predicate(PushTravelEnter)
                PushTravelGetOutOfAction
                        predicate(PushTravelGetOutOf)
                PushTravelThroughAction
                        predicate(PushTravelThrough)

Global Objects  

(none)

Summary of Properties  

Inherited from TAction :
actionAllowsAll  actionDobjProp  actor_  askDobjResponseProd  checkDobjProp  dobjCur_  dobjInfoCur_  dobjList_  dobjMatch  dobjResolver_  issuer_  preCondDobjProp  predicateNounPhrases  remapDobjProp  verDobjProp  whichMessageObject 

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

Inherited from BasicProd :
firstTokenIndex  isSpecialResponseMatch  lastTokenIndex 

Inherited from Resolver :
action_  equivs_  isGlobalScope  isSubResolver  scope_  whichObject 

Summary of Methods  

performTravel 

Inherited from TAction :
adjustDefaultObjectPrep  announceAllDefaultObjects  announceDefaultObject  canDobjResolveTo  checkAction  checkRemapping  construct  createDobjResolver  createForMissingDobj  createForRetry  doActionMain  execAction  filterAmbiguousDobj  filterPluralDobj  getAllDobj  getCurrentObjects  getDefaultDobj  getDobj  getDobjCount  getDobjFlags  getDobjInfo  getDobjResolver  getDobjTokens  getDobjWords  getMatchForRole  getMessageParam  getObjectForRole  getObjResponseProd  getPreCondDescList  getPreCondPropForRole  getQuestionInf  getRemapPropForRole  getResolvedDobjList  getResolvedObjList  getResolveInfo  getRoleFromIndex  getVerbPhrase  getVerbPhrase1  getVerifyPropForRole  initForMissingDobj  initResolver  initTentative  resetAction  resolvedObjectsInScope  resolveNouns  retryWithAmbiguousDobj  retryWithMissingDobj  setCurrentObjects  setObjectMatches  setResolvedDobj  setResolvedObjects  testRetryDefaultDobj  verifyAction  whatObj 

Inherited from Action :
actionOfKind  addBeforeAfterObj  afterAction  afterActionMain  announceActionObject  beforeAction  beforeActionMain  cacheMultiObjectAnnouncements  callAfterActionMain  callCatchAllProp  callPreConditions  callVerifyPreCond  callVerifyProp  cancelIteration  checkPreConditions  combineRemappedVerifyResults  createActionFrom  createActionInstance  createTopicQualifierResolver  doAction  doActionOnce  filterAmbiguousWithVerify  filterFacets  filterPluralWithVerify  finishResolveList  getAnaphoricBinding  getDefaultWithVerify  getEnteredVerbPhrase  getImplicitPhrase  getInfPhrase  getNotifyTable  getObjPreCondDescList  getObjPreConditions  getOriginalAction  getOrigTokenList  getOtherObjectRole  getParticiplePhrase  getPredicate  getPronounOverride  getRemappedFrom  getSimpleSynonymRemap  getSortedVerifyResults  isConversational  isNestedIn  isPartOf  isRemapped  makeResolveInfo  makeResolveInfoList  maybeAnnounceDefaultObject  maybeAnnounceImplicit  maybeAnnounceMultiObject  noMatch  notifyBeforeAfter  objListPronoun  preAnnounceActionObject  recalcSenseContext  repeatAction  resolveAction  runBeforeNotifiers  saveActionForAgain  setImplicit  setMessageParam  setMessageParams  setNested  setOriginalAction  setPronounOverride  setRemapped  spPrefix  spSuffix  synthMessageParam  verifyHandlersExist  whatTranslate  withVerifyResults  zeroActionTime 

Inherited from BasicProd :
canResolveTo  getOrigText  setOrigTokenList 

Inherited from Resolver :
allowAll  cacheScopeList  filterAll  filterAmbiguousEquivalents  filterAmbiguousNounPhrase  filterPluralPhrase  filterPossRank  getAction  getAll  getAllDefaults  getDefaultObject  getPossessiveResolver  getPronounDefault  getQualifierResolver  getRawPronounAntecedent  getReflexiveBinding  getScopeList  getTargetActor  matchName  objInScope  resetResolver  resolvePronounAntecedent  resolveUnknownNounPhrase  selectIndefinite  withGlobals 

Properties  

(none)

Methods  

// performTravel ( )Interface description onlyactions.t[2912]

Carry out the nested travel action for the special combination push-traveler. This should carry out the same action we would have performed for the underlying basic travel.

This method is invoked by the TravelPushable to carry out a push-travel action. The TravelPushable object will first set up a PushTraveler as the actor's global traveler, and it will then invoke this method to carry out the actual travel with that special traveler in effect. Our job is to provide the mapping to the correct underlying simple travel action; since we'll be moving the PushTraveler object, we can move it using the ordinary non-push travel action as though it were any other traveler.

This method is abstract - each subclass must define it appropriately.

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