LeviLamina
Loading...
Searching...
No Matches
AvoidBlockGoal.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/deps/shared_types/legacy/LevelSoundEvent.h"
8#include "mc/deps/shared_types/shared_types/FloatRange.h"
9#include "mc/util/TargetSelectionMethod.h"
10#include "mc/world/actor/ai/goal/Goal.h"
11#include "mc/world/level/BlockPos.h"
12#include "mc/world/level/Tick.h"
13
14// auto generated forward declare list
15// clang-format off
17class BlockSource;
18class ItemDescriptor;
19class Mob;
20class Path;
21// clang-format on
22
23class AvoidBlockGoal : public ::Goal {
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<4, 12, ::Vec3> mTargetPos;
28 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Path>> mPath;
29 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
30 ::ll::TypedStorage<8, 8, ::Tick> mNextStartTick;
31 ::ll::TypedStorage<4, 12, ::BlockPos> mTargetBlockToAvoidPos;
32 ::ll::TypedStorage<4, 4, float> mWalkSpeedModifier;
33 ::ll::TypedStorage<4, 4, float> mSprintSpeedModifier;
34 ::ll::TypedStorage<4, 4, int> mSearchRange;
35 ::ll::TypedStorage<4, 4, int> mSearchHeight;
36 ::ll::TypedStorage<4, 4, int> mInterval;
37 ::ll::TypedStorage<1, 1, ::TargetSelectionMethod> mMethod;
38 ::ll::TypedStorage<8, 24, ::std::vector<::ItemDescriptor>> mTargetBlockDescriptors;
39 ::ll::TypedStorage<8, 24, ::std::vector<::ActorDefinitionTrigger>> mOnEscapedTriggers;
40 ::ll::TypedStorage<4, 4, ::SharedTypes::Legacy::LevelSoundEvent> mSoundEvent;
41 ::ll::TypedStorage<4, 8, ::SharedTypes::FloatRange> mSoundIntervalRange;
42 ::ll::TypedStorage<8, 8, ::Tick> mNextSoundEventTick;
43 // NOLINTEND
44
45public:
46 // prevent constructor by default
47 AvoidBlockGoal& operator=(AvoidBlockGoal const&);
48 AvoidBlockGoal(AvoidBlockGoal const&);
49 AvoidBlockGoal();
50
51public:
52 // virtual functions
53 // NOLINTBEGIN
54 virtual bool canUse() /*override*/;
55
56 virtual bool canContinueToUse() /*override*/;
57
58 virtual void tick() /*override*/;
59
60 virtual void appendDebugInfo(::std::string& str) const /*override*/;
61
62 virtual void start() /*override*/;
63
64 virtual void stop() /*override*/;
65
66 virtual ~AvoidBlockGoal() /*override*/;
67 // NOLINTEND
68
69public:
70 // member functions
71 // NOLINTBEGIN
72 MCAPI bool _findRandomTargetBlock(::BlockSource& region, ::BlockPos const& mobPos);
73
74 MCAPI bool _findTargetBlock();
75 // NOLINTEND
76
77public:
78 // destructor thunk
79 // NOLINTBEGIN
80 MCAPI void $dtor();
81 // NOLINTEND
82
83public:
84 // virtual function thunks
85 // NOLINTBEGIN
86 MCAPI bool $canUse();
87
88 MCAPI bool $canContinueToUse();
89
90 MCAPI void $tick();
91
92 MCAPI void $appendDebugInfo(::std::string& str) const;
93
94 MCAPI void $start();
95
96 MCAPI void $stop();
97
98
99 // NOLINTEND
100
101public:
102 // vftables
103 // NOLINTBEGIN
104 MCNAPI static void** $vftable();
105 // NOLINTEND
106};
Definition ActorDefinitionTrigger.h:14
static MCAPI void ** $vftable()
Definition BlockPos.h:19
Definition BlockSource.h:71
Definition Goal.h:14
Definition ItemDescriptor.h:24
Definition Mob.h:51
Definition Path.h:16