using cfg.ActorCfg; using Cysharp.Threading.Tasks; using Framework; using Gameplay; using PhxhSDK; using System; using System.Collections.Generic; using TMPro; using UnityEngine; using Button = UnityEngine.UI.Button; using Image = UnityEngine.UI.Image; public class UI_GiftItemController : UIWindow { /// /// 界面类型,包含普通礼包界面和自选礼包界面 /// enum PanelContent { None, DirectOpen, OptionalContent } #region UI //UI GameObj ///Auto Gen Start/// public Button Button_Close_Normal; public TMP_Text Text_ItemName_Normal; public Image Image_ItemIcon_Normal; public TMP_Text Text_Num_Normal; public TMP_Text Text_UsingIntroduce_Normal; public RecycleView ScrollView_ItemList_normal; public Button Button_Use_Normal; public Button Button_Close_Special; public TMP_Text Text_ItemName_Special; public Image Image_ItemIcon_Special; public TMP_Text Text_Num_Special; public TMP_Text Text_UsingIntroduce_Special; public RecycleView ScrollView_ItemList_special; public TMP_Text Text_GainDescript; public Button Button_Decrease; public Button Button_Add; public TMP_Text Text_UseNum; public Button Button_Zero; public TMP_Text Text_Zero; public Button Button_Max; public TMP_Text Text_Max; public Button Button_Use_Special; public Image Image_TopBlackBar; public Image Image_BottomBlackBar; ///Auto Gen End/// #endregion #region class class OpenData { public int itemID; public int useCount; public OpenData(int itemID, int count) { this.itemID = itemID; this.useCount = count; } } class ChooseItem { /// /// 选中数量 /// public int count; /// /// 礼包道具 /// public cfg.item.ItemCounts item; public ChooseItem(cfg.item.ItemCounts item, int count) { this.item = item; this.count = count; } } class RewardItemInfo { public int ID; public int Count; public RewardItemInfo(int id,int count) { ID = id; Count = count; } } class NormalItem : UIGameObjectWrapper { public Image itemIcon; public Image selectedIcon; public TMP_Text itemCount; public TMP_Text Num; public Button Button_decrease; public Button Button_add; private ChooseItem data; private bool isPatchUse; private Func buttonCallback; public NormalItem(GameObject root, Func callback, bool isPatchUse, bool isScaleShow = true) : base(root, isScaleShow) { itemIcon = GetComponent("ItemBg/ItemIcon"); selectedIcon = GetComponent("ItemBg/ImageItemChoose"); itemCount = GetComponent("ItemBg/ImageCount/TextCount"); Num = GetComponent("NumBg/Num"); Button_decrease = GetComponent