LeviLamina
Loading...
Searching...
No Matches
MoveToPOIGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ai/goal/BaseMoveToGoal.h"
7#include "mc/world/actor/ai/village/POIType.h"
8#include "mc/world/phys/AABB.h"
9
10// auto generated forward declare list
11// clang-format off
12class BlockPos;
13class BlockSource;
14class Mob;
15class POIInstance;
16class Path;
17class Vec3;
18// clang-format on
19
20class MoveToPOIGoal : public ::BaseMoveToGoal {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<4, 4, ::POIType> mPOIType;
25 ::ll::TypedStorage<4, 24, ::AABB> mPOIBoundingBox;
26 ::ll::TypedStorage<1, 1, bool> mUsingBoundingBox;
27 ::ll::TypedStorage<1, 1, bool> mRequireSameY;
28 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Path>> mPath;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 MoveToPOIGoal();
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual bool canUse() /*override*/;
39
40 virtual void tick() /*override*/;
41
42 virtual void stop() /*override*/;
43
44 virtual bool isValidTarget(::BlockSource& region, ::BlockPos const& pos) /*override*/;
45
46 virtual void appendDebugInfo(::std::string& str) const /*override*/;
47
48 virtual void _moveToBlock() /*override*/;
49
50 virtual ::Vec3 _getTargetPosition() const /*override*/;
51
52 virtual ::std::weak_ptr<::POIInstance> _getOwnedPOI(::POIType type) const;
53
54 virtual ~MoveToPOIGoal() /*override*/;
55 // NOLINTEND
56
57public:
58 // member functions
59 // NOLINTBEGIN
60 MCAPI MoveToPOIGoal(::Mob& mob, float speedModifier, ::POIType poiType, float coolddownTimeout);
61
62 MCAPI bool _canReachPOI(::Vec3 const& pos, float radiusSqr, bool usingBoundingBox);
63
64 MCAPI void _updatePOIBooking();
65
66 MCAPI bool getPOI(::POIType type);
67 // NOLINTEND
68
69public:
70 // constructor thunks
71 // NOLINTBEGIN
72 MCAPI void* $ctor(::Mob& mob, float speedModifier, ::POIType poiType, float coolddownTimeout);
73 // NOLINTEND
74
75public:
76 // destructor thunk
77 // NOLINTBEGIN
78 MCAPI void $dtor();
79 // NOLINTEND
80
81public:
82 // virtual function thunks
83 // NOLINTBEGIN
84 MCAPI bool $canUse();
85
86 MCAPI void $tick();
87
88 MCAPI void $stop();
89
90 MCAPI bool $isValidTarget(::BlockSource& region, ::BlockPos const& pos);
91
92 MCAPI void $appendDebugInfo(::std::string& str) const;
93
94 MCAPI void $_moveToBlock();
95
96 MCAPI ::Vec3 $_getTargetPosition() const;
97
98 MCAPI ::std::weak_ptr<::POIInstance> $_getOwnedPOI(::POIType type) const;
99
100
101 // NOLINTEND
102
103public:
104 // vftables
105 // NOLINTBEGIN
106 MCNAPI static void** $vftable();
107 // NOLINTEND
108};
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition Mob.h:50
static MCAPI void ** $vftable()
Definition POIInstance.h:19
Definition Path.h:16
Definition Vec3.h:10