ItemKindExtensions.cs 745 B

12345678910111213141516171819
  1. using Domain.Entities.Members.ValueObject;
  2. namespace Domain.Entities.Store.ValueObject;
  3. public static class ItemKindExtensions
  4. {
  5. /// <summary>지위 아이템(장착형) 종류 여부 — Badge/NicknameEffect/CommentEffect.</summary>
  6. public static bool IsStatusItem(this ItemKind kind)
  7. => kind is ItemKind.Badge or ItemKind.NicknameEffect or ItemKind.CommentEffect;
  8. /// <summary>지위 아이템이면 대응 장착 슬롯, 아니면 null.</summary>
  9. public static EquipSlot? ToEquipSlot(this ItemKind kind) => kind switch
  10. {
  11. ItemKind.Badge => EquipSlot.Badge,
  12. ItemKind.NicknameEffect => EquipSlot.NicknameEffect,
  13. ItemKind.CommentEffect => EquipSlot.CommentEffect,
  14. _ => null
  15. };
  16. }