LeviLamina
Loading...
Searching...
No Matches
MoveControl.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ai/control/Control.h"
7
8// auto generated forward declare list
9// clang-format off
10class Mob;
12class Vec3;
14// clang-format on
15
16class MoveControl : public ::Control {
17public:
18 // virtual functions
19 // NOLINTBEGIN
20 // vIndex: 0
21 virtual ~MoveControl() /*override*/ = default;
22
23 // vIndex: 1
24 virtual void initializeInternal(::Mob& mob, ::MoveControlDescription* description);
25
26 // vIndex: 2
27 virtual void tick(::MoveControlComponent& parent, ::Mob& mob);
28
29 // vIndex: 3
30 virtual void setWantedPosition(::MoveControlComponent& parent, ::Mob&, ::Vec3 const& position, float speed);
31 // NOLINTEND
32
33public:
34 // member functions
35 // NOLINTBEGIN
36 MCNAPI float
37 calculateMoveSpeed(::MoveControlComponent const& parent, ::Mob& mob, ::Vec3 const& endPosition, float maxMoveSpeed);
38
39 MCNAPI float calculateYRotation(
40 ::MoveControlComponent const& parent,
41 ::Mob const& mob,
42 ::Vec3 const& positionDifference,
43 float maxMoveSpeed
44 );
45 // NOLINTEND
46
47public:
48 // static functions
49 // NOLINTBEGIN
50 MCNAPI static ::Vec3 getDiffVector(::Vec3 const& wantedPosition, ::Mob const& mob);
51 // NOLINTEND
52
53public:
54 // static variables
55 // NOLINTBEGIN
56 MCNAPI static float const& MIN_DELTA_TO_MOVE();
57
58 MCNAPI static float const& MIN_SPEED_SQR();
59 // NOLINTEND
60
61public:
62 // virtual function thunks
63 // NOLINTBEGIN
64 MCNAPI void $initializeInternal(::Mob& mob, ::MoveControlDescription* description);
65
66 MCNAPI void $tick(::MoveControlComponent& parent, ::Mob& mob);
67
68 MCNAPI void $setWantedPosition(::MoveControlComponent& parent, ::Mob&, ::Vec3 const& position, float speed);
69 // NOLINTEND
70
71public:
72 // vftables
73 // NOLINTBEGIN
74 MCNAPI static void** $vftable();
75 // NOLINTEND
76};
Definition Control.h:5
Definition Mob.h:47
Definition MoveControlComponent.h:16
Definition MoveControl.h:16
MCAPI void $initializeInternal(::Mob &mob, ::MoveControlDescription *description)
MCAPI float calculateMoveSpeed(::MoveControlComponent const &parent, ::Mob &mob, ::Vec3 const &endPosition, float maxMoveSpeed)
MCAPI float calculateYRotation(::MoveControlComponent const &parent, ::Mob const &mob, ::Vec3 const &positionDifference, float maxMoveSpeed)
static MCAPI void ** $vftable()
MCAPI void $setWantedPosition(::MoveControlComponent &parent, ::Mob &, ::Vec3 const &position, float speed)
static MCAPI float const & MIN_DELTA_TO_MOVE()
static MCAPI float const & MIN_SPEED_SQR()
MCAPI void $tick(::MoveControlComponent &parent, ::Mob &mob)
static MCAPI ::Vec3 getDiffVector(::Vec3 const &wantedPosition, ::Mob const &mob)
Definition Vec3.h:10
Definition MoveControlDescription.h:13