src/road_gui.cpp
changeset 7157 270bc5b64e08
parent 6988 76eba6a9cc6f
child 7158 ffb31324aa5e
equal deleted inserted replaced
7156:68de47bdcb80 7157:270bc5b64e08
    67 	}
    67 	}
    68 }
    68 }
    69 
    69 
    70 static void PlaceRoad_Tunnel(TileIndex tile)
    70 static void PlaceRoad_Tunnel(TileIndex tile)
    71 {
    71 {
    72 	DoCommandP(tile, 0x200, 0, CcBuildRoadTunnel, CMD_BUILD_TUNNEL | CMD_AUTO | CMD_MSG(STR_5016_CAN_T_BUILD_TUNNEL_HERE));
    72 	DoCommandP(tile, 0x200 | ROADTYPES_ROAD, 0, CcBuildRoadTunnel, CMD_BUILD_TUNNEL | CMD_AUTO | CMD_MSG(STR_5016_CAN_T_BUILD_TUNNEL_HERE));
    73 }
    73 }
    74 
    74 
    75 static void BuildRoadOutsideStation(TileIndex tile, DiagDirection direction)
    75 static void BuildRoadOutsideStation(TileIndex tile, DiagDirection direction)
    76 {
    76 {
    77 	tile += TileOffsByDiagDir(direction);
    77 	tile += TileOffsByDiagDir(direction);
   111 static void PlaceRoad_BusStation(TileIndex tile)
   111 static void PlaceRoad_BusStation(TileIndex tile)
   112 {
   112 {
   113 	if (_remove_button_clicked) {
   113 	if (_remove_button_clicked) {
   114 		DoCommandP(tile, 0, RoadStop::BUS, CcPlaySound1D, CMD_REMOVE_ROAD_STOP | CMD_MSG(STR_CAN_T_REMOVE_BUS_STATION));
   114 		DoCommandP(tile, 0, RoadStop::BUS, CcPlaySound1D, CMD_REMOVE_ROAD_STOP | CMD_MSG(STR_CAN_T_REMOVE_BUS_STATION));
   115 	} else {
   115 	} else {
   116 		PlaceRoadStop(tile, RoadStop::BUS, CMD_BUILD_ROAD_STOP | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_1808_CAN_T_BUILD_BUS_STATION));
   116 		PlaceRoadStop(tile, ROADTYPES_ROAD << 2 | RoadStop::BUS, CMD_BUILD_ROAD_STOP | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_1808_CAN_T_BUILD_BUS_STATION));
   117 	}
   117 	}
   118 }
   118 }
   119 
   119 
   120 static void PlaceRoad_TruckStation(TileIndex tile)
   120 static void PlaceRoad_TruckStation(TileIndex tile)
   121 {
   121 {
   122 	if (_remove_button_clicked) {
   122 	if (_remove_button_clicked) {
   123 		DoCommandP(tile, 0, RoadStop::TRUCK, CcPlaySound1D, CMD_REMOVE_ROAD_STOP | CMD_MSG(STR_CAN_T_REMOVE_TRUCK_STATION));
   123 		DoCommandP(tile, 0, RoadStop::TRUCK, CcPlaySound1D, CMD_REMOVE_ROAD_STOP | CMD_MSG(STR_CAN_T_REMOVE_TRUCK_STATION));
   124 	} else {
   124 	} else {
   125 		PlaceRoadStop(tile, RoadStop::TRUCK, CMD_BUILD_ROAD_STOP | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_1809_CAN_T_BUILD_TRUCK_STATION));
   125 		PlaceRoadStop(tile, ROADTYPES_ROAD << 2 | RoadStop::TRUCK, CMD_BUILD_ROAD_STOP | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_1809_CAN_T_BUILD_TRUCK_STATION));
   126 	}
   126 	}
   127 }
   127 }
   128 
   128 
   129 static void PlaceRoad_DemolishArea(TileIndex tile)
   129 static void PlaceRoad_DemolishArea(TileIndex tile)
   130 {
   130 {
   295 			TileIndex start_tile = e->we.place.starttile;
   295 			TileIndex start_tile = e->we.place.starttile;
   296 			TileIndex end_tile = e->we.place.tile;
   296 			TileIndex end_tile = e->we.place.tile;
   297 
   297 
   298 			if (e->we.place.userdata == 0) {
   298 			if (e->we.place.userdata == 0) {
   299 				ResetObjectToPlace();
   299 				ResetObjectToPlace();
   300 				ShowBuildBridgeWindow(start_tile, end_tile, 0x80);
   300 				ShowBuildBridgeWindow(start_tile, end_tile, 0x80 | ROADTYPES_ROAD);
   301 			} else if (e->we.place.userdata != 4) {
   301 			} else if (e->we.place.userdata != 4) {
   302 				DoCommandP(end_tile, start_tile, _place_road_flag, CcPlaySound1D,
   302 				DoCommandP(end_tile, start_tile, _place_road_flag, CcPlaySound1D,
   303 					_remove_button_clicked ?
   303 					_remove_button_clicked ?
   304 					CMD_REMOVE_LONG_ROAD | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_1805_CAN_T_REMOVE_ROAD_FROM) :
   304 					CMD_REMOVE_LONG_ROAD | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_1805_CAN_T_REMOVE_ROAD_FROM) :
   305 					CMD_BUILD_LONG_ROAD | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_1804_CAN_T_BUILD_ROAD_HERE));
   305 					CMD_BUILD_LONG_ROAD | CMD_AUTO | CMD_NO_WATER | CMD_MSG(STR_1804_CAN_T_BUILD_ROAD_HERE));
   310 		break;
   310 		break;
   311 
   311 
   312 	case WE_PLACE_PRESIZE: {
   312 	case WE_PLACE_PRESIZE: {
   313 		TileIndex tile = e->we.place.tile;
   313 		TileIndex tile = e->we.place.tile;
   314 
   314 
   315 		DoCommand(tile, 0x200, 0, DC_AUTO, CMD_BUILD_TUNNEL);
   315 		DoCommand(tile, 0x200 | ROADTYPES_ROAD, 0, DC_AUTO, CMD_BUILD_TUNNEL);
   316 		VpSetPresizeRange(tile, _build_tunnel_endtile == 0 ? tile : _build_tunnel_endtile);
   316 		VpSetPresizeRange(tile, _build_tunnel_endtile == 0 ? tile : _build_tunnel_endtile);
   317 		break;
   317 		break;
   318 	}
   318 	}
   319 
   319 
   320 	case WE_DESTROY:
   320 	case WE_DESTROY: