From 7db8e1c4efb2b79c5b9e6b8f58ac409b66d943fc Mon Sep 17 00:00:00 2001 From: TerrificTrifid <99054745+TerrificTrifid@users.noreply.github.com> Date: Fri, 16 Sep 2022 22:15:55 -0500 Subject: [PATCH 01/11] Audio volume setting --- NewHorizons/Builder/Volumes/AudioVolumeBuilder.cs | 1 + NewHorizons/External/Modules/VolumesModule.cs | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/NewHorizons/Builder/Volumes/AudioVolumeBuilder.cs b/NewHorizons/Builder/Volumes/AudioVolumeBuilder.cs index bbb201d8..c85f2e74 100644 --- a/NewHorizons/Builder/Volumes/AudioVolumeBuilder.cs +++ b/NewHorizons/Builder/Volumes/AudioVolumeBuilder.cs @@ -46,6 +46,7 @@ namespace NewHorizons.Builder.Volumes var owAudioSource = go.AddComponent(); owAudioSource._audioSource = audioSource; owAudioSource.loop = info.loop; + owAudioSource.SetMaxVolume(info.volume); owAudioSource.SetTrack((OWAudioMixer.TrackName)Enum.Parse(typeof(OWAudioMixer.TrackName), Enum.GetName(typeof(AudioMixerTrackName), info.track))); AudioUtilities.SetAudioClip(owAudioSource, info.audio, mod); diff --git a/NewHorizons/External/Modules/VolumesModule.cs b/NewHorizons/External/Modules/VolumesModule.cs index 49bbc542..fedecc86 100644 --- a/NewHorizons/External/Modules/VolumesModule.cs +++ b/NewHorizons/External/Modules/VolumesModule.cs @@ -134,6 +134,11 @@ namespace NewHorizons.External.Modules /// Whether to loop this audio while in this audio volume or just play it once /// [DefaultValue(true)] public bool loop = true; + + /// + /// The loudness of the audio + /// + [DefaultValue(1f)] public float volume = 1f; } [JsonObject] From f04171ec83aa1d6df438a888c25c65543755ead2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 17 Sep 2022 03:18:00 +0000 Subject: [PATCH 02/11] Updated Schemas --- NewHorizons/Schemas/body_schema.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/NewHorizons/Schemas/body_schema.json b/NewHorizons/Schemas/body_schema.json index a3d243d1..f68205be 100644 --- a/NewHorizons/Schemas/body_schema.json +++ b/NewHorizons/Schemas/body_schema.json @@ -2501,6 +2501,12 @@ "type": "boolean", "description": "Whether to loop this audio while in this audio volume or just play it once", "default": true + }, + "volume": { + "type": "number", + "description": "The loudness of the audio", + "format": "float", + "default": 1.0 } } }, From 9be2bed1f057047f4cd044b449e3b659c4e52c72 Mon Sep 17 00:00:00 2001 From: Noah Pilarski Date: Sat, 17 Sep 2022 09:58:22 -0400 Subject: [PATCH 03/11] Add range attribute --- NewHorizons/External/Modules/VolumesModule.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/NewHorizons/External/Modules/VolumesModule.cs b/NewHorizons/External/Modules/VolumesModule.cs index fedecc86..9211f495 100644 --- a/NewHorizons/External/Modules/VolumesModule.cs +++ b/NewHorizons/External/Modules/VolumesModule.cs @@ -4,6 +4,7 @@ using Newtonsoft.Json.Converters; using System; using System.Collections.Generic; using System.ComponentModel; +using System.ComponentModel.DataAnnotations; using System.Linq; using System.Runtime.Serialization; using System.Text; @@ -138,7 +139,9 @@ namespace NewHorizons.External.Modules /// /// The loudness of the audio /// - [DefaultValue(1f)] public float volume = 1f; + [Range(0f, 1f)] + [DefaultValue(1f)] + public float volume = 1f; } [JsonObject] From 129fbf3a4fa670bba202f70513a1de9b8e295ec5 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 17 Sep 2022 14:00:40 +0000 Subject: [PATCH 04/11] Updated Schemas --- NewHorizons/Schemas/body_schema.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/NewHorizons/Schemas/body_schema.json b/NewHorizons/Schemas/body_schema.json index f68205be..fe2a15b1 100644 --- a/NewHorizons/Schemas/body_schema.json +++ b/NewHorizons/Schemas/body_schema.json @@ -2506,7 +2506,9 @@ "type": "number", "description": "The loudness of the audio", "format": "float", - "default": 1.0 + "default": 1.0, + "maximum": 1.0, + "minimum": 0.0 } } }, From 2904af39d1153e1c6a137562bcdb8fe17f78e9d4 Mon Sep 17 00:00:00 2001 From: TerrificTrifid <99054745+TerrificTrifid@users.noreply.github.com> Date: Sat, 17 Sep 2022 10:55:01 -0500 Subject: [PATCH 05/11] Detail stretch --- NewHorizons/Builder/Props/DetailBuilder.cs | 2 +- NewHorizons/External/Modules/PropModule.cs | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/NewHorizons/Builder/Props/DetailBuilder.cs b/NewHorizons/Builder/Props/DetailBuilder.cs index 660956b6..5e4ab8e1 100644 --- a/NewHorizons/Builder/Props/DetailBuilder.cs +++ b/NewHorizons/Builder/Props/DetailBuilder.cs @@ -98,7 +98,7 @@ namespace NewHorizons.Builder.Props prop.transform.rotation = go.transform.TransformRotation(rot); } - prop.transform.localScale = detail.scale != 0 ? Vector3.one * detail.scale : prefab.transform.localScale; + prop.transform.localScale = detail.stretch ?? (detail.scale != 0 ? Vector3.one * detail.scale : prefab.transform.localScale); prop.SetActive(true); diff --git a/NewHorizons/External/Modules/PropModule.cs b/NewHorizons/External/Modules/PropModule.cs index 1644192d..4051e58f 100644 --- a/NewHorizons/External/Modules/PropModule.cs +++ b/NewHorizons/External/Modules/PropModule.cs @@ -200,6 +200,11 @@ namespace NewHorizons.External.Modules /// [DefaultValue(1f)] public float scale = 1f; + /// + /// Scale each axis of the prop. Overrides `scale`. + /// + public MVector3 stretch; + /// /// If this value is not null, this prop will be quantum. Assign this field to the id of the quantum group it should be a part of. The group it is assigned to determines what kind of quantum object it is /// From 1ce208c77801b21ec433ad4dd0cac31af80187c0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 17 Sep 2022 15:57:01 +0000 Subject: [PATCH 06/11] Updated Schemas --- NewHorizons/Schemas/body_schema.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/NewHorizons/Schemas/body_schema.json b/NewHorizons/Schemas/body_schema.json index fe2a15b1..3fdc9ce5 100644 --- a/NewHorizons/Schemas/body_schema.json +++ b/NewHorizons/Schemas/body_schema.json @@ -1049,6 +1049,10 @@ "format": "float", "default": 1.0 }, + "stretch": { + "description": "Scale each axis of the prop. Overrides `scale`.", + "$ref": "#/definitions/MVector3" + }, "quantumGroupID": { "type": "string", "description": "If this value is not null, this prop will be quantum. Assign this field to the id of the quantum group it should be a part of. The group it is assigned to determines what kind of quantum object it is" From 2cee9ebd426318525a098372c7e0a66706fabe59 Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Sat, 17 Sep 2022 11:42:45 -0700 Subject: [PATCH 07/11] add stretch to scatter --- NewHorizons/Builder/Props/ScatterBuilder.cs | 1 + NewHorizons/External/Modules/PropModule.cs | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/NewHorizons/Builder/Props/ScatterBuilder.cs b/NewHorizons/Builder/Props/ScatterBuilder.cs index a92ebd9b..dffcc47a 100644 --- a/NewHorizons/Builder/Props/ScatterBuilder.cs +++ b/NewHorizons/Builder/Props/ScatterBuilder.cs @@ -69,6 +69,7 @@ namespace NewHorizons.Builder.Props var detailInfo = new PropModule.DetailInfo() { scale = propInfo.scale, + stretch = propInfo.stretch, keepLoaded = propInfo.keepLoaded }; var scatterPrefab = DetailBuilder.Make(go, sector, prefab, detailInfo); diff --git a/NewHorizons/External/Modules/PropModule.cs b/NewHorizons/External/Modules/PropModule.cs index 4051e58f..807aa9d6 100644 --- a/NewHorizons/External/Modules/PropModule.cs +++ b/NewHorizons/External/Modules/PropModule.cs @@ -123,7 +123,12 @@ namespace NewHorizons.External.Modules /// /// Scale this prop once it is placed /// - public float scale = 1f; + [DefaultValue(1f)] public float scale = 1f; + + /// + /// Scale each axis of the prop. Overrides `scale`. + /// + public MVector3 stretch; /// /// The number used as entropy for scattering the props From 50f2dc16251f19d4a0d35c0a5e93429d7bcfca7b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 17 Sep 2022 18:44:44 +0000 Subject: [PATCH 08/11] Updated Schemas --- NewHorizons/Schemas/body_schema.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/NewHorizons/Schemas/body_schema.json b/NewHorizons/Schemas/body_schema.json index 3fdc9ce5..75424b21 100644 --- a/NewHorizons/Schemas/body_schema.json +++ b/NewHorizons/Schemas/body_schema.json @@ -1376,7 +1376,12 @@ "scale": { "type": "number", "description": "Scale this prop once it is placed", - "format": "float" + "format": "float", + "default": 1.0 + }, + "stretch": { + "description": "Scale each axis of the prop. Overrides `scale`.", + "$ref": "#/definitions/MVector3" }, "seed": { "type": "integer", From 22601881648c6592423160f608807fe066969762 Mon Sep 17 00:00:00 2001 From: Noah Pilarski Date: Sat, 17 Sep 2022 19:33:21 -0400 Subject: [PATCH 09/11] Log missing decal path --- NewHorizons/Builder/Props/RemoteBuilder.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/NewHorizons/Builder/Props/RemoteBuilder.cs b/NewHorizons/Builder/Props/RemoteBuilder.cs index b82ec0e5..0448e565 100644 --- a/NewHorizons/Builder/Props/RemoteBuilder.cs +++ b/NewHorizons/Builder/Props/RemoteBuilder.cs @@ -106,7 +106,9 @@ namespace NewHorizons.Builder.Props var id = RemoteHandler.GetPlatformID(info.id); - var decal = ImageUtilities.GetTexture(mod, info.decalPath, false, false); + Texture2D decal = Texture2D.whiteTexture; + if (!string.IsNullOrWhiteSpace(info.decalPath)) decal = ImageUtilities.GetTexture(mod, info.decalPath, false, false); + else Logger.LogError($"Missing decal path on [{info.id}] for [{go.name}]"); if (info.platform != null) { From 07ad15afff6a12ff6e0c245f40985eb2826dc179 Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Sun, 18 Sep 2022 20:56:47 -0700 Subject: [PATCH 10/11] bruh --- NewHorizons/Builder/Props/DetailBuilder.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/NewHorizons/Builder/Props/DetailBuilder.cs b/NewHorizons/Builder/Props/DetailBuilder.cs index 5e4ab8e1..6cb415a2 100644 --- a/NewHorizons/Builder/Props/DetailBuilder.cs +++ b/NewHorizons/Builder/Props/DetailBuilder.cs @@ -1,3 +1,4 @@ +using NewHorizons.Builder.General; using NewHorizons.External.Configs; using NewHorizons.External.Modules; using NewHorizons.Handlers; @@ -100,6 +101,7 @@ namespace NewHorizons.Builder.Props prop.transform.localScale = detail.stretch ?? (detail.scale != 0 ? Vector3.one * detail.scale : prefab.transform.localScale); + if (!detail.keepLoaded) GroupsBuilder.Make(prop, sector); prop.SetActive(true); if (prop == null) return null; From b5f5a4cabc72e93861a7553ac5b10415c64b161c Mon Sep 17 00:00:00 2001 From: Nick Date: Mon, 19 Sep 2022 00:09:38 -0400 Subject: [PATCH 11/11] Update manifest.json --- NewHorizons/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NewHorizons/manifest.json b/NewHorizons/manifest.json index 015d57e4..6fb4c0d4 100644 --- a/NewHorizons/manifest.json +++ b/NewHorizons/manifest.json @@ -4,7 +4,7 @@ "author": "xen, Bwc9876, clay, MegaPiggy, John, Hawkbar, Trifid, Book", "name": "New Horizons", "uniqueName": "xen.NewHorizons", - "version": "1.6.0", + "version": "1.6.1", "owmlVersion": "2.6.0", "dependencies": [ "JohnCorby.VanillaFix", "_nebula.MenuFramework", "xen.CommonCameraUtility" ], "conflicts": [ "Raicuparta.QuantumSpaceBuddies", "PacificEngine.OW_Randomizer" ],