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/ActorType.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 Actor;
13class BlockSource;
14class Container;
15class HashedString;
16class Player;
17class SemVersion;
18class Vec3;
20namespace SharedTypes::v1_20_50 { struct ProjectileItemComponent; }
21namespace cereal { struct ReflectionCtx; }
22// clang-format on
23
24class ProjectileItemComponent : public ::NetworkedItemComponent<::ProjectileItemComponent> {
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<4, 4, float> mMinCriticalPower;
29 ::ll::TypedStorage<8, 176, ::ActorDefinitionIdentifier> mActorIdentifier;
30 // NOLINTEND
31
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 // vIndex: 0
36 virtual ~ProjectileItemComponent() /*override*/;
37 // NOLINTEND
38
39public:
40 // member functions
41 // NOLINTBEGIN
43
44 MCAPI ProjectileItemComponent(::ActorType actorType, float minCriticalPower);
45
46 MCAPI bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const;
47
48 MCAPI ::Vec3 getShootDir(::Player const& player, float angleOffset) const;
49
50 MCAPI ::Actor*
51 shootProjectile(::BlockSource& region, ::Vec3 const& aimPos, ::Vec3 const& aimDir, float power, ::Player* player)
52 const;
53 // NOLINTEND
54
55public:
56 // static functions
57 // NOLINTBEGIN
58 MCAPI static void bindType(
60 ::std::vector<::AllExperiments> const& releasedMinFormatVersion,
61 ::std::optional<::SemVersion> requiredToggles
62 );
63
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 MCAPI static void** $vftable();
85 // NOLINTEND
86};
Definition Actor.h:104
Definition BlockSource.h:67
Definition Container.h:30
Definition HashedString.h:5
Definition NetworkedItemComponent.h:6
Definition Player.h:119
Definition ProjectileItemComponent.h:24
Definition SemVersion.h:15
Definition Vec3.h:10
Definition ActorDefinitionIdentifier.h:13
Definition ProjectileItemComponent.h:12
Definition ReflectionCtx.h:11
Definition ctx.h:5