LeviLamina
Loading...
Searching...
No Matches
NavigationUtility.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Block;
8class BlockPos;
9class BlockSource;
10class Mob;
11class Path;
12class Vec3;
13// clang-format on
14
15namespace NavigationUtility {
16// functions
17// NOLINTBEGIN
18MCNAPI bool canFlyDirectly(::Mob& mob, ::Vec3 const& startPos, ::Vec3 const& stopPos);
19
20MCNAPI bool
21canMoveDirectly(::Mob& mob, ::Vec3 const& startPos, ::Vec3 const& stopPos, int sx, int sy, int sz, bool isClimbing);
22
23MCNAPI bool canMoveDirectlyWaterBound(::Mob const& mob, ::Vec3 const& startPos, ::Vec3 const& stopPos);
24
25MCNAPI bool canWalkAbove(
26 ::Mob& mob,
27 int startX,
28 int startY,
29 int startZ,
30 int sx,
31 int sy,
32 int sz,
33 ::Vec3 const& startPos,
34 float goalDirX,
35 float goalDirZ,
36 bool isClimbing
37);
38
39MCNAPI bool
40canWalkDirectly(::Mob& mob, ::Vec3 const& startPos, ::Vec3 const& stopPos, int sx, int sy, int sz, bool isClimbing);
41
42MCNAPI bool canWalkOn(
43 ::Mob& mob,
44 int x,
45 int y,
46 int z,
47 int sx,
48 int sy,
49 int sz,
50 ::Vec3 const& startPos,
51 float goalDirX,
52 float goalDirZ,
53 bool isClimbing
54);
55
56MCNAPI bool closeToDone(::Mob const& mob, float dist);
57
58MCNAPI bool flyCondition(::Mob const& mob, ::BlockSource& region, int gridPosX, int gridPosY, int gridPosZ);
59
60MCNAPI float
61getHeightDifference(::BlockSource& region, ::Vec3 const& currentPos, ::Block const& block, ::BlockPos const& blockPos);
62
63MCNAPI ::BlockPos const getMobScale(::Mob const& mob);
64
65MCNAPI int getSurfaceY(::Mob const& mob);
66
67MCNAPI bool invalidPathStartStatus(::Mob const& mob, ::BlockPos& startPosition);
68
69MCNAPI bool
70isDoorBlockingPath(::Mob const& mob, ::Block const& block, ::Path const& path, ::BlockPos const& nodePos, uint64 index);
71
72MCNAPI bool isInLiquid(::Mob const& mob);
73
74MCNAPI bool isInNode(::Mob const& mob, ::BlockPos const& nodePos);
75
76MCNAPI bool isLastNode(uint64 index, ::Path const& path);
77
78MCNAPI bool isStableDestination(::Mob const& mob, ::BlockPos& pos);
79
80MCNAPI bool isStairBlockFacingMob(::Mob const& mob, ::BlockPos const& blockPos);
81
82MCNAPI bool moveCondition(::Mob const& mob, ::Block const& block);
83
84MCNAPI bool swimCondition(::Mob const& region, ::BlockSource& gridPosX, int gridPosY, int gridPosZ, int);
85
86MCNAPI void trimPathFromSun(::Mob const& mob);
87// NOLINTEND
88
89} // namespace NavigationUtility
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition Mob.h:57
Definition Path.h:16
Definition Vec3.h:10