Files
back_cantanBuilding/Assets/Scripts/UI/ShootingRange/ShootingRangePackButton.cs
2026-05-26 16:15:54 +08:00

77 lines
2.8 KiB
C#

using asap.core;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
using UniRx;
using System;
using GameCore;
public class ShootingRangePackButton : MonoBehaviour
{
[SerializeField] private TMP_Text textTimer;
[SerializeField] private Button btn;
[SerializeField] private Image icon;
private EventShootingRangeData _data;
private UIType PackPanelUi => _data.IsChainPackDepleted ? UITypes.ShootingNormalPackPanel : UITypes.ShootingChainPackPanel;
private void Start()
{
// Shutdown shooting range pack button.
gameObject.SetActive(false);
return;
/*
_data = GContext.container.Resolve<EventShootingRangeData>();
if (_data is not { IsActive: true })
{
gameObject.SetActive(false);
return;
}
textTimer.text = ConvertTools.ConvertTime2(_data.RemainingTime);
if (_data.RemainingTime.TotalSeconds <= 0)
gameObject.SetActive(false);
Observable.Interval(TimeSpan.FromSeconds(1.0f)).Subscribe(_ =>
{
textTimer.text = ConvertTools.ConvertTime2(_data.RemainingTime);
if (_data.RemainingTime.TotalSeconds <= 0)
gameObject.SetActive(false);
}).AddTo(this);
RedPointManager.Instance.SetRedPointState(EventShootingRangeData.PackRedPointId, _data.DoNeedPackRedPoint);
GContext.container.Resolve<IUIService>().SetImageSprite(icon, _data.PackIcon);
btn.onClick.AddListener(OnClickOpen);
*/
}
private async void OnClickOpen()
{
var res = await UIManager.Instance.ShowUILoad(PackPanelUi);
if (res == null)
{
Debug.LogWarning($"[ShootingRange] ShootingRange Pack panel not loaded correctly.");
}
}
// private async System.Threading.Tasks.Task<bool> LoadAssetBundle()
// {
// var loadResourceService = GContext.container.Resolve<ILoadResourceService>();
// return await loadResourceService.Load(PackPanelUi.Path);
// }
/*
private async System.Threading.Tasks.Task EnterEventPartnerAct()
{
_homeCanvasGroup.blocksRaycasts = false;
if (await LoadAssetBundle())
{
GContext.Publish(new UnloadActToNextAct("EventPartnerAct"));
}
else
{
var panel = await UIManager.Instance.ShowUI(UITypes.CloudTransitionPanel);
panel.GetComponent<CloudTransitionPanel>().SetBtn(true, () => GContext.Publish(new UnloadActToNextAct("EventPartnerAct")));
//var panel = await UIManager.Instance.ShowUI(UITypes.FishingDownLoadPopupPanel);
//panel.GetComponent<FishingDownLoadPopupPanel>().SetBtn(null, () => GContext.Publish(new UnloadActToNextAct("EventPartnerAct")));
}
_homeCanvasGroup.blocksRaycasts = true;
}
*/
}