using UnityEngine; using UnityEngine.UI; using System.Collections; public class InviteBar : MonoBehaviour { public Animator animator; public NavTab navTab; public Transform scrollView; public Transform itemContainer; public InviteBarItem itemPrefab; public Transform createClanTrans; public Text createClanTip; public Text createClanLabel; public MenuUI menuUI; private bool m_isShown; public bool isShown { get{ return m_isShown;} } // Use this for initialization void Awake () { navTab.SetTitles (new string[]{Language.GetStr("Invite", "navTab")}); createClanTip.text = Language.GetStr ("Invite", "createClanTip"); createClanLabel.text = Language.GetStr ("Invite", "createClanLabel"); ListHelper.HideAll (itemContainer); if(!isShown) this.gameObject.SetActive (false); } private void OnInitComplete() { InviteManager.GetInstance ().InitCompleted.RemoveListener (OnInitComplete); ListHelper.FillList (itemContainer, InviteManager.GetInstance().GetDataList(), itemPrefab); InviteManager.GetInstance ().SortUpdate.AddListener (OnSortUpdate); } void OnDestroy() { InviteManager.GetInstance ().InitCompleted.RemoveListener (OnInitComplete); InviteManager.GetInstance ().SortUpdate.RemoveListener (OnSortUpdate); } private void OnSortUpdate() { ListHelper.FillList (itemContainer, InviteManager.GetInstance().GetDataList(), itemPrefab); } public void Remove(InviteData data) { ListHelper.Remove (itemContainer, data); } public void Invite(int id) { Session.GetInstance ().GetBattleSession ().GetMessageManager ().TeamInvite (id); } public void ShowClanPanel() { ClanPanel.Show (); Hide (); } public void Show() { m_isShown = true; if (!this.gameObject.activeSelf) this.gameObject.SetActive (true); animator.Play ("ChatBarShow", 0, 0); if(menuUI.chatBar.isShown) menuUI.chatBar.Hide (); } public void ShowComplete() { if (Session.GetInstance ().myUserData.clanId > 0) { createClanTrans.gameObject.SetActive (false); InviteManager.GetInstance ().InitCompleted.AddListener (OnInitComplete); InviteManager.GetInstance ().Init (); } else { createClanTrans.gameObject.SetActive (true); } } public void Hide() { m_isShown = false; animator.Play ("ChatBarHide", 0, 0); } }