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/Item.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class BaseGameVersion;
12class Block;
13class ItemStack;
14class ItemStackBase;
15class Level;
16class Mob;
17class Player;
18struct ItemTier;
19namespace Bedrock::Safety { class RedactableString; }
20// clang-format on
21
22class WeaponItem : public ::Item {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 4, int> mDamage;
27 ::ll::TypedStorage<8, 8, ::ItemTier const&> mTier;
28 // NOLINTEND
29
30public:
31 // prevent constructor by default
32 WeaponItem& operator=(WeaponItem const&);
33 WeaponItem(WeaponItem const&);
34 WeaponItem();
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual float getDestroySpeed(::ItemStackBase const& item, ::Block const& block) const /*override*/;
40
41 virtual void hurtActor(::ItemStack& item, ::Actor& actor, ::Mob& attacker) const /*override*/;
42
43 virtual int getAttackDamage() const /*override*/;
44
45 virtual bool isHandEquipped() const /*override*/;
46
47 virtual ::ItemStack& use(::ItemStack& item, ::Player& player) const /*override*/;
48
49 virtual bool canDestroySpecial(::Block const& block) const /*override*/;
50
51 virtual bool isValidRepairItem(
52 ::ItemStackBase const& repairItem,
53 ::ItemStackBase const& baseGameVersion,
55 ) const /*override*/;
56
57 virtual int getEnchantSlot() const /*override*/;
58
59 virtual int getEnchantValue() const /*override*/;
60
61 virtual void appendFormattedHovertext(
62 ::ItemStackBase const& stack,
63 ::Level& level,
65 bool const showCategory
66 ) const /*override*/;
67
68 virtual bool canDestroyInCreative() const /*override*/;
69 // NOLINTEND
70
71public:
72 // member functions
73 // NOLINTBEGIN
74 MCAPI WeaponItem(::std::string const& name, int id, ::ItemTier const& tier);
75
76 MCFOLD void setAttackDamage(int damage);
77 // NOLINTEND
78
79public:
80 // constructor thunks
81 // NOLINTBEGIN
82 MCAPI void* $ctor(::std::string const& name, int id, ::ItemTier const& tier);
83 // NOLINTEND
84
85public:
86 // virtual function thunks
87 // NOLINTBEGIN
88 MCAPI float $getDestroySpeed(::ItemStackBase const& item, ::Block const& block) const;
89
90 MCFOLD void $hurtActor(::ItemStack& item, ::Actor& actor, ::Mob& attacker) const;
91
92 MCFOLD int $getAttackDamage() const;
93
94 MCFOLD bool $isHandEquipped() const;
95
96 MCFOLD ::ItemStack& $use(::ItemStack& item, ::Player& player) const;
97
98 MCAPI bool $canDestroySpecial(::Block const& block) const;
99
100 MCAPI bool $isValidRepairItem(
101 ::ItemStackBase const& repairItem,
102 ::ItemStackBase const& baseGameVersion,
103 ::BaseGameVersion const&
104 ) const;
105
106 MCFOLD int $getEnchantSlot() const;
107
108 MCAPI int $getEnchantValue() const;
109
110 MCAPI void $appendFormattedHovertext(
111 ::ItemStackBase const& stack,
112 ::Level& level,
114 bool const showCategory
115 ) const;
116
117 MCFOLD bool $canDestroyInCreative() const;
118
119
120 // NOLINTEND
121
122public:
123 // vftables
124 // NOLINTBEGIN
125 MCAPI static void** $vftable();
126 // NOLINTEND
127};
Definition Actor.h:125
Definition BaseGameVersion.h:13
Definition RedactableString.h:10
Definition Block.h:69
Definition ItemStackBase.h:52
Definition ItemStack.h:35
Definition Level.h:255
Definition Mob.h:57
Definition Player.h:137
Definition ItemTier.h:5