using System.Collections.Generic;
using LitJson;
using Wizard.Scripts.Network.Data.TaskData.Arena;

namespace Wizard;

public class GachaPointExchangeInfo
{
	public int CardId { get; private set; }

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

	public List<Wizard.Scripts.Network.Data.TaskData.Arena.Reward> RewardList { get; private set; }

	public bool IsReceived { get; private set; }

	public bool IsDisplayPrize { get; private set; }

	public int ExchangeNum { get; private set; }

	public GachaPointExchangeInfo(JsonData data)
	{
		CardId = data["card_id"].ToInt();
		Class = (CardBasePrm.ClanType)data["class_id"].ToInt();
		JsonData jsonData = data["reward_list"];
		int count = jsonData.Count;
		RewardList = new List<Wizard.Scripts.Network.Data.TaskData.Arena.Reward>();
		for (int i = 0; i < count; i++)
		{
			RewardList.Add(new Wizard.Scripts.Network.Data.TaskData.Arena.Reward(jsonData[i]));
		}
		IsReceived = data["is_received"].ToBoolean();
		IsDisplayPrize = data.GetValueOrDefault("is_display_prize", defaultValue: false);
		ExchangeNum = 1;
	}

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