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