using NewHorizons.External.Modules.Props; using NewHorizons.External.Modules.Props.Audio; using NewHorizons.External.Modules.Props.Dialogue; using NewHorizons.External.Modules.Props.EchoesOfTheEye; using NewHorizons.External.Modules.Props.Quantum; using NewHorizons.External.Modules.Props.Remote; using NewHorizons.External.Modules.Props.Shuttle; using NewHorizons.External.Modules.TranslatorText; using NewHorizons.External.Modules.VariableSize; using NewHorizons.External.Modules.Volumes.VolumeInfos; using NewHorizons.External.Modules.WarpPad; using Newtonsoft.Json; using System; namespace NewHorizons.External.Modules { [JsonObject] public class PropModule { /// /// Place props in predefined positions on the planet /// public DetailInfo[] details; /// /// Add dialogue triggers to this planet /// public DialogueInfo[] dialogue; /// /// Add ship log entry locations on this planet /// public EntryLocationInfo[] entryLocation; /// /// Add Geysers to this planet /// public GeyserInfo[] geysers; /// /// Add translatable text to this planet. (LEGACY - for use with pre-autospirals configs) /// [Obsolete("nomaiText is deprecated as of the release of auto spirals, instead please use translatorText with new configs.")] public NomaiTextInfo[] nomaiText; /// /// Add translatable text to this planet /// public TranslatorTextInfo[] translatorText; /// /// Details which will be shown from 50km away. Meant to be lower resolution. /// public DetailInfo[] proxyDetails; /// /// Add rafts to this planet /// public RaftInfo[] rafts; /// /// Scatter props around this planet's surface /// public ScatterInfo[] scatter; /// /// Add slideshows (from the DLC) to the planet /// public ProjectionInfo[] slideShows; /// /// A list of quantum groups that props can be added to. An example of a group would be a list of possible locations for a QuantumSocketedObject. /// public QuantumGroupInfo[] quantumGroups; /// /// Add tornadoes to this planet /// public TornadoInfo[] tornados; /// /// Add volcanoes to this planet /// public VolcanoInfo[] volcanoes; /// /// Add black/white-holes to this planet /// public SingularityModule[] singularities; /// /// Add signalscope signals to this planet /// public SignalInfo[] signals; /// /// Add projection pools/platforms, whiteboards, and stones to this planet /// public RemoteInfo[] remotes; /// /// Add warp pad receivers to this planet. These are the warp pads you are sent to from Ash Twin. /// public NomaiWarpReceiverInfo[] warpReceivers; /// /// Add warp pad transmitters to this planet. These are the warp pads seen on the Ash Twin. /// public NomaiWarpTransmitterInfo[] warpTransmitters; /// /// Add audio point sources to this planet. For audio across an entire area, look for AudioVolumes under the Volumes module. /// public AudioSourceInfo[] audioSources; /// /// Add a gravity cannon to this planet. Must be paired to a new shuttle, which can be placed on this planet or elsewhere. /// public GravityCannonInfo[] gravityCannons; /// /// Add a Nomai shuttle to this planet. Can be paired to a gravity cannon on this planet or elsewhere. /// public ShuttleInfo[] shuttles; /// /// Add campfires that allow you to enter the dream world/simulation. Must be paired with a dream arrival point, which can be placed on this planet or elsewhere. /// public DreamCampfireInfo[] dreamCampfires; /// /// Add the points you will arrive at when entering the dream world/simulation from a paired dream campfire, which can be placed on this planet or elsewhere. The planet with the arrival point should be statically positioned to avoid issues with the simulation view materials. /// public DreamArrivalPointInfo[] dreamArrivalPoints; [Obsolete("reveal is deprecated. Use Volumes->revealVolumes instead.")] public RevealVolumeInfo[] reveal; [Obsolete("audioVolumes is deprecated. Use Volumes->audioVolumes instead.")] public AudioVolumeInfo[] audioVolumes; } }