public void Awake() { GetLeaderboard(); SendLeaderboard(); entryContainer = transform.Find("highscoreEntryContainer"); entryTemplate = EntryContainer.Find("highscoreEntryTemplate"); entryTemplate.gameObject.SetActive(false); for (int i = 0; i < leaderboarddata.Count; i++) { for (int j = i + 1; j < leaderboarddata.Count; j++) { if (leaderboarddata[j].high_score > leaderboarddata[i].high_score) { //swap LeaderboardData tmp = leaderboarddata[i]; leaderboarddata[i] = leaderboarddata[j]; leaderboarddata[j] = tmp; } } } leaderboarddataEntryTransformList = new List <Transform>(); foreach (LeaderboardData leaderboardData in leaderboarddata) { CreateHighscoreEntryTransform(leaderboardData, entryContainer, leaderboarddataEntryTransformList); } }
public void AddEntry(string name, string description, IEnumerable <GhostRoleInfo> roles) { NoRolesMessage.Visible = false; var entry = new GhostRolesEntry(name, description, roles); entry.OnRoleSelected += OnRoleRequested; entry.OnRoleFollow += OnRoleFollow; EntryContainer.AddChild(entry); }
private async Task UnfocusNameInput() { if (Device.RuntimePlatform == Device.iOS) { await Task.WhenAll(ContentStackLayout.TranslateTo(0, 0, easing: Easing.CubicInOut)); } else { await EntryContainer.TranslateTo(0, 0, easing : Easing.CubicInOut); await TextContainer.FadeTo(1); } }
private async Task FocusNameInput() { if (Device.RuntimePlatform == Device.iOS) { await Task.WhenAll(ContentStackLayout.TranslateTo(0, -50, easing: Easing.CubicInOut)); } else { var keyboardHeight = App.ScreenHeight * 0.45f; var target = Height - keyboardHeight; var yOffset = target - Math.Min(EntryView.GetPosition().Y + EntryContainer.Height, Height); await Task.WhenAll(TextContainer.FadeTo(0), EntryContainer.TranslateTo(0, yOffset, easing: Easing.CubicInOut)); } }
private void TraverseFromEntry(ActionEntry entry, Action <ActionEntry> procedure) { procedure(entry); foreach (var child in entry.GetChildEntries(EntryContainer)) { var nextId = child.NextId; while (EntryContainer.GetEntry(nextId) != null) { var nextEntry = EntryContainer.GetEntry(nextId); nextId = nextEntry.NextId; TraverseFromEntry(nextEntry, procedure); } TraverseFromEntry(child, procedure); } if (entry.HasNext) { TraverseFromEntry(EntryContainer.GetEntry(entry.NextId), procedure); } }
private IEnumerator Step(ActionEntry entry) { foreach (var childEntry in entry.GetChildEntries(EntryContainer)) { StartCoroutine(Step(childEntry)); } while (entry.IsPlayable) { entry.StepAction(Time.deltaTime, Status == RunnerStatus.Pause); yield return(null); } if (entry.HasNext) { while (entry.EntryType == ActionEntryType.ParallelBlock && !entry.IsParallelBlockFinished(EntryContainer)) { yield return(null); } var nextEntry = EntryContainer.GetEntry(entry.NextId); PrepareEntry(nextEntry); StartCoroutine(Step(nextEntry)); } if (entry.EntryType == ActionEntryType.ParallelBlock && entry.EntryWrapMode == ActionEntry.ActionEntryWrapMode.Loop) { while (!entry.IsParallelBlockFinished(EntryContainer)) { yield return(null); } yield return(null); // restart on the next frame of last tweener's IsDone ResetEntryFrom(entry); PrepareEntry(entry); StartCoroutine(Step(entry)); } }
/// <summary> /// Call when the entry need Focus /// </summary> public virtual void OnFocusRequest() { EntryContainer.Focus(); }
public void AddEntry(GhostRoleInfo info) { NoRolesMessage.Visible = false; EntryContainer.AddChild(new GhostRolesEntry(info, _ => RoleRequested?.Invoke(info))); }
public void ClearEntries() { NoRolesMessage.Visible = true; EntryContainer.DisposeAllChildren(); }