LeviLamina
Loading...
Searching...
No Matches
TakeBlockGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/IntRange.h"
7#include "mc/util/json_util/JsonSchemaObjectNode.h"
8#include "mc/world/actor/ActorDefinitionTrigger.h"
9#include "mc/world/actor/ActorFilterGroup.h"
10#include "mc/world/actor/ai/goal/BaseGoal.h"
11#include "mc/world/actor/ai/goal/BaseGoalDefinition.h"
12
13// auto generated forward declare list
14// clang-format off
15class BlockDescriptor;
16class EntityContext;
17class Mob;
18namespace JsonUtil { class EmptyClass; }
19// clang-format on
20
21class TakeBlockGoal : public ::BaseGoal {
22public:
23 // TakeBlockGoal inner types declare
24 // clang-format off
25 struct Definition;
26 // clang-format on
27
28 // TakeBlockGoal inner types define
29 struct Definition : public ::BaseGoalDefinition {
30 public:
31 // member variables
32 // NOLINTBEGIN
33 ::ll::TypedStorage<8, 24, ::std::vector<::BlockDescriptor>> mValidBlocks;
34 ::ll::TypedStorage<8, 64, ::ActorFilterGroup> mCanTake;
35 ::ll::TypedStorage<8, 104, ::ActorDefinitionTrigger> mOnTake;
36 ::ll::TypedStorage<4, 8, ::IntRange> mXZRange;
37 ::ll::TypedStorage<4, 8, ::IntRange> mYRange;
38 ::ll::TypedStorage<4, 4, float> mChance;
39 ::ll::TypedStorage<1, 1, bool> mAffectedByGriefingRule;
40 ::ll::TypedStorage<1, 1, bool> mRequiresLineOfSight;
41 // NOLINTEND
42
43 public:
44 // prevent constructor by default
45 Definition(Definition const&);
46 Definition();
47
48 public:
49 // member functions
50 // NOLINTBEGIN
51 MCAPI void initialize(::EntityContext& entity, ::TakeBlockGoal& goal) const;
52
53 MCAPI ::TakeBlockGoal::Definition& operator=(::TakeBlockGoal::Definition const&);
54 // NOLINTEND
55
56 public:
57 // static functions
58 // NOLINTBEGIN
59 MCAPI static void buildSchema(
60 ::std::string const& name,
62 root
63 );
64 // NOLINTEND
65
66 public:
67 // static variables
68 // NOLINTBEGIN
69 MCAPI static bool const& DEFAULT_AFFECTED_BY_GRIEFING_RULE();
70
71 MCAPI static float const& DEFAULT_CHANCE();
72
73 MCAPI static bool const& DEFAULT_REQUIRES_LINE_OF_SIGHT();
74 // NOLINTEND
75
76 public:
77 // vftables
78 // NOLINTBEGIN
79 MCNAPI static void** $vftable();
80 // NOLINTEND
81 };
82
83public:
84 // member variables
85 // NOLINTBEGIN
86 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
87 ::ll::TypedStorage<8, 232, ::TakeBlockGoal::Definition> mDefinition;
88 // NOLINTEND
89
90public:
91 // prevent constructor by default
92 TakeBlockGoal& operator=(TakeBlockGoal const&);
93 TakeBlockGoal(TakeBlockGoal const&);
94 TakeBlockGoal();
95
96public:
97 // virtual functions
98 // NOLINTBEGIN
99 virtual bool canUse() /*override*/;
100
101 virtual void tick() /*override*/;
102
103 virtual void appendDebugInfo(::std::string& str) const /*override*/;
104 // NOLINTEND
105
106public:
107 // member functions
108 // NOLINTBEGIN
109 MCAPI explicit TakeBlockGoal(::Mob& mob);
110 // NOLINTEND
111
112public:
113 // constructor thunks
114 // NOLINTBEGIN
115 MCAPI void* $ctor(::Mob& mob);
116 // NOLINTEND
117
118public:
119 // virtual function thunks
120 // NOLINTBEGIN
121 MCAPI bool $canUse();
122
123 MCAPI void $tick();
124
125 MCAPI void $appendDebugInfo(::std::string& str) const;
126
127
128 // NOLINTEND
129
130public:
131 // vftables
132 // NOLINTBEGIN
133 MCNAPI static void** $vftable();
134 // NOLINTEND
135};
Definition BaseGoalDefinition.h:12
Definition BlockDescriptor.h:21
Definition EntityContext.h:17
Definition EmptyClass.h:7
Definition JsonSchemaObjectNode.h:8
Definition Mob.h:57
static MCAPI void ** $vftable()
Definition TakeBlockGoal.h:29
static MCAPI void ** $vftable()