using NewHorizons.Utility; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; namespace NewHorizons.External.Modules { [JsonObject] public class BrambleModule { /// /// Defining this value will make this body a bramble dimension. Leave it null to not do that. /// public BrambleDimensionInfo dimension; /// /// Place nodes/seeds that take you to other bramble dimensions /// public BrambleNodeInfo[] nodes; [JsonObject] public class BrambleDimensionInfo { /// /// The color of the fog inside this dimension. Leave blank for the default yellowish color: (113, 107, 81) /// public MColor fogTint; /// /// The name of the *node* that the player is taken to when exiting this dimension. /// public string linksTo; /// /// The internal radius (in meters) of the dimension. The default is 1705. /// [DefaultValue(1705f)] public float radius = 1705f; /// /// An array of integers from 0-5. By default, all entrances are allowed. To force this dimension to warp players in from only one point (like the anglerfish nest dimension in the base game) set this value to [3], [5], or similar. Values of 0-5 only. /// public int[] allowedEntrances; } [JsonObject] public class BrambleNodeInfo { /// /// The physical position of the node /// public MVector3 position; /// /// The physical rotation of the node /// public MVector3 rotation; /// /// The physical scale of the node, as a multiplier of the original size /// [DefaultValue(1f)] public float scale = 1f; /// /// The name of the planet that hosts the dimension this node links to /// public string linksTo; /// /// The name of this node. Only required if this node should serve as an exit. /// public string name; /// /// Set this to true to make this node a seed instead of a node the player can enter /// [DefaultValue(false)] public bool isSeed = false; /// /// The color of the fog inside the node. Leave blank for the default yellowish color: (131, 124, 105, 255) /// public MColor fogTint; /// /// The color of the shafts of light coming from the entrances to the node. Leave blank for the default yellowish color: (131, 124, 105, 255) /// public MColor lightTint; /// /// The color a dimension's background fog turns when you approach this node (if it's in a dimension). If this node is not in a dimension, this does nothing. Leave blank for the default yellowish white color: (255, 245, 217, 255) /// public MColor farFogTint; /// /// An array of integers from 0-5. By default, all exits are allowed. To force this node to warp players out from only one hole set this value to [3], [5], or similar. Values of 0-5 only. /// public int[] possibleExits; } } }