MessageDisplayer

From Unify Community Wiki
(Difference between revisions)
Jump to: navigation, search
(C# - MessageDisplayer.cs)
m (Rationalised categories)
Line 1: Line 1:
[[Category: MonoBehaviour]]
+
[[Category:MonoBehaviour]]
[[Category: C Sharp]]
+
[[Category:C Sharp]]
[[Category: HUD]]
+
[[Category:Heads Up Display Scripts]]
[[Category: Displays]]
+
[[Category:GUIText]]
[[Category: GUIText]]
+
 
Author: Jonathan Czeck (aarku)
 
Author: Jonathan Czeck (aarku)
 
==Description==
 
==Description==

Revision as of 00:26, 29 April 2006

Author: Jonathan Czeck (aarku)

Description

Use this script on a guiText object to have status messages. Just call messageDisplayerObject.DisplayMessage("hello") and you'll get a line of self disappearing messages. TODO: Make this script more of a singleton.

Usage

Use this script on a guiText object to have status messages.

C# - MessageDisplayer.cs

<csharp> using UnityEngine; using System.Collections;

// Use this script on a guiText object to have status messages // Just call messageDisplayerObject.DisplayMessage("hello") and you'll // get a line of self disappearing messages.

public class MessageDisplayer : MonoBehaviour {

   ArrayList messages = new ArrayList();
   
   public void DisplayMessage(string message)
   {
       messages.Add(message);
       UpdateDisplay();
       Invoke("DeleteOldestMessage", 5F);
   }
   
   void DeleteOldestMessage()
   {
       // The following "if statement" protects from this function
       // getting called by SendMessage from another script and
       // crashing.
       if (messages.Count > 0)
       {
           messages.RemoveAt(0);
           UpdateDisplay();
       }
   }
   
   void UpdateDisplay()
   {
       string formattedMessages = "";
       
       foreach (string message in messages)
       {
           formattedMessages += message + "\n";
       }
       
       guiText.text = formattedMessages;
   }

} </csharp>

Personal tools
Namespaces

Variants
Actions
Navigation
Extras
Toolbox