Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
WeaponItem.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/item/HandSlot.h"
7#include "mc/world/item/Item.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class BaseGameVersion;
13class Block;
14class ItemStack;
15class ItemStackBase;
16class Level;
17class Mob;
18class Player;
19struct ItemTier;
20namespace Bedrock::Safety { class RedactableString; }
21// clang-format on
22
23class WeaponItem : public ::Item {
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<4, 4, int> mDamage;
28 ::ll::TypedStorage<8, 8, ::ItemTier const&> mTier;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 WeaponItem& operator=(WeaponItem const&);
34 WeaponItem(WeaponItem const&);
35 WeaponItem();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual float getDestroySpeed(::ItemStackBase const& item, ::Block const& block) const /*override*/;
41
42 virtual void hurtActor(::ItemStack& item, ::Actor& actor, ::Mob& attacker) const /*override*/;
43
44 virtual int getAttackDamage() const /*override*/;
45
46 virtual bool isHandEquipped() const /*override*/;
47
48 virtual ::ItemStack& use(::ItemStack& instance, ::Player& player, ::HandSlot handSlot) const /*override*/;
49
50 virtual bool canDestroySpecial(::Block const& block) const /*override*/;
51
52 virtual bool isValidRepairItem(
53 ::ItemStackBase const&,
54 ::ItemStackBase const& repairItem,
55 ::BaseGameVersion const& baseGameVersion
56 ) const /*override*/;
57
58 virtual int getEnchantSlot() const /*override*/;
59
60 virtual int getEnchantValue() const /*override*/;
61
62 virtual void appendFormattedHovertext(
63 ::ItemStackBase const& stack,
64 ::Level& level,
66 bool const showCategory
67 ) const /*override*/;
68
69 virtual bool canDestroyInCreative() const /*override*/;
70 // NOLINTEND
71
72public:
73 // virtual function thunks
74 // NOLINTBEGIN
75 MCNAPI float $getDestroySpeed(::ItemStackBase const& item, ::Block const& block) const;
76
77 MCNAPI void $hurtActor(::ItemStack& item, ::Actor& actor, ::Mob& attacker) const;
78
79 MCNAPI int $getAttackDamage() const;
80
81 MCNAPI bool $isHandEquipped() const;
82
83 MCNAPI ::ItemStack& $use(::ItemStack& instance, ::Player& player, ::HandSlot handSlot) const;
84
85 MCAPI bool $canDestroySpecial(::Block const& block) const;
86
87 MCAPI bool $isValidRepairItem(
88 ::ItemStackBase const&,
89 ::ItemStackBase const& repairItem,
90 ::BaseGameVersion const& baseGameVersion
91 ) const;
92
93 MCNAPI int $getEnchantSlot() const;
94
95 MCNAPI int $getEnchantValue() const;
96
98 ::ItemStackBase const& stack,
99 ::Level& level,
101 bool const showCategory
102 ) const;
103
104 MCNAPI bool $canDestroyInCreative() const;
105
106
107 // NOLINTEND
108
109public:
110 // vftables
111 // NOLINTBEGIN
112 MCNAPI static void** $vftable();
113 // NOLINTEND
114};
Definition Actor.h:116
Definition BaseGameVersion.h:8
Definition RedactableString.h:10
Definition Block.h:42
Definition ItemStackBase.h:45
Definition ItemStack.h:26
Definition Level.h:255
Definition Mob.h:58
Definition Player.h:131
MCAPI int $getEnchantSlot() const
MCAPI int $getAttackDamage() const
static MCAPI void ** $vftable()
MCAPI int $getEnchantValue() const
MCAPI bool $isHandEquipped() const
MCAPI bool $canDestroyInCreative() const
MCAPI void $hurtActor(::ItemStack &item, ::Actor &actor, ::Mob &attacker) const
MCAPI void $appendFormattedHovertext(::ItemStackBase const &stack, ::Level &level, ::Bedrock::Safety::RedactableString &hovertext, bool const showCategory) const
MCAPI float $getDestroySpeed(::ItemStackBase const &item, ::Block const &block) const
MCAPI::ItemStack & $use(::ItemStack &instance, ::Player &player, ::HandSlot handSlot) const
Definition ItemTier.h:5