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