Files
Nitrox/NitroxClient/GameLogic/Spawning/Metadata/Extractor/SubNameInputMetadataExtractor.cs
2025-07-06 00:23:46 +02:00

28 lines
962 B
C#

using System.Linq;
using NitroxClient.GameLogic.Spawning.Metadata.Extractor.Abstract;
using NitroxClient.Unity.Helper;
using NitroxModel.DataStructures.GameLogic.Entities.Metadata;
using NitroxModel.DataStructures.Unity;
using NitroxModel_Subnautica.DataStructures;
namespace NitroxClient.GameLogic.Spawning.Metadata.Extractor;
public class SubNameInputMetadataExtractor : EntityMetadataExtractor<SubNameInput, SubNameInputMetadata>
{
public override SubNameInputMetadata Extract(SubNameInput subNameInput)
{
SubName subName = subNameInput.target;
return new(subNameInput.selectedColorIndex, GetName(subName), GetColors(subName));
}
public static string GetName(SubName subName)
{
return subName.AliveOrNull()?.hullName.AliveOrNull()?.text;
}
public static NitroxVector3[] GetColors(SubName subName)
{
return subName.AliveOrNull()?.GetColors().Select(color => color.ToDto()).ToArray();
}
}