LeviLamina
Loading...
Searching...
No Matches
ShieldItem.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/legacy/LevelSoundEvent.h"
7#include "mc/world/item/InHandUpdateType.h"
8#include "mc/world/item/Item.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class BaseGameVersion;
14class BlockSource;
15class CompoundTag;
16class Container;
17class HashedString;
18class IDataInput;
19class IDataOutput;
20class ItemDescriptor;
21class ItemStack;
22class ItemStackBase;
23class Level;
24class Mob;
25class Player;
27class Vec3;
28namespace Bedrock::Safety { class RedactableString; }
29// clang-format on
30
31class ShieldItem : public ::Item {
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 // vIndex: 92
36 virtual bool inventoryTick(::ItemStack& item, ::Level& level, ::Actor& owner, int, bool selected) const
37 /*override*/;
38
39 // vIndex: 54
40 virtual int getEnchantSlot() const /*override*/;
41
42 // vIndex: 53
43 virtual bool isValidRepairItem(
44 ::ItemStackBase const& source,
45 ::ItemStackBase const& repairItem,
46 ::BaseGameVersion const& baseGameVersion
47 ) const /*override*/;
48
49 // vIndex: 38
50 virtual bool isHandEquipped() const /*override*/;
51
52 // vIndex: 102
53 virtual ::SharedTypes::Legacy::LevelSoundEvent getEquipSound() const /*override*/;
54
55 // vIndex: 82
56 virtual void hurtActor(::ItemStack& item, ::Actor& actor, ::Mob& attacker) const /*override*/;
57
58 // vIndex: 98
59 virtual ::InHandUpdateType getInHandUpdateType(
60 ::Player const& player,
61 ::ItemStack const& oldItem,
62 ::ItemStack const& newItem,
63 bool const isMainHand,
64 bool const slotChanged
65 ) const /*override*/;
66
67 // vIndex: 76
68 virtual ::ItemStack& use(::ItemStack& item, ::Player& player) const /*override*/;
69
70 // vIndex: 78
71 virtual bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar) const
72 /*override*/;
73
74 // vIndex: 89
75 virtual void
76 readUserData(::ItemStackBase& stack, ::IDataInput& input, ::ReadOnlyBinaryStream& underlyingStream) const
77 /*override*/;
78
79 // vIndex: 90
80 virtual void writeUserData(::ItemStackBase const& stack, ::IDataOutput& output) const /*override*/;
81
82 // vIndex: 94
83 virtual ::HashedString const& getCooldownType() const /*override*/;
84
85 // vIndex: 95
86 virtual int getCooldownTime() const /*override*/;
87
88 // vIndex: 87
89 virtual ::std::string buildDescriptionId(::ItemDescriptor const&, ::CompoundTag const* userData) const /*override*/;
90
91 // vIndex: 52
92 virtual void appendFormattedHovertext(
93 ::ItemStackBase const& stack,
94 ::Level& level,
96 bool const showCategory
97 ) const /*override*/;
98
99 // vIndex: 0
100 virtual ~ShieldItem() /*override*/ = default;
101 // NOLINTEND
102
103public:
104 // static variables
105 // NOLINTBEGIN
106 MCAPI static int const& EFFECTIVE_BLOCK_DELAY();
107
108 MCAPI static ::std::string const& TIMESTAMP_TAG();
109 // NOLINTEND
110
111public:
112 // virtual function thunks
113 // NOLINTBEGIN
114 MCAPI bool $inventoryTick(::ItemStack& item, ::Level& level, ::Actor& owner, int, bool selected) const;
115
116 MCAPI int $getEnchantSlot() const;
117
118 MCAPI bool $isValidRepairItem(
119 ::ItemStackBase const& source,
120 ::ItemStackBase const& repairItem,
121 ::BaseGameVersion const& baseGameVersion
122 ) const;
123
124 MCFOLD bool $isHandEquipped() const;
125
126 MCFOLD ::SharedTypes::Legacy::LevelSoundEvent $getEquipSound() const;
127
128 MCFOLD void $hurtActor(::ItemStack& item, ::Actor& actor, ::Mob& attacker) const;
129
130 MCAPI ::InHandUpdateType $getInHandUpdateType(
131 ::Player const& player,
132 ::ItemStack const& oldItem,
133 ::ItemStack const& newItem,
134 bool const isMainHand,
135 bool const slotChanged
136 ) const;
137
138 MCFOLD ::ItemStack& $use(::ItemStack& item, ::Player& player) const;
139
140 MCAPI bool $dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar) const;
141
142 MCAPI void
143 $readUserData(::ItemStackBase& stack, ::IDataInput& input, ::ReadOnlyBinaryStream& underlyingStream) const;
144
145 MCAPI void $writeUserData(::ItemStackBase const& stack, ::IDataOutput& output) const;
146
147 MCAPI ::HashedString const& $getCooldownType() const;
148
149 MCFOLD int $getCooldownTime() const;
150
151 MCAPI ::std::string $buildDescriptionId(::ItemDescriptor const&, ::CompoundTag const* userData) const;
152
153 MCAPI void $appendFormattedHovertext(
154 ::ItemStackBase const& stack,
155 ::Level& level,
157 bool const showCategory
158 ) const;
159 // NOLINTEND
160
161public:
162 // vftables
163 // NOLINTBEGIN
164 MCAPI static void** $vftable();
165 // NOLINTEND
166};
Definition Actor.h:103
Definition BaseGameVersion.h:8
Definition RedactableString.h:10
Definition BlockSource.h:67
Definition CompoundTag.h:13
Definition Container.h:30
Definition HashedString.h:5
Definition IDataInput.h:8
Definition IDataOutput.h:5
Definition ItemDescriptor.h:22
Definition ItemStackBase.h:35
Definition ItemStack.h:25
Definition Item.h:65
Definition Level.h:238
Definition Mob.h:47
Definition Player.h:119
Definition ReadOnlyBinaryStream.h:8
Definition ShieldItem.h:31
Definition Vec3.h:10