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();
}
}