CommonLibSSE NG
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,
65 kDLC02RavenRock = 54,
68 kDLC02ToSkyrim = 57,
72
73 kDoor = 61,
74 kQuestTarget = 62,
77 kPlayerSet = 64,
78 kYouAreHere = 65,
79 };
80
82 {
83 public:
84 enum class Flag
85 {
86 kNone = 0,
87 kVisible = 1 << 0,
88 kCanTravelTo = 1 << 1,
89 kShowAllHidden = 1 << 2,
90 kUnk3 = 1 << 3,
91 kUnk4 = 1 << 4,
92 kUnk5 = 1 << 5,
93 kUnk6 = 1 << 6,
94 kUnk7 = 1 << 7
95 };
96
97 constexpr void SetHidden(bool a_value) noexcept { a_value ? flags.set(Flag::kShowAllHidden) : flags.reset(Flag::kShowAllHidden); }
98 constexpr void SetVisible(bool a_value) noexcept { a_value ? flags.set(Flag::kVisible) : flags.reset(Flag::kVisible); }
99
100 // members
103 std::uint8_t pad11; // 11
105 std::uint32_t pad14; // 14
106 };
107 static_assert(sizeof(MapMarkerData) == 0x18);
108
110 {
111 public:
112 inline static constexpr auto RTTI = RTTI_ExtraMapMarker;
114
115 ~ExtraMapMarker() override; // 00
116
117 // override (BSExtraData)
118 ExtraDataType GetType() const override; // 01 - { return kMapMarker; }
119 bool IsNotEqual(const BSExtraData* a_rhs) const override; // 02
120
121 // members
123 };
124 static_assert(sizeof(ExtraMapMarker) == 0x18);
125}
Definition BSExtraData.h:9
Definition ExtraMapMarker.h:110
static constexpr auto RTTI
Definition ExtraMapMarker.h:112
~ExtraMapMarker() override
bool IsNotEqual(const BSExtraData *a_rhs) const override
static auto EXTRADATATYPE
Definition ExtraMapMarker.h:113
ExtraDataType GetType() const override
MapMarkerData * mapData
Definition ExtraMapMarker.h:122
Definition ExtraMapMarker.h:82
constexpr void SetHidden(bool a_value) noexcept
Definition ExtraMapMarker.h:97
TESFullName locationName
Definition ExtraMapMarker.h:101
stl::enumeration< MARKER_TYPE, std::uint16_t > type
Definition ExtraMapMarker.h:104
constexpr void SetVisible(bool a_value) noexcept
Definition ExtraMapMarker.h:98
std::uint8_t pad11
Definition ExtraMapMarker.h:103
Flag
Definition ExtraMapMarker.h:85
stl::enumeration< Flag, std::uint8_t > flags
Definition ExtraMapMarker.h:102
std::uint32_t pad14
Definition ExtraMapMarker.h:105
Definition TESFullName.h:9
Definition PCH.h:223
constexpr enumeration & set(Args... a_args) noexcept
Definition PCH.h:273
constexpr enumeration & reset(Args... a_args) noexcept
Definition PCH.h:281
Definition AbsorbEffect.h:6
MARKER_TYPE
Definition ExtraMapMarker.h:10
constexpr REL::VariantID RTTI_ExtraMapMarker(684764, 392454, 0x1ed99f0)
ExtraDataType
Definition ExtraDataTypes.h:173