167 lines
4.2 KiB
C#
167 lines
4.2 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using Animancer;
|
||
using Logic;
|
||
using Logic.Action;
|
||
using Logic.AI;
|
||
using Logic.Audio;
|
||
using Logic.Multilingual;
|
||
using ParadoxNotion;
|
||
using RuntimeData;
|
||
using Steamworks;
|
||
using TH1_Core.Events;
|
||
using TH1_Core.Managers;
|
||
using TH1_Logic.Action;
|
||
using TH1_Logic.Config;
|
||
using TH1_Logic.Core;
|
||
using TH1_Logic.Net;
|
||
using TH1_Logic.Steam;
|
||
using TH1_UI.View.Announce;
|
||
using TH1Resource;
|
||
using TMPro;
|
||
using Unity.VisualScripting;
|
||
using UnityEngine;
|
||
using UnityEngine.UI;
|
||
|
||
namespace TH1_UI.View.Outside
|
||
{
|
||
|
||
|
||
public class UIOutsideMenuView : Base.View
|
||
{
|
||
[Header("按钮")]
|
||
//public Button CloseButton;
|
||
public Button StartButton;
|
||
public Button MultiplayButton;
|
||
public Button ResumeButton;
|
||
public Button LibraryButton;
|
||
public Button HistoryButton;
|
||
public Button TutorButton;
|
||
|
||
public List<UIOutsideMenuButtonMono> ButtonList;
|
||
public Button AnnouncementButton;
|
||
public Button AboutButton;
|
||
public Button SettingButton;
|
||
|
||
public UIOutsideMenuAnnouncementPanelMono AnnouncementPanel;
|
||
public UIOutsideMenuAboutPanelMono AboutPanel;
|
||
|
||
public TextMeshProUGUI QQHintVersion;
|
||
|
||
[Header("选择列表")]
|
||
private List<UIOutsideSelectAvatarMono> _monoList;
|
||
private Empire _selectEmpire;
|
||
|
||
[Header("详细信息")]
|
||
|
||
[Header("子界面")]
|
||
public UIOutsideSelectCheckPanelMono SelectCheckPanelMono;
|
||
|
||
//关闭时执行的委托
|
||
public ViDelegateAssisstant.Dele OnBtnCloseClick;
|
||
|
||
//开始游戏时执行的委托(目前委托内容就是执行controller的Close())
|
||
public ViDelegateAssisstant.Dele OnStartGame;
|
||
|
||
protected override void OnInit()
|
||
{
|
||
base.OnInit();
|
||
AnnouncementPanel.OnInit();
|
||
AboutPanel.OnInit();
|
||
}
|
||
|
||
|
||
public void SetContent(ShowUIOutsideMenu evt)
|
||
{
|
||
foreach(var t in ButtonList)
|
||
t.SetContent();
|
||
|
||
StartButton.onClick.RemoveAllListeners();
|
||
StartButton.onClick.AddListener(OnStartClicked);
|
||
MultiplayButton.onClick.RemoveAllListeners();
|
||
MultiplayButton.onClick.AddListener(OnMultiplayClicked);
|
||
ResumeButton.onClick.RemoveAllListeners();
|
||
ResumeButton.gameObject.SetActive(false);
|
||
if (Main.Instance.HasArchive())
|
||
{
|
||
ResumeButton.gameObject.SetActive(true);
|
||
ResumeButton.onClick.AddListener(OnResumeClicked);
|
||
}
|
||
|
||
|
||
TutorButton.onClick.RemoveAllListeners();
|
||
TutorButton.onClick.AddListener(OnTutorClicked);
|
||
LibraryButton.onClick.RemoveAllListeners();
|
||
LibraryButton.onClick.AddListener(OnLibraryClicked);
|
||
HistoryButton.onClick.RemoveAllListeners();
|
||
HistoryButton.onClick.AddListener(OnHistoryClicked);
|
||
|
||
SettingButton.onClick.RemoveAllListeners();
|
||
SettingButton.onClick.AddListener(OnSettingClicked);
|
||
AnnouncementButton.onClick.RemoveAllListeners();
|
||
AnnouncementButton.onClick.AddListener(OnAnnouncementClicked);
|
||
AboutButton.onClick.RemoveAllListeners();
|
||
AboutButton.onClick.AddListener(OnAboutClicked);
|
||
QQHintVersion.text = "Demo V" + ConfigManager.Instance.VersionCfg.CurVersionInfo.FullVersion;
|
||
|
||
}
|
||
|
||
//在Controller 调用Close的时候,会先调用这个closeview
|
||
public void OnCloseView()
|
||
{
|
||
}
|
||
|
||
public void OnSettingClicked()
|
||
{
|
||
}
|
||
|
||
public void OnStartClicked()
|
||
{
|
||
EventManager.Publish(new ShowUIOutsideSelect());
|
||
}
|
||
|
||
public void OnResumeClicked()
|
||
{
|
||
if (Main.Instance.HasArchive())
|
||
{
|
||
EventManager.Publish(new ShowUIOutsideLoading());
|
||
var fadeinTime = ResourceCache.Instance.AnimCache.UICommonPanelFadeIn.length;
|
||
var prepareTime = 1f;
|
||
Timer.Instance.TimerRegister(this,()=>{Main.Instance.ResumeMatch();EventManager.Publish(new HideUIOutsideMenu());},fadeinTime,"MenuResumeClicked1");
|
||
Timer.Instance.TimerRegister(this,()=>{EventManager.Publish(new HideUIOutsideAll());},fadeinTime+prepareTime,"MenuResumeClicked2");
|
||
}
|
||
}
|
||
|
||
public void OnLibraryClicked()
|
||
{
|
||
EventManager.Publish(new ShowUIOutsideLibrary());
|
||
}
|
||
|
||
public void OnMultiplayClicked()
|
||
{
|
||
EventManager.Publish(new ShowUIOutsideMultiplay(){});
|
||
}
|
||
|
||
public void OnTutorClicked()
|
||
{
|
||
|
||
}
|
||
|
||
public void OnHistoryClicked()
|
||
{
|
||
EventManager.Publish(new ShowUIOutsideHistory(){});
|
||
}
|
||
public void OnAnnouncementClicked()
|
||
{
|
||
|
||
AnnouncementPanel.Open();
|
||
AnnouncementPanel.SetContent();
|
||
}
|
||
public void OnAboutClicked()
|
||
{
|
||
AboutPanel.Open();
|
||
}
|
||
}
|
||
|
||
}
|