LeviLamina
Loading...
Searching...
No Matches
ArrowItem.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/item/components/ComponentItem.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class Arrow;
12class BlockSource;
13class CompoundTag;
14class Container;
15class Item;
16class ItemDescriptor;
17class ItemInstance;
18class ItemStack;
19class ItemStackBase;
20class Level;
21class Vec3;
23namespace Bedrock::Safety { class RedactableString; }
24namespace cereal { struct ReflectionCtx; }
25// clang-format on
26
27class ArrowItem : public ::ComponentItem {
28public:
29 // prevent constructor by default
30 ArrowItem();
31
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 virtual ::Item& setIconInfo(::std::string const& name, int id) /*override*/;
36
37 virtual ::Actor* createProjectileActor(
38 ::BlockSource& region,
39 ::ItemStack const& stack,
40 ::Vec3 const& pos,
41 ::Vec3 const& direction
42 ) const /*override*/;
43
44 virtual bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const
45 /*override*/;
46
47 virtual ::std::string
48 buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const* userData) const /*override*/;
49
50 virtual void appendFormattedHovertext(
51 ::ItemStackBase const& stack,
52 ::Level& level,
54 bool showCategory
55 ) const /*override*/;
56
57 virtual ::std::string buildEffectDescriptionName(::ItemStackBase const& stack, bool playerIsCreative) const
58 /*override*/;
59
60 virtual bool isValidAuxValue(int auxValue) const /*override*/;
61
62 virtual ::ResolvedItemIconInfo
63 getIconInfo(::ItemStackBase const& item, int newAnimationFrame, bool inInventoryPane) const /*override*/;
64 // NOLINTEND
65
66public:
67 // member functions
68 // NOLINTBEGIN
69 MCAPI ArrowItem(::std::string const& name, int id, ::cereal::ReflectionCtx& ctx);
70
71 MCAPI void applyEffect(::Arrow* arrow, ::ItemInstance const& slotItem) const;
72 // NOLINTEND
73
74public:
75 // constructor thunks
76 // NOLINTBEGIN
77 MCAPI void* $ctor(::std::string const& name, int id, ::cereal::ReflectionCtx& ctx);
78 // NOLINTEND
79
80public:
81 // virtual function thunks
82 // NOLINTBEGIN
83 MCAPI ::Item& $setIconInfo(::std::string const& name, int id);
84
85 MCAPI ::Actor* $createProjectileActor(
86 ::BlockSource& region,
87 ::ItemStack const& stack,
88 ::Vec3 const& pos,
89 ::Vec3 const& direction
90 ) const;
91
92 MCAPI bool $dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const;
93
94 MCAPI ::std::string
95 $buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const* userData) const;
96
97 MCAPI void $appendFormattedHovertext(
98 ::ItemStackBase const& stack,
99 ::Level& level,
101 bool showCategory
102 ) const;
103
104 MCAPI ::std::string $buildEffectDescriptionName(::ItemStackBase const& stack, bool playerIsCreative) const;
105
106 MCAPI bool $isValidAuxValue(int auxValue) const;
107
108 MCAPI ::ResolvedItemIconInfo
109 $getIconInfo(::ItemStackBase const& item, int newAnimationFrame, bool inInventoryPane) const;
110
111
112 // NOLINTEND
113};
Definition Actor.h:113
Definition Arrow.h:24
Definition RedactableString.h:10
Definition BlockSource.h:71
Definition CompoundTag.h:18
Definition Container.h:35
Definition ItemDescriptor.h:25
Definition ItemInstance.h:15
Definition ItemStackBase.h:44
Definition ItemStack.h:26
Definition Item.h:71
Definition Level.h:254
Definition Vec3.h:10
Definition ResolvedItemIconInfo.h:8
Definition ReflectionCtx.h:11
Definition ctx.h:5