Skip to content
LeviLamina

API Reference

On this page

Loading...
Searching...
No Matches
SnackGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/TempEPtr.h"
7#include "mc/world/actor/ai/goal/BaseGoal.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class ItemDescriptor;
13class ItemStack;
14class Mob;
15class Path;
16// clang-format on
17
18class SnackGoal : public ::BaseGoal {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
23 ::ll::TypedStorage<8, 24, ::std::vector<::ItemDescriptor>> mItems;
24 ::ll::TypedStorage<8, 8, uint64> mCooldown;
25 ::ll::TypedStorage<4, 4, int> mSnackCooldownTotal;
26 ::ll::TypedStorage<4, 4, int> mCooldownMin;
27 ::ll::TypedStorage<4, 4, int> mStopChance;
28 ::ll::TypedStorage<8, 40, ::TempEPtr<::Actor>> mTarget;
29 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Path>> mPath;
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 SnackGoal& operator=(SnackGoal const&);
35 SnackGoal(SnackGoal const&);
36 SnackGoal();
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ~SnackGoal() /*override*/ = default;
42
43 virtual bool canUse() /*override*/;
44
45 virtual void start() /*override*/;
46
47 virtual void stop() /*override*/;
48
49 virtual void tick() /*override*/;
50
51 virtual bool canContinueToUse() /*override*/;
52
53 virtual void appendDebugInfo(::std::string& str) const /*override*/;
54
55 virtual int getRandomEatingEnd() const;
56 // NOLINTEND
57
58public:
59 // member functions
60 // NOLINTBEGIN
61 MCAPI bool _hasSnackableItems();
62
63 MCAPI void _updateHand(::ItemStack const& item);
64 // NOLINTEND
65
66public:
67 // virtual function thunks
68 // NOLINTBEGIN
69 MCAPI bool $canUse();
70
71 MCAPI void $start();
72
73 MCAPI void $stop();
74
75 MCAPI void $tick();
76
77 MCAPI bool $canContinueToUse();
78
79 MCAPI void $appendDebugInfo(::std::string& str) const;
80
81 MCFOLD int $getRandomEatingEnd() const;
82
83
84 // NOLINTEND
85
86public:
87 // vftables
88 // NOLINTBEGIN
89 MCNAPI static void** $vftable();
90 // NOLINTEND
91};
Definition Actor.h:113
Definition BaseGoal.h:12
Definition ItemDescriptor.h:25
Definition ItemStack.h:26
Definition Mob.h:56
Definition Path.h:16
static MCAPI void ** $vftable()