using BX;
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
/// 
/// 游戏UI_续倍乘
/// 
public partial class GameUI
{
    /// 
    /// 续倍乘显示时间
    /// 
    private float multipleShowTime;
    /// 
    /// 是续倍乘
    /// 
    private bool isMultiple;
    /// 
    /// 续倍乘时间
    /// 
    public TextMeshProUGUI multipleTime;
    /// 
    /// 续倍乘时间条
    /// 
    public Image multipleShowBar;
    /// 
    /// 续倍乘按钮
    /// 
    public Button multipleBtn;
    /// 
    ///  续倍乘动画
    /// 
    public Animation multipleAnim;
    /// 
    /// 初始化续倍乘
    /// 
    private void InitMultiple()
    {
        isMultiple = false;
        multipleShowTime = 0;
        multipleBtn.interactable = false;
        multipleAnim.Play("GameUI_MultipleHide");
    }
    /// 
    /// 设置续倍乘
    /// 
    public void SetMultipleState()
    {
        if (isMultiple||!UserDataManager.Instance.userData.guidance.isOverInitialEntry) return;
        isMultiple = true;
        multipleShowTime = 10;
        multipleBtn.interactable = true;
        multipleAnim.Play("GameUI_MultipleShow");
        BXSdk.Instance.LogEvent("RV_Button_Show", new System.Collections.Generic.Dictionary()
         {
            {"Position","RV_ReBonus"}
         });
    }
    /// 
    /// 设置续倍乘时间
    /// 
    private void SetMultipleShowTime()
    {
        if (isMultiple)
        {
            multipleShowTime -= Time.deltaTime;
            multipleTime.text = TimeManager.Instance.ConversionTable(multipleShowTime, E_MoreThanType.MS);
            multipleShowBar.fillAmount = multipleShowTime / 10;
            if (multipleShowTime <= 0)
            {
                multipleShowTime = 0;
                multipleTime.text = TimeManager.Instance.ConversionTable(multipleShowTime, E_MoreThanType.MS);
                multipleBtn.interactable = false;
                multipleAnim.Play("GameUI_MultipleHide");
                isMultiple=false;
            }
        }
    }
    /// 
    /// 续倍乘按钮
    /// 
    private void MultipleBtnListener()
    {
        multipleBtn.onClick.AddListener(() =>
        {
            SDKManager.Instance.ShowReward("RV_ReBonus", () =>
            {
                Scenes.Instance.gameScene.adNumber++;
                Scenes.Instance.gameScene.Multiple();
                multipleShowTime = 0;
            });
        });
    }
}