19class NavigationComponent {
23 bool mAvoidDamageBlocks : 1;
24 bool mAvoidPortals : 1;
29 bool mCanPathOverLava : 1;
30 bool mCanWalkInLava : 1;
32 bool mCanOpenDoors : 1;
33 bool mCanOpenIronDoors : 1;
34 bool mCanPassDoors : 1;
36 bool mIsAmphibious : 1;
37 bool mIsFollowingRivers : 1;
38 bool mHasEndPathRadius : 1;
39 bool mHasDestination : 1;
40 ::ll::TypedStorage<4, 4, int> mTick;
41 ::ll::TypedStorage<4, 4, int> mTickTimeout;
42 ::ll::TypedStorage<4, 4, int> mLastStuckCheck;
43 ::ll::TypedStorage<4, 4, float> mEndPathRadiusSqr;
44 ::ll::TypedStorage<4, 4, float> mSpeed;
45 ::ll::TypedStorage<4, 4, float> mTerminationThreshold;
46 ::ll::TypedStorage<4, 12, ::Vec3> mLastStuckCheckPosition;
47 ::ll::TypedStorage<4, 12, ::Vec3> mTargetOffset;
48 ::ll::TypedStorage<8, 24, ::std::vector<::BlockDescriptor>> mBlocksToAvoid;
49 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PathNavigation>> mNavigation;
50 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Path>> mPath;
55 NavigationComponent& operator=(NavigationComponent
const&);
56 NavigationComponent();
61 MCAPI NavigationComponent(::NavigationComponent
const& other);
63 MCAPI
float getMaxDistance(
::Actor const& owner)
const;
69 MCAPI
bool moveTo(
::Mob& owner, ::std::unique_ptr<::Path> newPath,
float speed);
71 MCAPI
bool moveTo(
::Mob& owner,
::Actor const& target,
float speed);
73 MCAPI ::NavigationComponent& operator=(::NavigationComponent&&);
75 MCAPI ~NavigationComponent();
81 MCAPI
void* $ctor(::NavigationComponent
const& other);