LeviLamina
Loading...
Searching...
No Matches
SignItem.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/item/Item.h"
7#include "mc/world/level/block/SignBlock.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Block;
13class BlockPos;
15class ItemStack;
16class ItemStackBase;
17class Vec3;
18// clang-format on
19
20class SignItem : public ::Item {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<
25 8,
26 16,
27 ::std::map<::SignBlock::SignType, ::std::tuple<::Block const*, ::Block const*, ::Block const*>>>
28 mConvertMap;
29 ::ll::TypedStorage<4, 4, ::SignBlock::SignType> mType;
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 SignItem();
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual ::Block const* getBlockToPlace(uchar const face, ::Actor const& entity, ::BlockPos const pos) const;
40
41 virtual bool _calculatePlacePos(::ItemStackBase& entity, ::Actor& face, uchar& pos, ::BlockPos&) const /*override*/;
42
43 virtual ::InteractionResult
44 _useOn(::ItemStack& instance, ::Actor& entity, ::BlockPos pos, uchar face, ::Vec3 const& clickPos) const
45 /*override*/;
46 // NOLINTEND
47
48public:
49 // member functions
50 // NOLINTBEGIN
51 MCAPI SignItem(::std::string const& name, int id, ::SignBlock::SignType type);
52 // NOLINTEND
53
54public:
55 // static functions
56 // NOLINTBEGIN
57 MCAPI static bool calculatePlacePos(::Actor& entity, uchar& face, ::BlockPos& pos);
58 // NOLINTEND
59
60public:
61 // constructor thunks
62 // NOLINTBEGIN
63 MCAPI void* $ctor(::std::string const& name, int id, ::SignBlock::SignType type);
64 // NOLINTEND
65
66public:
67 // virtual function thunks
68 // NOLINTBEGIN
69 MCAPI ::Block const* $getBlockToPlace(uchar const face, ::Actor const& entity, ::BlockPos const pos) const;
70
71 MCAPI bool $_calculatePlacePos(::ItemStackBase& entity, ::Actor& face, uchar& pos, ::BlockPos&) const;
72
73 MCAPI ::InteractionResult
74 $_useOn(::ItemStack& instance, ::Actor& entity, ::BlockPos pos, uchar face, ::Vec3 const& clickPos) const;
75
76
77 // NOLINTEND
78
79public:
80 // vftables
81 // NOLINTBEGIN
82 MCAPI static void** $vftable();
83 // NOLINTEND
84};
Definition Actor.h:125
Definition BlockPos.h:21
Definition Block.h:69
Definition InteractionResult.h:5
Definition ItemStackBase.h:52
Definition ItemStack.h:35
Definition Vec3.h:10