LeviLamina
Loading...
Searching...
No Matches
DecoratedPotBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/BlockSupportType.h"
7#include "mc/world/level/block/FaceDirectionalActorBlock.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Block;
13class BlockActor;
14class BlockPos;
15class BlockSource;
16class CompoundTag;
18class ItemInstance;
19class ItemStack;
20class Player;
21namespace BlockEvents { class BlockPlayerInteractEvent; }
22// clang-format on
23
25public:
26 // virtual functions
27 // NOLINTBEGIN
28 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const* blockActor) const /*override*/;
29
30 virtual ::Block const* playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const
31 /*override*/;
32
33 virtual void onRemove(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
34
35 virtual bool isInteractiveBlock() const /*override*/;
36
37 virtual void onProjectileHit(::BlockSource& region, ::BlockPos const& pos, ::Actor const&) const /*override*/;
38
39 virtual bool canProvideSupport(::Block const&, uchar face, ::BlockSupportType type) const /*override*/;
40
41 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
42 /*override*/;
43
44 virtual bool hasComparatorSignal() const /*override*/;
45
46 virtual int getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const
47 /*override*/;
48 // NOLINTEND
49
50public:
51 // member functions
52 // NOLINTBEGIN
53 MCAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
54 // NOLINTEND
55
56public:
57 // static functions
58 // NOLINTBEGIN
59 MCAPI static ::std::unique_ptr<::CompoundTag>
60 getItemInstanceUserData(::gsl::not_null<::DecoratedPotBlockActor const*> pot);
61
62 MCAPI static ::std::vector<::ItemStack> getSherdItems(::DecoratedPotBlockActor const& decoratedPotBlockActor);
63
64 MCAPI static bool isShatteringItem(::ItemStack const& item);
65 // NOLINTEND
66
67public:
68 // virtual function thunks
69 // NOLINTBEGIN
70 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const* blockActor) const;
71
72 MCAPI ::Block const* $playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const;
73
74 MCAPI void $onRemove(::BlockSource& region, ::BlockPos const& pos) const;
75
76 MCFOLD bool $isInteractiveBlock() const;
77
78 MCAPI void $onProjectileHit(::BlockSource& region, ::BlockPos const& pos, ::Actor const&) const;
79
80 MCFOLD bool $canProvideSupport(::Block const&, uchar face, ::BlockSupportType type) const;
81
82 MCFOLD bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
83
84 MCFOLD bool $hasComparatorSignal() const;
85
86 MCAPI int $getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const;
87
88
89 // NOLINTEND
90
91public:
92 // vftables
93 // NOLINTBEGIN
94 MCAPI static void** $vftable();
95 // NOLINTEND
96};
Definition Actor.h:113
Definition BlockActor.h:29
Definition BlockPlayerInteractEvent.h:18
Definition BlockPos.h:17
Definition BlockSource.h:71
Definition Block.h:41
Definition CompoundTag.h:18
Definition DecoratedPotBlockActor.h:23
Definition DecoratedPotBlock.h:24
Definition FaceDirectionalActorBlock.h:18
Definition ItemInstance.h:15
Definition ItemStack.h:26
Definition Player.h:129