LeviLamina
Loading...
Searching...
No Matches
Guardian.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/legacy/ActorUniqueID.h"
8#include "mc/world/actor/ActorInitializationMethod.h"
9#include "mc/world/actor/monster/Monster.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
16class CompoundTag;
17class DataLoadHelper;
18class EntityContext;
19class Mob;
22// clang-format on
23
24class Guardian : public ::Monster {
25public:
26 // Guardian inner types define
27 using DataFlagIdType = schar;
28
29public:
30 // member variables
31 // NOLINTBEGIN
32 ::ll::TypedStorage<8, 32, ::std::string> ATTACK_SOUND;
33 ::ll::TypedStorage<4, 4, float> ELDER_SIZE_SCALE;
34 ::ll::TypedStorage<4, 4, int> FLAG_MOVING;
35 ::ll::TypedStorage<4, 4, int> FLAG_ELDER;
36 ::ll::TypedStorage<4, 12, ::Vec3> startPos;
37 ::ll::TypedStorage<8, 8, ::Mob*> clientSideCachedAttackTarget;
38 ::ll::TypedStorage<4, 4, int> clientSideAttackTime;
39 ::ll::TypedStorage<1, 1, bool> clientSideTouchedGround;
40 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mAttackTargetId;
41 ::ll::TypedStorage<1, 1, bool> mElderGhost;
42 ::ll::TypedStorage<8, 8, uint64> mLaserLoop;
43 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mEyeTarget;
44 // NOLINTEND
45
46public:
47 // prevent constructor by default
48 Guardian();
49
50public:
51 // virtual functions
52 // NOLINTBEGIN
53 virtual ~Guardian() /*override*/;
54
55 virtual void reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params) /*override*/;
56
57 virtual void reloadHardcodedClient(::ActorInitializationMethod method) /*override*/;
58
59 virtual bool checkSpawnRules(bool) /*override*/;
60
61 virtual void setTarget(::Actor* entity) /*override*/;
62
63 virtual float getMaxHeadXRot() /*override*/;
64
65 virtual void addAdditionalSaveData(::CompoundTag& tag) const /*override*/;
66
67 virtual void readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
68
69 virtual bool isDarkEnoughToSpawn() const /*override*/;
70
71 virtual bool _hurt(::ActorDamageSource const& source, float damage, bool knock, bool ignite) /*override*/;
72 // NOLINTEND
73
74public:
75 // member functions
76 // NOLINTBEGIN
77 MCAPI Guardian(
78 ::ActorDefinitionGroup* definitions,
79 ::ActorDefinitionIdentifier const& definitionName,
80 ::EntityContext& entityContext
81 );
82
83 MCAPI ::Vec3 getMoveEyeVector();
84
85 MCAPI bool isElder() const;
86
87 MCAPI void preAiStep();
88
89 MCAPI void registerLoopingSounds();
90
91 MCAPI void setElder(bool value);
92 // NOLINTEND
93
94public:
95 // constructor thunks
96 // NOLINTBEGIN
97 MCAPI void* $ctor(
98 ::ActorDefinitionGroup* definitions,
99 ::ActorDefinitionIdentifier const& definitionName,
100 ::EntityContext& entityContext
101 );
102 // NOLINTEND
103
104public:
105 // destructor thunk
106 // NOLINTBEGIN
107 MCAPI void $dtor();
108 // NOLINTEND
109
110public:
111 // virtual function thunks
112 // NOLINTBEGIN
113 MCAPI void $reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params);
114
115 MCAPI void $reloadHardcodedClient(::ActorInitializationMethod method);
116
117 MCAPI bool $checkSpawnRules(bool);
118
119 MCFOLD void $setTarget(::Actor* entity);
120
121 MCFOLD float $getMaxHeadXRot();
122
123 MCAPI void $addAdditionalSaveData(::CompoundTag& tag) const;
124
125 MCAPI void $readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
126
127 MCFOLD bool $isDarkEnoughToSpawn() const;
128
129 MCAPI bool $_hurt(::ActorDamageSource const& source, float damage, bool knock, bool ignite);
130
131
132 // NOLINTEND
133
134public:
135 // vftables
136 // NOLINTBEGIN
137 MCAPI static void** $vftable();
138 // NOLINTEND
139};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:35
Definition Actor.h:105
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition EntityContext.h:16
Definition Mob.h:50
Definition ActorDefinitionIdentifier.h:15
Definition VariantParameterList.h:13