103 lines
2.6 KiB
C#
103 lines
2.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using Animancer;
|
|
using Logic;
|
|
using Logic.Action;
|
|
using Logic.Audio;
|
|
using Logic.CrashSight;
|
|
using Logic.Multilingual;
|
|
using RuntimeData;
|
|
using TH1_Core.Events;
|
|
using TH1_Core.Managers;
|
|
using TH1_Logic.Core;
|
|
using TH1_Logic.MatchConfig;
|
|
using TH1_Logic.Net;
|
|
using TH1_Logic.Steam;
|
|
using TH1_UI.Components;
|
|
using TH1_UI.HintUI;
|
|
using TH1_UI.View.Info;
|
|
using TH1Renderer;
|
|
using TH1Resource;
|
|
using TMPro;
|
|
using UI.HintUI;
|
|
using Unity.VisualScripting;
|
|
using UnityEngine;
|
|
using UnityEngine.EventSystems;
|
|
using UnityEngine.UI;
|
|
|
|
namespace TH1_UI.View.Bottom
|
|
{
|
|
public class UIBottomTutorView : Base.View
|
|
{
|
|
//public Button closeButton;
|
|
//public ViDelegateAssisstant.Dele OnBtnCloseClick;
|
|
|
|
public GameObject RowPrefab;
|
|
public Transform RowFather;
|
|
//public Button CloseButton;
|
|
|
|
private List<UIBottomTutorMissionRow> Rows = new List<UIBottomTutorMissionRow>();
|
|
|
|
|
|
protected override void OnInit()
|
|
{
|
|
base.OnInit();
|
|
//CloseButton.onClick.RemoveAllListeners();
|
|
//CloseButton.onClick.AddListener(() => { OnBtnCloseClick.Invoke(); });
|
|
//CheckPanel.InitStart(RefreshStatus);
|
|
|
|
|
|
}
|
|
|
|
|
|
//通常一局只会set一次,每次都是完全清空,然后绑定新的一个对局的按钮
|
|
public void SetContent()
|
|
{
|
|
//if (Main.Instance.GameLogic.GetCurState() == GameState.Menu) return;
|
|
|
|
int count = 0;
|
|
var taskList = new List<PlayerTaskInfo>();
|
|
//Step #2 安排好每个row的游戏对象
|
|
if (Main.MapData.MatchSettlement.PlayerSettlements.TryGetValue(Main.MapData.PlayerMap.SelfPlayerId,
|
|
out var settlement) && settlement.Settlements.Count > 0)
|
|
{
|
|
var data = settlement.Settlements[0];
|
|
taskList = data.Tasks;
|
|
}
|
|
|
|
count = taskList == null ? 0 : taskList.Count;
|
|
|
|
|
|
//Step #3逐个设置
|
|
for (int i = 0; i < count; i++)
|
|
{
|
|
if (taskList == null) break;
|
|
Table.Instance.PlayerTaskDataAssets.GetPlayerTaskData(taskList[i].TaskType, out var data);
|
|
if(Rows.Count <= i)
|
|
{
|
|
|
|
|
|
var row = Instantiate(RowPrefab,RowFather);
|
|
var t = row.GetComponent<UIBottomTutorMissionRow>();
|
|
Rows.Add(t);
|
|
}
|
|
Rows[i]?.gameObject.SetActive(true);
|
|
Rows[i]?.SetContent(taskList[i],data);
|
|
|
|
}
|
|
for(int i = count; i < Rows.Count;i ++)
|
|
Rows[i].gameObject.SetActive(false);
|
|
|
|
}
|
|
|
|
|
|
public void CloseView()
|
|
{
|
|
//AudioManager.Instance.StopMusic();
|
|
}
|
|
|
|
|
|
}
|
|
|
|
}
|