using System; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using DG.Tweening; namespace MMO { public class MMOUIDailyClaim : MMOUIPop { public Action DelClaimed; [SerializeField] float mRotateSpeed; [SerializeField] Transform mTsfGlow; [SerializeField] Text mTxtDiamond; [SerializeField] Button mBtnClaim; private const int DAILYREWARD_TASKID = -1; private MMODataTask mData; private MMOTaskRecord mTaskRecord; private void Update() { if (mTsfGlow != null) { mTsfGlow.Rotate(0, 0, mRotateSpeed * Time.unscaledDeltaTime); } } protected override void OnInit() { base.OnInit(); BindBtn(mBtnClaim, OnClickClaim); } public override void OnOpen() { base.OnOpen(); mData = MMOTableTask.Instance.GetData(DAILYREWARD_TASKID); mTaskRecord = MMOUserData.Instance.TaskRecordList.Find(pItem => pItem.TaskType == mData.TaskType); mTxtDiamond.text = "+" + mData.RewardNum; mBtnClaim.gameObject.SetActive(true); } private void OnClickClaim() { MMOUserData.Instance.RemoveTaskRecord(mTaskRecord.RecordID); MMOUserData.Instance.FinishTask(mData.TaskType); MMOUserData.Instance.Diamond += mData.RewardNum; MMOModule.Instance.UIMgr.GetUI().DiamondBar.FlyRes(mTsfGlow.position, mData.RewardNum, MMOUserData.Instance.Diamond); mBtnClaim.gameObject.SetActive(false); MMOInnerSDKManager.Instance.LogRobuxAction(MMOEventValue.DailyBonus); DelClaimed?.Invoke(); Invoke("PopOut", 1.5f); } public void Claim() { OnClickClaim(); } } }