BITFALL/Assets/Artists/Scripts/Properties/EquipmentAsSlot.cs

38 lines
1.2 KiB
C#

using BITKit;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace BITFALL
{
public interface IEquipmentSlot
{
}
public abstract record EquipmentSlot: IEquipmentSlot
{
public override int GetHashCode() => GetType().GetHashCode();
}
[System.Serializable]
public sealed record EquipmentAsHead: EquipmentSlot { }
[System.Serializable]
public sealed record EquipmentAsBody : EquipmentSlot { }
[System.Serializable]
public sealed record EquipmentAsArmor : EquipmentSlot { }
[System.Serializable]
public sealed record EquipmentAsHeal : EquipmentSlot { }
[System.Serializable]
public sealed record EquipmentAsBackpack : EquipmentSlot { }
[System.Serializable]
public sealed record EquipmentAsArmorPlates : EquipmentSlot { }
[System.Serializable]
public sealed record EquipmentAsTactics : EquipmentSlot { }
[System.Serializable]
public sealed record EquipmentAsThrow : EquipmentSlot { }
[System.Serializable]
public sealed record EquipmentAsEquip : EquipmentSlot { }
[System.Serializable]
public sealed record EquipmentAsSlot : IProperty
{
[SerializeReference, SubclassSelector] public IEquipmentSlot slot;
}
}