LeviLamina
Loading...
Searching...
No Matches
ShulkerBoxBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/optional_ref.h"
7#include "mc/world/level/block/BlockSupportType.h"
8#include "mc/world/level/block/ChestBlock.h"
9
10// auto generated forward declare list
11// clang-format off
12class AABB;
13class Actor;
14class BaseGameVersion;
15class Block;
16class BlockPos;
17class BlockSource;
18class Container;
21class Player;
22class Vec3;
23// clang-format on
24
25class ShulkerBoxBlock : public ::ChestBlock {
26public:
27 // virtual functions
28 // NOLINTBEGIN
29 virtual ::Block const* playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const
30 /*override*/;
31
32 virtual ::Block const&
33 getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue) const
34 /*override*/;
35
36 virtual void setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
37
38 virtual bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const
39 /*override*/;
40
41 virtual ::AABB getCollisionShape(
42 ::Block const& block,
43 ::IConstBlockSource const& region,
44 ::BlockPos const& pos,
46 ) const /*override*/;
47
48 virtual ::AABB const& getOutline(
49 ::Block const& block,
50 ::IConstBlockSource const& region,
51 ::BlockPos const& pos,
52 ::AABB& bufferValue
53 ) const /*override*/;
54
55 virtual bool breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const /*override*/;
56
57 virtual bool canProvideSupport(::Block const&, uchar, ::BlockSupportType) const /*override*/;
58
59 virtual ~ShulkerBoxBlock() /*override*/ = default;
60 // NOLINTEND
61
62public:
63 // static variables
64 // NOLINTBEGIN
65 MCAPI static ::BaseGameVersion const& SHULKER_BOX_DOESNT_BREAK_FALLING_BLOCK_VERSION();
66 // NOLINTEND
67
68public:
69 // virtual function thunks
70 // NOLINTBEGIN
71 MCAPI ::Block const* $playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const;
72
73 MCAPI ::Block const& $getPlacementBlock(
74 ::Actor const& by,
75 ::BlockPos const& pos,
76 uchar face,
77 ::Vec3 const& clickPos,
78 int itemValue
79 ) const;
80
81 MCAPI void $setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const;
82
83 MCAPI bool $dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const;
84
85 MCAPI ::AABB $getCollisionShape(
86 ::Block const& block,
87 ::IConstBlockSource const& region,
88 ::BlockPos const& pos,
90 ) const;
91
92 MCAPI ::AABB const& $getOutline(
93 ::Block const& block,
94 ::IConstBlockSource const& region,
95 ::BlockPos const& pos,
96 ::AABB& bufferValue
97 ) const;
98
99 MCAPI bool $breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const;
100
101 MCFOLD bool $canProvideSupport(::Block const&, uchar, ::BlockSupportType) const;
102
103
104 // NOLINTEND
105
106public:
107 // vftables
108 // NOLINTBEGIN
109 MCAPI static void** $vftable();
110 // NOLINTEND
111};
Definition AABB.h:18
Definition Actor.h:105
Definition BaseGameVersion.h:8
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition Block.h:43
Definition Container.h:33
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:25
Definition Player.h:125
Definition ShulkerBoxBlock.h:25
Definition Vec3.h:10
Definition optional_ref.h:10