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/attribute/AttributeBuffType.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
12class Amplifier;
13// clang-format on
14
15class AttributeBuff {
16public:
17 // member variables
18 // NOLINTBEGIN
19 ::ll::TypedStorage<4, 4, float> mAmount;
20 ::ll::TypedStorage<4, 4, ::AttributeBuffType> mType;
21 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ActorDamageSource>> mSource;
22 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::Amplifier>> mValueAmplifier;
23 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::Amplifier>> mDurationAmplifier;
24 ::ll::TypedStorage<4, 4, float> mScale;
25 ::ll::TypedStorage<4, 4, int> mAmplification;
26 ::ll::TypedStorage<8, 8, uint64> mId;
27 ::ll::TypedStorage<4, 4, int> mOperand;
28 // NOLINTEND
29
30public:
31 // prevent constructor by default
32 AttributeBuff(AttributeBuff const&);
33 AttributeBuff();
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ~AttributeBuff();
39
40 virtual bool isInstantaneous() const = 0;
41
42 virtual bool isSerializable() const = 0;
43
44 virtual void setDurationAmplifier(::std::shared_ptr<::Amplifier> amplifier);
45 // NOLINTEND
46
47public:
48 // member functions
49 // NOLINTBEGIN
50 MCAPI AttributeBuff(float amount, int operand, ::AttributeBuffType type);
51
52 MCAPI AttributeBuff(float amount, int operand, ::ActorDamageSource const& source, ::AttributeBuffType type);
53
54 MCAPI float getAmount() const;
55
56 MCFOLD uint64 getId() const;
57
58 MCFOLD int getOperand() const;
59
60 MCFOLD ::AttributeBuffType getType() const;
61
62 MCAPI ::AttributeBuff& operator=(::AttributeBuff const&);
63
64 MCAPI void setAmplificationAmount(int amplification, float scale);
65
66 MCFOLD void setId(uint64 val);
67
68 MCFOLD void setOperand(int val);
69
70 MCAPI void setSource(::Actor* source);
71
72 MCFOLD void setValueAmplifier(::std::shared_ptr<::Amplifier> amplifier);
73 // NOLINTEND
74
75public:
76 // constructor thunks
77 // NOLINTBEGIN
78 MCAPI void* $ctor(float amount, int operand, ::AttributeBuffType type);
79
80 MCAPI void* $ctor(float amount, int operand, ::ActorDamageSource const& source, ::AttributeBuffType type);
81 // NOLINTEND
82
83public:
84 // destructor thunk
85 // NOLINTBEGIN
86 MCFOLD void $dtor();
87 // NOLINTEND
88
89public:
90 // virtual function thunks
91 // NOLINTBEGIN
92 MCAPI void $setDurationAmplifier(::std::shared_ptr<::Amplifier> amplifier);
93
94
95 // NOLINTEND
96
97public:
98 // vftables
99 // NOLINTBEGIN
100 MCAPI static void** $vftable();
101 // NOLINTEND
102};
Definition ActorDamageSource.h:18
Definition Actor.h:125
Definition Amplifier.h:5