From 028ee629873591ae2b6362ffbb6ac43ad6227b89 Mon Sep 17 00:00:00 2001 From: "Nick J. Connors" Date: Wed, 2 Feb 2022 17:12:15 -0500 Subject: [PATCH] Prop build fixes --- NewHorizons/Builder/Props/DetailBuilder.cs | 29 +++++++++---------- NewHorizons/Builder/Props/DialogueBuilder.cs | 4 +-- NewHorizons/Builder/Props/PropBuildManager.cs | 5 +++- 3 files changed, 18 insertions(+), 20 deletions(-) diff --git a/NewHorizons/Builder/Props/DetailBuilder.cs b/NewHorizons/Builder/Props/DetailBuilder.cs index a98c12b5..2cafa487 100644 --- a/NewHorizons/Builder/Props/DetailBuilder.cs +++ b/NewHorizons/Builder/Props/DetailBuilder.cs @@ -14,30 +14,27 @@ namespace NewHorizons.Builder.Props { public static class DetailBuilder { - public static void Make(GameObject go, Sector sector, IPlanetConfig config, IModAssets assets, string uniqueModName) + public static void Make(GameObject go, Sector sector, IPlanetConfig config, IModAssets assets, string uniqueModName, PropModule.DetailInfo detail) { - foreach (var detail in config.Props.Details) + if (detail.assetBundle != null) { - if (detail.assetBundle != null) + var prefab = PropBuildManager.LoadPrefab(detail.assetBundle, detail.path, uniqueModName, assets); + MakeDetail(go, sector, prefab, detail.position, detail.rotation, detail.scale, detail.alignToNormal, detail.generateColliders); + } + else if (detail.objFilePath != null) + { + try { - var prefab = PropBuildManager.LoadPrefab(detail.assetBundle, detail.path, uniqueModName, assets); + var prefab = assets.Get3DObject(detail.objFilePath, detail.mtlFilePath); + prefab.SetActive(false); MakeDetail(go, sector, prefab, detail.position, detail.rotation, detail.scale, detail.alignToNormal, detail.generateColliders); } - else if (detail.objFilePath != null) + catch (Exception e) { - try - { - var prefab = assets.Get3DObject(detail.objFilePath, detail.mtlFilePath); - prefab.SetActive(false); - MakeDetail(go, sector, prefab, detail.position, detail.rotation, detail.scale, detail.alignToNormal, detail.generateColliders); - } - catch (Exception e) - { - Logger.LogError($"Could not load 3d object {detail.objFilePath} with texture {detail.mtlFilePath} : {e.Message}"); - } + Logger.LogError($"Could not load 3d object {detail.objFilePath} with texture {detail.mtlFilePath} : {e.Message}"); } - else MakeDetail(go, sector, detail.path, detail.position, detail.rotation, detail.scale, detail.alignToNormal, detail.generateColliders); } + else MakeDetail(go, sector, detail.path, detail.position, detail.rotation, detail.scale, detail.alignToNormal, detail.generateColliders); } public static GameObject MakeDetail(GameObject go, Sector sector, string propToClone, MVector3 position, MVector3 rotation, float scale, bool alignWithNormal, bool generateColliders) diff --git a/NewHorizons/Builder/Props/DialogueBuilder.cs b/NewHorizons/Builder/Props/DialogueBuilder.cs index a071aadf..9893ee85 100644 --- a/NewHorizons/Builder/Props/DialogueBuilder.cs +++ b/NewHorizons/Builder/Props/DialogueBuilder.cs @@ -28,13 +28,11 @@ namespace NewHorizons.Builder.Props var dialogueTree = conversationZone.AddComponent(); - // XML STUFF GOES HERE - var xml = System.IO.File.ReadAllText(Main.Instance.ModHelper.Manifest.ModFolderPath + info.xmlFile); var text = new TextAsset(xml); dialogueTree.SetTextXml(text); - addTranslations(xml); + AddTranslation(xml); conversationZone.transform.parent = sector.transform; diff --git a/NewHorizons/Builder/Props/PropBuildManager.cs b/NewHorizons/Builder/Props/PropBuildManager.cs index e9c1ff66..493705a2 100644 --- a/NewHorizons/Builder/Props/PropBuildManager.cs +++ b/NewHorizons/Builder/Props/PropBuildManager.cs @@ -23,7 +23,10 @@ namespace NewHorizons.Builder.Props } if(config.Props.Details != null) { - DetailBuilder.Make(go, sector, config, assets, uniqueModName); + foreach (var detail in config.Props.Details) + { + DetailBuilder.Make(go, sector, config, assets, uniqueModName, detail); + } } if(config.Props.Geysers != null) {