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