Done rearranging volumes

This commit is contained in:
Nick 2023-03-25 14:18:52 -04:00
parent ce7ef3ee93
commit e8c05f4818
42 changed files with 152 additions and 125 deletions

View File

@ -1,6 +1,6 @@
using NewHorizons.Builder.Props; using NewHorizons.Builder.Props;
using NewHorizons.Components.Achievement; using NewHorizons.Components.Achievement;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using NewHorizons.Utility.OWUtilities; using NewHorizons.Utility.OWUtilities;
using OWML.Common; using OWML.Common;
using UnityEngine; using UnityEngine;

View File

@ -1,5 +1,5 @@
using NewHorizons.Builder.Props; using NewHorizons.Builder.Props;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using NewHorizons.Utility; using NewHorizons.Utility;
using NewHorizons.Utility.OWUtilities; using NewHorizons.Utility.OWUtilities;
using OWML.Common; using OWML.Common;

View File

@ -1,5 +1,5 @@
using NewHorizons.Components.Volumes; using NewHorizons.Components.Volumes;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes namespace NewHorizons.Builder.Volumes

View File

@ -1,5 +1,5 @@
using NewHorizons.Components.Volumes; using NewHorizons.Components.Volumes;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using OWML.Utils; using OWML.Utils;
using UnityEngine; using UnityEngine;

View File

@ -1,4 +1,4 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using OWML.Utils; using OWML.Utils;
using UnityEngine; using UnityEngine;

View File

@ -1,5 +1,5 @@
using NewHorizons.Components.Volumes; using NewHorizons.Components.Volumes;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using OWML.Utils; using OWML.Utils;
using UnityEngine; using UnityEngine;

View File

@ -1,5 +1,5 @@
using NewHorizons.Builder.Props; using NewHorizons.Builder.Props;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using NewHorizons.Utility.OWUtilities; using NewHorizons.Utility.OWUtilities;
using OWML.Common; using OWML.Common;
using OWML.Utils; using OWML.Utils;

View File

@ -1,5 +1,5 @@
using NewHorizons.Builder.Props; using NewHorizons.Builder.Props;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using NewHorizons.Utility.OWUtilities; using NewHorizons.Utility.OWUtilities;
using OWML.Common; using OWML.Common;
using UnityEngine; using UnityEngine;

View File

@ -1,4 +1,4 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes namespace NewHorizons.Builder.Volumes

View File

@ -1,4 +1,4 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes namespace NewHorizons.Builder.Volumes

View File

@ -1,4 +1,5 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes;
using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes.Rulesets namespace NewHorizons.Builder.Volumes.Rulesets

View File

@ -1,4 +1,5 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes;
using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes.Rulesets namespace NewHorizons.Builder.Volumes.Rulesets

View File

@ -1,4 +1,5 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes;
using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes.Rulesets namespace NewHorizons.Builder.Volumes.Rulesets

View File

@ -1,4 +1,4 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes namespace NewHorizons.Builder.Volumes

View File

@ -1,5 +1,5 @@
using NewHorizons.Builder.Props; using NewHorizons.Builder.Props;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using NewHorizons.Utility.OWUtilities; using NewHorizons.Utility.OWUtilities;
using UnityEngine; using UnityEngine;

View File

@ -1,4 +1,5 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes;
using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes.VisorEffects namespace NewHorizons.Builder.Volumes.VisorEffects

View File

@ -1,4 +1,5 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes;
using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes.VisorEffects namespace NewHorizons.Builder.Volumes.VisorEffects

View File

@ -1,5 +1,5 @@
using NewHorizons.Builder.Props; using NewHorizons.Builder.Props;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using NewHorizons.Utility.OWUtilities; using NewHorizons.Utility.OWUtilities;
using UnityEngine; using UnityEngine;

View File

@ -1,4 +1,4 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using UnityEngine; using UnityEngine;
namespace NewHorizons.Builder.Volumes namespace NewHorizons.Builder.Volumes

View File

@ -1,4 +1,4 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.SerializableEnums;
using NewHorizons.Handlers; using NewHorizons.Handlers;
using System.Collections; using System.Collections;
using UnityEngine; using UnityEngine;

View File

@ -1,4 +1,4 @@
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using NewHorizons.Handlers; using NewHorizons.Handlers;
using OWML.Utils; using OWML.Utils;
using UnityEngine; using UnityEngine;

View File

@ -4,6 +4,7 @@ using NewHorizons.External.Modules.Props.Dialogue;
using NewHorizons.External.Modules.Props.Quantum; using NewHorizons.External.Modules.Props.Quantum;
using NewHorizons.External.Modules.VariableSize; using NewHorizons.External.Modules.VariableSize;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes;
using NewHorizons.External.Modules.Volumes.VolumeInfos;
using Newtonsoft.Json; using Newtonsoft.Json;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;

View File

