using System; using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; using UnityEngine.UI; //广告小组件,可复制英雄招募里的 public class AdsCell : MonoBehaviour { [SerializeField] Button adBtn; [SerializeField] Text cntText; public int adID; public int type; public int value; protected void OnEnable() { AdsManager.Instance.OnAdsInfoListUpdateEvent += OnAdsInfoListUpdateEvent; adBtn.AddListener(OnClickAds); OnAdsInfoListUpdateEvent(adID, type, value); } protected void OnDisable() { AdsManager.Instance.OnAdsInfoListUpdateEvent -= OnAdsInfoListUpdateEvent; } private void OnAdsInfoListUpdateEvent(int _adID, int _type, int _value) { if (adID != _adID) return; int adsCnt = AdsManager.Instance.GetADCntByADID(adID); var aDAwardConfig = ADAwardConfig.Get(adID); bool isShowAds = adsCnt < aDAwardConfig.ADCntMax; int remainAdsCount = aDAwardConfig.ADCntMax - adsCnt; adBtn.SetActive(isShowAds); cntText.text = $"{remainAdsCount}/{aDAwardConfig.ADCntMax}"; } // public void AddListener(UnityAction action) // { // adBtn.AddListener(action); // } void OnClickAds() { AdsManager.Instance.PlayAds(adID); } }