summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/cargo_type.h3
-rw-r--r--src/cargopacket.h14
-rw-r--r--src/subsidy_base.h14
3 files changed, 15 insertions, 16 deletions
diff --git a/src/cargo_type.h b/src/cargo_type.h
index 79d1c84f4..78c04ae72 100644
--- a/src/cargo_type.h
+++ b/src/cargo_type.h
@@ -145,12 +145,11 @@ public:
/** Types of cargo source and destination */
-enum SourceType {
+enum SourceType : byte {
ST_INDUSTRY, ///< Source/destination is an industry
ST_TOWN, ///< Source/destination is a town
ST_HEADQUARTERS, ///< Source/destination are company headquarters
};
-typedef SimpleTinyEnumT<SourceType, byte> SourceTypeByte; ///< The SourceType packed into a byte for savegame purposes.
typedef uint16 SourceID; ///< Contains either industry ID, town ID or company ID (or INVALID_SOURCE)
static const SourceID INVALID_SOURCE = 0xFFFF; ///< Invalid/unknown index of source
diff --git a/src/cargopacket.h b/src/cargopacket.h
index 435432797..0e2a1bc97 100644
--- a/src/cargopacket.h
+++ b/src/cargopacket.h
@@ -43,13 +43,13 @@ typedef uint32 TileOrStationID;
*/
struct CargoPacket : CargoPacketPool::PoolItem<&_cargopacket_pool> {
private:
- Money feeder_share; ///< Value of feeder pickup to be paid for on delivery of cargo.
- uint16 count; ///< The amount of cargo in this packet.
- byte days_in_transit; ///< Amount of days this packet has been in transit.
- SourceTypeByte source_type; ///< Type of \c source_id.
- SourceID source_id; ///< Index of source, INVALID_SOURCE if unknown/invalid.
- StationID source; ///< The station where the cargo came from first.
- TileIndex source_xy; ///< The origin of the cargo (first station in feeder chain).
+ Money feeder_share; ///< Value of feeder pickup to be paid for on delivery of cargo.
+ uint16 count; ///< The amount of cargo in this packet.
+ byte days_in_transit; ///< Amount of days this packet has been in transit.
+ SourceType source_type; ///< Type of \c source_id.
+ SourceID source_id; ///< Index of source, INVALID_SOURCE if unknown/invalid.
+ StationID source; ///< The station where the cargo came from first.
+ TileIndex source_xy; ///< The origin of the cargo (first station in feeder chain).
union {
TileOrStationID loaded_at_xy; ///< Location where this cargo has been loaded into the vehicle.
TileOrStationID next_station; ///< Station where the cargo wants to go next.
diff --git a/src/subsidy_base.h b/src/subsidy_base.h
index 6370a77e6..a7f6f4f3e 100644
--- a/src/subsidy_base.h
+++ b/src/subsidy_base.h
@@ -22,13 +22,13 @@ extern SubsidyPool _subsidy_pool;
/** Struct about subsidies, offered and awarded */
struct Subsidy : SubsidyPool::PoolItem<&_subsidy_pool> {
- CargoID cargo_type; ///< Cargo type involved in this subsidy, CT_INVALID for invalid subsidy
- byte remaining; ///< Remaining months when this subsidy is valid
- CompanyID awarded; ///< Subsidy is awarded to this company; INVALID_COMPANY if it's not awarded to anyone
- SourceTypeByte src_type; ///< Source of subsidised path (ST_INDUSTRY or ST_TOWN)
- SourceTypeByte dst_type; ///< Destination of subsidised path (ST_INDUSTRY or ST_TOWN)
- SourceID src; ///< Index of source. Either TownID or IndustryID
- SourceID dst; ///< Index of destination. Either TownID or IndustryID
+ CargoID cargo_type; ///< Cargo type involved in this subsidy, CT_INVALID for invalid subsidy
+ byte remaining; ///< Remaining months when this subsidy is valid
+ CompanyID awarded; ///< Subsidy is awarded to this company; INVALID_COMPANY if it's not awarded to anyone
+ SourceType src_type; ///< Source of subsidised path (ST_INDUSTRY or ST_TOWN)
+ SourceType dst_type; ///< Destination of subsidised path (ST_INDUSTRY or ST_TOWN)
+ SourceID src; ///< Index of source. Either TownID or IndustryID
+ SourceID dst; ///< Index of destination. Either TownID or IndustryID
/**
* We need an (empty) constructor so struct isn't zeroed (as C++ standard states)