Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
SeedItemComponentLegacy.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/molang/MolangVersion.h"
7#include "mc/world/item/HandSlot.h"
8#include "mc/world/level/block/BlockDescriptor.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class Block;
14class BlockPos;
15class CompoundTag;
16class Item;
17class ItemStack;
18class Vec3;
19namespace Json { class Value; }
20// clang-format on
21
22class SeedItemComponentLegacy {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 8, ::Item&> mOwner;
27 ::ll::TypedStorage<8, 8, ::Block const*> mResult;
28 ::ll::TypedStorage<8, 24, ::std::vector<::BlockDescriptor>> mTargetLandBlocks;
29 ::ll::TypedStorage<1, 1, bool> mPlantAtAnyVisibleSolidSurface;
30 ::ll::TypedStorage<1, 1, bool> mIsPlanting;
31 ::ll::TypedStorage<1, 1, uchar> mFaceToPlantAt;
32 // NOLINTEND
33
34public:
35 // prevent constructor by default
36 SeedItemComponentLegacy& operator=(SeedItemComponentLegacy const&);
37 SeedItemComponentLegacy(SeedItemComponentLegacy const&);
38 SeedItemComponentLegacy();
39
40public:
41 // member functions
42 // NOLINTBEGIN
43 MCNAPI explicit SeedItemComponentLegacy(::Item& owner);
44
45 MCNAPI ::std::unique_ptr<::CompoundTag> buildNetworkTag() const;
46
47#ifdef LL_PLAT_C
48 MCNAPI bool canUseOn(::Actor& entity, ::BlockPos const& blockPos, uchar face) const;
49#endif
50
51 MCAPI bool init(::Json::Value const& data, ::MolangVersion molangVersion);
52
53 MCNAPI bool useOn(
54 ::ItemStack& instance,
55 ::Actor& actor,
56 ::BlockPos const& blockPos,
57 uchar face,
58 ::Vec3 const& clickPos,
59 ::HandSlot
60 );
61 // NOLINTEND
62
63public:
64 // static functions
65 // NOLINTBEGIN
66 MCNAPI static ::Json::Value initializeFromNetwork(::CompoundTag const& tag);
67 // NOLINTEND
68
69public:
70 // constructor thunks
71 // NOLINTBEGIN
72 MCNAPI void* $ctor(::Item& owner);
73 // NOLINTEND
74};
Definition Actor.h:116
Definition BlockPos.h:14
Definition Block.h:42
Definition CompoundTag.h:18
Definition ItemStack.h:26
Definition Item.h:73
Definition Value.h:16
MCAPI bool useOn(::ItemStack &instance, ::Actor &actor, ::BlockPos const &blockPos, uchar face, ::Vec3 const &clickPos, ::HandSlot)
MCAPI void * $ctor(::Item &owner)
MCAPI SeedItemComponentLegacy(::Item &owner)
static MCAPI ::Json::Value initializeFromNetwork(::CompoundTag const &tag)
MCAPI ::std::unique_ptr<::CompoundTag > buildNetworkTag() const
Definition Vec3.h:10