OpenRCT2/src/openrct2/ride/Station.h

34 lines
1.4 KiB
C
Raw Normal View History

2014-11-02 04:37:56 +01:00
/*****************************************************************************
* Copyright (c) 2014-2019 OpenRCT2 developers
2014-11-02 04:37:56 +01:00
*
* For a complete list of all authors, please refer to contributors.md
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
2014-11-02 04:37:56 +01:00
*
* OpenRCT2 is licensed under the GNU General Public License version 3.
2014-11-02 04:37:56 +01:00
*****************************************************************************/
2017-10-23 14:47:12 +02:00
#pragma once
2014-11-02 04:37:56 +01:00
#include "../common.h"
2020-03-04 18:43:09 +01:00
#include "../world/Location.hpp"
struct Ride;
using StationIndex = uint8_t;
2014-11-02 04:37:56 +01:00
2020-03-21 15:11:50 +01:00
constexpr const StationIndex STATION_INDEX_NULL = 0xFF;
2020-03-21 15:11:50 +01:00
void ride_update_station(Ride* ride, StationIndex stationIndex);
StationIndex ride_get_first_valid_station_exit(Ride* ride);
StationIndex ride_get_first_valid_station_start(const Ride* ride);
StationIndex ride_get_first_empty_station_start(const Ride* ride);
2020-03-21 15:11:50 +01:00
TileCoordsXYZD ride_get_entrance_location(const Ride* ride, const StationIndex stationIndex);
TileCoordsXYZD ride_get_exit_location(const Ride* ride, const StationIndex stationIndex);
2020-03-21 15:11:50 +01:00
void ride_clear_entrance_location(Ride* ride, const StationIndex stationIndex);
void ride_clear_exit_location(Ride* ride, const StationIndex stationIndex);
void ride_set_entrance_location(Ride* ride, const StationIndex stationIndex, const TileCoordsXYZD& location);
void ride_set_exit_location(Ride* ride, const StationIndex stationIndex, const TileCoordsXYZD& location);