AIEventEnginePreview Class Reference

Event Engine Preview, indicating a manufacturer offer you to test a new engine. More...

#include <ai_event_types.hpp>

Inheritance diagram for AIEventEnginePreview:
AIEvent AIObject SimpleCountedObject

Public Member Functions

 AIEventEnginePreview (EngineID engine)
char * GetName ()
 Get the name of the offered engine.
CargoID GetCargoType ()
 Get the cargo-type of the offered engine.
int32 GetCapacity ()
 Get the capacity of the offered engine.
int32 GetMaxSpeed ()
 Get the maximum speed of the offered engine.
Money GetPrice ()
 Get the new cost of the offered engine.
Money GetRunningCost ()
 Get the running cost of the offered engine.
int32 GetVehicleType ()
 Get the type of the offered engine.
bool AcceptPreview ()
 Accept the engine preview.

Static Public Member Functions

static const char * GetClassName ()
 Get the name of this class to identify it towards squirrel.
static AIEventEnginePreviewConvert (AIEvent *instance)
 Convert an AIEvent to the real instance.

Private Member Functions

bool IsEngineValid () const
 Check whether the engine from this preview is still valid.

Private Attributes

EngineID engine
 The engine the preview is for.

Detailed Description

Event Engine Preview, indicating a manufacturer offer you to test a new engine.

You can get the same information about the offered engine as a real user would see in the offer window. And you can also accept the offer.

Definition at line 219 of file ai_event_types.hpp.


Constructor & Destructor Documentation

AIEventEnginePreview::AIEventEnginePreview ( EngineID  engine  )  [inline]
Parameters:
engine The engine offered to test.

Definition at line 227 of file ai_event_types.hpp.


Member Function Documentation

bool AIEventEnginePreview::AcceptPreview (  ) 

Accept the engine preview.

Returns:
True when the accepting succeeded.

Definition at line 112 of file ai_event_types.cpp.

References CMD_WANT_ENGINE_PREVIEW, AIObject::DoCommand(), engine, and IsEngineValid().

static AIEventEnginePreview* AIEventEnginePreview::Convert ( AIEvent instance  )  [inline, static]

Convert an AIEvent to the real instance.

Parameters:
instance The instance to convert.
Returns:
The converted instance.

Definition at line 237 of file ai_event_types.hpp.

int32 AIEventEnginePreview::GetCapacity (  ) 

Get the capacity of the offered engine.

In case it can transport multiple cargos, it returns the first/main.

Returns:
The capacity of the engine.

Definition at line 56 of file ai_event_types.cpp.

References engine, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_engine_pool >::Get(), GetCapacityOfArticulatedParts(), Engine::GetDisplayDefaultCapacity(), IsEngineValid(), NUM_CARGO, Engine::type, VEH_AIRCRAFT, VEH_ROAD, VEH_SHIP, and VEH_TRAIN.

CargoID AIEventEnginePreview::GetCargoType (  ) 

Get the cargo-type of the offered engine.

In case it can transport multiple cargos, it returns the first/main.

Returns:
The cargo-type of the engine.

Definition at line 39 of file ai_event_types.cpp.

References CT_INVALID, engine, GetCapacityOfArticulatedParts(), IsEngineValid(), and NUM_CARGO.

static const char* AIEventEnginePreview::GetClassName (  )  [inline, static]

Get the name of this class to identify it towards squirrel.

Reimplemented from AIEvent.

Definition at line 222 of file ai_event_types.hpp.

int32 AIEventEnginePreview::GetMaxSpeed (  ) 

Get the maximum speed of the offered engine.

Returns:
The maximum speed the engine has.
Note:
The speed is in OpenTTD's internal speed unit. This is mph / 1.6, which is roughly km/h. To get km/h multiply this number by 1.00584.

Definition at line 79 of file ai_event_types.cpp.

References _settings_game, engine, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_engine_pool >::Get(), Engine::GetDisplayMaxSpeed(), IsEngineValid(), VehicleSettings::plane_speed, Engine::type, VEH_AIRCRAFT, and GameSettings::vehicle.

char * AIEventEnginePreview::GetName (  ) 

Get the name of the offered engine.

Returns:
The name the engine has.

Definition at line 28 of file ai_event_types.cpp.

References engine, IsEngineValid(), and SetDParam().

Money AIEventEnginePreview::GetPrice (  ) 

Get the new cost of the offered engine.

Returns:
The new cost the engine has.

Definition at line 88 of file ai_event_types.cpp.

References engine, and IsEngineValid().

Money AIEventEnginePreview::GetRunningCost (  ) 

Get the running cost of the offered engine.

Returns:
The running cost of the vehicle per year.
Note:
Cost is per year; divide by 365 to get per day.

Definition at line 94 of file ai_event_types.cpp.

References engine, and IsEngineValid().

int32 AIEventEnginePreview::GetVehicleType (  ) 
bool AIEventEnginePreview::IsEngineValid (  )  const [private]

Check whether the engine from this preview is still valid.

Returns:
True iff the engine is still valid.

Definition at line 22 of file ai_event_types.cpp.

References engine, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_engine_pool >::GetIfValid(), and Engine::IsEnabled().

Referenced by AcceptPreview(), GetCapacity(), GetCargoType(), GetMaxSpeed(), GetName(), GetPrice(), GetRunningCost(), and GetVehicleType().


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

Generated on Sun May 8 07:30:52 2011 for OpenTTD by  doxygen 1.6.1