using System.Collections.Generic; using UnityEngine; using Wizard.Scripts.Network.Data.TaskData.Arena; namespace Wizard; public class RewardConfirmDialog : MonoBehaviour { [SerializeField] private UILabel _rewardConfirmLabelMainFirst; [SerializeField] private UILabel _rewardConfirmLabelMainSecond; [SerializeField] private UILabel _rewardConfirmLabelSub; [SerializeField] private GameObject _rewardDialogRoot; [SerializeField] private RewardBase _rewardDialog; [SerializeField] private RewardBase _pageChangeRewardPrefab; [SerializeField] private RewardConfirmView _reardConfirmViewFor4; public void CreateRewardConfirmDialog(GachaPointExchangeInfo gachaPointExchangeInfo, int dialogInnerDepth, int dialogInnerSortingOrder) { if (gachaPointExchangeInfo.RewardList.Count >= 5 && !RewardConfirmView.IsSpecialEmblemLayout(gachaPointExchangeInfo.RewardList)) { CreateRewardViewForPageChange(gachaPointExchangeInfo.RewardList, dialogInnerDepth, dialogInnerSortingOrder); } else if (gachaPointExchangeInfo.RewardList.Count <= 3) { CreateRewardViewFor3(gachaPointExchangeInfo.RewardList, dialogInnerDepth, dialogInnerSortingOrder); } else { CreateRewardViewFor4(gachaPointExchangeInfo.RewardList); } } public void SetText(string mainTextFirst, string mainTextSecond, string subText) { _rewardConfirmLabelMainFirst.text = mainTextFirst; _rewardConfirmLabelMainSecond.text = mainTextSecond; _rewardConfirmLabelSub.text = subText; } private void CreateRewardViewFor3(List rewardList, int dialogInnerDepth, int dialogInnerSortingOrder) { _reardConfirmViewFor4.gameObject.SetActive(value: false); RewardBase component = NGUITools.AddChild(_rewardDialogRoot, _rewardDialog.gameObject).GetComponent(); UIPanel component2 = component.gameObject.GetComponent(); component2.depth = dialogInnerDepth; component2.sortingOrder = dialogInnerSortingOrder; component.SetActiveRewardLabel(isShow: false); for (int i = 0; i < rewardList.Count; i++) { component.AddReward(rewardList[i]); } component.EndCreate(); } private void CreateRewardViewForPageChange(List rewardList, int dialogInnerDepth, int dialogInnerSortingOrder) { _reardConfirmViewFor4.gameObject.SetActive(value: false); RewardBase component = NGUITools.AddChild(_rewardDialogRoot, _pageChangeRewardPrefab.gameObject).GetComponent(); UIPanel component2 = component.gameObject.GetComponent(); component2.depth = dialogInnerDepth; component2.sortingOrder = dialogInnerSortingOrder; component.SetActiveRewardLabel(isShow: false); for (int i = 0; i < rewardList.Count; i++) { NguiObjs rewardObj = component.AddReward(rewardList[i]); switch (rewardList[i].UserGoodsData.GoodsType) { case UserGoods.Type.Sleeve: component.ChangeRewardTextureSize(rewardObj, 145, 200); break; case UserGoods.Type.Degree: case UserGoods.Type.MyPageBG: component.ChangeRewardTextureSize(rewardObj, 145, 145); break; } } component.EndCreate(); } private void CreateRewardViewFor4(List rewardList) { _reardConfirmViewFor4.gameObject.SetActive(value: true); _reardConfirmViewFor4.Initialize(rewardList); } }