123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- using UnityEngine;
- using System.Collections;
- using System.Collections.Generic;
- public class BattleUI : MonoBehaviour {
- public GameObject radioPanelPrefab;
- public GameObject OptionPanelPrefab;
- public GameObject battleMissionPrefab;
- public GameObject myRankPanelPrefab;
- public GameObject battleReadyPrefab;
- public ScoreBar scoreBar;
- public MiniMap miniMap;
- public PowerIconContainer powerIconContainer;
- public BattleClockUI battleClock;
- public BottomTip bottomTip;
- public BattleInfo battleInfo;
- public GameObject coinBar;
- public GameObject replayBar;
- public GameObject optionBtnObj;
- private RadioPanel radioPanel;
-
- public Sprite[] crystalPowerIcons;
- public BattleController battleController;
- public void Init(BattleController battleController, bool isMenu = false)
- {
- this.battleController = battleController;
- if(isMenu)
- {
- optionBtnObj.SetActive(false);
- scoreBar.gameObject.SetActive(false);
- miniMap.gameObject.SetActive(false);
- battleClock.gameObject.SetActive(false);
- battleInfo.gameObject.SetActive(false);
- coinBar.SetActive (false);
- }
- if (battleController.isReplay) {
- coinBar.SetActive (false);
- } else {
- replayBar.SetActive (false);
- }
- Map map = battleController.GetMap();
- miniMap.Init(battleController);
- for(int i=0; i<map.GetCrystalBaseList().Count; i++)
- {
- miniMap.CreateCrystalBase(map.GetCrystalBaseList()[i]);
- }
- battleClock.Init(battleController);
- scoreBar.Init(battleController);
- powerIconContainer.isMenu = isMenu;
- }
-
- public void UpdateScoreText()
- {
- scoreBar.updateScore (battleController.blueScore, battleController.redScore);
- }
-
- public void ShowBottomTip(string info, bool newOne=true)
- {
- bottomTip.Show(info, newOne);
- }
-
- public MiniMap GetMiniMap()
- {
- return miniMap;
- }
- public void ShowBattleReady(string host, string guest, CallBackUtil.SimpleCallBack callBack)
- {
- GameObject gameObj = Instantiate<GameObject> (battleReadyPrefab);
- PopUpManager.AddToMainCanvas (gameObj);
- BattleReady br = gameObj.GetComponent<BattleReady> ();
- br.Show (host, guest, callBack);
- }
- public void ShowMission(string mission)
- {
- GameObject gameObj = Instantiate<GameObject>(battleMissionPrefab);
- PopUpManager.AddToMainCanvas(gameObj);
- BattleMission bm = gameObj.GetComponent<BattleMission>();
- bm.infoTxt.text = mission;
- }
- public void ShowBattleInfo(string info, string combo="", bool isAlly=true)
- {
- battleInfo.Show(info, combo, isAlly);
- }
- public void ToggleRadioPanel()
- {
- if(radioPanel == null)
- {
- GameObject radioObj = Instantiate<GameObject>(radioPanelPrefab);
- PopUpManager.AddToMainCanvas(radioObj);
- radioPanel = radioObj.GetComponent<RadioPanel>();
- }
- else
- {
- Destroy(radioPanel.gameObject);
- radioPanel = null;
- }
- }
- public void ToggleSwapPanel()
- {
- CraftSelectionPanel.Show(true);
- }
- public void HideRadioPanel()
- {
- if(radioPanel != null)
- {
- Destroy(radioPanel.gameObject);
- radioPanel = null;
- }
- }
- public void DealRadio(int userId, int craftId, int index)
- {
- Player player = battleController.GetBattleSession().GetPlayer(userId);
- if(player.team == battleController.GetMyPlayer().team)
- {
- string info = Language.GetStr ("Radio", "info");
- info = info.Replace("%COLOR%", TeamUtil.GetTeamColorString(player.team));
- info = info.Replace("%NICK%", player.nick);
- info = info.Replace("%INFO%", RadioItem.GetName(index));
- ShowBottomTip(info);
- SoundManager.GetInstatnce().effectSound.Play(RadioItem.GetSound(index));
- Craft craft = battleController.GetMap ().GetBattleObject (craftId) as Craft;
- if(craft != null)
- {
- craft.RadioAlert();
- }
- }
- }
- public void ShowOptionPanel()
- {
- GameObject gameObj = Instantiate<GameObject> (OptionPanelPrefab);
- PopUpManager.AddToMainCanvas (gameObj);
- OptionPanel optionPanel = gameObj.GetComponent<OptionPanel> ();
- optionPanel.battleController = battleController;
- }
- public void ShowResultPanel()
- {
- Player me = battleController.GetMyPlayer ();
- Player opp = battleController.GetBattleSession ().GetPlayerByTeam (TeamUtil.GetOpponentTeam (me.team));
- ResultPanel.Result result = ResultPanel.Result.Lose;
- if (battleController.winTeam == TeamUtil.Team.Yellow)
- result = ResultPanel.Result.Draw;
- else if(battleController.winTeam == me.team)
- result = ResultPanel.Result.Win;
- int crystalSpend = battleController.GetBattleSession ().myPlayer.coinSpend;
- ResultPanel.Show (new ResultPanel.ResultData(me, opp, result, crystalSpend));
- }
- public void ShowMyRankPanel(int start, int target)
- {
- GameObject myRankPanelObj = Instantiate<GameObject> (myRankPanelPrefab);
- PopUpManager.AddToMainCanvas (myRankPanelObj);
- MyRankPanel myRankPanel = myRankPanelObj.GetComponent<MyRankPanel> ();
- myRankPanel.startRank = start;
- myRankPanel.targetRank = target;
- }
- }
|