Example #1
0
 private void enqueueAlert(IModerationAlert alert)
 {
     if (!containsText(alert))
     {
         queuedAlerts.Enqueue(alert);
     }
 }
        public void ClearAlert(IModerationAlert alert)
        {
            List <IAlert> list = new List <IAlert>();

            list.Add(alert.MixAlert);
            List <IAlert> alerts = list;

            Service.Get <SessionManager>().LocalUser.ClearAlerts(alerts, onClearAlertsSent);
        }
Example #3
0
 private bool containsText(IModerationAlert alert)
 {
     foreach (IModerationAlert queuedAlert in queuedAlerts)
     {
         if (queuedAlert.Text == alert.Text)
         {
             return(true);
         }
     }
     return(false);
 }
Example #4
0
 private void checkAndDisplayMessage()
 {
     if (!isShowingMessage && queuedAlerts.Count > 0)
     {
         isShowingMessage = true;
         IModerationAlert alert            = queuedAlerts.Peek();
         PromptDefinition promptDefinition = Service.Get <PromptManager>().GetPromptDefinition(alert.IsCritical ? "ModerationCriticalPrompt" : "ModerationWarningPrompt");
         PromptLoaderCMD  promptLoaderCMD  = new PromptLoaderCMD(this, promptDefinition, delegate(PromptLoaderCMD loader)
         {
             showModerationPrompt(loader, alert);
         });
         promptLoaderCMD.Execute();
     }
 }
Example #5
0
 private void showModerationPrompt(PromptLoaderCMD promptLoader, IModerationAlert alert)
 {
     if (alert.IsCritical)
     {
         CPDataEntityCollection cPDataEntityCollection = Service.Get <CPDataEntityCollection>();
         if (cPDataEntityCollection.TryGetComponent <DisplayNameData>(cPDataEntityCollection.LocalPlayerHandle, out var component))
         {
             promptLoader.PromptData.SetText(DPrompt.PROMPT_TEXT_TITLE, component.DisplayName, isTranslated: true);
         }
         else
         {
             Log.LogError(this, "Could not find display name data on local player");
         }
         promptLoader.PromptData.SetText("Moderation.Text.Time", "11hrs 26m", isTranslated: true);
     }
     promptLoader.PromptData.SetText(DPrompt.PROMPT_TEXT_BODY, alert.Text, isTranslated: true);
     Service.Get <PromptManager>().ShowPrompt(promptLoader.PromptData, onModerationPromptClosed, promptLoader.Prefab);
 }
Example #6
0
 public void SetAlert(IModerationAlert alert)
 {
     Alert            = alert;
     MessageText.text = alert.Text;
 }