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
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class BlockSource;
14class Container;
15class HashedString;
16class Player;
17class Vec3;
19namespace SharedTypes::v1_20_50 { struct ProjectileItemComponent; }
20// clang-format on
21
22class ProjectileItemComponent : public ::NetworkedItemComponent<::ProjectileItemComponent> {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 4, float> mMinCriticalPower;
27 ::ll::TypedStorage<8, 176, ::ActorDefinitionIdentifier> mActorIdentifier;
28 // NOLINTEND
29
30public:
31 // prevent constructor by default
33
34public:
35 // virtual functions
36 // NOLINTBEGIN
37 // vIndex: 0
38 virtual ~ProjectileItemComponent() /*override*/;
39 // NOLINTEND
40
41public:
42 // member functions
43 // NOLINTBEGIN
45
46 MCAPI ProjectileItemComponent(::ActorType actorType, float minCriticalPower);
47
48 MCAPI bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const;
49
50 MCAPI ::Vec3 getShootDir(::Player const& player, float angleOffset) const;
51
52 MCAPI ::Actor* shootProjectile(
53 ::BlockSource& region,
54 ::Vec3 const& aimPos,
55 ::Vec3 const& aimDir,
56 float power,
57 ::Player* player
58 ) const;
59 // NOLINTEND
60
61public:
62 // static functions
63 // NOLINTBEGIN
64 MCAPI static ::HashedString const& getIdentifier();
65 // NOLINTEND
66
67public:
68 // constructor thunks
69 // NOLINTBEGIN
70 MCAPI void* $ctor(::SharedTypes::v1_20_50::ProjectileItemComponent component);
71
72 MCAPI void* $ctor(::ActorType actorType, float minCriticalPower);
73 // NOLINTEND
74
75public:
76 // destructor thunk
77 // NOLINTBEGIN
78 MCAPI void $dtor();
79 // NOLINTEND
80
81public:
82 // vftables
83 // NOLINTBEGIN
84 MCNAPI static void** $vftable();
85 // NOLINTEND
86};
Definition Actor.h:103
Definition BlockSource.h:67
Definition Container.h:30
Definition HashedString.h:5
Definition NetworkedItemComponent.h:7
Definition Player.h:119
Definition ProjectileItemComponent.h:22
static MCAPI void ** $vftable()
Definition Vec3.h:10
Definition ActorDefinitionIdentifier.h:15
Definition ProjectileItemComponent.h:12