14 enum class BreathableState :
int {
19 InBreathableOverrideBlock = 4,
20 InNonBreathableOverrideBlock = 5,
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;
44 MCAPI
bool canBreathe(
::Actor const& owner)
const;
46 MCAPI
void updateBreathableState(
::Actor& owner);