@ -5,7 +5,7 @@ using NewHorizons.External.Modules.Props.Quantum;
using NewHorizons.External.Modules.Props.Remote; using NewHorizons.External.Modules.Props.Remote;
using NewHorizons.External.Modules.TranslatorText; using NewHorizons.External.Modules.TranslatorText;
using NewHorizons.External.Modules.VariableSize; using NewHorizons.External.Modules.VariableSize;
using NewHorizons.External.Modules.Volumes; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using NewHorizons.External.Modules.WarpPad; using NewHorizons.External.Modules.WarpPad;
using Newtonsoft.Json; using Newtonsoft.Json;
using System; using System;

View File

@ -2,7 +2,7 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters; using Newtonsoft.Json.Converters;
using System.Runtime.Serialization; using System.Runtime.Serialization;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.SerializableEnums
{ {
[JsonConverter(typeof(StringEnumConverter))] [JsonConverter(typeof(StringEnumConverter))]
public enum CreditsType public enum CreditsType

View File

@ -2,7 +2,7 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Converters; using Newtonsoft.Json.Converters;
using System.Runtime.Serialization; using System.Runtime.Serialization;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.SerializableEnums
{ {
[JsonConverter(typeof(StringEnumConverter))] [JsonConverter(typeof(StringEnumConverter))]
public enum DeathType public enum DeathType

View File

@ -0,0 +1,19 @@
using NewHorizons.External.Modules.Volumes.VolumeInfos;
using Newtonsoft.Json;
namespace NewHorizons.External.Modules.Volumes
{
[JsonObject]
public class ProbeModule
{
/// <summary>
/// Add probe destruction volumes to this planet. These will delete your probe.
/// </summary>
public VolumeInfo[] destructionVolumes;
/// <summary>
/// Add probe safety volumes to this planet. These will stop the probe destruction volumes from working.
/// </summary>
public VolumeInfo[] safetyVolumes;
}
}

View File

@ -1,88 +1,9 @@
using NewHorizons.External.Modules.Audio; using NewHorizons.External.Modules.Volumes.VolumeInfos;
using Newtonsoft.Json; using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System.ComponentModel; using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Runtime.Serialization;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes
{ {
[JsonObject]
public class VolumeInfo : GeneralPointPropInfo
{
/// <summary>
/// The radius of this volume.
/// </summary>
[DefaultValue(1f)] public float radius = 1f;
}
[JsonObject]
public class ProbeModule
{
/// <summary>
/// Add probe destruction volumes to this planet. These will delete your probe.
/// </summary>
public VolumeInfo[] destructionVolumes;
/// <summary>
/// Add probe safety volumes to this planet. These will stop the probe destruction volumes from working.
/// </summary>
public VolumeInfo[] safetyVolumes;
}
[JsonObject]
public class VisorEffectModule
{
/// <summary>
/// Add visor frost effect volumes to this planet. This is the ghost matter effect.
/// </summary>
public FrostEffectVolumeInfo[] frostEffectVolumes;
/// <summary>
/// Add visor rain effect volumes to this planet. You can see this on Giant's Deep.
/// </summary>
public RainEffectVolumeInfo[] rainEffectVolumes;
[JsonObject]
public class FrostEffectVolumeInfo : PriorityVolumeInfo
{
/// <summary>
/// The rate at which the frost effect will get stronger
/// </summary>
[DefaultValue(0.5f)]
public float frostRate = 0.5f;
/// <summary>
/// The maximum strength of frost this volume can give
/// </summary>
[Range(0f, 1f)]
[DefaultValue(0.91f)]
public float maxFrost = 0.91f;
}
[JsonObject]
public class RainEffectVolumeInfo : PriorityVolumeInfo
{
/// <summary>
/// The rate at which the rain droplet effect will happen
/// </summary>
[DefaultValue(0.1f)]
public float dropletRate = 10f;
/// <summary>
/// The rate at which the rain streak effect will happen
/// </summary>
[DefaultValue(1f)]
public float streakRate = 1f;
}
}
[JsonObject] [JsonObject]
public class RulesetModule public class RulesetModule
{ {
@ -166,19 +87,4 @@ namespace NewHorizons.External.Modules.Volumes
} }
} }
[JsonObject]
public class SpeedTrapVolumeInfo : VolumeInfo
{
/// <summary>
/// The speed the volume will slow you down to when you enter it.
/// </summary>
[DefaultValue(10f)]
public float speedLimit = 10f;
/// <summary>
/// How fast it will slow down the player to the speed limit.
/// </summary>
[DefaultValue(3f)]
public float acceleration = 3f;
}
} }

View File

@ -0,0 +1,55 @@
using NewHorizons.External.Modules.Volumes.VolumeInfos;
using Newtonsoft.Json;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
namespace NewHorizons.External.Modules.Volumes
{
[JsonObject]
public class VisorEffectModule
{
/// <summary>
/// Add visor frost effect volumes to this planet. This is the ghost matter effect.
/// </summary>
public FrostEffectVolumeInfo[] frostEffectVolumes;
/// <summary>
/// Add visor rain effect volumes to this planet. You can see this on Giant's Deep.
/// </summary>
public RainEffectVolumeInfo[] rainEffectVolumes;
[JsonObject]
public class FrostEffectVolumeInfo : PriorityVolumeInfo
{
/// <summary>
/// The rate at which the frost effect will get stronger
/// </summary>
[DefaultValue(0.5f)]
public float frostRate = 0.5f;
/// <summary>
/// The maximum strength of frost this volume can give
/// </summary>
[Range(0f, 1f)]
[DefaultValue(0.91f)]
public float maxFrost = 0.91f;
}
[JsonObject]
public class RainEffectVolumeInfo : PriorityVolumeInfo
{
/// <summary>
/// The rate at which the rain droplet effect will happen
/// </summary>
[DefaultValue(0.1f)]
public float dropletRate = 10f;
/// <summary>
/// The rate at which the rain streak effect will happen
/// </summary>
[DefaultValue(1f)]
public float streakRate = 1f;
}
}
}

View File

@ -3,7 +3,7 @@ using Newtonsoft.Json;
using System.ComponentModel; using System.ComponentModel;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class AudioVolumeInfo : PriorityVolumeInfo public class AudioVolumeInfo : PriorityVolumeInfo

View File

@ -1,7 +1,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
using System.ComponentModel; using System.ComponentModel;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class ChangeStarSystemVolumeInfo : VolumeInfo public class ChangeStarSystemVolumeInfo : VolumeInfo

View File

@ -1,7 +1,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
using System.ComponentModel; using System.ComponentModel;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class DestructionVolumeInfo : VanishVolumeInfo public class DestructionVolumeInfo : VanishVolumeInfo

View File

@ -2,7 +2,7 @@ using NewHorizons.External.Modules.SerializableEnums;
using Newtonsoft.Json; using Newtonsoft.Json;
using System.ComponentModel; using System.ComponentModel;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class FluidVolumeInfo : PriorityVolumeInfo public class FluidVolumeInfo : PriorityVolumeInfo

View File

@ -3,7 +3,7 @@ using Newtonsoft.Json.Converters;
using System.ComponentModel; using System.ComponentModel;
using System.Runtime.Serialization; using System.Runtime.Serialization;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]

View File

@ -1,7 +1,8 @@
using NewHorizons.External.Modules.SerializableEnums;
using Newtonsoft.Json; using Newtonsoft.Json;
using System.ComponentModel; using System.ComponentModel;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class LoadCreditsVolumeInfo : VolumeInfo public class LoadCreditsVolumeInfo : VolumeInfo

View File

@ -3,7 +3,7 @@ using Newtonsoft.Json.Converters;
using System.ComponentModel; using System.ComponentModel;
using System.Runtime.Serialization; using System.Runtime.Serialization;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class NotificationVolumeInfo : VolumeInfo public class NotificationVolumeInfo : VolumeInfo

View File

@ -1,7 +1,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
using System.ComponentModel; using System.ComponentModel;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class OxygenVolumeInfo : VolumeInfo public class OxygenVolumeInfo : VolumeInfo

View File

@ -1,7 +1,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
using System.ComponentModel; using System.ComponentModel;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class PriorityVolumeInfo : VolumeInfo public class PriorityVolumeInfo : VolumeInfo

View File

@ -3,7 +3,7 @@ using Newtonsoft.Json.Converters;
using System.ComponentModel; using System.ComponentModel;
using System.Runtime.Serialization; using System.Runtime.Serialization;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class RevealVolumeInfo : VolumeInfo public class RevealVolumeInfo : VolumeInfo

View File

@ -0,0 +1,21 @@
using Newtonsoft.Json;
using System.ComponentModel;
namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{
[JsonObject]
public class SpeedTrapVolumeInfo : VolumeInfo
{
/// <summary>
/// The speed the volume will slow you down to when you enter it.
/// </summary>
[DefaultValue(10f)]
public float speedLimit = 10f;
/// <summary>
/// How fast it will slow down the player to the speed limit.
/// </summary>
[DefaultValue(3f)]
public float acceleration = 3f;
}
}

View File

@ -1,7 +1,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
using System.ComponentModel; using System.ComponentModel;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{ {
[JsonObject] [JsonObject]
public class VanishVolumeInfo : VolumeInfo public class VanishVolumeInfo : VolumeInfo

View File

@ -0,0 +1,18 @@
using NewHorizons.External.Modules.Audio;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Runtime.Serialization;
namespace NewHorizons.External.Modules.Volumes.VolumeInfos
{
[JsonObject]
public class VolumeInfo : GeneralPointPropInfo
{
/// <summary>
/// The radius of this volume.
/// </summary>
[DefaultValue(1f)] public float radius = 1f;
}
}

View File

@ -1,3 +1,4 @@
using NewHorizons.External.Modules.Volumes.VolumeInfos;
using Newtonsoft.Json; using Newtonsoft.Json;
namespace NewHorizons.External.Modules.Volumes namespace NewHorizons.External.Modules.Volumes