using LitJson;

namespace Wizard;

public class SpotCardExchangeInfo
{
	public enum ExchangeStatus
	{
		EnableExchange,
		AlreadyExchange,
		LimitOver
	}

	public int CardId { get; private set; }

	public CardBasePrm.ClanType Class { get; private set; }

	public int PackId { get; private set; }

	public ExchangeStatus SpotCardExchangeStatus { get; private set; }

	public int ExchangePoint { get; private set; }

	public int ExchangeNum { get; private set; }

	public bool IsPrereleaseCard { get; private set; }

	public SpotCardExchangeInfo(JsonData data, int packId)
	{
		CardId = data["card_id"].ToInt();
		Class = (CardBasePrm.ClanType)data["class"].ToInt();
		PackId = packId;
		SpotCardExchangeStatus = (ExchangeStatus)data["exchange_status"].ToInt();
		ExchangePoint = data["exchange_point"].ToInt();
		IsPrereleaseCard = data["is_pre_release"].ToBoolean();
		ExchangeNum = 1;
	}

	public string GetExchangeCardText()
	{
		string userGoodsName = UserGoods.getUserGoodsName(UserGoods.Type.SpotCard, CardId);
		return Data.SystemText.Get("Shop_0150", userGoodsName, ExchangeNum.ToString());
	}

	public string GetExchangeCardTextSmall()
	{
		string text = CardMaster.GetInstance(CardMaster.CardMasterId.Default).GetCardParameterFromId(CardId).CardName + " " + Data.SystemText.Get("Shop_0248");
		return Data.SystemText.Get("Shop_0150", text, ExchangeNum.ToString());
	}
}
