LeviLamina
Loading...
Searching...
No Matches
ImpactDamageSubcomponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/v1_26_50/actor/ImpactDamageSubcomponentDefinition.h"
7#include "mc/entity/components_json_legacy/OnHitSubcomponent.h"
8#include "mc/util/FloatRange.h"
9#include "mc/world/actor/ActorType.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
15namespace Json { class Value; }
16namespace SharedTypes::v1_26_50 { struct ProjectileOnHitSubcomponent; }
17// clang-format on
18
20public:
21 // ImpactDamageSubcomponent inner types define
22 using DifficultyRandomization =
23 ::SharedTypes::v1_26_50::ImpactDamageSubcomponentDefinition::DifficultyRandomization;
24
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<4, 8, ::FloatRange> mProjectileDamage;
29 ::ll::TypedStorage<4, 4, ::ActorType> mFilter;
30 ::ll::TypedStorage<1, 1, bool> mCatchFire;
31 ::ll::TypedStorage<1, 1, bool> mChanneling;
32 ::ll::TypedStorage<1, 1, bool> mKnockback;
33 ::ll::TypedStorage<1, 1, ::SharedTypes::v1_26_50::ImpactDamageSubcomponentDefinition::DifficultyRandomization>
34 mDifficultyRandomization;
35 ::ll::TypedStorage<1, 1, bool> mCeilPreCriticalDamage;
36 ::ll::TypedStorage<1, 1, bool> mDestroyOnHit;
37 ::ll::TypedStorage<1, 1, bool> mRegisterLastHurtRequiresDamage;
38 ::ll::TypedStorage<1, 1, bool> mDestroyOnHitRequiresDamage;
39 ::ll::TypedStorage<1, 1, bool> mApplyKnockbackToBlockingTargets;
40 ::ll::TypedStorage<4, 4, int> mMaxCriticalDamage;
41 ::ll::TypedStorage<4, 4, int> mMinCriticalDamage;
42 ::ll::TypedStorage<4, 4, float> mPowerMultiplier;
43 // NOLINTEND
44
45public:
46 // virtual functions
47 // NOLINTBEGIN
48 virtual void initFromDefinition(::SharedTypes::v1_26_50::ProjectileOnHitSubcomponent const& component) /*override*/;
49
50 virtual void writetoJSON(::Json::Value& component) const /*override*/;
51
52 virtual void doOnHitEffect(::Actor& owner, ::ProjectileComponent& component) /*override*/;
53
54 virtual char const* getName() const /*override*/;
55 // NOLINTEND
56
57public:
58 // virtual function thunks
59 // NOLINTBEGIN
60 MCAPI void $initFromDefinition(::SharedTypes::v1_26_50::ProjectileOnHitSubcomponent const& component);
61
62 MCAPI void $writetoJSON(::Json::Value& component) const;
63
64 MCAPI void $doOnHitEffect(::Actor& owner, ::ProjectileComponent& component);
65
66 MCAPI char const* $getName() const;
67
68
69 // NOLINTEND
70};
Definition Actor.h:113
Definition ImpactDamageSubcomponent.h:19
Definition Value.h:16
Definition OnHitSubcomponent.h:13
Definition ProjectileComponent.h:30
Definition ProjectileOnHitSubcomponent.h:7