CommonLibSSE NG
Loading...
Searching...
No Matches
PermanentMagicFunctor.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSContainer.h"
4
5namespace RE
6{
7 class Actor;
8 class MagicCaster;
9 class MagicItem;
10
12 {
13 enum class Flags
14 {
15 kNone = 0,
16 kRemoveHitEffectArt = 1 << 0
17 };
18
20 caster(a_caster),
21 actor(a_actor)
22 {}
23
25 {
26 using func_t = decltype(&PermanentMagicFunctor::operator());
27 REL::Relocation<func_t> func{ RELOCATION_ID(33684, 34464) };
28 return func(this, a_spell);
29 }
30
31 // members
33 Actor* actor; // 08
34 std::uint8_t isSpellType{ 0xFF }; // 10
35 std::uint8_t isNotSpellType{ 0xA }; // 11
36 std::uint8_t flags{ 0 }; // 12
37 std::uint8_t pad13{ 0 }; // 13
38 std::uint32_t pad14{ 0 }; // 14
39 };
40 static_assert(sizeof(PermanentMagicFunctor) == 0x18);
41}
#define RELOCATION_ID(a_se, a_ae)
Definition PCH.h:794
Definition Actor.h:131
Definition MagicCaster.h:25
Definition MagicItem.h:30
Definition Relocation.h:1638
ForEachResult
Definition BSContainer.h:6
Definition AbsorbEffect.h:6
Definition PermanentMagicFunctor.h:12
std::uint32_t pad14
Definition PermanentMagicFunctor.h:38
Actor * actor
Definition PermanentMagicFunctor.h:33
std::uint8_t flags
Definition PermanentMagicFunctor.h:36
MagicCaster * caster
Definition PermanentMagicFunctor.h:32
Flags
Definition PermanentMagicFunctor.h:14
PermanentMagicFunctor(MagicCaster *a_caster, Actor *a_actor)
Definition PermanentMagicFunctor.h:19
std::uint8_t isSpellType
Definition PermanentMagicFunctor.h:34
BSContainer::ForEachResult operator()(MagicItem *a_spell)
Definition PermanentMagicFunctor.h:24
std::uint8_t pad13
Definition PermanentMagicFunctor.h:37
std::uint8_t isNotSpellType
Definition PermanentMagicFunctor.h:35