LeviLamina
Loading...
Searching...
No Matches
AnvilBlock.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/AnvilDamage.h"
8#include "mc/world/level/block/BlockSupportType.h"
9#include "mc/world/level/block/FallingBlock.h"
10
11// auto generated forward declare list
12// clang-format off
13class AABB;
14class BaseGameVersion;
15class Block;
16class BlockPos;
17class BlockSource;
19class HashedString;
22namespace BlockEvents { class BlockPlayerInteractEvent; }
23namespace mce { class Color; }
24// clang-format on
25
26class AnvilBlock : public ::FallingBlock {
27public:
28 // prevent constructor by default
29 AnvilBlock();
30
31public:
32 // virtual functions
33 // NOLINTBEGIN
34 virtual ::AABB getCollisionShape(
35 ::Block const& block,
36 ::IConstBlockSource const& pos,
37 ::BlockPos const&,
39 ) const /*override*/;
40
41 virtual ::AABB const&
42 getOutline(::Block const& block, ::IConstBlockSource const& pos, ::BlockPos const& bufferValue, ::AABB&) const
43 /*override*/;
44
45 virtual ::mce::Color getDustColor(::Block const&) const /*override*/;
46
47 virtual ::std::string getDustParticleName(::Block const&) const /*override*/;
48
49 virtual void animateTick(::BlockAnimateTickData const&) const /*override*/;
50
51 virtual bool falling() const /*override*/;
52
53 virtual void onLand(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
54
55 virtual bool isCraftingBlock() const /*override*/;
56
57 virtual bool breaksFallingBlocks(::Block const&, ::BaseGameVersion const) const /*override*/;
58
59 virtual bool isInteractiveBlock() const /*override*/;
60
61 virtual bool canProvideSupport(::Block const& face, uchar type, ::BlockSupportType) const /*override*/;
62 // NOLINTEND
63
64public:
65 // member functions
66 // NOLINTBEGIN
67 MCAPI AnvilBlock(::std::string const& nameId, int id);
68
69 MCFOLD void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
70 // NOLINTEND
71
72public:
73 // static functions
74 // NOLINTBEGIN
75 MCAPI static ::AABB const& _getShape(::BlockPos const& pos, ::Block const& block, ::AABB& bufferValue);
76
77#ifdef LL_PLAT_C
78 MCFOLD static ::AnvilDamage getDamageEnumForName(::HashedString const& name);
79#endif
80
81 MCFOLD static int getDamageForName(::HashedString const& name);
82
83 MCAPI static ::HashedString const& getNameForDamage(int damage);
84 // NOLINTEND
85
86public:
87 // constructor thunks
88 // NOLINTBEGIN
89 MCAPI void* $ctor(::std::string const& nameId, int id);
90 // NOLINTEND
91
92public:
93 // virtual function thunks
94 // NOLINTBEGIN
95 MCAPI ::AABB $getCollisionShape(
96 ::Block const& block,
97 ::IConstBlockSource const& pos,
98 ::BlockPos const&,
100 ) const;
101
102 MCAPI ::AABB const&
103 $getOutline(::Block const& block, ::IConstBlockSource const& pos, ::BlockPos const& bufferValue, ::AABB&) const;
104
105 MCFOLD ::mce::Color $getDustColor(::Block const&) const;
106
107 MCFOLD ::std::string $getDustParticleName(::Block const&) const;
108
109 MCFOLD void $animateTick(::BlockAnimateTickData const&) const;
110
111 MCFOLD bool $falling() const;
112
113 MCAPI void $onLand(::BlockSource& region, ::BlockPos const& pos) const;
114
115 MCFOLD bool $isCraftingBlock() const;
116
117 MCFOLD bool $breaksFallingBlocks(::Block const&, ::BaseGameVersion const) const;
118
119 MCFOLD bool $isInteractiveBlock() const;
120
121 MCFOLD bool $canProvideSupport(::Block const& face, uchar type, ::BlockSupportType) const;
122
123
124 // NOLINTEND
125
126public:
127 // vftables
128 // NOLINTBEGIN
129 MCAPI static void** $vftable();
130 // NOLINTEND
131};
Definition AABB.h:18
Definition BaseGameVersion.h:13
Definition BlockPlayerInteractEvent.h:20
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
static MCAPI void ** $vftable()
Definition GetCollisionShapeInterface.h:13
Definition HashedString.h:5
Definition IConstBlockSource.h:24
Definition Color.h:13
Definition optional_ref.h:10
Definition BlockAnimateTickData.h:14