LeviLamina
Loading...
Searching...
No Matches
EatBlockGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ActorDefinitionTrigger.h"
7#include "mc/world/actor/ai/goal/BaseGoal.h"
8#include "mc/world/level/block/BlockType.h"
9
10// auto generated forward declare list
11// clang-format off
12class ExpressionNode;
13class Mob;
14struct GoalId;
15// clang-format on
16
17class EatBlockGoal : public ::BaseGoal {
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
22 ::ll::TypedStorage<4, 4, int> mTicksUntilEat;
23 ::ll::TypedStorage<4, 4, int> mTotalTicksUntilEat;
24 ::ll::TypedStorage<8, 104, ::ActorDefinitionTrigger> mOnEat;
25 ::ll::TypedStorage<8, 24, ::std::vector<::ExpressionNode>> mSuccessChance;
26 ::ll::TypedStorage<8, 64, ::std::unordered_map<::BlockType const*, ::BlockType const*>> mEatAndReplaceBlockPairs;
27 // NOLINTEND
28
29public:
30 // prevent constructor by default
31 EatBlockGoal& operator=(EatBlockGoal const&);
32 EatBlockGoal(EatBlockGoal const&);
33 EatBlockGoal();
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual bool canUse() /*override*/;
39
40 virtual void start() /*override*/;
41
42 virtual void stop() /*override*/;
43
44 virtual bool canContinueToUse() /*override*/;
45
46 virtual void tick() /*override*/;
47
48 virtual void appendDebugInfo(::std::string& str) const /*override*/;
49 // NOLINTEND
50
51public:
52 // member functions
53 // NOLINTBEGIN
54 MCAPI EatBlockGoal(::Mob& mob, ::std::string name, ::GoalId const& goalId);
55 // NOLINTEND
56
57public:
58 // constructor thunks
59 // NOLINTBEGIN
60 MCAPI void* $ctor(::Mob& mob, ::std::string name, ::GoalId const& goalId);
61 // NOLINTEND
62
63public:
64 // virtual function thunks
65 // NOLINTBEGIN
66 MCAPI bool $canUse();
67
68 MCAPI void $start();
69
70 MCFOLD void $stop();
71
72 MCAPI bool $canContinueToUse();
73
74 MCAPI void $tick();
75
76 MCAPI void $appendDebugInfo(::std::string& str) const;
77
78
79 // NOLINTEND
80
81public:
82 // vftables
83 // NOLINTBEGIN
84 MCNAPI static void** $vftable();
85 // NOLINTEND
86};
Definition BaseGoal.h:12
static MCAPI void ** $vftable()
Definition ExpressionNode.h:35
Definition Mob.h:56
Definition GoalId.h:5