OpenRCT2/src/openrct2/ride/RideTypes.h

41 lines
1.1 KiB
C
Raw Normal View History

2019-01-12 11:11:55 +01:00
/*****************************************************************************
* Copyright (c) 2014-2019 OpenRCT2 developers
2019-01-12 11:11:55 +01:00
*
* For a complete list of all authors, please refer to contributors.md
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
*
* OpenRCT2 is licensed under the GNU General Public License version 3.
*****************************************************************************/
#pragma once
#include "../object/Object.h"
2019-01-12 11:11:55 +01:00
#include <cstdint>
2020-02-16 22:21:17 +01:00
#include <limits>
2019-01-12 11:11:55 +01:00
2020-02-16 22:21:17 +01:00
using ride_id_t = uint16_t;
struct Ride;
2020-02-16 22:21:17 +01:00
constexpr const ride_id_t RIDE_ID_NULL = 0xFF; // std::numeric_limits<ride_id_t>::max();
constexpr const ride_id_t RideIdNewNull = std::numeric_limits<ride_id_t>::max();
/**
* Couples a ride type and subtype together.
*/
struct RideSelection
{
uint8_t Type;
ObjectEntryIndex EntryIndex;
bool operator==(const RideSelection& other) const
{
return Type == other.Type && EntryIndex == other.EntryIndex;
}
bool operator!=(const RideSelection& other) const
{
return !(*this == other);
}
};