LeviLamina
Loading...
Searching...
No Matches
SnowballItem.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 BlockSource;
12class CompoundTag;
13class Container;
14class Item;
15class ItemDescriptor;
16class ItemStack;
17class ItemStackBase;
18class Vec3;
20namespace cereal { struct ReflectionCtx; }
21// clang-format on
22
23class SnowballItem : public ::ComponentItem {
24public:
25 // prevent constructor by default
26 SnowballItem();
27
28public:
29 // virtual functions
30 // NOLINTBEGIN
31 virtual ::Item& setIconInfo(::std::string const& name, int id) /*override*/;
32
33 virtual ::ResolvedItemIconInfo
34 getIconInfo(::ItemStackBase const& item, int newAnimationFrame, bool inInventoryPane) const /*override*/;
35
36 virtual ::std::string
37 buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const* userData) const /*override*/;
38
39 virtual ::SnowballItem& setDescriptionId(::std::string const& descriptionId) /*override*/;
40
41 virtual ::Actor* createProjectileActor(
42 ::BlockSource& region,
43 ::ItemStack const& stack,
44 ::Vec3 const& pos,
45 ::Vec3 const& aimDirection
46 ) const /*override*/;
47
48 virtual bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const
49 /*override*/;
50
51 virtual ~SnowballItem() /*override*/ = default;
52 // NOLINTEND
53
54public:
55 // member functions
56 // NOLINTBEGIN
57 MCAPI SnowballItem(::std::string const& name, int id, ::cereal::ReflectionCtx& ctx);
58 // NOLINTEND
59
60public:
61 // constructor thunks
62 // NOLINTBEGIN
63 MCAPI void* $ctor(::std::string const& name, int id, ::cereal::ReflectionCtx& ctx);
64 // NOLINTEND
65
66public:
67 // virtual function thunks
68 // NOLINTBEGIN
69 MCFOLD ::Item& $setIconInfo(::std::string const& name, int id);
70
71 MCFOLD ::ResolvedItemIconInfo
72 $getIconInfo(::ItemStackBase const& item, int newAnimationFrame, bool inInventoryPane) const;
73
74 MCFOLD ::std::string
75 $buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const* userData) const;
76
77 MCFOLD ::SnowballItem& $setDescriptionId(::std::string const& descriptionId);
78
79 MCAPI ::Actor* $createProjectileActor(
80 ::BlockSource& region,
81 ::ItemStack const& stack,
82 ::Vec3 const& pos,
83 ::Vec3 const& aimDirection
84 ) const;
85
86 MCAPI bool $dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const;
87
88
89 // NOLINTEND
90
91public:
92 // vftables
93 // NOLINTBEGIN
94 MCAPI static void** $vftable();
95 // NOLINTEND
96};
Definition Actor.h:106
Definition BlockSource.h:71
static MCAPI void ** $vftable()
Definition CompoundTag.h:23
Definition Container.h:33
Definition ItemDescriptor.h:24
Definition ItemStackBase.h:44
Definition ItemStack.h:26
Definition Item.h:68
Definition Vec3.h:10
Definition ResolvedItemIconInfo.h:8
Definition ReflectionCtx.h:11
Definition ctx.h:5