#include <OverlordContain.h>
Inherits TransportContain.
Public Member Functions | |
| OverlordContain (Thing *thing, const ModuleData *moduleData) | |
| virtual OpenContain * | asOpenContain () |
| treat as open container | |
| virtual Bool | isGarrisonable () const |
| can this unit be Garrisoned? (ick) | |
| virtual Bool | isBustable () |
| virtual Bool | isHealContain () const |
| can this container get busted by bunkerbuster? (ick) | |
| virtual Bool | isTunnelContain () const |
| virtual Bool | isImmuneToClearBuildingAttacks () const |
| virtual Bool | isSpecialOverlordStyleContainer () const |
| virtual Bool | isPassengerAllowedToFire (ObjectID id=INVALID_ID) const |
| Hey, can I shoot out of this container? | |
| virtual void | onDie (const DamageInfo *damageInfo) |
| the die callback | |
| virtual void | onDelete (void) |
| Last possible moment cleanup. | |
| virtual void | onCapture (Player *oldOwner, Player *newOwner) |
| virtual void | onObjectCreated () |
| virtual void | onContaining (Object *obj, Bool wasSelected) |
| object now contains 'obj' | |
| virtual void | onRemoving (Object *obj) |
| object no longer contains 'obj' | |
| virtual Bool | isValidContainerFor (const Object *obj, Bool checkCapacity) const |
| virtual void | addToContain (Object *obj) |
| add 'obj' to contain list | |
| virtual void | addToContainList (Object *obj) |
| The part of AddToContain that inheritors can override (Can't do whole thing because of all the private stuff involved) | |
| virtual void | removeFromContain (Object *obj, Bool exposeStealthUnits=FALSE) |
| remove 'obj' from contain list | |
| virtual void | removeAllContained (Bool exposeStealthUnits=FALSE) |
| remove all objects on contain list | |
| virtual Bool | isEnclosingContainerFor (const Object *obj) const |
| Does this type of Contain Visibly enclose its contents? | |
| virtual Bool | isDisplayedOnControlBar () const |
| Does this container display its contents on the ControlBar? | |
| virtual Bool | isKickOutOnCapture () |
| By default, yes, all contain modules kick passengers out on capture. | |
| virtual void | killAllContained (void) |
| kill all objects inside. For us, this does not mean our rider | |
| virtual void | iterateContained (ContainIterateFunc func, void *userData, Bool reverse) |
| virtual UnsignedInt | getContainCount () const |
| contained count | |
| virtual Int | getContainMax (void) const |
| The max needs to be virtual, but only two inheritors care. -1 means "I don't care". | |
| virtual const ContainedItemsList * | getContainedItemsList () const |
| virtual const Object * | friend_getRider () const |
| Damn. The draw order dependency bug for riders means that our draw module needs to cheat to get around it. | |
| virtual void | clientVisibleContainedFlashAsSelected () |
| virtual Bool | getContainerPipsToShow (Int &numTotal, Int &numFull) |
| virtual void | createPayload () |
Public Member Functions inherited from TransportContain | |
| TransportContain (Thing *thing, const ModuleData *moduleData) | |
| virtual UpdateSleepTime | update () |
| called once per frame | |
| virtual Bool | isRiderChangeContain () const |
| virtual Int | getExtraSlotsInUse (void) |
| Transports have the ability to carry guys how take up more than spot. | |
| virtual Bool | isExitBusy () const |
| 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) |
| 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 | unreserveDoorForExit (ExitDoorType exitDoor) |
| if you get permission to exit, but then don't/can't call exitObjectViaDoor, you should call this to "give up" your permission | |
Public Member Functions inherited from OpenContain | |
| OpenContain (Thing *thing, const ModuleData *moduleData) | |
| virtual ContainModuleInterface * | getContain () |
| virtual CollideModuleInterface * | getCollide () |
| virtual DieModuleInterface * | getDie () |
| virtual DamageModuleInterface * | getDamage () |
| virtual void | onCollide (Object *other, const Coord3D *loc, const Coord3D *normal) |
| virtual Bool | wouldLikeToCollideWith (const Object *other) const |
| virtual Bool | isCarBombCrateCollide () const |
| virtual Bool | isHijackedVehicleCrateCollide () const |
| virtual Bool | isRailroad () const |
| virtual Bool | isSalvageCrateCollide () const |
| virtual Bool | isSabotageBuildingCrateCollide () const |
| virtual void | onDamage (DamageInfo *damageInfo) |
| damage callback | |
| virtual void | onHealing (DamageInfo *damageInfo) |
| damage callback | |
| virtual void | containReactToTransformChange () |
| state change callback | |
| virtual Bool | calcBestGarrisonPosition (Coord3D *sourcePos, const Coord3D *targetPos) |
| virtual Bool | attemptBestFirePointPosition (Object *source, Weapon *weapon, Object *victim) |
| virtual Bool | attemptBestFirePointPosition (Object *source, Weapon *weapon, const Coord3D *targetPos) |
| virtual const Player * | getApparentControllingPlayer (const Player *observingPlayer) const |
| virtual void | recalcApparentControllingPlayer () |
| virtual void | onSelling () |
| Container is being sold. Open responds by kicking people out. | |
| virtual void | orderAllPassengersToExit (CommandSourceType commandSource, Bool instantly) |
| All of the smarts of exiting are in the passenger's AIExit. removeAllFrommContain is a last ditch system call, this is the game Evacuate. | |
| virtual void | orderAllPassengersToIdle (CommandSourceType commandSource) |
| Just like it sounds. | |
| virtual void | orderAllPassengersToHackInternet (CommandSourceType) |
| Just like it sounds. | |
| virtual void | markAllPassengersDetected () |
| Cool game stuff got added to the system calls since this layer didn't exist, so this regains that functionality. | |
| virtual void | harmAndForceExitAllContained (DamageInfo *info) |
| virtual void | setPassengerAllowedToFire (Bool permission=TRUE) |
| Hey, can I shoot out of this container? | |
| virtual void | setOverrideDestination (const Coord3D *) |
| Instead of falling peacefully towards a clear spot, I will now aim here. | |
| virtual Real | getContainedItemsMass () const |
| virtual UnsignedInt | getStealthUnitsContained () const |
| virtual PlayerMaskType | getPlayerWhoEntered (void) const |
| virtual void | exitObjectViaDoor (Object *newObj, ExitDoorType exitDoor) |
| virtual void | exitObjectInAHurry (Object *newObj) |
| virtual void | exitObjectByBudding (Object *newObj, Object *budHost) |
| puts new spawn on top of an existing one | |
| virtual void | setRallyPoint (const Coord3D *pos) |
| define a "rally point" for units to move towards | |
| virtual const Coord3D * | getRallyPoint (void) const |
| define a "rally point" for units to move towards | |
| virtual Bool | getExitPosition (Coord3D &exitPosition) const |
| virtual Bool | getNaturalRallyPoint (Coord3D &rallyPoint, Bool offset=TRUE) const |
| access to the "Door" position of the production object | |
| virtual ExitInterface * | getContainExitInterface () |
| virtual Bool | isBustable () const |
| can this container get busted by a bunkerbuster | |
| virtual Bool | isSpecialZeroSlotContainer () const |
| virtual Bool | isAnyRiderAttacking (void) const |
| virtual void | onObjectWantsToEnterOrExit (Object *obj, ObjectEnterExitType wants) |
| virtual Bool | hasObjectsWantingToEnterOrExit () const |
| virtual void | processDamageToContained (Real percentDamage) |
| Do our % damage to units now. | |
| virtual Bool | isWeaponBonusPassedToPassengers () const |
| virtual WeaponBonusConditionFlags | getWeaponBonusPassedToPassengers () const |
| virtual void | enableLoadSounds (Bool enable) |
| Real | getDamagePercentageToUnits (void) |
| virtual Object * | getClosestRider (const Coord3D *pos) |
| virtual void | setEvacDisposition (EvacDisposition disp) |
Public Member Functions inherited from UpdateModule | |
| UpdateModule (Thing *thing, const ModuleData *moduleData) | |
| virtual UpdateModuleInterface * | getUpdate () |
| DisabledMaskType | getDisabledTypesToProcess () const |
| UPDATEMODULE_FRIEND_DECLARATOR UnsignedInt | friend_getPriority () const |
| UPDATEMODULE_FRIEND_DECLARATOR UnsignedInt | friend_getNextCallFrame () const |
| UPDATEMODULE_FRIEND_DECLARATOR SleepyUpdatePhase | friend_getNextCallPhase () const |
| UPDATEMODULE_FRIEND_DECLARATOR void | friend_setNextCallFrame (UnsignedInt frame) |
| UPDATEMODULE_FRIEND_DECLARATOR Int | friend_getIndexInLogic () const |
| UPDATEMODULE_FRIEND_DECLARATOR void | friend_setIndexInLogic (Int i) |
| UPDATEMODULE_FRIEND_DECLARATOR const Object * | friend_getObject () const |
Public Member Functions inherited from BehaviorModule | |
| BehaviorModule (Thing *thing, const ModuleData *moduleData) | |
| virtual BodyModuleInterface * | getBody () |
| virtual CreateModuleInterface * | getCreate () |
| virtual DestroyModuleInterface * | getDestroy () |
| virtual SpecialPowerModuleInterface * | getSpecialPower () |
| virtual UpgradeModuleInterface * | getUpgrade () |
| virtual StealthUpdate * | getStealth () |
| virtual SpyVisionUpdate * | getSpyVisionUpdate () |
| virtual ParkingPlaceBehaviorInterface * | getParkingPlaceBehaviorInterface () |
| virtual RebuildHoleBehaviorInterface * | getRebuildHoleBehaviorInterface () |
| virtual BridgeBehaviorInterface * | getBridgeBehaviorInterface () |
| virtual BridgeTowerBehaviorInterface * | getBridgeTowerBehaviorInterface () |
| virtual BridgeScaffoldBehaviorInterface * | getBridgeScaffoldBehaviorInterface () |
| virtual OverchargeBehaviorInterface * | getOverchargeBehaviorInterface () |
| virtual TransportPassengerInterface * | getTransportPassengerInterface () |
| virtual CaveInterface * | getCaveInterface () |
| virtual LandMineInterface * | getLandMineInterface () |
| virtual DieModuleInterface * | getEjectPilotDieInterface () |
| virtual ProjectileUpdateInterface * | getProjectileUpdateInterface () |
| virtual AIUpdateInterface * | getAIUpdateInterface () |
| virtual ExitInterface * | getUpdateExitInterface () |
| virtual DockUpdateInterface * | getDockUpdateInterface () |
| virtual RailedTransportDockUpdateInterface * | getRailedTransportDockUpdateInterface (void) |
| virtual SlowDeathBehaviorInterface * | getSlowDeathBehaviorInterface () |
| virtual SpecialPowerUpdateInterface * | getSpecialPowerUpdateInterface () |
| virtual SlavedUpdateInterface * | getSlavedUpdateInterface () |
| virtual ProductionUpdateInterface * | getProductionUpdateInterface () |
| virtual HordeUpdateInterface * | getHordeUpdateInterface () |
| virtual PowerPlantUpdateInterface * | getPowerPlantUpdateInterface () |
| virtual SpawnBehaviorInterface * | getSpawnBehaviorInterface () |
| virtual CountermeasuresBehaviorInterface * | getCountermeasuresBehaviorInterface () |
| virtual const CountermeasuresBehaviorInterface * | getCountermeasuresBehaviorInterface () const |
Public Member Functions inherited from ObjectModule | |
| ObjectModule (Thing *thing, const ModuleData *moduleData) | |
| < this abstract class needs memory pool hooks | |
| virtual void | onDisabledEdge (Bool nowDisabled) |
Public Member Functions inherited from Module | |
| Module (const ModuleData *moduleData) | |
| < this abstract class needs memory pool hooks | |
| virtual NameKeyType | getModuleNameKey () const =0 |
| NameKeyType | getModuleTagNameKey () const |
| virtual void | onDrawableBoundToObject () |
| virtual void | preloadAssets (TimeOfDay timeOfDay) |
| preload any assets we might have for this time of day | |
Public Member Functions inherited from MemoryPoolObject | |
| void | deleteInstance () |
Public Member Functions inherited from Snapshot | |
| Snapshot (void) | |
| ~Snapshot (void) | |
Public Member Functions inherited from ExitInterface | |
| virtual Bool | useSpawnRallyPoint (void) const |
Additional Inherited Members | |
Static Public Member Functions inherited from OpenContain | |
| static Int | getInterfaceMask () |
Static Public Member Functions inherited from UpdateModule | |
| static Int | getInterfaceMask () |
Static Public Member Functions inherited from BehaviorModule | |
| static Int | getInterfaceMask () |
| static ModuleType | getModuleType () |
Static Public Member Functions inherited from Module | |
| static ModuleData * | friend_newModuleData (INI *ini) |
Protected Member Functions inherited from TransportContain | |
| virtual void | killRidersWhoAreNotFreeToExit () |
| virtual Bool | isSpecificRiderFreeToExit (Object *obj) |
| void | letRidersUpgradeWeaponSet (void) |
Protected Member Functions inherited from OpenContain | |
| virtual void | monitorConditionChanges (void) |
| check to see if we need to update our occupant postions from a model change or anything else | |
| virtual void | putObjAtNextFirePoint (Object *obj) |
| place object at position of the next fire point to use | |
| virtual void | redeployOccupants (void) |
| redeploy any objects at firepoints due to a model condition change | |
| const ContainedItemsList & | getContainList () const |
| void | scatterToNearbyPosition (Object *obj) |
| void | removeFromContainViaIterator (ContainedItemsList::iterator it, Bool exposeStealthUnits=FALSE) |
| remove item from contain list | |
| void | removeFromPassengerViaIterator (ContainedItemsList::iterator it) |
| remove item from passenger list | |
| virtual void | doLoadSound () |
| virtual void | doUnloadSound () |
| virtual void | positionContainedObjectsRelativeToContainer () |
| virtual void | addOrRemoveObjFromWorld (Object *obj, Bool add) |
| void | pruneDeadWanters () |
Protected Member Functions inherited from UpdateModule | |
| void | setWakeFrame (Object *obj, UpdateSleepTime wakeDelay) |
| UpdateSleepTime | getWakeFrame () const |
| virtual SleepyUpdatePhase | getUpdatePhase () const |
| UpdateSleepTime | frameToSleepTime (UnsignedInt frame1, UnsignedInt frame2=FOREVER, UnsignedInt frame3=FOREVER, UnsignedInt frame4=FOREVER) |
Protected Member Functions inherited from BehaviorModule | |
| virtual void | crc (Xfer *xfer) |
| virtual void | xfer (Xfer *xfer) |
| virtual void | loadPostProcess (void) |
Protected Member Functions inherited from ObjectModule | |
| Object * | getObject () |
| const Object * | getObject () const |
Protected Member Functions inherited from Module | |
| const ModuleData * | getModuleData () const |
Protected Member Functions inherited from MemoryPoolObject | |
| virtual | ~MemoryPoolObject () |
| void * | operator new (size_t s) |
| void | operator delete (void *p) |
| virtual MemoryPool * | getObjectMemoryPool ()=0 |
Protected Attributes inherited from TransportContain | |
| Bool | m_payloadCreated |
Protected Attributes inherited from OpenContain | |
| ContainedItemsList | m_containList |
| the list of contained objects | |
| UnsignedInt | m_containListSize |
| size of contained list | |
Definition at line 59 of file OverlordContain.h.
| OverlordContain::OverlordContain | ( | Thing * | thing, |
| const ModuleData * | moduleData ) |
Definition at line 95 of file OverlordContain.cpp.
|
virtual |
add 'obj' to contain list
Reimplemented from OpenContain.
Definition at line 293 of file OverlordContain.cpp.
|
virtual |
The part of AddToContain that inheritors can override (Can't do whole thing because of all the private stuff involved)
Reimplemented from OpenContain.
Definition at line 280 of file OverlordContain.cpp.
|
inlinevirtual |
treat as open container
Reimplemented from OpenContain.
Definition at line 73 of file OverlordContain.h.
|
virtual |
Reimplemented from OpenContain.
Definition at line 547 of file OverlordContain.cpp.
|
virtual |
Reimplemented from TransportContain.
Definition at line 119 of file OverlordContain.cpp.
|
virtual |
Damn. The draw order dependency bug for riders means that our draw module needs to cheat to get around it.
if my object gets selected, then my visible passengers should, too this gets called from
Reimplemented from OpenContain.
Definition at line 517 of file OverlordContain.cpp.
|
virtual |
|
virtual |
Reimplemented from OpenContain.
Definition at line 484 of file OverlordContain.cpp.
Reimplemented from ContainModuleInterface.
Definition at line 458 of file OverlordContain.cpp.
|
virtual |
The max needs to be virtual, but only two inheritors care. -1 means "I don't care".
Reimplemented from TransportContain.
Definition at line 474 of file OverlordContain.cpp.
|
inlinevirtual |
Definition at line 75 of file OverlordContain.h.
|
virtual |
Does this container display its contents on the ControlBar?
Reimplemented from TransportContain.
Definition at line 507 of file OverlordContain.cpp.
Does this type of Contain Visibly enclose its contents?
Reimplemented from OpenContain.
Definition at line 494 of file OverlordContain.cpp.
|
virtual |
can this unit be Garrisoned? (ick)
Reimplemented from OpenContain.
Definition at line 262 of file OverlordContain.cpp.
|
inlinevirtual |
can this container get busted by bunkerbuster? (ick)
true when container only contains units while healing (not a transport!)
Reimplemented from OpenContain.
Definition at line 76 of file OverlordContain.h.
|
inlinevirtual |
Reimplemented from OpenContain.
Definition at line 78 of file OverlordContain.h.
|
virtual |
By default, yes, all contain modules kick passengers out on capture.
Reimplemented from OpenContain.
Definition at line 271 of file OverlordContain.cpp.
|
virtual |
Hey, can I shoot out of this container?
Reimplemented from TransportContain.
Definition at line 577 of file OverlordContain.cpp.
|
inlinevirtual |
Reimplemented from TransportContain.
Definition at line 79 of file OverlordContain.h.
|
inlinevirtual |
Reimplemented from OpenContain.
Definition at line 77 of file OverlordContain.h.
|
virtual |
can this container contain this kind of object? and, if checkCapacity is TRUE, does this container have enough space left to hold the given unit?
Reimplemented from TransportContain.
Definition at line 436 of file OverlordContain.cpp.
|
virtual |
Iterate the contained list and call the callback on each of the objects
Reimplemented from OpenContain.
Definition at line 352 of file OverlordContain.cpp.
|
virtual |
kill all objects inside. For us, this does not mean our rider
Reimplemented from OpenContain.
Definition at line 410 of file OverlordContain.cpp.
Reimplemented from TransportContain.
Definition at line 251 of file OverlordContain.cpp.
object now contains 'obj'
Reimplemented from TransportContain.
Definition at line 365 of file OverlordContain.cpp.
|
virtual |
Last possible moment cleanup.
Reimplemented from OpenContain.
Definition at line 232 of file OverlordContain.cpp.
|
virtual |
the die callback
Reimplemented from OpenContain.
Definition at line 209 of file OverlordContain.cpp.
|
virtual |
this is called after all the Modules for a given Thing are created; it allows Modules to resolve any inter-Module dependencies.
Reimplemented from Module.
Definition at line 112 of file OverlordContain.cpp.
|
virtual |
object no longer contains 'obj'
Reimplemented from TransportContain.
Definition at line 420 of file OverlordContain.cpp.
remove all objects on contain list
Remove all contained objects from the contained list
Reimplemented from OpenContain.
Definition at line 327 of file OverlordContain.cpp.
remove 'obj' from contain list
Remove 'obj' from the m_containList of objects in this module. This will trigger an onRemoving event for the object that this module is a part of and an onRemovedFrom event for the object being removed
Reimplemented from OpenContain.
Definition at line 311 of file OverlordContain.cpp.