44 ::ll::TypedStorage<4, 12, ::Vec3 const> mStartPos;
45 ::ll::TypedStorage<4, 4, float const> mHorizontalRadius;
46 ::ll::TypedStorage<4, 4, float const> mVerticalRadius;
47 ::ll::TypedStorage<4, 24, ::CaveFeatureUtils::CarvingParameters const> mCarvingParameters;
48 ::ll::TypedStorage<4, 4, int const> mCurrentStep;
49 ::ll::TypedStorage<4, 4, int const> mTotalSteps;
50 ::ll::TypedStorage<4, 4, float const> mThickness;
57 ::ll::TypedStorage<4, 4, ::std::atomic<uint>> mUseCount;
58 ::ll::TypedStorage<8, 24, ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>>
59 mCarveEllipsoidParamsVector;
66 ::ll::TypedStorage<8, 8, ::Block const*> mFillWithBlock;
67 ::ll::TypedStorage<8, 16, ::ExpressionNode> mWidthMod;
68 ::ll::TypedStorage<4, 4, int> mSkipCarveChance;
69 ::ll::TypedStorage<4, 4, int> mHeightLimit;
70 ::ll::TypedStorage<4, 8, ::FloatRange> mYScale;
71 ::ll::TypedStorage<4, 8, ::FloatRange> mHorizontalRadiusMultiplier;
72 ::ll::TypedStorage<4, 8, ::FloatRange> mVerticalRadiusMultiplier;
73 ::ll::TypedStorage<4, 8, ::FloatRange> mFloorLevel;
74 ::ll::TypedStorage<8, 32, ::std::string const> VALID_PASS;
75 ::ll::TypedStorage<4, 4, float const> X_DAMPENING_FACTOR;
76 ::ll::TypedStorage<4, 4, float const> Y_DAMPENING_FACTOR;
77 ::ll::TypedStorage<4, 4, float const> STEEP_FLATTENING_FACTOR;
78 ::ll::TypedStorage<4, 4, float const> FLATTENING_FACTOR;
79 ::ll::TypedStorage<4, 4, int const> STEEP_CHANCE;
80 ::ll::TypedStorage<4, 4, int const> TUNNEL_SKIP_CHANCE;
81 ::ll::TypedStorage<4, 4, int const> CAVE_COUNT_BASE_FACTOR;
82 ::ll::TypedStorage<4, 4, int const> ROOM_CARVE_CHANCE;
83 ::ll::TypedStorage<4, 4, int const> MAX_NUM_TUNNELS_ADDED_ON_ROOM_CARVE;
84 ::ll::TypedStorage<1, 1, bool> mCacheEnabled;
88 ::std::unordered_map<int, ::std::unordered_map<int, ::std::shared_ptr<::CaveFeature::CachedMetaData>>>>
90 ::ll::TypedStorage<8, 80, ::std::mutex> mCacheMutex;
91 ::ll::TypedStorage<4, 4, ::std::atomic<uint>> mPlaceCount;
97 virtual ~CaveFeature() ;
101 virtual bool isValidPlacement(::std::string
const& pass) ;
103 virtual void addRoom(
111 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
114 virtual void addTunnel(
121 float horizontalRotation,
122 float verticalRotation,
128 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
131 virtual bool carveEllipsoidVolume(
143 virtual void addFeature(
149 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
158 MCAPI
bool carveEllipsoid(
164 float horizontalRadius,
165 float const verticalRadius,
187 MCAPI
bool $isValidPlacement(::std::string
const& pass);
197 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
200 MCAPI
void $addTunnel(
207 float horizontalRotation,
208 float verticalRotation,
214 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
217 MCAPI
bool $carveEllipsoidVolume(
229 MCAPI
void $addFeature(
235 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations