LeviLamina
Loading...
Searching...
No Matches
SniffGoal.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/deps/shared_types/shared_types/FloatRange.h"
8#include "mc/world/actor/ActorType.h"
9#include "mc/world/actor/ai/goal/BaseGoal.h"
10#include "mc/world/level/Tick.h"
11
12// auto generated forward declare list
13// clang-format off
14class Mob;
16// clang-format on
17
18class SniffGoal : public ::BaseGoal {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
23 ::ll::TypedStorage<4, 12, ::Vec3> mSniffingRadius;
24 ::ll::TypedStorage<4, 8, ::SharedTypes::FloatRange> mCooldownRangeSeconds;
25 ::ll::TypedStorage<2, 2, ushort> mDurationTicks;
26 ::ll::TypedStorage<8, 8, ::Tick> mEndTick;
27 ::ll::TypedStorage<8, 8, ::Tick> mCooldownExpiryTick;
28 ::ll::TypedStorage<4, 4, float> mSuspicionRadiusHorizontal;
29 ::ll::TypedStorage<4, 4, float> mSuspicionRadiusVertical;
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 SniffGoal& operator=(SniffGoal const&);
35 SniffGoal(SniffGoal const&);
36 SniffGoal();
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual bool canUse() /*override*/;
42
43 virtual bool canContinueToUse() /*override*/;
44
45 virtual void start() /*override*/;
46
47 virtual void stop() /*override*/;
48
49 virtual void tick() /*override*/;
50
51 virtual void appendDebugInfo(::std::string& str) const /*override*/;
52 // NOLINTEND
53
54public:
55 // member functions
56 // NOLINTBEGIN
57 MCAPI explicit SniffGoal(::Mob& mob);
58
59 MCAPI ::std::vector<::DistanceSortedActor> _fetchNearbySniffableActors(::ActorType actorType) const;
60
61 MCAPI ::std::optional<::DistanceSortedActor> _fetchNearestSniffableActor() const;
62 // NOLINTEND
63
64public:
65 // constructor thunks
66 // NOLINTBEGIN
67 MCAPI void* $ctor(::Mob& mob);
68 // NOLINTEND
69
70public:
71 // virtual function thunks
72 // NOLINTBEGIN
73 MCAPI bool $canUse();
74
75 MCAPI bool $canContinueToUse();
76
77 MCAPI void $start();
78
79 MCAPI void $stop();
80
81 MCFOLD void $tick();
82
83 MCAPI void $appendDebugInfo(::std::string& str) const;
84
85
86 // NOLINTEND
87
88public:
89 // vftables
90 // NOLINTBEGIN
91 MCNAPI static void** $vftable();
92 // NOLINTEND
93};
Definition Mob.h:57
static MCAPI void ** $vftable()
Definition DistanceSortedActor.h:10