mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
Use detail info instead
This commit is contained in:
parent
30ff6367ef
commit
9c5982d9a4
@ -1,7 +1,6 @@
|
|||||||
using Epic.OnlineServices.Presence;
|
|
||||||
using NewHorizons.Builder.Props.TranslatorText;
|
using NewHorizons.Builder.Props.TranslatorText;
|
||||||
|
using NewHorizons.External.Modules;
|
||||||
using NewHorizons.External.Modules.WarpPad;
|
using NewHorizons.External.Modules.WarpPad;
|
||||||
using NewHorizons.Handlers;
|
|
||||||
using NewHorizons.Utility;
|
using NewHorizons.Utility;
|
||||||
using NewHorizons.Utility.OWMLUtilities;
|
using NewHorizons.Utility.OWMLUtilities;
|
||||||
using OWML.Utils;
|
using OWML.Utils;
|
||||||
@ -85,9 +84,7 @@ namespace NewHorizons.Builder.Props
|
|||||||
|
|
||||||
public static void Make(GameObject planetGO, Sector sector, NomaiWarpReceiverInfo info)
|
public static void Make(GameObject planetGO, Sector sector, NomaiWarpReceiverInfo info)
|
||||||
{
|
{
|
||||||
var receiverObject = GeneralPropBuilder.MakeFromPrefab(info.detailed ? _detailedReceiverPrefab : _receiverPrefab, "NomaiWarpReceiver", planetGO, sector, info);
|
var receiverObject = DetailBuilder.Make(planetGO, sector, info.detailed ? _detailedReceiverPrefab : _receiverPrefab, new PropModule.DetailInfo(info));
|
||||||
|
|
||||||
StreamingHandler.SetUpStreaming(receiverObject, sector);
|
|
||||||
|
|
||||||
var receiver = receiverObject.GetComponentInChildren<NomaiWarpReceiver>();
|
var receiver = receiverObject.GetComponentInChildren<NomaiWarpReceiver>();
|
||||||
|
|
||||||
@ -107,9 +104,7 @@ namespace NewHorizons.Builder.Props
|
|||||||
|
|
||||||
public static void Make(GameObject planetGO, Sector sector, NomaiWarpTransmitterInfo info)
|
public static void Make(GameObject planetGO, Sector sector, NomaiWarpTransmitterInfo info)
|
||||||
{
|
{
|
||||||
var transmitterObject = GeneralPropBuilder.MakeFromPrefab(_transmitterPrefab, "NomaiWarpTransmitter", planetGO, sector, info);
|
var transmitterObject = DetailBuilder.Make(planetGO, sector, _transmitterPrefab, new PropModule.DetailInfo(info));
|
||||||
|
|
||||||
StreamingHandler.SetUpStreaming(transmitterObject, sector);
|
|
||||||
|
|
||||||
var transmitter = transmitterObject.GetComponentInChildren<NomaiWarpTransmitter>();
|
var transmitter = transmitterObject.GetComponentInChildren<NomaiWarpTransmitter>();
|
||||||
transmitter._frequency = GetFrequency(info.frequency);
|
transmitter._frequency = GetFrequency(info.frequency);
|
||||||
@ -123,7 +118,7 @@ namespace NewHorizons.Builder.Props
|
|||||||
|
|
||||||
private static void CreateComputer(GameObject planetGO, Sector sector, NomaiWarpComputerLoggerInfo computerInfo, NomaiWarpReceiver receiver)
|
private static void CreateComputer(GameObject planetGO, Sector sector, NomaiWarpComputerLoggerInfo computerInfo, NomaiWarpReceiver receiver)
|
||||||
{
|
{
|
||||||
var computerObject = GeneralPropBuilder.MakeFromPrefab(TranslatorTextBuilder.ComputerPrefab, TranslatorTextBuilder.ComputerPrefab.name, planetGO, sector, computerInfo);
|
var computerObject = DetailBuilder.Make(planetGO, sector, TranslatorTextBuilder.ComputerPrefab, new PropModule.DetailInfo(computerInfo));
|
||||||
|
|
||||||
var computer = computerObject.GetComponentInChildren<NomaiComputer>();
|
var computer = computerObject.GetComponentInChildren<NomaiComputer>();
|
||||||
computer.SetSector(sector);
|
computer.SetSector(sector);
|
||||||
@ -133,8 +128,6 @@ namespace NewHorizons.Builder.Props
|
|||||||
var computerLogger = computerObject.AddComponent<NomaiWarpComputerLogger>();
|
var computerLogger = computerObject.AddComponent<NomaiWarpComputerLogger>();
|
||||||
computerLogger._warpReceiver = receiver;
|
computerLogger._warpReceiver = receiver;
|
||||||
|
|
||||||
StreamingHandler.SetUpStreaming(computerObject, sector);
|
|
||||||
|
|
||||||
computerObject.SetActive(true);
|
computerObject.SetActive(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
10
NewHorizons/External/Modules/PropModule.cs
vendored
10
NewHorizons/External/Modules/PropModule.cs
vendored
@ -175,6 +175,16 @@ namespace NewHorizons.External.Modules
|
|||||||
[JsonObject]
|
[JsonObject]
|
||||||
public class DetailInfo : GeneralPropInfo
|
public class DetailInfo : GeneralPropInfo
|
||||||
{
|
{
|
||||||
|
public DetailInfo() { }
|
||||||
|
|
||||||
|
public DetailInfo(GeneralPropInfo info)
|
||||||
|
{
|
||||||
|
foreach (var prop in info.GetType().GetProperties())
|
||||||
|
{
|
||||||
|
GetType().GetProperty(prop.Name).SetValue(this, prop.GetValue(info, null), null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Relative filepath to an asset-bundle to load the prefab defined in `path` from
|
/// Relative filepath to an asset-bundle to load the prefab defined in `path` from
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user