先修复一下,错误的场景 删除不必要的钓场资产 修复into场景 update:更新meta文件,修复报错 update:修复资源 修复第一章节建造 修复建造第三章 update:删除多余内容 update:更新README.md update:还原图标 update:更新README update:更新配置
108 lines
3.4 KiB
C#
108 lines
3.4 KiB
C#
using asap.core;
|
|
using cfg;
|
|
using GameCore;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using TMPro;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class HomeBtnOneTwoPack : EventButtonResource, IUIRedPoint
|
|
{
|
|
public const string redKey = "Home.OneTwo";
|
|
Image redpoint;
|
|
Button btn_enter;
|
|
TMP_Text text_time;
|
|
FishingEventData fishingEventData;
|
|
int packCount;
|
|
private Image icon;
|
|
private void Awake()
|
|
{
|
|
fishingEventData = GContext.container.Resolve<FishingEventData>();
|
|
btn_enter = GetComponent<Button>();
|
|
redpoint = transform.Find("redpoint").GetComponent<Image>();
|
|
text_time = transform.Find("text_time").GetComponent<TMP_Text>();
|
|
icon = transform.Find("icon").GetComponent<Image>();
|
|
Pack1A2Data Pack1A2Data = fishingEventData.Pack1A2Data;
|
|
if (Pack1A2Data == null)
|
|
{
|
|
gameObject.SetActive(false);
|
|
return;
|
|
}
|
|
EventPackManager eventPackManager = fishingEventData.Get1A2EventPackManager();
|
|
if (eventPackManager == null)
|
|
{
|
|
gameObject.SetActive(false);
|
|
return;
|
|
}
|
|
CheckResource(new List<string> { eventPackManager.Panel, eventPackManager.Icon });
|
|
List<int> packIDs = eventPackManager.VIPPackList[Pack1A2Data.vipLevel];
|
|
packCount = packIDs.Count;
|
|
if (packCount <= Pack1A2Data.index)
|
|
{
|
|
gameObject.SetActive(false);
|
|
return;
|
|
}
|
|
}
|
|
|
|
void OnEnable()
|
|
{
|
|
SetEndTime();
|
|
RedPointManager.Instance.AddRedPoint(redKey, this);
|
|
redpoint.enabled = RedPointManager.Instance.GetRedPointState(redKey);
|
|
}
|
|
private void Start()
|
|
{
|
|
btn_enter.onClick.AddListener(async () =>
|
|
{
|
|
EventPackManager eventPackManager = fishingEventData.Get1A2EventPackManager();
|
|
if (eventPackManager != null)
|
|
{
|
|
UITypes.GiftPopupPanel_11.SetType(eventPackManager.Panel);
|
|
}
|
|
await UIManager.Instance.GetUIAsync(UITypes.GiftPopupPanel_11);
|
|
});
|
|
}
|
|
public void SetRedPointState(bool state)
|
|
{
|
|
Debug.Log("HomeBtnOneTwoPack Home.OneTwo:" + state);
|
|
if (redpoint != null)
|
|
{
|
|
redpoint.enabled = state;
|
|
}
|
|
}
|
|
private void OnDisable()
|
|
{
|
|
RedPointManager.Instance.RemoveRedPoint(redKey);
|
|
}
|
|
|
|
void SetEndTime()
|
|
{
|
|
DateTime endTime = fishingEventData.GetEvent1A2EndTime();
|
|
TimeSpan now = endTime - ZZTimeHelper.UtcNow().UtcNowOffset();
|
|
double seconds = now.TotalSeconds;
|
|
if (seconds < 1)
|
|
{
|
|
gameObject.SetActive(false);
|
|
}
|
|
else
|
|
{
|
|
this.AttachTimer((float)seconds,
|
|
() => { gameObject.SetActive(false); },
|
|
(elapsed) =>
|
|
{
|
|
now = endTime - ZZTimeHelper.UtcNow().UtcNowOffset();
|
|
text_time.text = ConvertTools.ConvertTime2(now.Days, now.Hours, now.Minutes, now.Seconds);
|
|
}, useRealTime: true);
|
|
}
|
|
}
|
|
|
|
protected override void OnLoadEventResource()
|
|
{
|
|
EventPackManager eventPackManager = fishingEventData.Get1A2EventPackManager();
|
|
if (eventPackManager == null) return;
|
|
gameObject.SetActive(true);
|
|
_ = GContext.container.Resolve<IUIService>().SetImageSprite(icon, eventPackManager.Icon);
|
|
}
|
|
}
|