Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
PathBlock.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/item/HandSlot.h"
8#include "mc/world/level/block/BlockDescriptor.h"
9#include "mc/world/level/block/BlockSupportType.h"
10#include "mc/world/level/block/BlockType.h"
11
12// auto generated forward declare list
13// clang-format off
14class AABB;
15class Actor;
16class Block;
17class BlockPos;
18class BlockSource;
21class ItemStack;
22namespace BlockEvents { class BlockPlayerInteractEvent; }
23namespace BlockEvents { class BlockQueuedTickEvent; }
24// clang-format on
25
26class PathBlock : public ::BlockType {
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 176, ::BlockDescriptor const> mBlockToTillInto;
31 ::ll::TypedStorage<8, 176, ::BlockDescriptor const> mBaseBlock;
32 // NOLINTEND
33
34public:
35 // prevent constructor by default
36 PathBlock();
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ::AABB getCollisionShape(
42 ::Block const&,
44 ::BlockPos const& pos,
46 ) const /*override*/;
47
48 virtual ::AABB const&
49 getOutline(::Block const&, ::IConstBlockSource const&, ::BlockPos const& pos, ::AABB& bufferValue) const
50 /*override*/;
51
52 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
53 /*override*/;
54
55 virtual bool canBeOriginalSurface(bool) const /*override*/;
56
57 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
58
59 virtual bool tryToTill(
60 ::BlockSource& region,
61 ::BlockPos const& pos,
62 ::Actor& entity,
63 ::ItemStack& item,
64 ::HandSlot handSlot
65 ) const /*override*/;
66
67 virtual bool canProvideSupport(::Block const&, uchar face, ::BlockSupportType) const /*override*/;
68 // NOLINTEND
69
70public:
71 // member functions
72 // NOLINTBEGIN
73 MCNAPI
74 PathBlock(::std::string const& nameId, int id, ::BlockDescriptor blockToTillInto, ::BlockDescriptor baseBlock);
75
76 MCNAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
77
78 MCNAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
79 // NOLINTEND
80
81public:
82 // static variables
83 // NOLINTBEGIN
84 MCNAPI static ::AABB& BLOCK_AABB();
85 // NOLINTEND
86
87public:
88 // constructor thunks
89 // NOLINTBEGIN
90 MCNAPI void*
91 $ctor(::std::string const& nameId, int id, ::BlockDescriptor blockToTillInto, ::BlockDescriptor baseBlock);
92 // NOLINTEND
93
94public:
95 // virtual function thunks
96 // NOLINTBEGIN
97 MCNAPI ::AABB $getCollisionShape(
98 ::Block const&,
100 ::BlockPos const& pos,
102 ) const;
103
104 MCNAPI ::AABB const&
105 $getOutline(::Block const&, ::IConstBlockSource const&, ::BlockPos const& pos, ::AABB& bufferValue) const;
106
107 MCNAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
108
109 MCNAPI bool $canBeOriginalSurface(bool) const;
110
111 MCNAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
112
113 MCNAPI bool $tryToTill(
114 ::BlockSource& region,
115 ::BlockPos const& pos,
116 ::Actor& entity,
117 ::ItemStack& item,
118 ::HandSlot handSlot
119 ) const;
120
121 MCNAPI bool $canProvideSupport(::Block const&, uchar face, ::BlockSupportType) const;
122
123
124 // NOLINTEND
125
126public:
127 // vftables
128 // NOLINTBEGIN
129 MCNAPI static void** $vftable();
130 // NOLINTEND
131};
Definition AABB.h:18
Definition Actor.h:116
Definition BlockDescriptor.h:21
Definition BlockPlayerInteractEvent.h:18
Definition BlockQueuedTickEvent.h:16
Definition BlockPos.h:14
Definition BlockSource.h:72
Definition Block.h:42
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:25
Definition ItemStack.h:26
MCAPI::AABB const & $getOutline(::Block const &, ::IConstBlockSource const &, ::BlockPos const &pos, ::AABB &bufferValue) const
MCAPI void use(::BlockEvents::BlockPlayerInteractEvent &eventData) const
static MCAPI void ** $vftable()
MCAPI bool $tryToTill(::BlockSource &region, ::BlockPos const &pos, ::Actor &entity, ::ItemStack &item, ::HandSlot handSlot) const
MCAPI void tick(::BlockEvents::BlockQueuedTickEvent &eventData) const
MCAPI bool $canProvideSupport(::Block const &, uchar face, ::BlockSupportType) const
MCAPI bool $canBeOriginalSurface(bool) const
MCAPI void * $ctor(::std::string const &nameId, int id, ::BlockDescriptor blockToTillInto, ::BlockDescriptor baseBlock)
MCAPI::AABB $getCollisionShape(::Block const &, ::IConstBlockSource const &, ::BlockPos const &pos, ::optional_ref<::GetCollisionShapeInterface const >) const
MCAPI void $neighborChanged(::BlockSource &region, ::BlockPos const &pos, ::BlockPos const &neighborPos) const
static MCAPI ::AABB & BLOCK_AABB()
MCAPI bool $canSurvive(::BlockSource &region, ::BlockPos const &pos) const
MCAPI PathBlock(::std::string const &nameId, int id, ::BlockDescriptor blockToTillInto, ::BlockDescriptor baseBlock)
Definition optional_ref.h:10