LeviLamina
Loading...
Searching...
No Matches
NapGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/world/actor/ActorFilterGroup.h"
8#include "mc/world/actor/ai/goal/Goal.h"
9#include "mc/world/level/Tick.h"
10
11// auto generated forward declare list
12// clang-format off
13class Mob;
14// clang-format on
15
16class NapGoal : public ::Goal {
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
21 ::ll::TypedStorage<8, 8, ::Tick> mCooldown;
22 ::ll::TypedStorage<8, 8, ::Tick> mDetectMobsTimer;
23 ::ll::TypedStorage<1, 1, bool> mInvalidCooldown;
24 ::ll::TypedStorage<4, 4, int const> mNapCooldownMin;
25 ::ll::TypedStorage<4, 4, int const> mNapCooldownMax;
26 ::ll::TypedStorage<4, 12, ::Vec3 const> mDetectRange;
27 ::ll::TypedStorage<8, 64, ::ActorFilterGroup> mCanNapFilters;
28 ::ll::TypedStorage<8, 64, ::ActorFilterGroup> mWakeMobExceptions;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 NapGoal& operator=(NapGoal const&);
34 NapGoal(NapGoal const&);
35 NapGoal();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual bool canUse() /*override*/;
41
42 virtual void start() /*override*/;
43
44 virtual void stop() /*override*/;
45
46 virtual bool canContinueToUse() /*override*/;
47
48 virtual void appendDebugInfo(::std::string& str) const /*override*/;
49
50 virtual ~NapGoal() /*override*/ = default;
51 // NOLINTEND
52
53public:
54 // member functions
55 // NOLINTBEGIN
56 MCAPI NapGoal(
57 ::Mob& mob,
58 float cooldownTimeMin,
59 float cooldownTimeMax,
60 float detectMobDistXZ,
61 float detectMobDistY,
62 ::ActorFilterGroup const& canNapFilters,
63 ::ActorFilterGroup const& wakeMobExceptions
64 );
65
66 MCAPI bool _canSleep(::Tick const& currentTick) const;
67
68 MCAPI bool _detectsMobs() const;
69 // NOLINTEND
70
71public:
72 // constructor thunks
73 // NOLINTBEGIN
74 MCAPI void* $ctor(
75 ::Mob& mob,
76 float cooldownTimeMin,
77 float cooldownTimeMax,
78 float detectMobDistXZ,
79 float detectMobDistY,
80 ::ActorFilterGroup const& canNapFilters,
81 ::ActorFilterGroup const& wakeMobExceptions
82 );
83 // NOLINTEND
84
85public:
86 // virtual function thunks
87 // NOLINTBEGIN
88 MCAPI bool $canUse();
89
90 MCAPI void $start();
91
92 MCAPI void $stop();
93
94 MCAPI bool $canContinueToUse();
95
96 MCAPI void $appendDebugInfo(::std::string& str) const;
97
98
99 // NOLINTEND
100
101public:
102 // vftables
103 // NOLINTBEGIN
104 MCNAPI static void** $vftable();
105 // NOLINTEND
106};
Definition ActorFilterGroup.h:19
Definition Goal.h:14
Definition Mob.h:50
static MCAPI void ** $vftable()
Definition Tick.h:5