先修复一下,错误的场景 删除不必要的钓场资产 修复into场景 update:更新meta文件,修复报错 update:修复资源 修复第一章节建造 修复建造第三章 update:删除多余内容 update:更新README.md update:还原图标 update:更新README update:更新配置
265 lines
11 KiB
C#
265 lines
11 KiB
C#
using asap.core;
|
|
using game;
|
|
using GameCore;
|
|
using TMPro;
|
|
using UniRx;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
using UnityNative.Sharing;
|
|
|
|
public class FishingMorePanel : MonoBehaviour
|
|
{
|
|
Button btn_setting;
|
|
Button btn_debug;
|
|
Button btn_mask;
|
|
Button btn_close;
|
|
TMP_Text text_name;
|
|
Button btn_event;
|
|
Button btn_survey;
|
|
Button btn_announcement;
|
|
Button btn_signin;
|
|
Button btn_travelmap;
|
|
Button btn_howtoplay;
|
|
Button btn_invite;
|
|
//Button btn_redeemCode;
|
|
Button btn_mail;
|
|
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_social;
|
|
GameObject redpoint;
|
|
Button btn_support;
|
|
//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>();
|
|
btn_close = transform.Find("bg/btn_close").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_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_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_howtoplay = transform.Find("bg/resource/btn_howtoplay").GetComponent<Button>();
|
|
btn_invite = transform.Find("bg/resource/btn_invite").GetComponent<Button>();
|
|
btn_announcement.gameObject.SetActive(false);
|
|
btn_social = transform.Find("bg/btn_social/btn_green").GetComponent<Button>();
|
|
redpoint = transform.Find("bg/btn_social/btn_green/Ani_Container/redpoint").gameObject;
|
|
btn_support = transform.Find("bg/btn_support/btn_signout").GetComponent<Button>();
|
|
|
|
}
|
|
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); });
|
|
btn_close.onClick.AddListener(() => { UIManager.Instance.DestroyUI(UITypes.FishingMorePanel); });
|
|
text_name.text = GContext.container.Resolve<IUserService>().DisplayName;
|
|
head.SetData(GContext.container.Resolve<IUserService>().AvatarUrl);
|
|
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.ShowUILoad(UITypes.EventSignupPopupPanel_2);
|
|
btn_signin.enabled = true;
|
|
});
|
|
//btn_vip.onClick.AddListener(OnClickVip);
|
|
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;
|
|
//});
|
|
// [REMOVED] Mail module deleted
|
|
btn_mail.gameObject.SetActive(false);
|
|
// 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 });
|
|
});
|
|
// TODO: restore when TravelMapCtrl is available
|
|
// 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);
|
|
});
|
|
|
|
object sid = null;
|
|
btn_survey.gameObject.SetActive(sid != null);
|
|
|
|
//vk 主页配好就删
|
|
btnJoin.gameObject.SetActive(!ChannelManager.IsRustoreStore && GContext.container.Resolve<FishingEventData>().IsJoinUsPanelOpen);
|
|
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);
|
|
//});
|
|
btn_howtoplay.onClick.AddListener(async () =>
|
|
{
|
|
await UIManager.Instance.ShowUI(new UIType("FishingInfoPopupPanel"));
|
|
});
|
|
btn_invite.onClick.AddListener(OnClickInviteLink);
|
|
|
|
btn_social.onClick.AddListener(OnSocial);
|
|
|
|
btn_support.onClick.AddListener(() =>
|
|
{
|
|
// AIHelp removed
|
|
|
|
#if AGG
|
|
using (var e = GEvent.TackEvent("click_support"))
|
|
{
|
|
e.AddContent("button_position", 1);
|
|
}
|
|
#endif
|
|
|
|
});
|
|
SetRed();
|
|
}
|
|
|
|
void OnClickInviteLink()
|
|
{
|
|
_ = UIManager.Instance.ShowUI(UITypes.FishingSocialInviteFriendsPopupPanel);
|
|
}
|
|
void OnSocial()
|
|
{
|
|
UIManager.Instance.GetUIAsync(UITypes.BindAccountPopupPanel);
|
|
PlayerPrefs.SetInt(BindAccountRPDays, NowDays);
|
|
redpoint.SetActive(false);
|
|
}
|
|
|
|
int NowDays => (int)(ZZTimeHelper.UtcNow() - new System.DateTime(2026, 2, 1)).TotalDays;
|
|
string BindAccountRPDays => "BindAccountRPDays" + GContext.container.Resolve<IUserService>().UserId;
|
|
|
|
void SetRed()
|
|
{
|
|
int lv = GContext.container.Resolve<PlayerData>().lv;
|
|
if (lv < 100)
|
|
{
|
|
redpoint.SetActive(false);
|
|
return;
|
|
}
|
|
bool isShow = false; // TYSdkFacade removed - bind account always hidden
|
|
if (!isShow)
|
|
{
|
|
redpoint.SetActive(false);
|
|
return;
|
|
}
|
|
int days = PlayerPrefs.GetInt(BindAccountRPDays, 0);
|
|
redpoint.SetActive(NowDays - days >= 7);
|
|
}
|
|
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()
|
|
{
|
|
await UIManager.Instance.ShowUI(UITypes.CommunityGuidancePanel);
|
|
btnJoin.transform.Find("redpoint").gameObject.SetActive(false);
|
|
}
|
|
}
|