InviteBar.cs 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. using UnityEngine;
  2. using UnityEngine.UI;
  3. using System.Collections;
  4. public class InviteBar : MonoBehaviour {
  5. public Animator animator;
  6. public NavTab navTab;
  7. public Transform scrollView;
  8. public Transform itemContainer;
  9. public InviteBarItem itemPrefab;
  10. public Transform createClanTrans;
  11. public Text createClanTip;
  12. public Text createClanLabel;
  13. public MenuUI menuUI;
  14. private bool m_isShown;
  15. public bool isShown
  16. {
  17. get{ return m_isShown;}
  18. }
  19. // Use this for initialization
  20. void Awake () {
  21. navTab.SetTitles (new string[]{Language.GetStr("Invite", "navTab")});
  22. createClanTip.text = Language.GetStr ("Invite", "createClanTip");
  23. createClanLabel.text = Language.GetStr ("Invite", "createClanLabel");
  24. ListHelper.HideAll (itemContainer);
  25. if(!isShown)
  26. this.gameObject.SetActive (false);
  27. }
  28. private void OnInitComplete()
  29. {
  30. InviteManager.GetInstance ().InitCompleted.RemoveListener (OnInitComplete);
  31. ListHelper.FillList<InviteData> (itemContainer, InviteManager.GetInstance().GetDataList(), itemPrefab);
  32. InviteManager.GetInstance ().SortUpdate.AddListener (OnSortUpdate);
  33. }
  34. void OnDestroy()
  35. {
  36. InviteManager.GetInstance ().InitCompleted.RemoveListener (OnInitComplete);
  37. InviteManager.GetInstance ().SortUpdate.RemoveListener (OnSortUpdate);
  38. }
  39. private void OnSortUpdate()
  40. {
  41. ListHelper.FillList<InviteData> (itemContainer, InviteManager.GetInstance().GetDataList(), itemPrefab);
  42. }
  43. public void Remove(InviteData data)
  44. {
  45. ListHelper.Remove<InviteData> (itemContainer, data);
  46. }
  47. public void Invite(int id)
  48. {
  49. Session.GetInstance ().GetBattleSession ().GetMessageManager ().TeamInvite (id);
  50. }
  51. public void ShowClanPanel()
  52. {
  53. ClanPanel.Show ();
  54. Hide ();
  55. }
  56. public void Show()
  57. {
  58. m_isShown = true;
  59. if (!this.gameObject.activeSelf)
  60. this.gameObject.SetActive (true);
  61. animator.Play ("ChatBarShow", 0, 0);
  62. if(menuUI.chatBar.isShown)
  63. menuUI.chatBar.Hide ();
  64. }
  65. public void ShowComplete()
  66. {
  67. if (Session.GetInstance ().myUserData.clanId > 0) {
  68. createClanTrans.gameObject.SetActive (false);
  69. InviteManager.GetInstance ().InitCompleted.AddListener (OnInitComplete);
  70. InviteManager.GetInstance ().Init ();
  71. } else {
  72. createClanTrans.gameObject.SetActive (true);
  73. }
  74. }
  75. public void Hide()
  76. {
  77. m_isShown = false;
  78. animator.Play ("ChatBarHide", 0, 0);
  79. }
  80. }