mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-06 14:27:16 +00:00
(svn r8944) -Codechange: Move the enum describing the bitmask of Engine.flags to engine.h and give the enum values better names.
This commit is contained in:
parent
8108cbbe3c
commit
f865f0a445
@ -27,12 +27,6 @@ ShipVehicleInfo _ship_vehicle_info[NUM_SHIP_ENGINES];
|
||||
AircraftVehicleInfo _aircraft_vehicle_info[NUM_AIRCRAFT_ENGINES];
|
||||
RoadVehicleInfo _road_vehicle_info[NUM_ROAD_ENGINES];
|
||||
|
||||
enum {
|
||||
ENGINE_AVAILABLE = 1,
|
||||
ENGINE_INTRODUCING = 2,
|
||||
ENGINE_PREVIEWING = 4,
|
||||
};
|
||||
|
||||
enum {
|
||||
YEAR_ENGINE_AGING_STOPS = 2050,
|
||||
};
|
||||
@ -224,10 +218,10 @@ void EnginesDailyLoop(void)
|
||||
for (i = 0; i != lengthof(_engines); i++) {
|
||||
Engine *e = &_engines[i];
|
||||
|
||||
if (e->flags & ENGINE_INTRODUCING) {
|
||||
if (e->flags & ENGINE_PREVIEWING) {
|
||||
if (e->flags & ENGINE_EXCLUSIVE_PREVIEW) {
|
||||
if (e->flags & ENGINE_OFFER_WINDOW_OPEN) {
|
||||
if (e->preview_player != 0xFF && !--e->preview_wait) {
|
||||
e->flags &= ~ENGINE_PREVIEWING;
|
||||
e->flags &= ~ENGINE_OFFER_WINDOW_OPEN;
|
||||
DeleteWindowById(WC_ENGINE_PREVIEW, i);
|
||||
e->preview_player++;
|
||||
}
|
||||
@ -243,7 +237,7 @@ void EnginesDailyLoop(void)
|
||||
/* XXX - TTDBUG: TTD has a bug here ???? */
|
||||
AcceptEnginePreview(i, best_player);
|
||||
} else {
|
||||
e->flags |= ENGINE_PREVIEWING;
|
||||
e->flags |= ENGINE_OFFER_WINDOW_OPEN;
|
||||
e->preview_wait = 20;
|
||||
if (IsInteractivePlayer(best_player)) ShowEnginePreviewWindow(i);
|
||||
}
|
||||
@ -285,7 +279,7 @@ static void NewVehicleAvailable(Engine *e)
|
||||
|
||||
/* In case the player didn't build the vehicle during the intro period,
|
||||
* prevent that player from getting future intro periods for a while. */
|
||||
if (e->flags & ENGINE_INTRODUCING) {
|
||||
if (e->flags & ENGINE_EXCLUSIVE_PREVIEW) {
|
||||
FOR_ALL_PLAYERS(p) {
|
||||
uint block_preview = p->block_preview;
|
||||
|
||||
@ -307,7 +301,7 @@ static void NewVehicleAvailable(Engine *e)
|
||||
}
|
||||
}
|
||||
|
||||
e->flags = (e->flags & ~ENGINE_INTRODUCING) | ENGINE_AVAILABLE;
|
||||
e->flags = (e->flags & ~ENGINE_EXCLUSIVE_PREVIEW) | ENGINE_AVAILABLE;
|
||||
AddRemoveEngineFromAutoreplaceAndBuildWindows(e->type);
|
||||
|
||||
/* Now available for all players */
|
||||
@ -349,9 +343,9 @@ void EnginesMonthlyLoop(void)
|
||||
if (!(e->flags & ENGINE_AVAILABLE) && _date >= (e->intro_date + 365)) {
|
||||
/* Introduce it to all players */
|
||||
NewVehicleAvailable(e);
|
||||
} else if (!(e->flags & (ENGINE_AVAILABLE|ENGINE_INTRODUCING)) && _date >= e->intro_date) {
|
||||
} else if (!(e->flags & (ENGINE_AVAILABLE|ENGINE_EXCLUSIVE_PREVIEW)) && _date >= e->intro_date) {
|
||||
/* Introduction date has passed.. show introducing dialog to one player. */
|
||||
e->flags |= ENGINE_INTRODUCING;
|
||||
e->flags |= ENGINE_EXCLUSIVE_PREVIEW;
|
||||
|
||||
/* Do not introduce new rail wagons */
|
||||
if (!IsWagon(e - _engines))
|
||||
|
@ -124,6 +124,15 @@ enum {
|
||||
EF_RAIL_IS_MU = 2, ///< Rail vehicle is a multiple-unit (DMU/EMU)
|
||||
};
|
||||
|
||||
/**
|
||||
* Engine.flags is a bitmask, with the following values.
|
||||
*/
|
||||
enum {
|
||||
ENGINE_AVAILABLE = 1, ///< This vehicle is available to everyone.
|
||||
ENGINE_EXCLUSIVE_PREVIEW = 2, ///< This vehicle is in the exclusive preview stage, either being used or being offered to a player.
|
||||
ENGINE_OFFER_WINDOW_OPEN = 4, ///< The exclusive offer window is currently open for a player.
|
||||
};
|
||||
|
||||
enum {
|
||||
NUM_VEHICLE_TYPES = 6
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user