LeviLamina
Loading...
Searching...
No Matches
ThrowableItemComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/pub_sub/Subscription.h"
7#include "mc/world/item/components/NetworkedItemComponent.h"
8#include "mc/world/level/storage/AllExperiments.h"
9
10// auto generated forward declare list
11// clang-format off
12class ComponentItem;
13class HashedString;
14class ItemStack;
15class Player;
17class SemVersion;
18namespace cereal { struct ReflectionCtx; }
19// clang-format on
20
21class ThrowableItemComponent : public ::NetworkedItemComponent<::ThrowableItemComponent> {
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<1, 1, bool> mDoSwing;
26 ::ll::TypedStorage<4, 4, float> mMinDrawDuration;
27 ::ll::TypedStorage<4, 4, float> mDrawDuration;
28 ::ll::TypedStorage<4, 4, float> mLaunchPowerScale;
29 ::ll::TypedStorage<4, 4, float> mMaxLaunchPower;
30 ::ll::TypedStorage<1, 1, bool> mScalePowerByDrawDuration;
31 ::ll::TypedStorage<1, 1, bool> mTriggerActorUseItemEvent;
32 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnUseSubscription;
33 // NOLINTEND
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual void handleVersionBasedInitialization(::SemVersion const& originalJsonVersion) /*override*/;
39
40 virtual void _initializeComponent(::ComponentItem& owner) /*override*/;
41
42 virtual ~ThrowableItemComponent() /*override*/ = default;
43 // NOLINTEND
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI void _doThrow(
49 ::ItemStack& item,
50 ::Player& player,
51 ::ProjectileItemComponent const& projectileComponent,
52 float power
53 ) const;
54 // NOLINTEND
55
56public:
57 // static functions
58 // NOLINTBEGIN
59 MCAPI static void bindType(
61 ::std::vector<::AllExperiments> const& requiredToggles,
62 ::std::optional<::SemVersion> releasedMinFormatVersion
63 );
64
65 MCAPI static ::HashedString const& getIdentifier();
66 // NOLINTEND
67
68public:
69 // virtual function thunks
70 // NOLINTBEGIN
71 MCAPI void $handleVersionBasedInitialization(::SemVersion const& originalJsonVersion);
72
73 MCAPI void $_initializeComponent(::ComponentItem& owner);
74
75
76 // NOLINTEND
77
78public:
79 // vftables
80 // NOLINTBEGIN
81 MCNAPI static void** $vftable();
82 // NOLINTEND
83};
Definition ComponentItem.h:55
Definition HashedString.h:5
Definition ItemStack.h:26
Definition NetworkedItemComponent.h:7
Definition Player.h:125
Definition ProjectileItemComponent.h:25
Definition SemVersion.h:15
Definition ThrowableItemComponent.h:21
static MCAPI void ** $vftable()
Definition ReflectionCtx.h:11
Definition ctx.h:5