LeviLamina
Loading...
Searching...
No Matches
DigGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/json_util/JsonSchemaObjectNode.h"
7#include "mc/world/actor/ActorDefinitionTrigger.h"
8#include "mc/world/actor/ai/goal/BaseGoalDefinition.h"
9#include "mc/world/actor/ai/goal/Goal.h"
10#include "mc/world/level/Tick.h"
11
12// auto generated forward declare list
13// clang-format off
14class Mob;
15namespace JsonUtil { class EmptyClass; }
16// clang-format on
17
18class DigGoal : public ::Goal {
19public:
20 // DigGoal inner types declare
21 // clang-format off
22 class Definition;
23 // clang-format on
24
25 // DigGoal inner types define
26 enum class CanUseResult : int {
27 CanDig = 0,
28 IsDigging = 1,
29 NamedAndNotAllowedToDigWhenNamed = 2,
30 NotOnGoundOrInWaterOrInLava = 3,
31 CanSeeDaylightAndShouldDigInDaylight = 4,
32 DisturbedByVibration = 5,
33 DisturbedBySuspicion = 6,
34 IdlingBeforeStartingGoalAgain = 7,
35 };
36
38 public:
39 // Definition inner types define
41
42 public:
43 // member variables
44 // NOLINTBEGIN
45 ::ll::TypedStorage<4, 4, float> mDuration;
46 ::ll::TypedStorage<4, 4, float> mIdleTimeSeconds;
47 ::ll::TypedStorage<1, 1, bool> mAllowDigWhenNamed;
48 ::ll::TypedStorage<1, 1, bool> mVibrationIsDisturbance;
49 ::ll::TypedStorage<1, 1, bool> mSuspicionIsDisturbance;
50 ::ll::TypedStorage<1, 1, bool> mDigsInDaylight;
51 ::ll::TypedStorage<8, 104, ::ActorDefinitionTrigger> mOnStartEvent;
52 // NOLINTEND
53
54 public:
55 // virtual functions
56 // NOLINTBEGIN
57 // vIndex: 0
58 virtual ~Definition() /*override*/ = default;
59 // NOLINTEND
60
61 public:
62 // static functions
63 // NOLINTBEGIN
64 MCAPI static void buildSchema(
65 ::std::string const& name,
67 );
68 // NOLINTEND
69
70 public:
71 // vftables
72 // NOLINTBEGIN
73 MCNAPI static void** $vftable();
74 // NOLINTEND
75 };
76
77public:
78 // member variables
79 // NOLINTBEGIN
80 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
81 ::ll::TypedStorage<8, 8, ::Tick> mGoalInitializationTick;
82 ::ll::TypedStorage<4, 4, uint> mIdleTimeTicks;
83 ::ll::TypedStorage<2, 2, ushort> mDurationTicks;
84 ::ll::TypedStorage<8, 8, ::Tick> mEndTick;
85 ::ll::TypedStorage<1, 1, bool> mAllowDigWhenNamed;
86 ::ll::TypedStorage<1, 1, bool> mVibrationIsDisturbance;
87 ::ll::TypedStorage<1, 1, bool> mSuspicionIsDisturbance;
88 ::ll::TypedStorage<1, 1, bool> mDigsInDaylight;
89 ::ll::TypedStorage<8, 104, ::ActorDefinitionTrigger> mOnStartEvent;
90 // NOLINTEND
91
92public:
93 // prevent constructor by default
94 DigGoal& operator=(DigGoal const&);
95 DigGoal(DigGoal const&);
96 DigGoal();
97
98public:
99 // virtual functions
100 // NOLINTBEGIN
101 // vIndex: 1
102 virtual bool canUse() /*override*/;
103
104 // vIndex: 2
105 virtual bool canContinueToUse() /*override*/;
106
107 // vIndex: 4
108 virtual void start() /*override*/;
109
110 // vIndex: 5
111 virtual void stop() /*override*/;
112
113 // vIndex: 6
114 virtual void tick() /*override*/;
115
116 // vIndex: 7
117 virtual void appendDebugInfo(::std::string& str) const /*override*/;
118
119 // vIndex: 0
120 virtual ~DigGoal() /*override*/ = default;
121 // NOLINTEND
122
123public:
124 // member functions
125 // NOLINTBEGIN
126 MCAPI ::DigGoal::CanUseResult _canUse() const;
127 // NOLINTEND
128
129public:
130 // virtual function thunks
131 // NOLINTBEGIN
132 MCAPI bool $canUse();
133
134 MCAPI bool $canContinueToUse();
135
136 MCAPI void $start();
137
138 MCAPI void $stop();
139
140 MCFOLD void $tick();
141
142 MCAPI void $appendDebugInfo(::std::string& str) const;
143 // NOLINTEND
144
145public:
146 // vftables
147 // NOLINTBEGIN
148 MCNAPI static void** $vftable();
149 // NOLINTEND
150};
Definition BaseGoalDefinition.h:10
Definition DigGoal.h:37
static MCAPI void ** $vftable()
Definition DigGoal.h:18
static MCAPI void ** $vftable()
Definition Goal.h:14
Definition JsonSchemaObjectNode.h:8
Definition Mob.h:47