mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
Change furthest orbit to solar system radius
This commit is contained in:
parent
a5e55f4081
commit
3f11a31d2d
@ -31,13 +31,13 @@ namespace NewHorizons.Handlers
|
|||||||
private static Dictionary<NHAstroObject, NewHorizonsBody> _customBodyDict;
|
private static Dictionary<NHAstroObject, NewHorizonsBody> _customBodyDict;
|
||||||
|
|
||||||
// Farthest distance from the center of the solar system
|
// Farthest distance from the center of the solar system
|
||||||
public static float FurthestOrbit { get; private set; }
|
public static float SolarSystemRadius { get; private set; }
|
||||||
public static float DefaultFurthestOrbit => 30000f;
|
public static float DefaultFurthestOrbit => 30000f;
|
||||||
|
|
||||||
public static void Init(List<NewHorizonsBody> bodies)
|
public static void Init(List<NewHorizonsBody> bodies)
|
||||||
{
|
{
|
||||||
// Base game value
|
// Base game value
|
||||||
FurthestOrbit = DefaultFurthestOrbit;
|
SolarSystemRadius = DefaultFurthestOrbit;
|
||||||
|
|
||||||
_existingBodyDict = new();
|
_existingBodyDict = new();
|
||||||
_customBodyDict = new();
|
_customBodyDict = new();
|
||||||
@ -853,10 +853,11 @@ namespace NewHorizons.Handlers
|
|||||||
go.transform.position = position;
|
go.transform.position = position;
|
||||||
}
|
}
|
||||||
|
|
||||||
var distanceToCenter = go.transform.position.magnitude;
|
// Uses the ratio of the interlopers furthest point to what the base game considers the edge of the solar system
|
||||||
if (distanceToCenter > FurthestOrbit)
|
var distanceToCenter = go.transform.position.magnitude * (24000 / 30000f);
|
||||||
|
if (distanceToCenter > SolarSystemRadius)
|
||||||
{
|
{
|
||||||
FurthestOrbit = distanceToCenter;
|
SolarSystemRadius = distanceToCenter;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -522,7 +522,7 @@ namespace NewHorizons
|
|||||||
var ssrLight = solarSystemRoot.AddComponent<Light>();
|
var ssrLight = solarSystemRoot.AddComponent<Light>();
|
||||||
ssrLight.innerSpotAngle = 0;
|
ssrLight.innerSpotAngle = 0;
|
||||||
ssrLight.spotAngle = 179;
|
ssrLight.spotAngle = 179;
|
||||||
ssrLight.range = PlanetCreationHandler.FurthestOrbit * (4f / 3f);
|
ssrLight.range = PlanetCreationHandler.SolarSystemRadius * (4f / 3f);
|
||||||
ssrLight.intensity = 0.001f;
|
ssrLight.intensity = 0.001f;
|
||||||
|
|
||||||
var fluid = playerBody.FindChild("PlayerDetector").GetComponent<DynamicFluidDetector>();
|
var fluid = playerBody.FindChild("PlayerDetector").GetComponent<DynamicFluidDetector>();
|
||||||
|
|||||||
@ -12,7 +12,7 @@ namespace NewHorizons.Patches.MapPatches
|
|||||||
[HarmonyPatch(nameof(MapController.Start))]
|
[HarmonyPatch(nameof(MapController.Start))]
|
||||||
public static void MapController_Start(MapController __instance)
|
public static void MapController_Start(MapController __instance)
|
||||||
{
|
{
|
||||||
var modifier = Mathf.Max(1f, PlanetCreationHandler.FurthestOrbit / PlanetCreationHandler.DefaultFurthestOrbit);
|
var modifier = Mathf.Max(1f, PlanetCreationHandler.SolarSystemRadius / PlanetCreationHandler.DefaultFurthestOrbit);
|
||||||
|
|
||||||
__instance._maxPanDistance *= modifier;
|
__instance._maxPanDistance *= modifier;
|
||||||
__instance._maxZoomDistance *= modifier;
|
__instance._maxZoomDistance *= modifier;
|
||||||
|
|||||||
@ -16,7 +16,7 @@ namespace NewHorizons.Patches.PlayerPatches
|
|||||||
|
|
||||||
var centerTransform = Locator.GetCenterOfTheUniverse().GetStaticReferenceFrame().transform;
|
var centerTransform = Locator.GetCenterOfTheUniverse().GetStaticReferenceFrame().transform;
|
||||||
var shipBody = Locator.GetShipBody();
|
var shipBody = Locator.GetShipBody();
|
||||||
var maxDist = Mathf.Max(PlanetCreationHandler.DefaultFurthestOrbit, PlanetCreationHandler.FurthestOrbit);
|
var maxDist = Mathf.Max(PlanetCreationHandler.DefaultFurthestOrbit, PlanetCreationHandler.SolarSystemRadius);
|
||||||
__result = centerTransform != null && shipBody != null && (shipBody.transform.position - centerTransform.position).sqrMagnitude > maxDist * maxDist;
|
__result = centerTransform != null && shipBody != null && (shipBody.transform.position - centerTransform.position).sqrMagnitude > maxDist * maxDist;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user