Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
DropItemForGoal.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/legacy/ActorUniqueID.h"
9#include "mc/world/actor/ActorDefinitionTrigger.h"
10#include "mc/world/actor/ai/goal/BaseMoveToBlockGoal.h"
11
12// auto generated forward declare list
13// clang-format off
14class BlockPos;
15class BlockSource;
16class Mob;
17struct GoalId;
18struct MobDescriptor;
19// clang-format on
20
21class DropItemForGoal : public ::BaseMoveToBlockGoal {
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<1, 1, bool> mHasDroppedItem;
26 ::ll::TypedStorage<4, 4, int> mCooldownRemaining;
27 ::ll::TypedStorage<4, 4, int> mTicksBeforePickup;
28 ::ll::TypedStorage<4, 4, int> mTotalCooldownTicks;
29 ::ll::TypedStorage<4, 4, float> mDropItemChance;
30 ::ll::TypedStorage<4, 4, float> mPreferredSquareDistance;
31 ::ll::TypedStorage<4, 4, float> mMinimumTeleportDistance;
32 ::ll::TypedStorage<4, 4, float> mLookAtTargetMaxHeadHeight;
33 ::ll::TypedStorage<8, 32, ::std::string> mLootTable;
34 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mDropForID;
35 ::ll::TypedStorage<8, 104, ::ActorDefinitionTrigger> mOnDropAttempt;
36 ::ll::TypedStorage<4, 8, ::SharedTypes::FloatRange> mTimeOfDayRange;
37 ::ll::TypedStorage<4, 12, ::Vec3> mTargetRange;
38 ::ll::TypedStorage<4, 12, ::Vec3> mTeleportDistanceFromTarget;
39 ::ll::TypedStorage<8, 24, ::std::vector<::MobDescriptor>> mTargetFilter;
40 // NOLINTEND
41
42public:
43 // prevent constructor by default
44 DropItemForGoal();
45
46public:
47 // virtual functions
48 // NOLINTBEGIN
49 virtual bool canUse() /*override*/;
50
51 virtual bool canContinueToUse() /*override*/;
52
53 virtual void start() /*override*/;
54
55 virtual void stop() /*override*/;
56
57 virtual void tick() /*override*/;
58
59 virtual bool findTargetBlock() /*override*/;
60
61 virtual bool isValidTarget(::BlockSource& region, ::BlockPos const& pos) /*override*/;
62
63 virtual void appendDebugInfo(::std::string& str) const /*override*/;
64 // NOLINTEND
65
66public:
67 // member functions
68 // NOLINTBEGIN
69 MCNAPI DropItemForGoal(::Mob& mob, ::std::string name, ::GoalId const& goalId);
70 // NOLINTEND
71
72public:
73 // constructor thunks
74 // NOLINTBEGIN
75 MCNAPI void* $ctor(::Mob& mob, ::std::string name, ::GoalId const& goalId);
76 // NOLINTEND
77
78public:
79 // virtual function thunks
80 // NOLINTBEGIN
81 MCNAPI bool $canUse();
82
83 MCNAPI bool $canContinueToUse();
84
85 MCNAPI void $start();
86
87 MCNAPI void $stop();
88
89 MCNAPI void $tick();
90
91 MCNAPI bool $findTargetBlock();
92
93 MCNAPI bool $isValidTarget(::BlockSource& region, ::BlockPos const& pos);
94
95 MCNAPI void $appendDebugInfo(::std::string& str) const;
96
97
98 // NOLINTEND
99
100public:
101 // vftables
102 // NOLINTBEGIN
103 MCNAPI static void** $vftable();
104 // NOLINTEND
105};
Definition BlockPos.h:14
Definition BlockSource.h:72
MCAPI DropItemForGoal(::Mob &mob, ::std::string name, ::GoalId const &goalId)
MCAPI bool $findTargetBlock()
MCAPI bool $isValidTarget(::BlockSource &region, ::BlockPos const &pos)
MCAPI void $stop()
MCAPI void $appendDebugInfo(::std::string &str) const
MCAPI bool $canContinueToUse()
static MCAPI void ** $vftable()
MCAPI void $tick()
MCAPI bool $canUse()
MCAPI void $start()
MCAPI void * $ctor(::Mob &mob, ::std::string name, ::GoalId const &goalId)
Definition Mob.h:58
Definition GoalId.h:5
Definition MobDescriptor.h:8