// -------------------------------------------------------------------------------------------------------------------- // // Part of: Pun Cockpit // // developer@exitgames.com // -------------------------------------------------------------------------------------------------------------------- using System.Collections; using UnityEngine; using UnityEngine.UI; using Photon.Realtime; namespace Photon.Pun.Demo.Cockpit { /// /// Region list cell. /// public class RegionListCell : MonoBehaviour { public RegionListView ListManager; public Text CodeText; public Text IpText; public Text PingText; public LayoutElement LayoutElement; int _index; Region info; public void RefreshInfo(Region info) { this.info = info; CodeText.text = this.info.Code; IpText.text = this.info.HostAndPort; PingText.text = this.info.Ping +"ms"; } public void AddToList(Region info,int index) { RefreshInfo(info); _index = index; StartCoroutine("AnimateAddition"); } public void RemoveFromList() { StartCoroutine("AnimateRemove"); } IEnumerator AnimateAddition() { LayoutElement.minHeight = 0f; yield return new WaitForSeconds(_index * 0.04f); while (LayoutElement.minHeight != 30f) { LayoutElement.minHeight = Mathf.MoveTowards(LayoutElement.minHeight, 30f, 2f); yield return new WaitForEndOfFrame(); } } IEnumerator AnimateRemove() { while (LayoutElement.minHeight != 0f) { LayoutElement.minHeight = Mathf.MoveTowards(LayoutElement.minHeight, 0f, 2f); yield return new WaitForEndOfFrame(); } Destroy(this.gameObject); } } }