BattleInfo

时间:2023-03-08 20:53:17

private Dictionary<string, UILabel> mLabels;

private Dictionary<string,UISprite> mSprites;

Coroutine myTimer;

protected pverride void OnAwake()

{

mLabels = UI.GetElement<UILabel>(transform);

mSprites = UI.GetElement<UISprite>(transform);

Register();

transform.Find("grid").localPosition = GetTop();  //在游戏上方显示

}

private void OnDestory()

{

UnRegister();  

}

private void Register()

{

EventManager.AddListener(EventConst.StartBattleTime,StartTime);

EventManager.AddListener(EventConst.RefreshBattleNum,RefreshAliveNum);

EventManager.AddListener(EventConst.RefreshBattleName,RefreshHonourValue);

EventManager.AddListener(EventConst.RefreshBattleHonourValue,RefreshHonourValue);

EventManager.AddListener(EventConst.StopBattleTime,StopTime);

}

private void UnRegister()

{

EventManager.RemoveListener(EventConst.StartBattleTime,StartTime);

EventManager.RemoveListener(EventConst.RefreshBattleNum,RefreshAliveNum);

EventManager.RemoveListener(EventConst.RefreshBattleName,RefreshHonourValue);

EventManager.RemoveListener(EventConst.RefreshBattleHonourValue,RefreshHonourValue);

EventManager.RemoveListener(EventConst.StopBattleTime,StopTime);

}

private void StartTime(object param)

{

List<object> list = (List<object>)param;

TimeSpan ts = TimeSpan.Parse((string)list[0]);

myTimer = StartCoroutine(UI.DoTimerMinuteSec(ts,mLabels["CountDown"]));

}

private void StopTime(object param)

{

List<object> list = (List<object>)param;

StopCoroutine(myTimer);

int type = (int)  list[0];

if(type == 0)

{

}else if(type == 1){

mLabels["CountDown"].text = "00:00";

}

}

private void RefreshAliveNum(object param)

{

Lisr<object> items = (List<object>)param;

string type = (string)items[0];

if(type == "all")

{

mLabels["AppearUnits1"].text = items[1].ToString();

mLabels["AppearUnits1"].text = items[2].ToString();

}

else if(type == "player")

{

mLabels["AppearUnits1"].text = items[1].ToString();

}

else if(type == "enemy")

{

mLabels["AppearUnits1"].text = items[1].ToString();

}

}

private void RefreshName(object param)

{

Lisr<object> items = (List<object>)param;

string type = (string)items[0];

if(type == "all")

{

mLabels["Name1"].text = items[1].ToString();

mLabels["Name2"].text = items[2].ToString();

}

else if(type == "player")

{

mLabels["Name1"].text = items[1].ToString();

}

else if(type == "enemy")

{

mLabels["Name2"].text = items[1].ToString();

}

}

private void RefreshHonourValue(object param)

{

Lisr<object> items = (List<object>)param;

string type = (string)items[0];

if(type == "all")

{

mLabels["HorourValue1"].text = items[1].ToString();

mLabels["HorourValue2"].text = items[2].ToString();

}

else if(type == "player")

{

mLabels["HorourValue1"].text = items[1].ToString();

}

else if(type == "enemy")

{

mLabels["HorourValue2"].text = items[1].ToString();

}

}