File diff r1976:fcef181ed14a → r1977:1f8b99c96041
rail_gui.c
Show inline comments
 
@@ -29,19 +29,19 @@ struct {
 
} _railstation;
 

	
 

	
 
static void HandleStationPlacement(uint start, uint end);
 
static void HandleStationPlacement(TileIndex start, TileIndex end);
 
static void ShowBuildTrainDepotPicker(void);
 
static void ShowBuildWaypointPicker(void);
 
static void ShowStationBuilder(void);
 

	
 
typedef void OnButtonClick(Window *w);
 

	
 
void CcPlaySound1E(bool success, uint tile, uint32 p1, uint32 p2)
 
void CcPlaySound1E(bool success, TileIndex tile, uint32 p1, uint32 p2)
 
{
 
	if (success) SndPlayTileFx(SND_20_SPLAT_2, tile);
 
}
 

	
 
static void GenericPlaceRail(uint tile, int cmd)
 
static void GenericPlaceRail(TileIndex tile, int cmd)
 
{
 
	DoCommandP(tile, _cur_railtype, cmd, CcPlaySound1E,
 
		_remove_button_clicked ?
 
@@ -50,34 +50,34 @@ static void GenericPlaceRail(uint tile, 
 
		);
 
}
 

	
 
static void PlaceRail_N(uint tile)
 
static void PlaceRail_N(TileIndex tile)
 
{
 
	int cmd = _tile_fract_coords.x > _tile_fract_coords.y ? 4 : 5;
 
	GenericPlaceRail(tile, cmd);
 
}
 

	
 
static void PlaceRail_NE(uint tile)
 
static void PlaceRail_NE(TileIndex tile)
 
{
 
	VpStartPlaceSizing(tile, VPM_FIX_Y);
 
}
 

	
 
static void PlaceRail_E(uint tile)
 
static void PlaceRail_E(TileIndex tile)
 
{
 
	int cmd = _tile_fract_coords.x + _tile_fract_coords.y <= 15 ? 2 : 3;
 
	GenericPlaceRail(tile, cmd);
 
}
 

	
 
static void PlaceRail_NW(uint tile)
 
static void PlaceRail_NW(TileIndex tile)
 
{
 
	VpStartPlaceSizing(tile, VPM_FIX_X);
 
}
 

	
 
static void PlaceRail_AutoRail(uint tile)
 
static void PlaceRail_AutoRail(TileIndex tile)
 
{
 
	VpStartPlaceSizing(tile, VPM_RAILDIRS);
 
}
 

	
 
static void PlaceExtraDepotRail(uint tile, uint16 extra)
 
static void PlaceExtraDepotRail(TileIndex tile, uint16 extra)
 
{
 
	byte b = _map5[tile];
 

	
 
@@ -94,7 +94,7 @@ static const uint16 _place_depot_extra[1
 
};
 

	
 

	
 
void CcRailDepot(bool success, uint tile, uint32 p1, uint32 p2)
 
void CcRailDepot(bool success, TileIndex tile, uint32 p1, uint32 p2)
 
{
 
	if (success) {
 
		int dir = p2;
 
@@ -112,13 +112,13 @@ void CcRailDepot(bool success, uint tile
 
	}
 
}
 

	
 
static void PlaceRail_Depot(uint tile)
 
static void PlaceRail_Depot(TileIndex tile)
 
{
 
	DoCommandP(tile, _cur_railtype, _build_depot_direction, CcRailDepot,
 
		CMD_BUILD_TRAIN_DEPOT | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_100E_CAN_T_BUILD_TRAIN_DEPOT));
 
}
 

	
 
static void PlaceRail_Waypoint(uint tile)
 
static void PlaceRail_Waypoint(TileIndex tile)
 
{
 
	if (!_remove_button_clicked) {
 
		DoCommandP(tile, (_waypoint_count > 0) ? (0x100 + _cur_waypoint_type) : 0, 0, CcPlaySound1E, CMD_BUILD_TRAIN_WAYPOINT | CMD_MSG(STR_CANT_BUILD_TRAIN_WAYPOINT));
 
@@ -127,7 +127,7 @@ static void PlaceRail_Waypoint(uint tile
 
	}
 
}
 

	
 
void CcStation(bool success, uint tile, uint32 p1, uint32 p2)
 
void CcStation(bool success, TileIndex tile, uint32 p1, uint32 p2)
 
{
 
	if (success) {
 
		SndPlayTileFx(SND_20_SPLAT_2, tile);
 
@@ -135,7 +135,7 @@ void CcStation(bool success, uint tile, 
 
	}
 
}
 

	
 
static void PlaceRail_Station(uint tile)
 
static void PlaceRail_Station(TileIndex tile)
 
{
 
	if(_remove_button_clicked)
 
		DoCommandP(tile, 0, 0, CcPlaySound1E, CMD_REMOVE_FROM_RAILROAD_STATION | CMD_MSG(STR_CANT_REMOVE_PART_OF_STATION));
 
@@ -150,7 +150,7 @@ static void PlaceRail_Station(uint tile)
 
	}
 
}
 

	
 
static void GenericPlaceSignals(uint tile)
 
static void GenericPlaceSignals(TileIndex tile)
 
{
 
	uint trackstat;
 
	int i;
 
@@ -176,12 +176,12 @@ static void GenericPlaceSignals(uint til
 
	}
 
}
 

	
 
static void PlaceRail_Bridge(uint tile)
 
static void PlaceRail_Bridge(TileIndex tile)
 
{
 
	VpStartPlaceSizing(tile, VPM_X_OR_Y);
 
}
 

	
 
void CcBuildRailTunnel(bool success, uint tile, uint32 p1, uint32 p2)
 
void CcBuildRailTunnel(bool success, TileIndex tile, uint32 p1, uint32 p2)
 
{
 
	if (success) {
 
		SndPlayTileFx(SND_20_SPLAT_2, tile);
 
@@ -191,23 +191,23 @@ void CcBuildRailTunnel(bool success, uin
 
	}
 
}
 

	
 
static void PlaceRail_Tunnel(uint tile)
 
static void PlaceRail_Tunnel(TileIndex tile)
 
{
 
	DoCommandP(tile, _cur_railtype, 0, CcBuildRailTunnel,
 
		CMD_BUILD_TUNNEL | CMD_AUTO | CMD_MSG(STR_5016_CAN_T_BUILD_TUNNEL_HERE));
 
}
 

	
 
void PlaceProc_BuyLand(uint tile)
 
void PlaceProc_BuyLand(TileIndex tile)
 
{
 
	DoCommandP(tile, 0, 0, CcPlaySound1E, CMD_PURCHASE_LAND_AREA | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_5806_CAN_T_PURCHASE_THIS_LAND));
 
}
 

	
 
static void PlaceRail_ConvertRail(uint tile)
 
static void PlaceRail_ConvertRail(TileIndex tile)
 
{
 
	VpStartPlaceSizing(tile, VPM_X_AND_Y | GUI_PlaceProc_ConvertRailArea);
 
}
 

	
 
static void PlaceRail_AutoSignals(uint tile)
 
static void PlaceRail_AutoSignals(TileIndex tile)
 
{
 
	VpStartPlaceSizing(tile, VPM_SIGNALDIRS);
 
}
 
@@ -473,7 +473,8 @@ static void BuildRailToolbWndProc(Window
 
		break;
 

	
 
	case WE_PLACE_PRESIZE: {
 
		uint tile = e->place.tile;
 
		TileIndex tile = e->place.tile;
 

	
 
		DoCommandByTile(tile, 0, 0, DC_AUTO, CMD_BUILD_TUNNEL);
 
		VpSetPresizeRange(tile, _build_tunnel_endtile==0?tile:_build_tunnel_endtile);
 
	} break;
 
@@ -619,7 +620,7 @@ void ShowBuildRailToolbar(int index, int
 
/* TODO: For custom stations, respect their allowed platforms/lengths bitmasks!
 
 * --pasky */
 

	
 
static void HandleStationPlacement(uint start, uint end)
 
static void HandleStationPlacement(TileIndex start, TileIndex end)
 
{
 
	uint sx = TileX(start);
 
	uint sy = TileY(start);