LeviLamina
Loading...
Searching...
No Matches
ShearsItem.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/Item.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Block;
13class BlockPos;
14class BlockSource;
15class Container;
17class ItemStack;
18class ItemStackBase;
19class Level;
20class Mob;
21class Vec3;
22// clang-format on
23
24class ShearsItem : public ::Item {
25public:
26 // virtual functions
27 // NOLINTBEGIN
28 virtual void hurtActor(::ItemStack& item, ::Actor& actor, ::Mob& attacker) const /*override*/;
29
30 virtual bool canDestroySpecial(::Block const& block) const /*override*/;
31
32 virtual float getDestroySpeed(::ItemStackBase const& item, ::Block const& block) const /*override*/;
33
34 virtual int getEnchantSlot() const /*override*/;
35
36 virtual bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar) const
37 /*override*/;
38
39 virtual ::InteractionResult
40 _useOn(::ItemStack& instance, ::Actor& entity, ::BlockPos pos, uchar face, ::Vec3 const& clickPos) const
41 /*override*/;
42
43 virtual ~ShearsItem() /*override*/ = default;
44 // NOLINTEND
45
46public:
47 // static functions
48 // NOLINTBEGIN
49 MCAPI static void onShearsUsed(
50 ::BlockSource& region,
51 ::Level& level,
52 ::Actor* owner,
53 ::ItemStack& shears,
54 ::BlockPos const& pos,
55 ::SharedTypes::Legacy::LevelSoundEvent levelSoundEvent
56 );
57 // NOLINTEND
58
59public:
60 // virtual function thunks
61 // NOLINTBEGIN
62 MCFOLD void $hurtActor(::ItemStack& item, ::Actor& actor, ::Mob& attacker) const;
63
64 MCAPI bool $canDestroySpecial(::Block const& block) const;
65
66 MCAPI float $getDestroySpeed(::ItemStackBase const& item, ::Block const& block) const;
67
68 MCFOLD int $getEnchantSlot() const;
69
70 MCAPI bool $dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar) const;
71
72 MCAPI ::InteractionResult
73 $_useOn(::ItemStack& instance, ::Actor& entity, ::BlockPos pos, uchar face, ::Vec3 const& clickPos) const;
74
75
76 // NOLINTEND
77
78public:
79 // vftables
80 // NOLINTBEGIN
81 MCAPI static void** $vftable();
82 // NOLINTEND
83};
Definition Actor.h:105
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition Block.h:43
Definition Container.h:33
Definition InteractionResult.h:5
Definition ItemStackBase.h:44
Definition ItemStack.h:26
Definition Level.h:249
Definition Mob.h:50
Definition ShearsItem.h:24
Definition Vec3.h:10