* Get the GrfSpecFeature associated with the tile. * @param tile The tile to get the feature from. * @return the GrfSpecFeature. */
| 758 | * @return the GrfSpecFeature. |
| 759 | */ |
| 760 | GrfSpecFeature GetGrfSpecFeature(TileIndex tile) |
| 761 | { |
| 762 | switch (GetTileType(tile)) { |
| 763 | default: return GSF_INVALID; |
| 764 | case MP_RAILWAY: return GSF_RAILTYPES; |
| 765 | case MP_ROAD: return IsLevelCrossing(tile) ? GSF_RAILTYPES : GSF_ROADTYPES; |
| 766 | case MP_HOUSE: return GSF_HOUSES; |
| 767 | case MP_INDUSTRY: return GSF_INDUSTRYTILES; |
| 768 | case MP_OBJECT: return GSF_OBJECTS; |
| 769 | |
| 770 | case MP_STATION: |
| 771 | switch (GetStationType(tile)) { |
| 772 | case StationType::Rail: return GSF_STATIONS; |
| 773 | case StationType::Airport: return GSF_AIRPORTTILES; |
| 774 | case StationType::Bus: return GSF_ROADSTOPS; |
| 775 | case StationType::Truck: return GSF_ROADSTOPS; |
| 776 | default: return GSF_INVALID; |
| 777 | } |
| 778 | } |
| 779 | } |
| 780 | |
| 781 | /** |
| 782 | * Get the GrfSpecFeature associated with the vehicle. |
no test coverage detected