LeviLamina
Loading...
Searching...
No Matches
TorchBlock.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/BlockLegacy.h"
8#include "mc/world/level/block/TorchFacing.h"
9
10// auto generated forward declare list
11// clang-format off
12class AABB;
13class Actor;
14class Block;
15class BlockPos;
16class BlockSource;
17class Experiments;
20class Vec3;
22namespace BlockEvents { class BlockPlaceEvent; }
23namespace BlockEvents { class BlockQueuedTickEvent; }
24// clang-format on
25
26class TorchBlock : public ::BlockLegacy {
27public:
28 // virtual functions
29 // NOLINTBEGIN
30 // vIndex: 78
31 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
32
33 // vIndex: 91
34 virtual ::Block const&
35 getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue) const
36 /*override*/;
37
38 // vIndex: 86
39 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
40 /*override*/;
41
42 // vIndex: 11
43 virtual ::AABB const& getVisualShape(::Block const& block, ::AABB& bufferAABB) const /*override*/;
44
45 // vIndex: 5
46 virtual ::AABB getCollisionShape(
47 ::Block const&,
49 ::BlockPos const&,
51 ) const /*override*/;
52
53 // vIndex: 122
54 virtual void animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const /*override*/;
55
56 // vIndex: 138
57 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
58
59 // vIndex: 130
60 virtual void _addHardCodedBlockComponents(::Experiments const& experiments) /*override*/;
61
62 // vIndex: 0
63 virtual ~TorchBlock() /*override*/ = default;
64 // NOLINTEND
65
66public:
67 // member functions
68 // NOLINTBEGIN
69 MCAPI bool canBePlacedOn(::BlockSource& region, ::BlockPos const& pos, uchar facing) const;
70
71 MCAPI void onPlaceTorchBlock(::BlockEvents::BlockPlaceEvent& eventData) const;
72
73 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
74 // NOLINTEND
75
76public:
77 // static variables
78 // NOLINTBEGIN
79 MCAPI static ::std::add_lvalue_reference_t<::TorchFacing const[]> DATA_FROM_FACING();
80
81 MCAPI static ::std::add_lvalue_reference_t<ushort const[]> FACING_FROM_DATA();
82 // NOLINTEND
83
84public:
85 // virtual function thunks
86 // NOLINTBEGIN
87 MCAPI bool $mayPlace(::BlockSource& region, ::BlockPos const& pos) const;
88
89 MCAPI ::Block const& $getPlacementBlock(
90 ::Actor const& by,
91 ::BlockPos const& pos,
92 uchar face,
93 ::Vec3 const& clickPos,
94 int itemValue
95 ) const;
96
97 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
98
99 MCAPI ::AABB const& $getVisualShape(::Block const& block, ::AABB& bufferAABB) const;
100
101 MCFOLD ::AABB $getCollisionShape(
102 ::Block const&,
103 ::IConstBlockSource const&,
104 ::BlockPos const&,
106 ) const;
107
108 MCAPI void $animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const;
109
110 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
111
112 MCAPI void $_addHardCodedBlockComponents(::Experiments const& experiments);
113 // NOLINTEND
114
115public:
116 // vftables
117 // NOLINTBEGIN
118 MCNAPI static void** $vftable();
119 // NOLINTEND
120};
Definition AABB.h:18
Definition Actor.h:103
Definition BlockPlaceEvent.h:16
Definition BlockQueuedTickEvent.h:16
Definition BlockLegacy.h:88
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition Experiments.h:14
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:24
Definition TorchBlock.h:26
static MCAPI void ** $vftable()
Definition Vec3.h:10
Definition optional_ref.h:10
Definition BlockAnimateTickData.h:5