diff options
Diffstat (limited to 'src/server/shared')
| -rw-r--r-- | src/server/shared/DataStores/DBCEnums.h | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/src/server/shared/DataStores/DBCEnums.h b/src/server/shared/DataStores/DBCEnums.h index b87252b6e1d..f928465dfc3 100644 --- a/src/server/shared/DataStores/DBCEnums.h +++ b/src/server/shared/DataStores/DBCEnums.h @@ -19,7 +19,7 @@ #define DBCENUMS_H #include "Define.h" -#include <array> +#include <vector> #pragma pack(push, 1) @@ -433,8 +433,25 @@ enum SummonPropFlags #define MAX_PET_TALENT_RANK 3 // use in calculations, expected <= MAX_TALENT_RANK #define MAX_TALENT_TABS 3 -static constexpr size_t TaxiMaskSize = 14; -typedef std::array<uint32, TaxiMaskSize> TaxiMask; +class TaxiMask +{ +public: + using value_type = uint32; + + TaxiMask(); + + value_type& operator[](size_t i) { return _data[i]; } + value_type const& operator[](size_t i) const { return _data[i]; } + + size_t size() const { return _data.size(); } + value_type const* data() const { return _data.data(); } + + decltype(auto) begin() { return _data.begin(); } + decltype(auto) end() { return _data.end(); } + +private: + std::vector<value_type> _data; +}; enum TotemCategoryType { |
