LeviLamina
Loading...
Searching...
No Matches
ProjectileItemComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ActorDefinitionIdentifier.h"
7#include "mc/world/actor/ActorType.h"
8#include "mc/world/item/components/NetworkedItemComponent.h"
9#include "mc/world/level/storage/AllExperiments.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
14class BlockSource;
15class Container;
16class HashedString;
17class Player;
18class SemVersion;
19class Vec3;
21namespace SharedTypes::v1_20_50 { struct ProjectileItemComponent; }
22namespace cereal { struct ReflectionCtx; }
23// clang-format on
24
25class ProjectileItemComponent : public ::NetworkedItemComponent<::ProjectileItemComponent> {
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<4, 4, float> mMinCriticalPower;
30 ::ll::TypedStorage<8, 176, ::ActorDefinitionIdentifier> mActorIdentifier;
31 // NOLINTEND
32
33public:
34 // prevent constructor by default
35 ProjectileItemComponent();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual ~ProjectileItemComponent() /*override*/;
41 // NOLINTEND
42
43public:
44 // member functions
45 // NOLINTBEGIN
46 MCAPI explicit ProjectileItemComponent(::SharedTypes::v1_20_50::ProjectileItemComponent component);
47
48 MCAPI ProjectileItemComponent(::ActorType actorType, float minCriticalPower);
49
50 MCAPI bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const;
51
52 MCAPI ::Vec3 getShootDir(::Player const& player, float angleOffset) const;
53
54 MCAPI ::Actor* shootProjectile(
55 ::BlockSource& region,
56 ::Vec3 const& aimPos,
57 ::Vec3 const& aimDir,
58 float power,
59 ::Player* player
60 ) const;
61 // NOLINTEND
62
63public:
64 // static functions
65 // NOLINTBEGIN
66 MCAPI static void bindType(
68 ::std::vector<::AllExperiments> const& requiredToggles,
69 ::std::optional<::SemVersion> releasedMinFormatVersion
70 );
71
72 MCAPI static ::HashedString const& getIdentifier();
73 // NOLINTEND
74
75public:
76 // constructor thunks
77 // NOLINTBEGIN
78 MCAPI void* $ctor(::SharedTypes::v1_20_50::ProjectileItemComponent component);
79
80 MCAPI void* $ctor(::ActorType actorType, float minCriticalPower);
81 // NOLINTEND
82
83public:
84 // destructor thunk
85 // NOLINTBEGIN
86 MCAPI void $dtor();
87 // NOLINTEND
88
89public:
90 // vftables
91 // NOLINTBEGIN
92 MCNAPI static void** $vftable();
93 // NOLINTEND
94};
Definition Actor.h:105
Definition BlockSource.h:68
Definition Container.h:33
Definition HashedString.h:5
Definition NetworkedItemComponent.h:7
Definition Player.h:125
static MCAPI void ** $vftable()
Definition SemVersion.h:15
Definition Vec3.h:10
Definition ActorDefinitionIdentifier.h:15
Definition ProjectileItemComponent.h:15
Definition ReflectionCtx.h:11
Definition ctx.h:5