12 #ifndef DISASTER_VEHICLE_H 13 #define DISASTER_VEHICLE_H 60 #define FOR_ALL_DISASTERVEHICLES(var) FOR_ALL_VEHICLES_OF_TYPE(DisasterVehicle, var)
Airplane destroying an oil refinery.
DirectionByte direction
facing
Non-existing type of vehicle.
void UpdateDeltaXY(Direction direction)
Updates the x and y offsets and the size of the sprite used for this vehicle.
Small submarine, pops up in the oceans but doesn't do anything.
virtual ~DisasterVehicle()
We want to 'destruct' the right class.
Direction
Defines the 8 directions on the map.
Small UFO, tries to find a road vehicle to destroy.
byte subtype
subtype (Filled with values from #EffectVehicles/#TrainSubTypes/#AircraftSubTypes) ...
Big UFO, finds a piece of railroad to "park" on.
Class defining several overloaded accessors so we don't have to cast vehicle types that often...
uint32 VehicleID
The type all our vehicle IDs have.
DisasterVehicle()
For use by saveload.
SpriteID image_override
Override for the default disaster vehicle sprite.
Aircraft the will bomb the big UFO.
Helicopter destroying a factory.
void UpdatePosition()
Update the position of the vehicle.
VehicleID big_ufo_destroyer_target
The big UFO that this destroyer is supposed to bomb.
byte flags
Flags about the state of the vehicle,.
Base class for all vehicles.
uint32 SpriteID
The number of a sprite, without mapping bits and colourtables.
Disasters, like submarines, skyrangers and their shadows, belong to this class.
Zeppelin, crashes at airports.
Big submarine, pops up in the oceans but doesn't do anything.
DisasterSubType
Different sub types of disaster vehicles.
bool Tick()
Calls the tick handler of the vehicle.