LeviLamina
Loading...
Searching...
No Matches
AttributeBuff.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/HurtEffectsSettings.h"
7#include "mc/world/attribute/AttributeBuffType.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
13class Amplifier;
14// clang-format on
15
16class AttributeBuff {
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<4, 4, float> mAmount;
21 ::ll::TypedStorage<4, 4, ::AttributeBuffType> mType;
22 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ActorDamageSource>> mSource;
23 ::ll::TypedStorage<4, 28, ::std::optional<::HurtEffectsSettings>> mHurtEffectsSettings;
24 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::Amplifier>> mValueAmplifier;
25 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::Amplifier>> mDurationAmplifier;
26 ::ll::TypedStorage<4, 4, float> mScale;
27 ::ll::TypedStorage<4, 4, int> mAmplification;
28 ::ll::TypedStorage<8, 8, uint64> mId;
29 ::ll::TypedStorage<4, 4, int> mOperand;
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 AttributeBuff(AttributeBuff const&);
35 AttributeBuff();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual ~AttributeBuff() = default;
41
42 virtual bool isInstantaneous() const = 0;
43
44 virtual bool isSerializable() const = 0;
45
46 virtual void setDurationAmplifier(::std::shared_ptr<::Amplifier> amplifier);
47 // NOLINTEND
48
49public:
50 // member functions
51 // NOLINTBEGIN
52 MCAPI AttributeBuff(float amount, int operand, ::AttributeBuffType type);
53
54 MCAPI AttributeBuff(
55 float amount,
56 int operand,
57 ::ActorDamageSource const& source,
58 ::AttributeBuffType type,
59 ::std::optional<::HurtEffectsSettings> const& hurtEffectsSettings
60 );
61
62 MCAPI ::AttributeBuff& operator=(::AttributeBuff const&);
63
64 MCAPI void setSource(::Actor* source);
65 // NOLINTEND
66
67public:
68 // constructor thunks
69 // NOLINTBEGIN
70 MCAPI void* $ctor(float amount, int operand, ::AttributeBuffType type);
71
72 MCAPI void* $ctor(
73 float amount,
74 int operand,
75 ::ActorDamageSource const& source,
76 ::AttributeBuffType type,
77 ::std::optional<::HurtEffectsSettings> const& hurtEffectsSettings
78 );
79 // NOLINTEND
80
81public:
82 // virtual function thunks
83 // NOLINTBEGIN
84 MCAPI void $setDurationAmplifier(::std::shared_ptr<::Amplifier> amplifier);
85
86
87 // NOLINTEND
88
89public:
90 // vftables
91 // NOLINTBEGIN
92 MCAPI static void** $vftable();
93 // NOLINTEND
94};
Definition ActorDamageSource.h:18
Definition Actor.h:113
Definition Amplifier.h:5