Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
ExitInterface Class Referenceabstract

< Different types of modules have an interest in exiting units out of themselves for whatever reason. More...

#include <UpdateModule.h>

Inherited by DefaultProductionExitUpdate, FlightDeckBehavior, OpenContain, ParkingPlaceBehavior, QueueProductionExitUpdate, SpawnPointProductionExitUpdate, and SupplyCenterProductionExitUpdate.

Public Member Functions

virtual Bool isExitBusy () const =0
 Contain style exiters are getting the ability to space out exits, so ask this before reserveDoor as a kind of no-commitment check.
 
virtual ExitDoorType reserveDoorForExit (const ThingTemplate *objType, Object *specificObject)=0
 All types can answer if they are free to exit or not, and you can ask about a specific guy or just exit anything in general.
 
virtual void exitObjectViaDoor (Object *newObj, ExitDoorType exitDoor)=0
 Here is the object for you to exit to the world in your own special way.
 
virtual void exitObjectByBudding (Object *newObj, Object *budHost)=0
 puts new spawn on top of an existing one
 
virtual void unreserveDoorForExit (ExitDoorType exitDoor)=0
 if you get permission to exit, but then don't/can't call exitObjectViaDoor, you should call this to "give up" your permission
 
virtual void exitObjectInAHurry (Object *newObj)
 
virtual void setRallyPoint (const Coord3D *pos)=0
 Special call for objects exiting a tunnel network, does NOT change the ai state. jba.
 
virtual const Coord3DgetRallyPoint (void) const =0
 define a "rally point" for units to move towards
 
virtual Bool useSpawnRallyPoint (void) const
 
virtual Bool getNaturalRallyPoint (Coord3D &rallyPoint, Bool offset=TRUE) const
 get the natural "rally point" for units to move towards
 
virtual Bool getExitPosition (Coord3D &exitPosition) const
 

Detailed Description

< Different types of modules have an interest in exiting units out of themselves for whatever reason.

Definition at line 351 of file UpdateModule.h.

Member Function Documentation

◆ exitObjectByBudding()

virtual void ExitInterface::exitObjectByBudding ( Object * newObj,
Object * budHost )
pure virtual

◆ exitObjectInAHurry()

virtual void ExitInterface::exitObjectInAHurry ( Object * newObj)
inlinevirtual

Reimplemented in OpenContain.

Definition at line 360 of file UpdateModule.h.

◆ exitObjectViaDoor()

virtual void ExitInterface::exitObjectViaDoor ( Object * newObj,
ExitDoorType exitDoor )
pure virtual

◆ getExitPosition()

virtual Bool ExitInterface::getExitPosition ( Coord3D & exitPosition) const
inlinevirtual

◆ getNaturalRallyPoint()

virtual Bool ExitInterface::getNaturalRallyPoint ( Coord3D & rallyPoint,
Bool offset = TRUE ) const
inlinevirtual

get the natural "rally point" for units to move towards

Reimplemented in DefaultProductionExitUpdate, OpenContain, ParkingPlaceBehavior, QueueProductionExitUpdate, and SupplyCenterProductionExitUpdate.

Definition at line 365 of file UpdateModule.h.

◆ getRallyPoint()

virtual const Coord3D * ExitInterface::getRallyPoint ( void ) const
pure virtual

◆ isExitBusy()

virtual Bool ExitInterface::isExitBusy ( ) const
pure virtual

Contain style exiters are getting the ability to space out exits, so ask this before reserveDoor as a kind of no-commitment check.

Implemented in DefaultProductionExitUpdate, FlightDeckBehavior, OpenContain, ParkingPlaceBehavior, QueueProductionExitUpdate, RiderChangeContain, SpawnPointProductionExitUpdate, SupplyCenterProductionExitUpdate, and TransportContain.

◆ reserveDoorForExit()

virtual ExitDoorType ExitInterface::reserveDoorForExit ( const ThingTemplate * objType,
Object * specificObject )
pure virtual

All types can answer if they are free to exit or not, and you can ask about a specific guy or just exit anything in general.

Implemented in DefaultProductionExitUpdate, FlightDeckBehavior, MobNexusContain, OpenContain, ParkingPlaceBehavior, QueueProductionExitUpdate, RiderChangeContain, SpawnPointProductionExitUpdate, SupplyCenterProductionExitUpdate, and TransportContain.

◆ setRallyPoint()

virtual void ExitInterface::setRallyPoint ( const Coord3D * pos)
pure virtual

Special call for objects exiting a tunnel network, does NOT change the ai state. jba.

define a "rally point" for units to move towards

Implemented in DefaultProductionExitUpdate, FlightDeckBehavior, OpenContain, ParkingPlaceBehavior, QueueProductionExitUpdate, SpawnPointProductionExitUpdate, and SupplyCenterProductionExitUpdate.

◆ unreserveDoorForExit()

virtual void ExitInterface::unreserveDoorForExit ( ExitDoorType exitDoor)
pure virtual

if you get permission to exit, but then don't/can't call exitObjectViaDoor, you should call this to "give up" your permission

Implemented in DefaultProductionExitUpdate, FlightDeckBehavior, MobNexusContain, OpenContain, ParkingPlaceBehavior, QueueProductionExitUpdate, RiderChangeContain, SpawnPointProductionExitUpdate, SupplyCenterProductionExitUpdate, and TransportContain.

◆ useSpawnRallyPoint()

virtual Bool ExitInterface::useSpawnRallyPoint ( void ) const
inlinevirtual

Reimplemented in DefaultProductionExitUpdate.

Definition at line 364 of file UpdateModule.h.


The documentation for this class was generated from the following file: