LeviLamina
Loading...
Searching...
No Matches
HangingSignBlock.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/SignBlock.h"
9
10// auto generated forward declare list
11// clang-format off
12class AABB;
13class Actor;
14class Block;
15class BlockPos;
16class BlockSource;
19class ItemInstance;
20// clang-format on
21
22class HangingSignBlock : public ::SignBlock {
23public:
24 // prevent constructor by default
25 HangingSignBlock();
26
27public:
28 // virtual functions
29 // NOLINTBEGIN
30 virtual ::AABB const& getVisualShape(::Block const& block, ::AABB& bufferAABB) const /*override*/;
31
32 virtual ::AABB getCollisionShape(
33 ::Block const& block,
34 ::IConstBlockSource const& pos,
35 ::BlockPos const&,
37 ) const /*override*/;
38
39 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
40
41 virtual bool canProvideSupport(::Block const& face, uchar type, ::BlockSupportType) const /*override*/;
42
43 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& pathPos, ::BlockPos const&) const /*override*/;
44
45 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const /*override*/;
46
47 virtual float getYRotationInDegrees(::Block const& block) const /*override*/;
48
49 virtual ::ItemInstance _getItemInstance() const /*override*/;
50 // NOLINTEND
51
52public:
53 // member functions
54 // NOLINTBEGIN
55 MCAPI HangingSignBlock(::std::string const& nameId, int id, bool onGround, ::SignBlock::SignType signType);
56
57 MCAPI bool _canAttachTo(::BlockSource& region, ::BlockPos attachPos, uchar attachFace, uchar ourFace) const;
58 // NOLINTEND
59
60public:
61 // static functions
62 // NOLINTBEGIN
63 MCAPI static bool _isDoubleChainAttached(::Block const& block);
64
65 MCAPI static bool _isHangingSign(::Block const& block);
66
67 MCAPI static bool _isVShapedChainAttached(::Block const& block);
68
69 MCAPI static bool isDoubleChainHangingSign(::Block const& block);
70
71 MCAPI static bool isSideAttachedHangingSign(::Block const& block);
72
73 MCAPI static bool isVShapedHangingSign(::Block const& block);
74 // NOLINTEND
75
76public:
77 // constructor thunks
78 // NOLINTBEGIN
79 MCAPI void* $ctor(::std::string const& nameId, int id, bool onGround, ::SignBlock::SignType signType);
80 // NOLINTEND
81
82public:
83 // virtual function thunks
84 // NOLINTBEGIN
85 MCAPI ::AABB const& $getVisualShape(::Block const& block, ::AABB& bufferAABB) const;
86
87 MCAPI ::AABB $getCollisionShape(
88 ::Block const& block,
89 ::IConstBlockSource const& pos,
90 ::BlockPos const&,
92 ) const;
93
94 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
95
96 MCFOLD bool $canProvideSupport(::Block const& face, uchar type, ::BlockSupportType) const;
97
98 MCAPI bool $checkIsPathable(::Actor& entity, ::BlockPos const& pathPos, ::BlockPos const&) const;
99
100 MCAPI bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const;
101
102 MCAPI float $getYRotationInDegrees(::Block const& block) const;
103
104 MCAPI ::ItemInstance $_getItemInstance() const;
105
106
107 // NOLINTEND
108
109public:
110 // vftables
111 // NOLINTBEGIN
112 MCAPI static void** $vftable();
113 // NOLINTEND
114};
Definition AABB.h:18
Definition Actor.h:125
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:24
Definition ItemInstance.h:15
Definition optional_ref.h:10