diff --git a/NewHorizons/Builder/General/GravityBuilder.cs b/NewHorizons/Builder/General/GravityBuilder.cs index 922cfee8..3f138682 100644 --- a/NewHorizons/Builder/General/GravityBuilder.cs +++ b/NewHorizons/Builder/General/GravityBuilder.cs @@ -47,7 +47,7 @@ namespace NewHorizons.Builder.General var alignmentRadius = config.Atmosphere?.clouds?.outerCloudRadius ?? 1.5f * config.Base.surfaceSize; if (config.Base.surfaceGravity == 0) alignmentRadius = 0; - gravityVolume._alignmentRadius = alignmentRadius; + gravityVolume._alignmentRadius = config.Base.gravityAlignmentRadiusOverride ?? alignmentRadius; gravityVolume._upperSurfaceRadius = config.Base.surfaceSize; gravityVolume._lowerSurfaceRadius = 0; gravityVolume._layer = 3; diff --git a/NewHorizons/External/Modules/BaseModule.cs b/NewHorizons/External/Modules/BaseModule.cs index 01ddd024..f57cb1fc 100644 --- a/NewHorizons/External/Modules/BaseModule.cs +++ b/NewHorizons/External/Modules/BaseModule.cs @@ -70,6 +70,11 @@ namespace NewHorizons.External.Modules /// [DefaultValue(0)] public int gravityVolumePriority = 0; + /// + /// Optional. Overrides how far the player must be from the planet for their feet to automatically orient towards the ground. + /// + public int? gravityAlignmentRadiusOverride = null; + /// /// Apply physics to this planet when you bump into it. Will have a spherical collider the size of surfaceSize. /// For custom colliders they have to all be convex and you can leave surface size as 0.