1
0
Fork 0

Codechange: Pass TileDesc by reference.

pull/13656/head
Peter Nelson 2025-02-23 13:08:20 +00:00 committed by Peter Nelson
parent 012daaa3d9
commit 96f260e718
14 changed files with 121 additions and 121 deletions

View File

@ -338,14 +338,14 @@ static const StringID _clear_land_str[] = {
STR_LAI_CLEAR_DESCRIPTION_DESERT
};
static void GetTileDesc_Clear(TileIndex tile, TileDesc *td)
static void GetTileDesc_Clear(TileIndex tile, TileDesc &td)
{
if (IsClearGround(tile, CLEAR_GRASS) && GetClearDensity(tile) == 0) {
td->str = STR_LAI_CLEAR_DESCRIPTION_BARE_LAND;
td.str = STR_LAI_CLEAR_DESCRIPTION_BARE_LAND;
} else {
td->str = _clear_land_str[GetClearGround(tile)];
td.str = _clear_land_str[GetClearGround(tile)];
}
td->owner[0] = GetTileOwner(tile);
td.owner[0] = GetTileOwner(tile);
}
static void ChangeTileOwner_Clear(TileIndex, Owner, Owner)

View File

@ -472,20 +472,20 @@ static void AddAcceptedCargo_Industry(TileIndex tile, CargoArray &acceptance, Ca
}
}
static void GetTileDesc_Industry(TileIndex tile, TileDesc *td)
static void GetTileDesc_Industry(TileIndex tile, TileDesc &td)
{
const Industry *i = Industry::GetByTile(tile);
const IndustrySpec *is = GetIndustrySpec(i->type);
td->owner[0] = i->owner;
td->str = is->name;
td.owner[0] = i->owner;
td.str = is->name;
if (!IsIndustryCompleted(tile)) {
td->dparam = td->str;
td->str = STR_LAI_TOWN_INDUSTRY_DESCRIPTION_UNDER_CONSTRUCTION;
td.dparam = td.str;
td.str = STR_LAI_TOWN_INDUSTRY_DESCRIPTION_UNDER_CONSTRUCTION;
}
if (is->grf_prop.HasGrfFile()) {
td->grf = GetGRFConfig(is->grf_prop.grfid)->GetName();
td.grf = GetGRFConfig(is->grf_prop.grfid)->GetName();
}
}

View File

@ -567,7 +567,7 @@ void ChangeTileOwner(TileIndex tile, Owner old_owner, Owner new_owner)
_tile_type_procs[GetTileType(tile)]->change_tile_owner_proc(tile, old_owner, new_owner);
}
void GetTileDesc(TileIndex tile, TileDesc *td)
void GetTileDesc(TileIndex tile, TileDesc &td)
{
_tile_type_procs[GetTileType(tile)]->get_tile_desc_proc(tile, td);
}

View File

@ -144,7 +144,7 @@ public:
CargoArray acceptance{};
AddAcceptedCargo(tile, acceptance, nullptr);
GetTileDesc(tile, &td);
GetTileDesc(tile, td);
this->landinfo_data.clear();

View File

@ -652,15 +652,15 @@ static void AddProducedCargo_Object(TileIndex tile, CargoArray &produced)
}
static void GetTileDesc_Object(TileIndex tile, TileDesc *td)
static void GetTileDesc_Object(TileIndex tile, TileDesc &td)
{
const ObjectSpec *spec = ObjectSpec::GetByTile(tile);
td->str = spec->name;
td->owner[0] = GetTileOwner(tile);
td->build_date = Object::GetByTile(tile)->build_date;
td.str = spec->name;
td.owner[0] = GetTileOwner(tile);
td.build_date = Object::GetByTile(tile)->build_date;
if (spec->grf_prop.HasGrfFile()) {
td->grf = GetGRFConfig(spec->grf_prop.grfid)->GetName();
td.grf = GetGRFConfig(spec->grf_prop.grfid)->GetName();
}
}

View File

@ -2780,15 +2780,15 @@ static bool ClickTile_Track(TileIndex tile)
return true;
}
static void GetTileDesc_Track(TileIndex tile, TileDesc *td)
static void GetTileDesc_Track(TileIndex tile, TileDesc &td)
{
const RailTypeInfo *rti = GetRailTypeInfo(GetRailType(tile));
td->rail_speed = rti->max_speed;
td->railtype = rti->strings.name;
td->owner[0] = GetTileOwner(tile);
td.rail_speed = rti->max_speed;
td.railtype = rti->strings.name;
td.owner[0] = GetTileOwner(tile);
switch (GetRailTileType(tile)) {
case RAIL_TILE_NORMAL:
td->str = STR_LAI_RAIL_DESCRIPTION_TRACK;
td.str = STR_LAI_RAIL_DESCRIPTION_TRACK;
break;
case RAIL_TILE_SIGNALS: {
@ -2852,20 +2852,20 @@ static void GetTileDesc_Track(TileIndex tile, TileDesc *td)
secondary_signal = primary_signal = GetSignalType(tile, TRACK_LOWER);
}
td->str = signal_type[secondary_signal][primary_signal];
td.str = signal_type[secondary_signal][primary_signal];
break;
}
case RAIL_TILE_DEPOT:
td->str = STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT;
td.str = STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT;
if (_settings_game.vehicle.train_acceleration_model != AM_ORIGINAL) {
if (td->rail_speed > 0) {
td->rail_speed = std::min<uint16_t>(td->rail_speed, 61);
if (td.rail_speed > 0) {
td.rail_speed = std::min<uint16_t>(td.rail_speed, 61);
} else {
td->rail_speed = 61;
td.rail_speed = 61;
}
}
td->build_date = Depot::GetByTile(tile)->build_date;
td.build_date = Depot::GetByTile(tile)->build_date;
break;
default:

View File

@ -2181,7 +2181,7 @@ static const StringID _road_tile_strings[] = {
STR_LAI_ROAD_DESCRIPTION_ROAD,
};
static void GetTileDesc_Road(TileIndex tile, TileDesc *td)
static void GetTileDesc_Road(TileIndex tile, TileDesc &td)
{
Owner rail_owner = INVALID_OWNER;
Owner road_owner = INVALID_OWNER;
@ -2191,36 +2191,36 @@ static void GetTileDesc_Road(TileIndex tile, TileDesc *td)
RoadType tram_rt = GetRoadTypeTram(tile);
if (road_rt != INVALID_ROADTYPE) {
const RoadTypeInfo *rti = GetRoadTypeInfo(road_rt);
td->roadtype = rti->strings.name;
td->road_speed = rti->max_speed / 2;
td.roadtype = rti->strings.name;
td.road_speed = rti->max_speed / 2;
road_owner = GetRoadOwner(tile, RTT_ROAD);
}
if (tram_rt != INVALID_ROADTYPE) {
const RoadTypeInfo *rti = GetRoadTypeInfo(tram_rt);
td->tramtype = rti->strings.name;
td->tram_speed = rti->max_speed / 2;
td.tramtype = rti->strings.name;
td.tram_speed = rti->max_speed / 2;
tram_owner = GetRoadOwner(tile, RTT_TRAM);
}
switch (GetRoadTileType(tile)) {
case ROAD_TILE_CROSSING: {
td->str = STR_LAI_ROAD_DESCRIPTION_ROAD_RAIL_LEVEL_CROSSING;
td.str = STR_LAI_ROAD_DESCRIPTION_ROAD_RAIL_LEVEL_CROSSING;
rail_owner = GetTileOwner(tile);
const RailTypeInfo *rti = GetRailTypeInfo(GetRailType(tile));
td->railtype = rti->strings.name;
td->rail_speed = rti->max_speed;
td.railtype = rti->strings.name;
td.rail_speed = rti->max_speed;
break;
}
case ROAD_TILE_DEPOT:
td->str = STR_LAI_ROAD_DESCRIPTION_ROAD_VEHICLE_DEPOT;
td->build_date = Depot::GetByTile(tile)->build_date;
td.str = STR_LAI_ROAD_DESCRIPTION_ROAD_VEHICLE_DEPOT;
td.build_date = Depot::GetByTile(tile)->build_date;
break;
default: {
td->str = (road_rt != INVALID_ROADTYPE ? _road_tile_strings[GetRoadside(tile)] : STR_LAI_ROAD_DESCRIPTION_TRAMWAY);
td.str = (road_rt != INVALID_ROADTYPE ? _road_tile_strings[GetRoadside(tile)] : STR_LAI_ROAD_DESCRIPTION_TRAMWAY);
break;
}
}
@ -2235,15 +2235,15 @@ static void GetTileDesc_Road(TileIndex tile, TileDesc *td)
if (mixed_owners) {
/* Multiple owners */
td->owner_type[0] = (rail_owner == INVALID_OWNER ? STR_NULL : STR_LAND_AREA_INFORMATION_RAIL_OWNER);
td->owner[0] = rail_owner;
td->owner_type[1] = (road_owner == INVALID_OWNER ? STR_NULL : STR_LAND_AREA_INFORMATION_ROAD_OWNER);
td->owner[1] = road_owner;
td->owner_type[2] = (tram_owner == INVALID_OWNER ? STR_NULL : STR_LAND_AREA_INFORMATION_TRAM_OWNER);
td->owner[2] = tram_owner;
td.owner_type[0] = (rail_owner == INVALID_OWNER ? STR_NULL : STR_LAND_AREA_INFORMATION_RAIL_OWNER);
td.owner[0] = rail_owner;
td.owner_type[1] = (road_owner == INVALID_OWNER ? STR_NULL : STR_LAND_AREA_INFORMATION_ROAD_OWNER);
td.owner[1] = road_owner;
td.owner_type[2] = (tram_owner == INVALID_OWNER ? STR_NULL : STR_LAND_AREA_INFORMATION_TRAM_OWNER);
td.owner[2] = tram_owner;
} else {
/* One to rule them all */
td->owner[0] = first_owner;
td.owner[0] = first_owner;
}
}

View File

@ -3448,7 +3448,7 @@ static Foundation GetFoundation_Station(TileIndex, Slope tileh)
return FlatteningFoundation(tileh);
}
static void FillTileDescRoadStop(TileIndex tile, TileDesc *td)
static void FillTileDescRoadStop(TileIndex tile, TileDesc &td)
{
RoadType road_rt = GetRoadTypeRoad(tile);
RoadType tram_rt = GetRoadTypeTram(tile);
@ -3456,77 +3456,77 @@ static void FillTileDescRoadStop(TileIndex tile, TileDesc *td)
Owner tram_owner = INVALID_OWNER;
if (road_rt != INVALID_ROADTYPE) {
const RoadTypeInfo *rti = GetRoadTypeInfo(road_rt);
td->roadtype = rti->strings.name;
td->road_speed = rti->max_speed / 2;
td.roadtype = rti->strings.name;
td.road_speed = rti->max_speed / 2;
road_owner = GetRoadOwner(tile, RTT_ROAD);
}
if (tram_rt != INVALID_ROADTYPE) {
const RoadTypeInfo *rti = GetRoadTypeInfo(tram_rt);
td->tramtype = rti->strings.name;
td->tram_speed = rti->max_speed / 2;
td.tramtype = rti->strings.name;
td.tram_speed = rti->max_speed / 2;
tram_owner = GetRoadOwner(tile, RTT_TRAM);
}
if (IsDriveThroughStopTile(tile)) {
/* Is there a mix of owners? */
if ((tram_owner != INVALID_OWNER && tram_owner != td->owner[0]) ||
(road_owner != INVALID_OWNER && road_owner != td->owner[0])) {
if ((tram_owner != INVALID_OWNER && tram_owner != td.owner[0]) ||
(road_owner != INVALID_OWNER && road_owner != td.owner[0])) {
uint i = 1;
if (road_owner != INVALID_OWNER) {
td->owner_type[i] = STR_LAND_AREA_INFORMATION_ROAD_OWNER;
td->owner[i] = road_owner;
td.owner_type[i] = STR_LAND_AREA_INFORMATION_ROAD_OWNER;
td.owner[i] = road_owner;
i++;
}
if (tram_owner != INVALID_OWNER) {
td->owner_type[i] = STR_LAND_AREA_INFORMATION_TRAM_OWNER;
td->owner[i] = tram_owner;
td.owner_type[i] = STR_LAND_AREA_INFORMATION_TRAM_OWNER;
td.owner[i] = tram_owner;
}
}
}
}
void FillTileDescRailStation(TileIndex tile, TileDesc *td)
void FillTileDescRailStation(TileIndex tile, TileDesc &td)
{
const StationSpec *spec = GetStationSpec(tile);
if (spec != nullptr) {
td->station_class = StationClass::Get(spec->class_index)->name;
td->station_name = spec->name;
td.station_class = StationClass::Get(spec->class_index)->name;
td.station_name = spec->name;
if (spec->grf_prop.HasGrfFile()) {
const GRFConfig *gc = GetGRFConfig(spec->grf_prop.grfid);
td->grf = gc->GetName();
td.grf = gc->GetName();
}
}
const RailTypeInfo *rti = GetRailTypeInfo(GetRailType(tile));
td->rail_speed = rti->max_speed;
td->railtype = rti->strings.name;
td.rail_speed = rti->max_speed;
td.railtype = rti->strings.name;
}
void FillTileDescAirport(TileIndex tile, TileDesc *td)
void FillTileDescAirport(TileIndex tile, TileDesc &td)
{
const AirportSpec *as = Station::GetByTile(tile)->airport.GetSpec();
td->airport_class = AirportClass::Get(as->class_index)->name;
td->airport_name = as->name;
td.airport_class = AirportClass::Get(as->class_index)->name;
td.airport_name = as->name;
const AirportTileSpec *ats = AirportTileSpec::GetByTile(tile);
td->airport_tile_name = ats->name;
td.airport_tile_name = ats->name;
if (as->grf_prop.HasGrfFile()) {
const GRFConfig *gc = GetGRFConfig(as->grf_prop.grfid);
td->grf = gc->GetName();
td.grf = gc->GetName();
} else if (ats->grf_prop.HasGrfFile()) {
const GRFConfig *gc = GetGRFConfig(ats->grf_prop.grfid);
td->grf = gc->GetName();
td.grf = gc->GetName();
}
}
static void GetTileDesc_Station(TileIndex tile, TileDesc *td)
static void GetTileDesc_Station(TileIndex tile, TileDesc &td)
{
td->owner[0] = GetTileOwner(tile);
td->build_date = BaseStation::GetByTile(tile)->build_date;
td.owner[0] = GetTileOwner(tile);
td.build_date = BaseStation::GetByTile(tile)->build_date;
if (IsAnyRoadStop(tile)) FillTileDescRoadStop(tile, td);
if (HasStationRail(tile)) FillTileDescRailStation(tile, td);
@ -3544,9 +3544,9 @@ static void GetTileDesc_Station(TileIndex tile, TileDesc *td)
case StationType::Oilrig: {
const Industry *i = Station::GetByTile(tile)->industry;
const IndustrySpec *is = GetIndustrySpec(i->type);
td->owner[0] = i->owner;
td.owner[0] = i->owner;
str = is->name;
if (is->grf_prop.HasGrfFile()) td->grf = GetGRFConfig(is->grf_prop.grfid)->GetName();
if (is->grf_prop.HasGrfFile()) td.grf = GetGRFConfig(is->grf_prop.grfid)->GetName();
break;
}
case StationType::Dock: str = STR_LAI_STATION_DESCRIPTION_SHIP_DOCK; break;
@ -3554,7 +3554,7 @@ static void GetTileDesc_Station(TileIndex tile, TileDesc *td)
case StationType::RailWaypoint: str = STR_LAI_STATION_DESCRIPTION_WAYPOINT; break;
case StationType::RoadWaypoint: str = STR_LAI_STATION_DESCRIPTION_WAYPOINT; break;
}
td->str = str;
td.str = str;
}

View File

@ -103,7 +103,7 @@ typedef void AddAcceptedCargoProc(TileIndex tile, CargoArray &acceptance, CargoT
* @param tile Tile being queried
* @param td Storage pointer for returned tile description
*/
typedef void GetTileDescProc(TileIndex tile, TileDesc *td);
typedef void GetTileDescProc(TileIndex tile, TileDesc &td);
/**
* Tile callback function signature for getting the possible tracks
@ -178,7 +178,7 @@ extern const TileTypeProcs * const _tile_type_procs[16];
TrackStatus GetTileTrackStatus(TileIndex tile, TransportType mode, uint sub_mode, DiagDirection side = INVALID_DIAGDIR);
VehicleEnterTileStatus VehicleEnterTile(Vehicle *v, TileIndex tile, int x, int y);
void ChangeTileOwner(TileIndex tile, Owner old_owner, Owner new_owner);
void GetTileDesc(TileIndex tile, TileDesc *td);
void GetTileDesc(TileIndex tile, TileDesc &td);
inline void AddAcceptedCargo(TileIndex tile, CargoArray &acceptance, CargoTypes *always_accepted)
{

View File

@ -863,14 +863,14 @@ CargoArray GetAcceptedCargoOfHouse(const HouseSpec *hs)
return acceptance;
}
static void GetTileDesc_Town(TileIndex tile, TileDesc *td)
static void GetTileDesc_Town(TileIndex tile, TileDesc &td)
{
const HouseID house = GetHouseType(tile);
const HouseSpec *hs = HouseSpec::Get(house);
bool house_completed = IsHouseCompleted(tile);
td->str = hs->building_name;
td->town_can_upgrade = !IsHouseProtected(tile);
td.str = hs->building_name;
td.town_can_upgrade = !IsHouseProtected(tile);
uint16_t callback_res = GetHouseCallback(CBID_HOUSE_CUSTOM_NAME, house_completed ? 1 : 0, 0, house, Town::GetByTile(tile), tile);
if (callback_res != CALLBACK_FAILED && callback_res != 0x400) {
@ -879,22 +879,22 @@ static void GetTileDesc_Town(TileIndex tile, TileDesc *td)
} else {
StringID new_name = GetGRFStringID(hs->grf_prop.grfid, GRFSTR_MISC_GRF_TEXT + callback_res);
if (new_name != STR_NULL && new_name != STR_UNDEFINED) {
td->str = new_name;
td.str = new_name;
}
}
}
if (!house_completed) {
td->dparam = td->str;
td->str = STR_LAI_TOWN_INDUSTRY_DESCRIPTION_UNDER_CONSTRUCTION;
td.dparam = td.str;
td.str = STR_LAI_TOWN_INDUSTRY_DESCRIPTION_UNDER_CONSTRUCTION;
}
if (hs->grf_prop.HasGrfFile()) {
const GRFConfig *gc = GetGRFConfig(hs->grf_prop.grfid);
td->grf = gc->GetName();
td.grf = gc->GetName();
}
td->owner[0] = OWNER_TOWN;
td.owner[0] = OWNER_TOWN;
}
static TrackStatus GetTileTrackStatus_Town(TileIndex, TransportType, uint, DiagDirection)

View File

@ -733,17 +733,17 @@ static CommandCost ClearTile_Trees(TileIndex tile, DoCommandFlags flags)
return CommandCost(EXPENSES_CONSTRUCTION, num * _price[PR_CLEAR_TREES]);
}
static void GetTileDesc_Trees(TileIndex tile, TileDesc *td)
static void GetTileDesc_Trees(TileIndex tile, TileDesc &td)
{
TreeType tt = GetTreeType(tile);
if (IsInsideMM(tt, TREE_RAINFOREST, TREE_CACTUS)) {
td->str = STR_LAI_TREE_NAME_RAINFOREST;
td.str = STR_LAI_TREE_NAME_RAINFOREST;
} else {
td->str = tt == TREE_CACTUS ? STR_LAI_TREE_NAME_CACTUS_PLANTS : STR_LAI_TREE_NAME_TREES;
td.str = tt == TREE_CACTUS ? STR_LAI_TREE_NAME_CACTUS_PLANTS : STR_LAI_TREE_NAME_TREES;
}
td->owner[0] = GetTileOwner(tile);
td.owner[0] = GetTileOwner(tile);
}
static void TileLoopTreesDesert(TileIndex tile)

View File

@ -1684,16 +1684,16 @@ static Foundation GetFoundation_TunnelBridge(TileIndex tile, Slope tileh)
return IsTunnel(tile) ? FOUNDATION_NONE : GetBridgeFoundation(tileh, DiagDirToAxis(GetTunnelBridgeDirection(tile)));
}
static void GetTileDesc_TunnelBridge(TileIndex tile, TileDesc *td)
static void GetTileDesc_TunnelBridge(TileIndex tile, TileDesc &td)
{
TransportType tt = GetTunnelBridgeTransportType(tile);
if (IsTunnel(tile)) {
td->str = (tt == TRANSPORT_RAIL) ? STR_LAI_TUNNEL_DESCRIPTION_RAILROAD : STR_LAI_TUNNEL_DESCRIPTION_ROAD;
td.str = (tt == TRANSPORT_RAIL) ? STR_LAI_TUNNEL_DESCRIPTION_RAILROAD : STR_LAI_TUNNEL_DESCRIPTION_ROAD;
} else { // IsBridge(tile)
td->str = (tt == TRANSPORT_WATER) ? STR_LAI_BRIDGE_DESCRIPTION_AQUEDUCT : GetBridgeSpec(GetBridgeType(tile))->transport_name[tt];
td.str = (tt == TRANSPORT_WATER) ? STR_LAI_BRIDGE_DESCRIPTION_AQUEDUCT : GetBridgeSpec(GetBridgeType(tile))->transport_name[tt];
}
td->owner[0] = GetTileOwner(tile);
td.owner[0] = GetTileOwner(tile);
Owner road_owner = INVALID_OWNER;
Owner tram_owner = INVALID_OWNER;
@ -1701,51 +1701,51 @@ static void GetTileDesc_TunnelBridge(TileIndex tile, TileDesc *td)
RoadType tram_rt = GetRoadTypeTram(tile);
if (road_rt != INVALID_ROADTYPE) {
const RoadTypeInfo *rti = GetRoadTypeInfo(road_rt);
td->roadtype = rti->strings.name;
td->road_speed = rti->max_speed / 2;
td.roadtype = rti->strings.name;
td.road_speed = rti->max_speed / 2;
road_owner = GetRoadOwner(tile, RTT_ROAD);
}
if (tram_rt != INVALID_ROADTYPE) {
const RoadTypeInfo *rti = GetRoadTypeInfo(tram_rt);
td->tramtype = rti->strings.name;
td->tram_speed = rti->max_speed / 2;
td.tramtype = rti->strings.name;
td.tram_speed = rti->max_speed / 2;
tram_owner = GetRoadOwner(tile, RTT_TRAM);
}
/* Is there a mix of owners? */
if ((tram_owner != INVALID_OWNER && tram_owner != td->owner[0]) ||
(road_owner != INVALID_OWNER && road_owner != td->owner[0])) {
if ((tram_owner != INVALID_OWNER && tram_owner != td.owner[0]) ||
(road_owner != INVALID_OWNER && road_owner != td.owner[0])) {
uint i = 1;
if (road_owner != INVALID_OWNER) {
td->owner_type[i] = STR_LAND_AREA_INFORMATION_ROAD_OWNER;
td->owner[i] = road_owner;
td.owner_type[i] = STR_LAND_AREA_INFORMATION_ROAD_OWNER;
td.owner[i] = road_owner;
i++;
}
if (tram_owner != INVALID_OWNER) {
td->owner_type[i] = STR_LAND_AREA_INFORMATION_TRAM_OWNER;
td->owner[i] = tram_owner;
td.owner_type[i] = STR_LAND_AREA_INFORMATION_TRAM_OWNER;
td.owner[i] = tram_owner;
}
}
if (tt == TRANSPORT_RAIL) {
const RailTypeInfo *rti = GetRailTypeInfo(GetRailType(tile));
td->rail_speed = rti->max_speed;
td->railtype = rti->strings.name;
td.rail_speed = rti->max_speed;
td.railtype = rti->strings.name;
if (!IsTunnel(tile)) {
uint16_t spd = GetBridgeSpec(GetBridgeType(tile))->speed;
/* rail speed special-cases 0 as unlimited, hides display of limit etc. */
if (spd == UINT16_MAX) spd = 0;
if (td->rail_speed == 0 || spd < td->rail_speed) {
td->rail_speed = spd;
if (td.rail_speed == 0 || spd < td.rail_speed) {
td.rail_speed = spd;
}
}
} else if (tt == TRANSPORT_ROAD && !IsTunnel(tile)) {
uint16_t spd = GetBridgeSpec(GetBridgeType(tile))->speed;
/* road speed special-cases 0 as unlimited, hides display of limit etc. */
if (spd == UINT16_MAX) spd = 0;
if (road_rt != INVALID_ROADTYPE && (td->road_speed == 0 || spd < td->road_speed)) td->road_speed = spd;
if (tram_rt != INVALID_ROADTYPE && (td->tram_speed == 0 || spd < td->tram_speed)) td->tram_speed = spd;
if (road_rt != INVALID_ROADTYPE && (td.road_speed == 0 || spd < td.road_speed)) td.road_speed = spd;
if (tram_rt != INVALID_ROADTYPE && (td.tram_speed == 0 || spd < td.tram_speed)) td.tram_speed = spd;
}
}

View File

@ -45,10 +45,10 @@ static CommandCost ClearTile_Void(TileIndex, DoCommandFlags)
}
static void GetTileDesc_Void(TileIndex, TileDesc *td)
static void GetTileDesc_Void(TileIndex, TileDesc &td)
{
td->str = STR_EMPTY;
td->owner[0] = OWNER_NONE;
td.str = STR_EMPTY;
td.owner[0] = OWNER_NONE;
}
static void TileLoop_Void(TileIndex tile)

View File

@ -973,27 +973,27 @@ static Foundation GetFoundation_Water(TileIndex, Slope)
return FOUNDATION_NONE;
}
static void GetTileDesc_Water(TileIndex tile, TileDesc *td)
static void GetTileDesc_Water(TileIndex tile, TileDesc &td)
{
switch (GetWaterTileType(tile)) {
case WATER_TILE_CLEAR:
switch (GetWaterClass(tile)) {
case WATER_CLASS_SEA: td->str = STR_LAI_WATER_DESCRIPTION_WATER; break;
case WATER_CLASS_CANAL: td->str = STR_LAI_WATER_DESCRIPTION_CANAL; break;
case WATER_CLASS_RIVER: td->str = STR_LAI_WATER_DESCRIPTION_RIVER; break;
case WATER_CLASS_SEA: td.str = STR_LAI_WATER_DESCRIPTION_WATER; break;
case WATER_CLASS_CANAL: td.str = STR_LAI_WATER_DESCRIPTION_CANAL; break;
case WATER_CLASS_RIVER: td.str = STR_LAI_WATER_DESCRIPTION_RIVER; break;
default: NOT_REACHED();
}
break;
case WATER_TILE_COAST: td->str = STR_LAI_WATER_DESCRIPTION_COAST_OR_RIVERBANK; break;
case WATER_TILE_LOCK : td->str = STR_LAI_WATER_DESCRIPTION_LOCK; break;
case WATER_TILE_COAST: td.str = STR_LAI_WATER_DESCRIPTION_COAST_OR_RIVERBANK; break;
case WATER_TILE_LOCK : td.str = STR_LAI_WATER_DESCRIPTION_LOCK; break;
case WATER_TILE_DEPOT:
td->str = STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT;
td->build_date = Depot::GetByTile(tile)->build_date;
td.str = STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT;
td.build_date = Depot::GetByTile(tile)->build_date;
break;
default: NOT_REACHED();
}
td->owner[0] = GetTileOwner(tile);
td.owner[0] = GetTileOwner(tile);
}
/**