if (!AIRoad.AreRoadTilesConnected(prev_tile, new_tile)) { if (AIRoad.IsRoadTile(new_tile) || AIBridge.IsBridgeTile(new_tile) || AITunnel.IsTunnelTile(new_tile) || (AIRoad.IsRoadStationTile(new_tile) || AIRoad.IsRoadDepotTile(new_tile)) && AITile.GetOwner(new_tile) == AICompany.ResolveCompanyID(AICompany.COMPANY_SELF)) { cost += self._cost_no_existing_road; } else { cost += self._cost_no_existing_road * 2; } }