LeviLamina
Loading...
Searching...
No Matches
CopperBulbBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/Brightness.h"
7#include "mc/world/Direction.h"
8#include "mc/world/level/block/BlockType.h"
9#include "mc/world/level/block/CopperBlock.h"
10
11// auto generated forward declare list
12// clang-format off
13class Block;
14class BlockPos;
15class BlockSource;
16class Experiments;
17namespace BlockEvents { class BlockPlaceEvent; }
18namespace BlockEvents { class BlockQueuedTickEvent; }
19// clang-format on
20
21class CopperBulbBlock : public ::CopperBlock<::BlockType> {
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<1, 1, ::Brightness> mLitBrightness;
26 // NOLINTEND
27
28public:
29 // virtual functions
30 // NOLINTBEGIN
31 virtual void setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
32
33 virtual void onRedstoneUpdate(::BlockSource& region, ::BlockPos const& pos, int strength, bool isFirstTime) const
34 /*override*/;
35
36 virtual bool hasComparatorSignal() const /*override*/;
37
38 virtual int getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const
39 /*override*/;
40
41 virtual bool
42 shouldConnectToRedstone(::BlockSource& region, ::BlockPos const& pos, ::Direction::Type direction) const
43 /*override*/;
44
45 virtual ::Brightness getLightEmission(::Block const& block) const /*override*/;
46
47 virtual void _addHardCodedBlockComponents(::Experiments const& experiments) /*override*/;
48
49 virtual ~CopperBulbBlock() /*override*/ = default;
50 // NOLINTEND
51
52public:
53 // member functions
54 // NOLINTBEGIN
55 MCFOLD void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
56
57 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
58 // NOLINTEND
59
60public:
61 // virtual function thunks
62 // NOLINTBEGIN
63 MCFOLD void $setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const;
64
65 MCAPI void $onRedstoneUpdate(::BlockSource& region, ::BlockPos const& pos, int strength, bool isFirstTime) const;
66
67 MCFOLD bool $hasComparatorSignal() const;
68
69 MCAPI int $getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const;
70
71 MCFOLD bool
72 $shouldConnectToRedstone(::BlockSource& region, ::BlockPos const& pos, ::Direction::Type direction) const;
73
74 MCAPI ::Brightness $getLightEmission(::Block const& block) const;
75
76 MCAPI void $_addHardCodedBlockComponents(::Experiments const& experiments);
77
78
79 // NOLINTEND
80
81public:
82 // vftables
83 // NOLINTBEGIN
84 MCAPI static void** $vftable();
85 // NOLINTEND
86};
Definition BlockPlaceEvent.h:16
Definition BlockQueuedTickEvent.h:16
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition Block.h:43
Definition CopperBlock.h:7
Definition CopperBulbBlock.h:21
Definition Experiments.h:14