mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
66 lines
1.9 KiB
C#
66 lines
1.9 KiB
C#
using System;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using NewHorizons.Utility;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace NewHorizons.External.Modules
|
|
{
|
|
[JsonObject]
|
|
public class RingModule
|
|
{
|
|
/// <summary>
|
|
/// Fluid type for sounds/effects when colliding with this ring.
|
|
/// </summary>
|
|
public CloudFluidType fluidType = CloudFluidType.None;
|
|
|
|
/// <summary>
|
|
/// Angle between the rings and the equatorial plane of the planet.
|
|
/// </summary>
|
|
public float inclination;
|
|
|
|
/// <summary>
|
|
/// Inner radius of the disk
|
|
/// </summary>
|
|
[Range(0, double.MaxValue)] public float innerRadius;
|
|
|
|
/// <summary>
|
|
/// Angle defining the point where the rings rise up from the planet's equatorial plane if inclination is nonzero.
|
|
/// </summary>
|
|
public float longitudeOfAscendingNode;
|
|
|
|
/// <summary>
|
|
/// Outer radius of the disk
|
|
/// </summary>
|
|
[Range(0, double.MaxValue)] public float outerRadius;
|
|
|
|
/// <summary>
|
|
/// Allows the rings to rotate.
|
|
/// </summary>
|
|
public float rotationSpeed;
|
|
|
|
/// <summary>
|
|
/// Relative filepath to the texture used for the rings.
|
|
/// </summary>
|
|
public string texture;
|
|
|
|
/// <summary>
|
|
/// Should this ring be unlit?
|
|
/// </summary>
|
|
public bool unlit;
|
|
|
|
#region Obsolete
|
|
[Obsolete("curve is deprecated, please use scaleCurve instead")]
|
|
public TimeValuePair[] curve;
|
|
#endregion
|
|
|
|
/// <summary>
|
|
/// Scale rings over time. Optional. Value between 0-1, time is in minutes.
|
|
/// </summary>
|
|
public TimeValuePair[] scaleCurve;
|
|
|
|
/// <summary>
|
|
/// Fade rings in/out over time. Optional. Value between 0-1, time is in minutes.
|
|
/// </summary>
|
|
public TimeValuePair[] opacityCurve;
|
|
}
|
|
} |