LeviLamina
Loading...
Searching...
No Matches
Arrow.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ActorInitializationMethod.h"
7#include "mc/world/actor/projectile/AbstractArrow.h"
8#include "mc/world/effect/MobEffectInstance.h"
9
10// auto generated forward declare list
11// clang-format off
13class CompoundTag;
14class DataLoadHelper;
15class EntityContext;
16class ItemStack;
17class Player;
18class Vec3;
21namespace mce { class Color; }
22// clang-format on
23
24class Arrow : public ::AbstractArrow {
25public:
26 // Arrow inner types define
27 enum class Data : int {
28 IsCritical = 16,
29 TippedAuxValue = 18,
30 };
31
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<4, 4, int> mLife;
36 ::ll::TypedStorage<1, 1, bool> mHasSkippedFirstCritParticle;
37 ::ll::TypedStorage<4, 4, int> mEnchantFlame;
38 ::ll::TypedStorage<4, 4, int> mEnchantInfinity;
39 ::ll::TypedStorage<8, 24, ::std::vector<::MobEffectInstance>> mMobEffects;
40 // NOLINTEND
41
42public:
43 // prevent constructor by default
44 Arrow();
45
46public:
47 // virtual functions
48 // NOLINTBEGIN
49 virtual void reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params) /*override*/;
50
51 virtual void shoot(::Vec3 const& dir, float pow, float uncertainty, ::Vec3 const& baseSpeed) /*override*/;
52
53 virtual void normalTick() /*override*/;
54
55 virtual void playerTouch(::Player& player) /*override*/;
56
57 virtual void setAuxValue(int aux) /*override*/;
58
59 virtual ::ItemStack _getPickupItem() const /*override*/;
60
61 virtual void addAdditionalSaveData(::CompoundTag& tag) const /*override*/;
62
63 virtual void readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
64
65 virtual ::mce::Color getEffectColor();
66 // NOLINTEND
67
68public:
69 // member functions
70 // NOLINTBEGIN
71 MCAPI Arrow(
72 ::ActorDefinitionGroup* definitions,
73 ::ActorDefinitionIdentifier const& definitionName,
74 ::EntityContext& entityContext
75 );
76
77 MCAPI void addMobEffect(::MobEffectInstance effect);
78
79 MCAPI int getAuxValue() const;
80
81 MCAPI int getEnchantPunch() const;
82
83 MCAPI void setCritical(bool isCrit);
84
85 MCAPI void setEnchantFlame(int level);
86
87 MCAPI void setEnchantInfinity(int level);
88
89 MCAPI void setEnchantPower(int level);
90
91 MCAPI void setEnchantPunch(int level);
92 // NOLINTEND
93
94public:
95 // constructor thunks
96 // NOLINTBEGIN
97 MCAPI void* $ctor(
98 ::ActorDefinitionGroup* definitions,
99 ::ActorDefinitionIdentifier const& definitionName,
100 ::EntityContext& entityContext
101 );
102 // NOLINTEND
103
104public:
105 // virtual function thunks
106 // NOLINTBEGIN
107 MCAPI void $reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params);
108
109 MCAPI void $shoot(::Vec3 const& dir, float pow, float uncertainty, ::Vec3 const& baseSpeed);
110
111 MCAPI void $normalTick();
112
113 MCAPI void $playerTouch(::Player& player);
114
115 MCAPI void $setAuxValue(int aux);
116
117 MCAPI ::ItemStack $_getPickupItem() const;
118
119 MCAPI void $addAdditionalSaveData(::CompoundTag& tag) const;
120
121 MCAPI void $readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
122
123 MCAPI ::mce::Color $getEffectColor();
124
125
126 // NOLINTEND
127
128public:
129 // vftables
130 // NOLINTBEGIN
131 MCAPI static void** $vftable();
132 // NOLINTEND
133};
Definition ActorDefinitionGroup.h:37
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition EntityContext.h:17
Definition ItemStack.h:35
Definition MobEffectInstance.h:20
Definition Player.h:137
Definition Vec3.h:10
Definition Color.h:13
Definition ActorDefinitionIdentifier.h:15
Definition VariantParameterList.h:14