123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- using UnityEngine;
- using UnityEngine.UI;
- using System.Collections;
- public class ScoreBar : MonoBehaviour {
- public Text blueScoreText;
- public Text redScoreText;
- public Text timeLeftText;
- public TopHeadBar[] blueHeadBarArr;
- public TopHeadBar[] redHeadBarArr;
- private BattleController battleController;
- public void Init(BattleController battleController)
- {
- this.battleController = battleController;
- FixedUpdate();
- }
- public void updateScore(int blueScore, int redScore)
- {
- blueScoreText.text = blueScore.ToString();
- redScoreText.text = redScore.ToString();
- }
- public void SetPlayer(Player player)
- {
- TopHeadBar[] arr = player.team == TeamUtil.Team.Blue ? blueHeadBarArr : redHeadBarArr;
- for(int i=0; i<arr.Length; i++)
- {
- TopHeadBar bar = arr [i];
- if(bar.GetPlayer() == null)
- {
- player.index = i;
- bar.SetPlayer (player);
- break;
- }
- }
- }
- public TopHeadBar GetHeadBar(Player player)
- {
- TopHeadBar[] arr = player.team == TeamUtil.Team.Blue ? blueHeadBarArr : redHeadBarArr;
- if(player.index >=0 && player.index < arr.Length)
- return arr[player.index];
- return null;
- }
- private float lastUpdateTime;
- private float updateInterval = 0.2f;
- void FixedUpdate()
- {
- if (GameTime.time - lastUpdateTime < updateInterval) {
- return;
- }
- lastUpdateTime = GameTime.time;
- if(battleController.clock.freeTimeLeft > 0)
- timeLeftText.text = "<color=\"#f29c00ff\">"+NumberUtil.getTimeString(Mathf.CeilToInt(battleController.clock.freeTimeLeft), false)+"</color>";
- else
- timeLeftText.text = NumberUtil.getTimeString(Mathf.CeilToInt(battleController.clock.timeLeft), false);
- }
- }
|