CultivateImmortal/Assets/Scripts/UI/BattlePanel.cs
2024-11-14 18:15:51 +08:00

90 lines
2.2 KiB
C#

using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
public class BattlePanel : BasePanel
{
//地图境界
public Text txtTitle;
//奖励
public Text txtAward;
//降低地图
public Button btnLowMap;
//提升地图
public Button btnUpMap;
//降低一层
public Button btnLowLev;
//提升一层
public Button btnUpLev;
//玩家对象
public PlayerObject playerObj;
//怪物对象
public MonsterObject monsterObj;
void Awake()
{
EventCenter.Instance.AddEventListener<PlayerObject>(E_EventType.E_Player_Init, InitPlayerPanel);
EventCenter.Instance.AddEventListener<MonsterObject>(E_EventType.E_Monster_Init, InitMonsterPanel);
}
public override void Init()
{
//点击降低地图按钮做什么
btnLowMap.onClick.AddListener(() =>
{
BtnOnclik("降低地图按钮被点击了");
GameMgr.Instance.isStopAtk = true;
EventCenter.Instance.EventTrigger<PlayerObject>(E_EventType.E_Player_Init,playerObj);
EventCenter.Instance.EventTrigger<MonsterObject>(E_EventType.E_Monster_Init, monsterObj);
});
//点击提升地图按钮做什么
btnUpMap.onClick.AddListener(() =>
{
BtnOnclik("提升地图按钮被点击了");
});
//点击降低一层按钮做什么
btnLowLev.onClick.AddListener(() =>
{
BtnOnclik("降低一层按钮被点击了");
});
//点击提升一层按钮做什么
btnUpLev.onClick.AddListener(() =>
{
BtnOnclik("提升一层按钮被点击了");
});
}
/// <summary>
/// 按钮点击
/// </summary>
/// <param name="str">文字改变</param>
private void BtnOnclik(string str)
{
EventCenter.Instance.EventTrigger<string>(E_EventType.E_Pool_Register2,str);
}
private void InitPlayerPanel(PlayerObject player)
{
player.UpdatePanel();
}
private void InitMonsterPanel(MonsterObject monster)
{
if (!monster.gameObject.activeSelf)
{
monster.gameObject.SetActive(true);
}
monster.UpdatePanel();
}
//对象删除时,清空事件中心的事件
void OnDestroy()
{
EventCenter.Instance.Clear();
}
}