90 lines
2.7 KiB
C#
90 lines
2.7 KiB
C#
using Robust.Shared.GameObjects;
|
|
using Robust.Shared.GameObjects.Components.UserInterface;
|
|
using Robust.Shared.IoC;
|
|
using Robust.Shared.Prototypes;
|
|
using Robust.Shared.Serialization;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
|
namespace Content.Shared.BodySystem
|
|
{
|
|
|
|
|
|
[NetSerializable, Serializable]
|
|
public enum BodyScannerUiKey
|
|
{
|
|
Key
|
|
}
|
|
|
|
[NetSerializable, Serializable]
|
|
public class BodyScannerInterfaceState : BoundUserInterfaceState
|
|
{
|
|
public readonly Dictionary<string, BodyScannerBodyPartData> Parts;
|
|
public readonly BodyScannerTemplateData Template;
|
|
public BodyScannerInterfaceState(Dictionary<string, BodyScannerBodyPartData> parts, BodyScannerTemplateData template)
|
|
{
|
|
Template = template;
|
|
Parts = parts;
|
|
}
|
|
}
|
|
|
|
[NetSerializable, Serializable]
|
|
public class BodyScannerBodyPartData
|
|
{
|
|
public readonly string Name;
|
|
public readonly string RSIPath;
|
|
public readonly string RSIState;
|
|
public readonly int MaxDurability;
|
|
public readonly int CurrentDurability;
|
|
public readonly List<BodyScannerMechanismData> Mechanisms;
|
|
public BodyScannerBodyPartData(string name, string rsiPath, string rsiState, int maxDurability, int currentDurability, List<BodyScannerMechanismData> mechanisms)
|
|
{
|
|
Name = name;
|
|
RSIPath = rsiPath;
|
|
RSIState = rsiState;
|
|
MaxDurability = maxDurability;
|
|
CurrentDurability = currentDurability;
|
|
Mechanisms = mechanisms;
|
|
}
|
|
}
|
|
|
|
[NetSerializable, Serializable]
|
|
public class BodyScannerMechanismData
|
|
{
|
|
public readonly string Name;
|
|
public readonly string Description;
|
|
public readonly string RSIPath;
|
|
public readonly string RSIState;
|
|
public readonly int MaxDurability;
|
|
public readonly int CurrentDurability;
|
|
public BodyScannerMechanismData(string name, string description, string rsiPath, string rsiState, int maxDurability, int currentDurability)
|
|
{
|
|
Name = name;
|
|
Description = description;
|
|
RSIPath = rsiPath;
|
|
RSIState = rsiState;
|
|
MaxDurability = maxDurability;
|
|
CurrentDurability = currentDurability;
|
|
}
|
|
}
|
|
|
|
[NetSerializable, Serializable]
|
|
public class BodyScannerTemplateData
|
|
{
|
|
public readonly string Name;
|
|
public readonly Dictionary<string, BodyPartType> Slots;
|
|
public BodyScannerTemplateData(string name, Dictionary<string, BodyPartType> slots)
|
|
{
|
|
Name = name;
|
|
Slots = slots;
|
|
}
|
|
}
|
|
}
|
|
|
|
|