CommonLibSSE (Parapets fork)
BGSEntryPointFunctionData.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/F/FormTypes.h"
4 
5 namespace RE
6 {
7  class BGSPerkEntry;
8  class TESFile;
9 
11  {
12  public:
13  inline static constexpr auto RTTI = RTTI_BGSEntryPointFunctionData;
14 
16  {
17  kInvalid = 0,
18  kOneValue = 1,
19  kTwoValue = 2,
20  kLeveledList = 3,
21  kActivateChoice = 4,
22  kSpellItem = 5,
24  kText = 7
25  };
26 
27  virtual ~BGSEntryPointFunctionData(); // 00
28 
29  [[nodiscard]] virtual ENTRY_POINT_FUNCTION_DATA GetType() const = 0; // 01
30  virtual bool LoadImpl(TESFile* a_mod) = 0; // 02
31  virtual void InitItem(TESForm* a_form); // 03 - { return; }
32  virtual void ApplyOnAdd(TESForm* a_form, BGSPerkEntry* a_perkEntry); // 04 - { return; }
33  virtual std::uint16_t GetID(); // 05 - { return 0xFFFF; }
34  virtual void SetParentPerk(BGSPerk* a_perk); // 06 - { return; }
35  virtual BGSPerk* GetParentPerk(); // 07 - { return 0; }
36  };
37  static_assert(sizeof(BGSEntryPointFunctionData) == 0x8);
38 }
Definition: BGSEntryPointFunctionData.h:11
virtual std::uint16_t GetID()
virtual BGSPerk * GetParentPerk()
virtual void ApplyOnAdd(TESForm *a_form, BGSPerkEntry *a_perkEntry)
virtual void SetParentPerk(BGSPerk *a_perk)
ENTRY_POINT_FUNCTION_DATA
Definition: BGSEntryPointFunctionData.h:16
virtual ENTRY_POINT_FUNCTION_DATA GetType() const =0
virtual bool LoadImpl(TESFile *a_mod)=0
virtual void InitItem(TESForm *a_form)
static constexpr auto RTTI
Definition: BGSEntryPointFunctionData.h:13
Definition: BGSPerkEntry.h:20
Definition: BGSPerk.h:31
Definition: TESFile.h:14
Definition: TESForm.h:34
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BGSEntryPointFunctionData
Definition: Offsets_RTTI.h:1285