LeviLamina
Loading...
Searching...
No Matches
FloatWanderGoal.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/util/FloatRange.h"
8#include "mc/world/actor/ai/goal/Goal.h"
9
10// auto generated forward declare list
11// clang-format off
12class BlockSource;
13class Mob;
14class Random;
15// clang-format on
16
17class FloatWanderGoal : public ::Goal {
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
22 ::ll::TypedStorage<4, 12, ::Vec3> mTargetPos;
23 ::ll::TypedStorage<4, 4, int> mFloatDuration;
24 ::ll::TypedStorage<4, 4, float> mTargetXZDist;
25 ::ll::TypedStorage<4, 4, float> mTargetYDist;
26 ::ll::TypedStorage<4, 4, float> mSurfaceXZDist;
27 ::ll::TypedStorage<4, 4, float> mSurfaceYDist;
28 ::ll::TypedStorage<4, 4, float> mYOffset;
29 ::ll::TypedStorage<1, 1, bool> mMustReach;
30 ::ll::TypedStorage<1, 1, bool> mRandomReselect;
31 ::ll::TypedStorage<1, 1, bool> mUseHomePositionRestriction;
32 ::ll::TypedStorage<1, 1, bool> mAdditionalCollisionBuffer;
33 ::ll::TypedStorage<1, 1, bool> mAllowNavigatingThroughLiquids;
34 ::ll::TypedStorage<1, 1, bool> mNavigateAroundSurface;
35 ::ll::TypedStorage<4, 8, ::FloatRange> mFloatDurationRange;
36 // NOLINTEND
37
38public:
39 // prevent constructor by default
40 FloatWanderGoal& operator=(FloatWanderGoal const&);
43
44public:
45 // virtual functions
46 // NOLINTBEGIN
47 // vIndex: 1
48 virtual bool canUse() /*override*/;
49
50 // vIndex: 6
51 virtual void tick() /*override*/;
52
53 // vIndex: 7
54 virtual void appendDebugInfo(::std::string& str) const /*override*/;
55
56 // vIndex: 0
57 virtual ~FloatWanderGoal() /*override*/ = default;
58 // NOLINTEND
59
60public:
61 // member functions
62 // NOLINTBEGIN
63 MCNAPI bool _canReach(::Vec3 const& targetPos, float dist) const;
64
65 MCNAPI ::Vec3 _chooseRandomPosition(::Vec3 const& mobPos, ::Random& random);
66
67 MCNAPI ::Vec3 const _getSuitableTargetPosition();
68
69 MCNAPI bool const _isPosCloseToSurface(
70 ::BlockSource& region,
71 ::Vec3 const& targetPos,
72 int distanceToBlocksY,
73 int distanceToBlocksXZ
74 ) const;
75 // NOLINTEND
76
77public:
78 // virtual function thunks
79 // NOLINTBEGIN
80 MCNAPI bool $canUse();
81
82 MCNAPI void $tick();
83
84 MCNAPI void $appendDebugInfo(::std::string& str) const;
85 // NOLINTEND
86
87public:
88 // vftables
89 // NOLINTBEGIN
90 MCNAPI static void** $vftable();
91 // NOLINTEND
92};
Definition BlockSource.h:67
Definition FloatWanderGoal.h:17
MCAPI bool _canReach(::Vec3 const &targetPos, float dist) const
MCAPI bool const _isPosCloseToSurface(::BlockSource &region, ::Vec3 const &targetPos, int distanceToBlocksY, int distanceToBlocksXZ) const
MCAPI void $appendDebugInfo(::std::string &str) const
MCAPI::Vec3 _chooseRandomPosition(::Vec3 const &mobPos, ::Random &random)
static MCAPI void ** $vftable()
MCAPI void $tick()
MCAPI::Vec3 const _getSuitableTargetPosition()
MCAPI bool $canUse()
Definition Goal.h:14
Definition Mob.h:47
Definition Random.h:11
Definition Vec3.h:10