mirror of
https://github.com/JGRennison/OpenTTD-patches.git
synced 2024-11-09 19:10:38 +00:00
(svn r12054) -Cleanup: Use VehicleType instead of byte for vehicle types...
This commit is contained in:
parent
2588879c6d
commit
a528dc89c7
@ -80,7 +80,7 @@ void InitializeVehiclesGuiList()
|
|||||||
void InvalidateAutoreplaceWindow(EngineID e, GroupID id_g)
|
void InvalidateAutoreplaceWindow(EngineID e, GroupID id_g)
|
||||||
{
|
{
|
||||||
Player *p = GetPlayer(_local_player);
|
Player *p = GetPlayer(_local_player);
|
||||||
byte type = GetEngine(e)->type;
|
VehicleType type = GetEngine(e)->type;
|
||||||
uint num_engines = GetGroupNumEngines(_local_player, id_g, e);
|
uint num_engines = GetGroupNumEngines(_local_player, id_g, e);
|
||||||
|
|
||||||
if (num_engines == 0 || p->num_engines[e] == 0) {
|
if (num_engines == 0 || p->num_engines[e] == 0) {
|
||||||
@ -175,7 +175,7 @@ static void GenerateReplaceVehList(Window *w, bool draw_left)
|
|||||||
{
|
{
|
||||||
EngineID e;
|
EngineID e;
|
||||||
EngineID selected_engine = INVALID_ENGINE;
|
EngineID selected_engine = INVALID_ENGINE;
|
||||||
byte type = w->window_number;
|
VehicleType type = (VehicleType)w->window_number;
|
||||||
byte i = draw_left ? 0 : 1;
|
byte i = draw_left ? 0 : 1;
|
||||||
|
|
||||||
EngineList *list = &WP(w, replaceveh_d).list[i];
|
EngineList *list = &WP(w, replaceveh_d).list[i];
|
||||||
|
@ -81,9 +81,11 @@ static const Widget _build_vehicle_widgets[] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/* Setup widget strings to fit the different types of vehicles */
|
/* Setup widget strings to fit the different types of vehicles */
|
||||||
static void SetupWindowStrings(Window *w, byte type)
|
static void SetupWindowStrings(Window *w, VehicleType type)
|
||||||
{
|
{
|
||||||
switch (type) {
|
switch (type) {
|
||||||
|
default: NOT_REACHED();
|
||||||
|
|
||||||
case VEH_TRAIN:
|
case VEH_TRAIN:
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_CAPTION].data = STR_JUST_STRING;
|
w->widget[BUILD_VEHICLE_WIDGET_CAPTION].data = STR_JUST_STRING;
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_LIST].tooltips = STR_8843_TRAIN_VEHICLE_SELECTION;
|
w->widget[BUILD_VEHICLE_WIDGET_LIST].tooltips = STR_8843_TRAIN_VEHICLE_SELECTION;
|
||||||
@ -92,6 +94,7 @@ static void SetupWindowStrings(Window *w, byte type)
|
|||||||
w->widget[BUILD_VEHICLE_WIDGET_RENAME].data = STR_8820_RENAME;
|
w->widget[BUILD_VEHICLE_WIDGET_RENAME].data = STR_8820_RENAME;
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_RENAME].tooltips = STR_8845_RENAME_TRAIN_VEHICLE_TYPE;
|
w->widget[BUILD_VEHICLE_WIDGET_RENAME].tooltips = STR_8845_RENAME_TRAIN_VEHICLE_TYPE;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VEH_ROAD:
|
case VEH_ROAD:
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_CAPTION].data = STR_9006_NEW_ROAD_VEHICLES;
|
w->widget[BUILD_VEHICLE_WIDGET_CAPTION].data = STR_9006_NEW_ROAD_VEHICLES;
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_LIST].tooltips = STR_9026_ROAD_VEHICLE_SELECTION;
|
w->widget[BUILD_VEHICLE_WIDGET_LIST].tooltips = STR_9026_ROAD_VEHICLE_SELECTION;
|
||||||
@ -100,6 +103,7 @@ static void SetupWindowStrings(Window *w, byte type)
|
|||||||
w->widget[BUILD_VEHICLE_WIDGET_RENAME].data = STR_9034_RENAME;
|
w->widget[BUILD_VEHICLE_WIDGET_RENAME].data = STR_9034_RENAME;
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_RENAME].tooltips = STR_9035_RENAME_ROAD_VEHICLE_TYPE;
|
w->widget[BUILD_VEHICLE_WIDGET_RENAME].tooltips = STR_9035_RENAME_ROAD_VEHICLE_TYPE;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VEH_SHIP:
|
case VEH_SHIP:
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_CAPTION].data = STR_9808_NEW_SHIPS;
|
w->widget[BUILD_VEHICLE_WIDGET_CAPTION].data = STR_9808_NEW_SHIPS;
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_LIST].tooltips = STR_9825_SHIP_SELECTION_LIST_CLICK;
|
w->widget[BUILD_VEHICLE_WIDGET_LIST].tooltips = STR_9825_SHIP_SELECTION_LIST_CLICK;
|
||||||
@ -108,6 +112,7 @@ static void SetupWindowStrings(Window *w, byte type)
|
|||||||
w->widget[BUILD_VEHICLE_WIDGET_RENAME].data = STR_9836_RENAME;
|
w->widget[BUILD_VEHICLE_WIDGET_RENAME].data = STR_9836_RENAME;
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_RENAME].tooltips = STR_9837_RENAME_SHIP_TYPE;
|
w->widget[BUILD_VEHICLE_WIDGET_RENAME].tooltips = STR_9837_RENAME_SHIP_TYPE;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VEH_AIRCRAFT:
|
case VEH_AIRCRAFT:
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_CAPTION].data = STR_A005_NEW_AIRCRAFT;
|
w->widget[BUILD_VEHICLE_WIDGET_CAPTION].data = STR_A005_NEW_AIRCRAFT;
|
||||||
w->widget[BUILD_VEHICLE_WIDGET_LIST].tooltips = STR_A025_AIRCRAFT_SELECTION_LIST;
|
w->widget[BUILD_VEHICLE_WIDGET_LIST].tooltips = STR_A025_AIRCRAFT_SELECTION_LIST;
|
||||||
@ -890,7 +895,7 @@ static void GenerateBuildList(Window *w)
|
|||||||
EngList_Sort(&bv->eng_list, _sorter[bv->vehicle_type][bv->sort_criteria]);
|
EngList_Sort(&bv->eng_list, _sorter[bv->vehicle_type][bv->sort_criteria]);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void DrawVehicleEngine(byte type, int x, int y, EngineID engine, SpriteID pal)
|
static void DrawVehicleEngine(VehicleType type, int x, int y, EngineID engine, SpriteID pal)
|
||||||
{
|
{
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case VEH_TRAIN: DrawTrainEngine( x, y, engine, pal); break;
|
case VEH_TRAIN: DrawTrainEngine( x, y, engine, pal); break;
|
||||||
|
@ -519,9 +519,11 @@ static void ResizeDepotButtons(Window *w)
|
|||||||
* Only use this if it's the same widget, that's used for more than one vehicle type and it needs different text/sprites
|
* Only use this if it's the same widget, that's used for more than one vehicle type and it needs different text/sprites
|
||||||
* Vehicle specific text/sprites, that's in a widget, that's only shown for one vehicle type (like sell whole train) is set in the widget array
|
* Vehicle specific text/sprites, that's in a widget, that's only shown for one vehicle type (like sell whole train) is set in the widget array
|
||||||
*/
|
*/
|
||||||
static void SetupStringsForDepotWindow(Window *w, byte type)
|
static void SetupStringsForDepotWindow(Window *w, VehicleType type)
|
||||||
{
|
{
|
||||||
switch (type) {
|
switch (type) {
|
||||||
|
default: NOT_REACHED();
|
||||||
|
|
||||||
case VEH_TRAIN:
|
case VEH_TRAIN:
|
||||||
w->widget[DEPOT_WIDGET_CAPTION].data = STR_8800_TRAIN_DEPOT;
|
w->widget[DEPOT_WIDGET_CAPTION].data = STR_8800_TRAIN_DEPOT;
|
||||||
w->widget[DEPOT_WIDGET_STOP_ALL].tooltips = STR_MASS_STOP_DEPOT_TRAIN_TIP;
|
w->widget[DEPOT_WIDGET_STOP_ALL].tooltips = STR_MASS_STOP_DEPOT_TRAIN_TIP;
|
||||||
|
@ -403,22 +403,19 @@ CommandCost CmdRenameEngine(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/** Check if an engine is buildable.
|
||||||
* returns true if an engine is valid, of the specified type, and buildable by
|
* @param engine index of the engine to check.
|
||||||
* the given player, false otherwise
|
* @param type the type the engine should be.
|
||||||
*
|
* @param player index of the player.
|
||||||
* engine = index of the engine to check
|
* @return True if an engine is valid, of the specified type, and buildable by
|
||||||
* type = the type the engine should be of (VEH_xxx)
|
* the given player.
|
||||||
* player = index of the player
|
|
||||||
*/
|
*/
|
||||||
bool IsEngineBuildable(EngineID engine, byte type, PlayerID player)
|
bool IsEngineBuildable(EngineID engine, VehicleType type, PlayerID player)
|
||||||
{
|
{
|
||||||
const Engine *e;
|
|
||||||
|
|
||||||
/* check if it's an engine that is in the engine array */
|
/* check if it's an engine that is in the engine array */
|
||||||
if (!IsEngineIndex(engine)) return false;
|
if (!IsEngineIndex(engine)) return false;
|
||||||
|
|
||||||
e = GetEngine(engine);
|
const Engine *e = GetEngine(engine);
|
||||||
|
|
||||||
/* check if it's an engine of specified type */
|
/* check if it's an engine of specified type */
|
||||||
if (e->type != type) return false;
|
if (e->type != type) return false;
|
||||||
|
@ -168,7 +168,7 @@ void DrawAircraftEngine(int x, int y, EngineID engine, SpriteID pal);
|
|||||||
void LoadCustomEngineNames();
|
void LoadCustomEngineNames();
|
||||||
void DeleteCustomEngineNames();
|
void DeleteCustomEngineNames();
|
||||||
|
|
||||||
bool IsEngineBuildable(EngineID engine, byte type, PlayerID player);
|
bool IsEngineBuildable(EngineID engine, VehicleType type, PlayerID player);
|
||||||
CargoID GetEngineCargoType(EngineID engine);
|
CargoID GetEngineCargoType(EngineID engine);
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
@ -185,14 +185,14 @@ enum {
|
|||||||
ROAD_ENGINES_INDEX = NUM_TRAIN_ENGINES,
|
ROAD_ENGINES_INDEX = NUM_TRAIN_ENGINES,
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline EngineID GetFirstEngineOfType(byte type)
|
static inline EngineID GetFirstEngineOfType(VehicleType type)
|
||||||
{
|
{
|
||||||
const EngineID start[] = {0, ROAD_ENGINES_INDEX, SHIP_ENGINES_INDEX, AIRCRAFT_ENGINES_INDEX};
|
const EngineID start[] = {0, ROAD_ENGINES_INDEX, SHIP_ENGINES_INDEX, AIRCRAFT_ENGINES_INDEX};
|
||||||
|
|
||||||
return start[type];
|
return start[type];
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline EngineID GetLastEngineOfType(byte type)
|
static inline EngineID GetLastEngineOfType(VehicleType type)
|
||||||
{
|
{
|
||||||
const EngineID end[] = {
|
const EngineID end[] = {
|
||||||
NUM_TRAIN_ENGINES,
|
NUM_TRAIN_ENGINES,
|
||||||
|
Loading…
Reference in New Issue
Block a user