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/alchemy/Potion.h"
7#include "mc/world/item/components/ComponentItem.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Arrow;
13class BlockSource;
14class CompoundTag;
15class Container;
16class Item;
17class ItemDescriptor;
18class ItemInstance;
19class ItemStack;
20class ItemStackBase;
21class Level;
23class Potion;
24class Vec3;
26namespace Bedrock::Safety { class RedactableString; }
27namespace cereal { struct ReflectionCtx; }
28// clang-format on
29
30class ArrowItem : public ::ComponentItem {
31public:
32 // member variables
33 // NOLINTBEGIN
34 ::ll::TypedStorage<8, 1344, ::ResolvedItemIconInfo[21]> mArrowIcons;
35 ::ll::TypedStorage<4, 84, ::Potion::PotionVariant[21]> mArrowVariants;
36 // NOLINTEND
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 // vIndex: 107
42 virtual ::Item& setIconInfo(::std::string const& name, int index) /*override*/;
43
44 // vIndex: 77
45 virtual ::Actor*
46 createProjectileActor(::BlockSource& region, ::ItemStack const& stack, ::Vec3 const& pos, ::Vec3 const& direction)
47 const /*override*/;
48
49 // vIndex: 78
50 virtual bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const
51 /*override*/;
52
53 // vIndex: 87
54 virtual ::std::string
55 buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const* userData) const /*override*/;
56
57 // vIndex: 52
58 virtual void appendFormattedHovertext(
59 ::ItemStackBase const& stack,
60 ::Level& level,
62 bool const showCategory
63 ) const /*override*/;
64
65 // vIndex: 88
66 virtual ::std::string buildEffectDescriptionName(::ItemStackBase const& stack) const /*override*/;
67
68 // vIndex: 60
69 virtual bool isValidAuxValue(int auxValue) const /*override*/;
70
71 // vIndex: 108
72 virtual ::ResolvedItemIconInfo
73 getIconInfo(::ItemStackBase const& item, int newAnimationFrame, bool inInventoryPane) const /*override*/;
74
75 // vIndex: 0
76 virtual ~ArrowItem() /*override*/ = default;
77 // NOLINTEND
78
79public:
80 // member functions
81 // NOLINTBEGIN
82 MCAPI ArrowItem(::std::string const& name, int id, ::cereal::ReflectionCtx& ctx);
83
84 MCAPI ::std::shared_ptr<::Potion const> _potionExistsOrContentError(int aux) const;
85
86 MCAPI void applyEffect(::Arrow* arrow, ::ItemInstance const& slotItem) const;
87
88 MCAPI ::std::vector<::MobEffectInstance> getMobEffects(int auxValue) const;
89 // NOLINTEND
90
91public:
92 // constructor thunks
93 // NOLINTBEGIN
94 MCAPI void* $ctor(::std::string const& name, int id, ::cereal::ReflectionCtx& ctx);
95 // NOLINTEND
96
97public:
98 // destructor thunk
99 // NOLINTBEGIN
100
101 // NOLINTEND
102
103public:
104 // virtual function thunks
105 // NOLINTBEGIN
106 MCAPI ::Item& $setIconInfo(::std::string const& name, int index);
107
108 MCAPI ::Actor*
109 $createProjectileActor(::BlockSource& region, ::ItemStack const& stack, ::Vec3 const& pos, ::Vec3 const& direction)
110 const;
111
112 MCAPI bool $dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const;
113
114 MCAPI ::std::string
115 $buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const* userData) const;
116
117 MCAPI void $appendFormattedHovertext(
118 ::ItemStackBase const& stack,
119 ::Level& level,
121 bool const showCategory
122 ) const;
123
124 MCAPI ::std::string $buildEffectDescriptionName(::ItemStackBase const& stack) const;
125
126 MCAPI bool $isValidAuxValue(int auxValue) const;
127
128 MCAPI ::ResolvedItemIconInfo
129 $getIconInfo(::ItemStackBase const& item, int newAnimationFrame, bool inInventoryPane) const;
130 // NOLINTEND
131
132public:
133 // vftables
134 // NOLINTBEGIN
135 MCAPI static void** $vftable();
136 // NOLINTEND
137};
Definition Actor.h:104
Definition ArrowItem.h:30
Definition Arrow.h:25
Definition RedactableString.h:10
Definition BlockSource.h:67
Definition ComponentItem.h:53
Definition CompoundTag.h:13
Definition Container.h:30
Definition ItemDescriptor.h:22
Definition ItemInstance.h:16
Definition ItemStackBase.h:35
Definition ItemStack.h:25
Definition Item.h:65
Definition Level.h:234
Definition MobEffectInstance.h:15
Definition Potion.h:14
Definition Vec3.h:10
Definition ResolvedItemIconInfo.h:8
Definition ReflectionCtx.h:11
Definition ctx.h:5