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 (requires Echoes of the Eye DLC) /// public RaftInfo[] rafts; /// /// Scatter props around this planet's surface /// public ScatterInfo[] scatter; /// /// Add slideshows to the planet (requires Echoes of the Eye DLC) /// public ProjectionInfo[] slideShows; /// /// 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 a socket quantum object to a planet. Define the position of multiple "sockets" and multiple objects that jump between sockets. /// If the number of sockets equals the number of objects, they will shuffle around. /// public SocketQuantumGroupInfo[] socketQuantumGroups; /// /// Add a state quantum object to a planet. Switches between displaying different objects in a single place. /// public StateQuantumGroupInfo[] stateQuantumGroups; /// /// Add quantum lightning to a planet. When lightning strikes, a different detail object is shown. The lightning will take the first defined position/rotation for all objects. /// public LightningQuantumInfo[] lightningQuantumGroups; /// /// Add campfires that allow you to enter the dream world/simulation (requires Echoes of the Eye DLC). 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 (requires Echoes of the Eye DLC). The planet with the arrival point should be statically positioned to avoid issues with the simulation view materials. /// public DreamArrivalPointInfo[] dreamArrivalPoints; /// /// Adds dream world grapple totems to this planet (requires Echoes of the Eye DLC). /// public GrappleTotemInfo[] grappleTotems; /// /// Adds dream world alarm totems to this planet (requires Echoes of the Eye DLC). /// public AlarmTotemInfo[] alarmTotems; /// /// Adds portholes (the windows you can peek through in the Stranger) to this planet (requires Echoes of the Eye DLC). /// public PortholeInfo[] portholes; /// /// Adds dream world candles to this planet (requires Echoes of the Eye DLC). /// public DreamCandleInfo[] dreamCandles; /// /// Adds dream world projection totems (requires Echoes of the Eye DLC). /// public ProjectionTotemInfo[] projectionTotems; [Obsolete("reveal is deprecated. Use Volumes->revealVolumes instead.")] public RevealVolumeInfo[] reveal; [Obsolete("audioVolumes is deprecated. Use Volumes->audioVolumes instead.")] public AudioVolumeInfo[] audioVolumes; [Obsolete("quantumGroups is deprecated. Use stateQuantumGroups or socketQuantumGroups instead.")] public QuantumGroupInfo[] quantumGroups; } }