LeviLamina
Loading...
Searching...
No Matches
Camel.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ai/util/ExpiringTick.h"
7#include "mc/world/actor/animal/Animal.h"
8
9// auto generated forward declare list
10// clang-format off
12class BlockPos;
13class EntityContext;
14class Vec3;
16// clang-format on
17
18class Camel : public ::Animal {
19public:
20 // Camel inner types define
21 enum class SittingState : uchar {
22 StandingAdult = 0,
23 SittingAdult = 1,
24 StandingBaby = 2,
25 SittingBaby = 3,
26 };
27
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<1, 1, ::Camel::SittingState> mLastSittingState;
32 ::ll::TypedStorage<8, 24, ::std::optional<::ExpiringTick>> mDashCooldown;
33 ::ll::TypedStorage<1, 1, bool> mWasInCooldown;
34 // NOLINTEND
35
36public:
37 // prevent constructor by default
38 Camel();
39
40public:
41 // virtual functions
42 // NOLINTBEGIN
43 virtual void aiStep() /*override*/;
44
45 virtual void normalTick() /*override*/;
46
47 virtual ::Vec3 getInterpolatedRidingOffset(float, int const) const /*override*/;
48
49 virtual float _getWalkTargetValue(::BlockPos const& pos) /*override*/;
50 // NOLINTEND
51
52public:
53 // member functions
54 // NOLINTBEGIN
55 MCAPI Camel(
56 ::ActorDefinitionGroup* definitions,
57 ::ActorDefinitionIdentifier const& definitionName,
58 ::EntityContext& entityContext
59 );
60
61 MCAPI void _monitorSitting();
62
63 MCAPI ::std::optional<::ExpiringTick> getDashCooldown() const;
64 // NOLINTEND
65
66public:
67 // constructor thunks
68 // NOLINTBEGIN
69 MCAPI void* $ctor(
70 ::ActorDefinitionGroup* definitions,
71 ::ActorDefinitionIdentifier const& definitionName,
72 ::EntityContext& entityContext
73 );
74 // NOLINTEND
75
76public:
77 // virtual function thunks
78 // NOLINTBEGIN
79 MCAPI void $aiStep();
80
81 MCAPI void $normalTick();
82
83 MCAPI ::Vec3 $getInterpolatedRidingOffset(float, int const) const;
84
85 MCAPI float $_getWalkTargetValue(::BlockPos const& pos);
86
87
88 // NOLINTEND
89
90public:
91 // vftables
92 // NOLINTBEGIN
93 MCAPI static void** $vftable();
94 // NOLINTEND
95};
Definition ActorDefinitionGroup.h:37
Definition BlockPos.h:21
Definition EntityContext.h:17
Definition Vec3.h:10
Definition ActorDefinitionIdentifier.h:15