24 ::ll::TypedStorage<4, 4, ::RestrictionType> mRestrictionType;
25 ::ll::TypedStorage<4, 4, int> mRestrictionRadius;
26 ::ll::TypedStorage<4, 4, int> mRestrictionRadiusSqr;
27 ::ll::TypedStorage<4, 4, int> mCooldownTicksMax;
28 ::ll::TypedStorage<4, 4, int> mCooldownTicks;
29 ::ll::TypedStorage<8, 24, ::std::vector<::WeakPtr<::BlockType const>>> mHomeBlocks;
30 ::ll::TypedStorage<4, 12, ::BlockPos> mHomePos;
31 ::ll::TypedStorage<4, 4, ::DimensionType> mDimensionId;
37 MCAPI HomeComponent();
41 MCFOLD ::BlockPos getHomePos()
const;
43 MCFOLD
int getRestrictionRadius()
const;
45 MCFOLD
int getRestrictionRadiusSqr()
const;
47 MCFOLD
bool hasAnyRestriction()
const;
49 MCFOLD
bool hasSpecificRestriction(::RestrictionType restrictionType)
const;
51 MCAPI
bool hasValidBlockAtHomePos(
::BlockSource const& region)
const;
53 MCAPI
bool hasValidHomePos()
const;
55 MCAPI
bool isInHomeDimension(
::Actor const& owner)
const;
57 MCAPI
bool isWithinRestriction(
::BlockPos const& pos)
const;
63 MCAPI
void tick(
::Actor& owner);