LeviLamina
Loading...
Searching...
No Matches
BreathableComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Actor;
9// clang-format on
10
12public:
13 // BreathableComponent inner types define
14 enum class BreathableState : int {
15 InAir = 0,
16 InWater = 1,
17 InLava = 2,
18 InSolids = 3,
19 InBreathableOverrideBlock = 4,
20 InNonBreathableOverrideBlock = 5,
21 };
22
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 4, int> mSuffocateTime;
27 ::ll::TypedStorage<4, 4, float> mInhaleTime;
28 ::ll::TypedStorage<4, 4, int> mAirRegenPerTick;
29 ::ll::TypedStorage<1, 1, bool> mBreathesAir;
30 ::ll::TypedStorage<1, 1, bool> mBreathesWater;
31 ::ll::TypedStorage<1, 1, bool> mBreathesLava;
32 ::ll::TypedStorage<1, 1, bool> mBreathesSolids;
33 ::ll::TypedStorage<1, 1, bool> mGeneratesBubbles;
34 ::ll::TypedStorage<2, 2, short> mAirSupply;
35 ::ll::TypedStorage<2, 2, short> mAirSupplyMax;
36 ::ll::TypedStorage<8, 24, ::std::vector<::BlockDescriptor>> mBreathableBlocks;
37 ::ll::TypedStorage<8, 24, ::std::vector<::BlockDescriptor>> mNonBreathableBlocks;
38 ::ll::TypedStorage<4, 4, ::BreathableComponent::BreathableState> mBreathableState;
39 // NOLINTEND
40
41public:
42 // member functions
43 // NOLINTBEGIN
44 MCAPI bool canBreathe(::Actor const& owner) const;
45
46 MCAPI void updateBreathableState(::Actor& owner);
47
49 // NOLINTEND
50
51public:
52 // destructor thunk
53 // NOLINTBEGIN
54 MCAPI void $dtor();
55 // NOLINTEND
56};
Definition Actor.h:104
Definition BlockDescriptor.h:19
Definition BreathableComponent.h:11