public void SetDialog(Dialog dialog, UiPolicy uiPolicy) { if (!initialized) { Init(); } bool isScrolledAllTheWayDown = !scrollRect.verticalScrollbar.gameObject.activeInHierarchy || scrollRect.verticalNormalizedPosition < 1f / 1024; // keep scrolling down if really close to bottom switch (uiPolicy) { case UiPolicy.StartOver: RemoveDialogElements(); break; case UiPolicy.DisablePrev: DeactivateDialogChoices(); break; case UiPolicy.Continue: break; } if (dialog == null) { tokenizer.AddError("missing dialog"); return; } if (dialog.options != null) { for (int i = 0; i < dialog.options.Length; ++i) { Dialog.DialogOption opt = dialog.options[i]; if (opt.Available(tokenizer, GetScriptScope())) { AddDialogOption(opt, isScrolledAllTheWayDown); } } } }
public void SetDialog(string name, UiPolicy uiPolicy) { if (!initialized) { Init(); } Dialog dialog = dialogs.Find(d => d.name == name); if (dialog == null) { tokenizer.AddError("missing dialog \"" + name + "\""); } SetDialog(dialog, uiPolicy); }
public void SetDialog(object src, Tokenizer tok, string name, UiPolicy uiPolicy) { if (!initialized) { Init(); } Dialog dialog = DialogManager.Instance.dialogs.Find(d => d.name == name); if (dialog == null) { tok.AddError("missing dialog \"" + name + "\""); } SetDialog(src, tok, dialog, uiPolicy); }
public void SetDialog(object src, Tokenizer tok, Dialog dialog, UiPolicy uiPolicy) { if (!initialized) { Init(); } bool isScrolledAllTheWayDown = !scrollRect.verticalScrollbar.gameObject.activeInHierarchy || scrollRect.verticalNormalizedPosition < 1f / 1024; // keep scrolling down if really close to bottom switch (uiPolicy) { case UiPolicy.StartOver: RemoveDialogElements(); break; case UiPolicy.DisablePrev: DeactivateDialogChoices(); break; case UiPolicy.Continue: break; } if (dialog == null) { tok.AddError("missing dialog"); return; } if (dialog.options != null) { for (int i = 0; i < dialog.options.Length; ++i) { Dialog.DialogOption opt = dialog.options[i]; //NonStandard.Show.Log("checking opt " + NonStandard.Show.Stringify(opt, false)); ScriptedDictionaryManager m = Global.Get <ScriptedDictionaryManager>(); if (opt.Available(tok, m.Main)) { AddDialogOption(opt, isScrolledAllTheWayDown); //NonStandard.Show.Log("added" + NonStandard.Show.Stringify(opt, false)); } else { //NonStandard.Show.Log("ignored" + NonStandard.Show.Stringify(opt, false)); } } } ShowErrors(tok.errors); onDialog?.Invoke(); }