CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
PackageLocation.h
Go to the documentation of this file.
1#pragma once
2
5
6namespace RE
7{
8 class TESForm;
9
11 {
12 public:
13 inline static constexpr auto RTTI = RTTI_PackageLocation;
14
15 enum class Type
16 {
17 kNone = static_cast<std::underlying_type_t<Type>>(-1),
18 kNearReference = 0,
19 kInCell = 1,
20 kNearPackageStartLocation = 2,
21 kNearEditorLocation = 3,
22 kObjectID = 4,
23 kObjectType = 5,
24 kNearLinkedReference = 6,
25 kAtPackagelocation = 7,
26 kAlias_Reference = 8,
27 kAlias_Location = 9,
28 kNearSelf = 12,
29 };
30
31 union Data
32 {
33 ~Data() {}
34
37 };
38 static_assert(sizeof(Data) == 0x8);
39
40 ~PackageLocation() override; // 00
41
42 // override (IAIWorldLocationHandle)
43 const IAIWorldLocation* AllocateLocation(AIWorldLocationContext* a_context) override; // 01
44 PackageLocation* GetAsPackageLocation() override; // 02 - { return this; }
45 bool IsRefAtLocation(AIWorldLocationContext* a_context, TESObjectREFR* a_ref) override; // 03
46
47 // members
49 std::uint8_t pad09; // 09
50 std::uint16_t pad0A; // 0A
51 std::uint32_t rad; // 0C
52 Data data; // 10
53 };
54 static_assert(sizeof(PackageLocation) == 0x18);
55}
Definition: IAIWorldLocationHandle.h:11
Definition: PackageLocation.h:11
static constexpr auto RTTI
Definition: PackageLocation.h:13
Type
Definition: PackageLocation.h:16
std::uint32_t rad
Definition: PackageLocation.h:51
Data data
Definition: PackageLocation.h:52
PackageLocation * GetAsPackageLocation() override
std::uint8_t pad09
Definition: PackageLocation.h:49
~PackageLocation() override
const IAIWorldLocation * AllocateLocation(AIWorldLocationContext *a_context) override
stl::enumeration< Type, std::uint8_t > locType
Definition: PackageLocation.h:48
std::uint16_t pad0A
Definition: PackageLocation.h:50
bool IsRefAtLocation(AIWorldLocationContext *a_context, TESObjectREFR *a_ref) override
Definition: TESForm.h:34
Definition: TESObjectREFR.h:105
Definition: PCH.h:216
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_PackageLocation
Definition: Offsets_RTTI.h:5657
Definition: PackageLocation.h:32
TESForm * object
Definition: PackageLocation.h:35
~Data()
Definition: PackageLocation.h:33
ObjectRefHandle refHandle
Definition: PackageLocation.h:36