using System; using System.Collections.Generic; using UnityEngine; namespace MMO { public class MMOSkinList : MMOListView { private Action> mDelWatchRV; public override int Count => MMOTableSkin.Instance.Count; private int mCurAdSkinID = -1; public void Init(Action> pDelWatchRV) { mDelWatchRV = pDelWatchRV; } protected override void ConfigCell(MMOSkinCell pCell) { pCell.DelRedeem = Redeem; pCell.DelWatchRV = WatchRV; pCell.ConfigSkin(MMOTableSkin.Instance[pCell.Index]); } private void Redeem(int pIndex) { MMOUserData.Instance.RedeemSkin(MMOTableSkin.Instance[pIndex].SkinID); MMOModule.Instance.UIMgr.OpenUI(); LoadData(); } private void WatchRV(int pIndex) { mCurAdSkinID = MMOTableSkin.Instance[pIndex].SkinID; mDelWatchRV?.Invoke(MMOEventValue.RvGetSkin, AdGetSkin); } private void AdGetSkin(bool pResult) { if (pResult) { MMOUserData.Instance.AddSkinPieceCount(mCurAdSkinID, 1); MMOUserData.Instance.AddSkinAdCount(mCurAdSkinID); LoadData(); } mCurAdSkinID = -1; } } }