CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
ExtraMapMarker.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSExtraData.h"
5#include "RE/T/TESFullName.h"
6
7namespace RE
8{
9 enum class MARKER_TYPE
10 {
11 kNone = 0,
12 kCity = 1,
13 kTown = 2,
14 kSettlement = 3,
15 kCave = 4,
16 kCamp = 5,
17 kFort = 6,
18 kNordicRuin = 7,
19 kDwemerRuin = 8,
20 kShipwreck = 9,
21 kGrove = 10,
22 kLandmark = 11,
23 kDragonLair = 12,
24 kFarm = 13,
25 kWoodMill = 14,
26 kMine = 15,
27 kImperialCamp = 16,
28 kStormcloakCamp = 17,
29 kDoomstone = 18,
30 kWheatMill = 19,
31 kSmelter = 20,
32 kStable = 21,
33 kImperialTower = 22,
34 kClearing = 23,
35 kPass = 24,
36 kAltar = 25,
37 kRock = 26,
38 kLighthouse = 27,
39 kOrcStronghold = 28,
40 kGiantCamp = 29,
41 kShack = 30,
42 kNordicTower = 31,
43 kNordicDwelling = 32,
44 kDocks = 33,
45 kShrine = 34,
46 kRiftenCastle = 35,
47 kRiftenCapitol = 36,
48 kWindhelmCastle = 37,
50 kWhiterunCastle = 39,
52 kSolitudeCastle = 41,
54 kMarkarthCastle = 43,
58 kMorthalCastle = 47,
59 kMorthalCapitol = 48,
62 kDawnstarCastle = 51,
68 kDLC02_ToSkyrim = 57,
71
72 kDoor = 61,
73 kQuestTarget = 62,
75 kPlayerSet = 64,
76 kYouAreHere = 65,
77 };
78
80 {
81 public:
82 enum class Flag
83 {
84 kNone = 0,
85 kVisible = 1 << 0,
86 kCanTravelTo = 1 << 1,
87 kShowAllHidden = 1 << 2,
88 kUnk3 = 1 << 3,
89 kUnk4 = 1 << 4,
90 kUnk5 = 1 << 5,
91 kUnk6 = 1 << 6,
92 kUnk7 = 1 << 7
93 };
94
95 constexpr void SetHidden(bool a_value) noexcept { a_value ? flags.set(Flag::kShowAllHidden) : flags.reset(Flag::kShowAllHidden); }
96 constexpr void SetVisible(bool a_value) noexcept { a_value ? flags.set(Flag::kVisible) : flags.reset(Flag::kVisible); }
97
98 // members
101 std::uint8_t pad11; // 11
103 std::uint32_t pad04; // 14
104 };
105 static_assert(sizeof(MapMarkerData) == 0x18);
106
108 {
109 public:
110 inline static constexpr auto RTTI = RTTI_ExtraMapMarker;
111 inline static constexpr auto EXTRADATATYPE = ExtraDataType::kMapMarker;
112
113 virtual ~ExtraMapMarker(); // 00
114
115 // override (BSExtraData)
116 virtual ExtraDataType GetType() const override; // 01 - { return kMapMarker; }
117 virtual bool IsNotEqual(const BSExtraData* a_rhs) const override; // 02
118
119 // members
121 };
122 static_assert(sizeof(ExtraMapMarker) == 0x18);
123}
Definition: BSExtraData.h:9
Definition: ExtraMapMarker.h:108
static constexpr auto RTTI
Definition: ExtraMapMarker.h:110
virtual bool IsNotEqual(const BSExtraData *a_rhs) const override
static constexpr auto EXTRADATATYPE
Definition: ExtraMapMarker.h:111
virtual ExtraDataType GetType() const override
virtual ~ExtraMapMarker()
MapMarkerData * mapData
Definition: ExtraMapMarker.h:120
Definition: ExtraMapMarker.h:80
constexpr void SetHidden(bool a_value) noexcept
Definition: ExtraMapMarker.h:95
TESFullName locationName
Definition: ExtraMapMarker.h:99
stl::enumeration< MARKER_TYPE, std::uint16_t > type
Definition: ExtraMapMarker.h:102
constexpr void SetVisible(bool a_value) noexcept
Definition: ExtraMapMarker.h:96
std::uint32_t pad04
Definition: ExtraMapMarker.h:103
std::uint8_t pad11
Definition: ExtraMapMarker.h:101
Flag
Definition: ExtraMapMarker.h:83
stl::enumeration< Flag, std::uint8_t > flags
Definition: ExtraMapMarker.h:100
Definition: TESFullName.h:9
Definition: PCH.h:216
constexpr enumeration & reset(Args... a_args) noexcept
Definition: PCH.h:273
constexpr enumeration & set(Args... a_args) noexcept
Definition: PCH.h:265
Definition: AbsorbEffect.h:6
MARKER_TYPE
Definition: ExtraMapMarker.h:10
constexpr REL::ID RTTI_ExtraMapMarker
Definition: Offsets_RTTI.h:4712
ExtraDataType
Definition: ExtraDataTypes.h:173