205 lines
9.1 KiB
C#
205 lines
9.1 KiB
C#
using asap.core;
|
|
using game;
|
|
using GameCore;
|
|
using TMPro;
|
|
using UniRx;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class FishingMorePanel : MonoBehaviour
|
|
{
|
|
Button btn_setting;
|
|
Button btn_debug;
|
|
Button btn_mask;
|
|
TMP_Text text_name;
|
|
Button btn_vip;
|
|
Button btn_event;
|
|
Button btn_survey;
|
|
Button btn_announcement;
|
|
Button btn_signin;
|
|
Button btn_travelmap;
|
|
//Button btn_redeemCode;
|
|
Button btn_mail;
|
|
TMP_Text text_vipLevel;
|
|
TMP_Text text_version;
|
|
TMP_Text text_id;
|
|
Button btn_copy;
|
|
Head head;
|
|
Button headButton;
|
|
Button btn_achieve;
|
|
private CompositeDisposable disposables = new CompositeDisposable();
|
|
private Button btnJoin;
|
|
|
|
//Button btn_leaderboard;
|
|
|
|
private void Awake()
|
|
{
|
|
btn_setting = transform.Find("bg/resource/btn_setting").GetComponent<Button>();
|
|
btn_debug = transform.Find("bg/btn_debug/btn_green").GetComponent<Button>();
|
|
btn_mask = transform.Find("Mask").GetComponent<Button>();
|
|
head = transform.Find("bg/btn_head").GetComponent<Head>();
|
|
headButton = transform.Find("bg/btn_head").GetComponent<Button>();
|
|
text_name = transform.Find("bg/btn_head/text_name").GetComponent<TMP_Text>();
|
|
btn_vip = transform.Find("bg/resource/btn_grade").GetComponent<Button>();
|
|
btn_event = transform.Find("bg/resource/btn_event").GetComponent<Button>();
|
|
btn_announcement = transform.Find("bg/resource/btn_announcement").GetComponent<Button>();
|
|
btn_signin = transform.Find("bg/resource/btn_signin").GetComponent<Button>();
|
|
//btn_redeemCode = transform.Find("bg/resource/btn_code").GetComponent<Button>();
|
|
btn_mail = transform.Find("bg/resource/btn_mail").GetComponent<Button>();
|
|
text_vipLevel = transform.Find("bg/resource/btn_grade/p_text_num").GetComponent<TMP_Text>();
|
|
text_version = transform.Find("bg/player_info/text_version").GetComponent<TMP_Text>();
|
|
text_id = transform.Find("bg/player_info/text_id").GetComponent<TMP_Text>();
|
|
btn_copy = transform.Find("bg/player_info/text_id/btn_copy").GetComponent<Button>();
|
|
btn_debug.gameObject.SetActive(GContext.container.Resolve<IConfig>().Get("GM", "0") == "1");
|
|
GContext.container.Resolve<GuideDataCenter>().InspectTriggerGuide("FishingMorePanel");
|
|
btn_event.gameObject.SetActive(true);
|
|
btn_achieve = transform.Find("bg/resource/btn_achieve").GetComponent<Button>();
|
|
btn_survey = transform.Find("bg/resource/btn_survey").GetComponent<Button>();
|
|
btnJoin = transform.Find("bg/resource/btn_join").GetComponent<Button>();
|
|
btn_travelmap = transform.Find("bg/resource/btn_travelmap").GetComponent<Button>();
|
|
//btn_leaderboard = transform.Find("bg/resource/btn_leaderboard").GetComponent<Button>();
|
|
|
|
btn_announcement.gameObject.SetActive(false);
|
|
}
|
|
void Start()
|
|
{
|
|
text_version.text = $"Ver. {VersionTool.FromLocal().ToVerString()}";
|
|
text_id.text = $"ID: {GContext.container.Resolve<IUserService>().CustomId}";
|
|
//GContext.OnEvent<ChangeLanguageEvent>().Subscribe(OnChangeLanguage).AddTo(disposables);
|
|
//OnChangeLanguage();
|
|
|
|
headButton.onClick.AddListener(async () =>
|
|
{
|
|
await UIManager.Instance.ShowUI(UITypes.PlayerHeadPopupPanel);
|
|
});
|
|
|
|
btn_debug.onClick.AddListener(async () =>
|
|
{
|
|
btn_debug.enabled = false;
|
|
await UIManager.Instance.GetUIAsync(UITypes.DeBugPanel);
|
|
btn_debug.enabled = true;
|
|
});
|
|
btn_setting.onClick.AddListener(async () =>
|
|
{
|
|
btn_setting.enabled = false;
|
|
await UIManager.Instance.GetUIAsync(UITypes.SettingPopupPanel);
|
|
btn_setting.enabled = true;
|
|
});
|
|
btn_mask.onClick.AddListener(() => { UIManager.Instance.DestroyUI(UITypes.FishingMorePanel); });
|
|
text_name.text = GContext.container.Resolve<IUserService>().DisplayName;
|
|
head.SetData(GContext.container.Resolve<IUserService>().AvatarUrl);
|
|
btn_vip.gameObject.SetActive(false);// GContext.container.Resolve<PlayerShopData>().IsVIPOpen);
|
|
btn_announcement.onClick.AddListener(async () =>
|
|
{
|
|
btn_announcement.enabled = false;
|
|
await UIManager.Instance.ShowUI(UITypes.NoticePopupPanel);
|
|
btn_announcement.enabled = true;
|
|
});
|
|
btn_signin.gameObject.SetActive(GContext.container.Resolve<SigninData>().DailySignIsOpen());
|
|
btn_signin.onClick.AddListener(async () =>
|
|
{
|
|
btn_signin.enabled = false;
|
|
await UIManager.Instance.ShowUI(UITypes.EventSignupPopupPanel_2);
|
|
btn_signin.enabled = true;
|
|
});
|
|
//btn_vip.onClick.AddListener(OnClickVip);
|
|
text_vipLevel.text = GContext.container.Resolve<PlayerData>().vip.ToString();
|
|
btn_copy.onClick.AddListener(() =>
|
|
{
|
|
GUIUtility.systemCopyBuffer = GContext.container.Resolve<IUserService>().CustomId;
|
|
ToastPanel.Show(LocalizationMgr.GetText("UI_ToastPanel_25"));
|
|
});
|
|
btn_event.onClick.AddListener(OnClickEvent);
|
|
GContext.OnEvent<ChangeAvatarEvent>().Subscribe(OnChangeAvatar).AddTo(disposables);
|
|
|
|
//btn_redeemCode.gameObject.SetActive(GContext.container.Resolve<RedeemCodeService>().IsUnlock);
|
|
//// btn_redeemCode.gameObject.SetActive(false);
|
|
//btn_redeemCode.onClick.AddListener(async () =>
|
|
//{
|
|
//btn_redeemCode.enabled = false;
|
|
//await UIManager.Instance.GetUIAsync(UITypes.RedemptionCodePopupPanel);
|
|
//btn_redeemCode.enabled = true;
|
|
//});
|
|
btn_mail.gameObject.SetActive(GContext.container.Resolve<IInGameMailService>().IsUnlock);
|
|
btn_mail.onClick.AddListener(async () =>
|
|
{
|
|
btn_mail.enabled = false;
|
|
await UIManager.Instance.GetUIAsync(UITypes.FishingMailPopupPanel);
|
|
btn_mail.enabled = true;
|
|
});
|
|
btn_achieve.onClick.AddListener(async () =>
|
|
{
|
|
UIManager.Instance.DestroyUI(UITypes.FishingMorePanel);
|
|
await UIManager.Instance.ShowUI(UITypes.PlayerGradePanel);
|
|
GContext.Publish(new HideHomePanelEvent());
|
|
GContext.Publish(new ChangeTabEvent() { index = 1 });
|
|
});
|
|
btn_travelmap.onClick.AddListener(async () =>
|
|
{
|
|
UIManager.Instance.DestroyUI(UITypes.FishingMorePanel);
|
|
GContext.container.Unregister<TravelMapCtrl>();
|
|
|
|
var travelMapCtrl = new TravelMapCtrl();
|
|
travelMapCtrl.Init(true);
|
|
GContext.container.RegisterInstance<TravelMapCtrl>(travelMapCtrl);
|
|
await UIManager.Instance.ShowUI(UITypes.TravelMapPanel);
|
|
GContext.Publish(new HideHomePanelEvent());
|
|
GContext.Publish(new MapShowEvent() { isShow = false });
|
|
});
|
|
btn_achieve.transform.Find("redpoint").gameObject.SetActive(GContext.container.Resolve<PlayerFishData>().PTSRed());
|
|
|
|
btn_achieve.gameObject.SetActive(GContext.container.Resolve<PlayerData>().OpenGrade);
|
|
|
|
btn_survey.onClick.AddListener(async () =>
|
|
{
|
|
await UIManager.Instance.ShowUI(UITypes.SurveyPopupPanel);
|
|
});
|
|
|
|
string sid = GContext.container.Resolve<SurveyService>().Sid;
|
|
btn_survey.gameObject.SetActive(!string.IsNullOrEmpty(sid));
|
|
|
|
btnJoin.gameObject.SetActive(GContext.container.Resolve<FishingEventData>().IsJoinUsPanelOpen);
|
|
btnJoin.onClick.RemoveAllListeners();
|
|
btnJoin.onClick.AddListener(OnClickBtnJoin);
|
|
// Debug.Log($"<color=#fbc21a>Level 41: {GContext.container.Resolve<FishingEventData>().IsJoinUsPanelOpen}</color>");
|
|
// Debug.Log($"<color=#fbc21a>FootPrint: {!GContext.container.Resolve<IFootPrintService>().HasFootPrint(EFootPrint.HasCommunityGuidancePanelBeenOpened)}</color>");
|
|
var doNeedRedDot = (GContext.container.Resolve<FishingEventData>().IsJoinUsPanelOpen && !GContext.container
|
|
.Resolve<IFootPrintService>().HasFootPrint(EFootPrint.HasCommunityGuidancePanelBeenOpened));
|
|
RedPointManager.Instance.SetRedPointState("menu.joinus", doNeedRedDot);
|
|
|
|
//排行榜
|
|
//btn_leaderboard.gameObject.SetActive(GContext.container.Resolve<LeadboardData>().IsOpenleaderboard);
|
|
//btn_leaderboard.onClick.AddListener(() =>
|
|
//{
|
|
// _ = UIManager.Instance.ShowUI(UITypes.FishingLeaderboardPanel);
|
|
//});
|
|
}
|
|
|
|
void OnClickEvent()
|
|
{
|
|
_ = UIManager.Instance.ShowUI(UITypes.EventReportPopupPanel);
|
|
}
|
|
void OnChangeAvatar(ChangeAvatarEvent data)
|
|
{
|
|
head.SetData(GContext.container.Resolve<IUserService>().AvatarUrl);
|
|
text_name.text = GContext.container.Resolve<IUserService>().DisplayName;
|
|
}
|
|
//void OnChangeLanguage(ChangeLanguageEvent changeLanguageEvent = null)
|
|
//{
|
|
// GContext.Publish(new TitleNewsEvent());
|
|
//}
|
|
private void OnDestroy()
|
|
{
|
|
disposables.Dispose();
|
|
disposables = null;
|
|
}
|
|
|
|
private async void OnClickBtnJoin()
|
|
{
|
|
btnJoin.onClick.RemoveAllListeners();
|
|
await UIManager.Instance.ShowUI(UITypes.CommunityGuidancePanel);
|
|
btnJoin.transform.Find("redpoint").gameObject.SetActive(false);
|
|
btnJoin.onClick.AddListener(OnClickBtnJoin);
|
|
}
|
|
}
|