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
19canMoveDirectly(::Mob& mob, ::Vec3 const& startPos, ::Vec3 const& stopPos, int sx, int sy, int sz, bool isClimbing);
20
21MCNAPI bool canMoveDirectlyWaterBound(::Mob const& mob, ::Vec3 const& startPos, ::Vec3 const& stopPos);
22
23MCNAPI bool canWalkAbove(
24 ::Mob& mob,
25 int startX,
26 int startY,
27 int startZ,
28 int sx,
29 int sy,
30 int sz,
31 ::Vec3 const& startPos,
32 float goalDirX,
33 float goalDirZ,
34 bool isClimbing
35);
36
37MCNAPI bool
38canWalkDirectly(::Mob& mob, ::Vec3 const& startPos, ::Vec3 const& stopPos, int sx, int sy, int sz, bool isClimbing);
39
40MCNAPI bool canWalkOn(
41 ::Mob& mob,
42 int x,
43 int y,
44 int z,
45 int sx,
46 int sy,
47 int sz,
48 ::Vec3 const& startPos,
49 float goalDirX,
50 float goalDirZ,
51 bool isClimbing
52);
53
54MCNAPI bool closeToDone(::Mob const& mob, float dist);
55
56MCNAPI bool flyCondition(::Mob const& mob, ::BlockSource& region, int gridPosX, int gridPosY, int gridPosZ);
57
58MCNAPI int getSurfaceY(::Mob const& mob);
59
60MCNAPI bool invalidPathStartStatus(::Mob const& mob, ::BlockPos& startPosition);
61
62MCNAPI bool
63isDoorBlockingPath(::Mob const& mob, ::Block const& block, ::Path const& path, ::BlockPos const& nodePos, uint64 index);
64
65MCNAPI bool isInLiquid(::Mob const& mob);
66
67MCNAPI bool isInNode(::Mob const& mob, ::BlockPos const& nodePos);
68
69MCNAPI bool isStairBlockFacingMob(::Mob const& mob, ::BlockPos const& blockPos);
70
71MCNAPI bool moveCondition(::Mob const& mob, ::Block const& block);
72
73MCNAPI bool swimCondition(::Mob const&, ::BlockSource& region, int gridPosX, int gridPosY, int gridPosZ);
74
75MCNAPI void trimPathFromSun(::Mob const& mob);
76// NOLINTEND
77
78} // namespace NavigationUtility
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition Mob.h:47
Definition Path.h:16
Definition Vec3.h:10