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,
35 ::BlockPos const& pos,
37 ) const /*override*/;
38
39 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
40
41 virtual bool canProvideSupport(::Block const&, uchar face, ::BlockSupportType type) const /*override*/;
42
43 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
44 /*override*/;
45
46 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const /*override*/;
47
48 virtual float getYRotationInDegrees(::Block const& block) const /*override*/;
49
50 virtual ::ItemInstance _getItemInstance() const /*override*/;
51 // NOLINTEND
52
53public:
54 // member functions
55 // NOLINTBEGIN
56 MCAPI HangingSignBlock(::std::string const& nameId, int id, bool onGround, ::SignBlock::SignType signType);
57
58 MCAPI bool _canAttachTo(::BlockSource& region, ::BlockPos const attachPos, uchar attachFace, uchar ourFace) const;
59 // NOLINTEND
60
61public:
62 // static functions
63 // NOLINTBEGIN
64 MCAPI static bool _isDoubleChainAttached(::Block const& block);
65
66 MCAPI static bool _isHangingSign(::Block const& block);
67
68 MCAPI static bool _isVShapedChainAttached(::Block const& block);
69
70 MCAPI static bool isSideAttachedHangingSign(::Block const& block);
71 // NOLINTEND
72
73public:
74 // constructor thunks
75 // NOLINTBEGIN
76 MCAPI void* $ctor(::std::string const& nameId, int id, bool onGround, ::SignBlock::SignType signType);
77 // NOLINTEND
78
79public:
80 // virtual function thunks
81 // NOLINTBEGIN
82 MCAPI ::AABB const& $getVisualShape(::Block const& block, ::AABB& bufferAABB) const;
83
84 MCAPI ::AABB $getCollisionShape(
85 ::Block const& block,
87 ::BlockPos const& pos,
89 ) const;
90
91 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
92
93 MCFOLD bool $canProvideSupport(::Block const&, uchar face, ::BlockSupportType type) const;
94
95 MCAPI bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
96
97 MCAPI bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const;
98
99 MCAPI float $getYRotationInDegrees(::Block const& block) const;
100
101 MCAPI ::ItemInstance $_getItemInstance() 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:113
Definition BlockPos.h:17
Definition BlockSource.h:71
Definition Block.h:41
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:25
Definition ItemInstance.h:15
Definition SignBlock.h:31
Definition optional_ref.h:10