LeviLamina
Loading...
Searching...
No Matches
ShareItemsGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ai/goal/BaseGoal.h"
7#include "mc/world/item/ItemStack.h"
8
9// auto generated forward declare list
10// clang-format off
11class Mob;
12class Path;
13struct MobDescriptor;
14// clang-format on
15
16class ShareItemsGoal : public ::BaseGoal {
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
21 ::ll::TypedStorage<4, 4, int> mThrowCountdown;
22 ::ll::TypedStorage<4, 4, int> mSearchRange;
23 ::ll::TypedStorage<4, 4, float> mSpeedModifier;
24 ::ll::TypedStorage<4, 4, float> mGoalRadiusSq;
25 ::ll::TypedStorage<4, 4, int> mTimeToRecalcPath;
26 ::ll::TypedStorage<8, 24, ::std::vector<::MobDescriptor>> mMobFilters;
27 ::ll::TypedStorage<8, 152, ::ItemStack> mItemToShare;
28 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Path>> mPath;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 ShareItemsGoal& operator=(ShareItemsGoal const&);
34 ShareItemsGoal(ShareItemsGoal const&);
35 ShareItemsGoal();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual bool canUse() /*override*/;
41
42 virtual bool canContinueToUse() /*override*/;
43
44 virtual void start() /*override*/;
45
46 virtual void stop() /*override*/;
47
48 virtual void tick() /*override*/;
49
50 virtual void appendDebugInfo(::std::string& str) const /*override*/;
51 // NOLINTEND
52
53public:
54 // member functions
55 // NOLINTBEGIN
56 MCAPI ShareItemsGoal(
57 ::Mob& mob,
58 ::std::vector<::MobDescriptor> const& mobFilters,
59 float speedModifier,
60 int searchRange,
61 float goalRadius
62 );
63
64 MCAPI ::std::pair<int, ::ItemStack>
65 selectEntityToShareWith(::std::vector<::std::pair<int, ::ItemStack>> const& shareableItems);
66 // NOLINTEND
67
68public:
69 // constructor thunks
70 // NOLINTBEGIN
71 MCAPI void* $ctor(
72 ::Mob& mob,
73 ::std::vector<::MobDescriptor> const& mobFilters,
74 float speedModifier,
75 int searchRange,
76 float goalRadius
77 );
78 // NOLINTEND
79
80public:
81 // virtual function thunks
82 // NOLINTBEGIN
83 MCAPI bool $canUse();
84
85 MCAPI bool $canContinueToUse();
86
87 MCAPI void $start();
88
89 MCAPI void $stop();
90
91 MCAPI void $tick();
92
93 MCAPI void $appendDebugInfo(::std::string& str) const;
94
95
96 // NOLINTEND
97
98public:
99 // vftables
100 // NOLINTBEGIN
101 MCNAPI static void** $vftable();
102 // NOLINTEND
103};
Definition Mob.h:57
Definition Path.h:16
static MCAPI void ** $vftable()
Definition MobDescriptor.h:13