CapersProject/Assets/02.Scripts/Item/ItemSlot.cs
2024-08-22 19:39:15 +09:00

46 lines
1.2 KiB
C#

using System;
using UnityEngine;
namespace BlueWater.Items
{
[Serializable]
public class ItemSlot
{
[field: SerializeField, Tooltip("아이템 인덱스")]
public string Idx { get; private set; }
[field: SerializeField, Tooltip("아이템 수량")]
public int Quantity { get; set; }
[field: SerializeField, Tooltip("아이템 획득 시간")]
public long AcquisitionTime { get; set; }
public ItemSlot(string idx, int quantity)
{
Idx = idx;
Quantity = quantity;
AcquisitionTime = FormatDateTimeAsNumeric(DateTime.UtcNow);
}
public void AddItemQuantity(int quantity)
{
Quantity += quantity;
AcquisitionTime = FormatDateTimeAsNumeric(DateTime.UtcNow);
}
public void RemoveItemQuantity(int quantity)
{
Quantity -= quantity;
if (Quantity < 0)
{
Quantity = 0;
}
}
private static long FormatDateTimeAsNumeric(DateTime dateTime)
{
var formattedDateTime = dateTime.ToString("yyyyMMddHHmmss");
return long.Parse(formattedDateTime);
}
}
}