Beispiel #1
0
    public void ShowMessage(string msg, float time, MessageType t)
    {
        GameObject  o       = GameObject.Instantiate(messageUi, Vector2.zero, Quaternion.identity);
        GameMessage message = o.GetComponent <GameMessage>();

        message.Init(msg, time);

        if (messageQueue.Count != 0)
        {
            //messageQueue.Enqueue(message);
            switch (t)
            {
            case MessageType.Commmon:
                messageQueue.Enqueue(message);
                break;

            case MessageType.Important:
                while (messageQueue.Count != 0)
                {
                    GameMessage gm = messageQueue.Dequeue();
                    if (gm != null)
                    {
                        Destroy(gm.gameObject);
                    }
                }

                message.Show();
                messageQueue.Enqueue(message);
                break;
            }
        }
        else
        {
            message.Show();
            messageQueue.Enqueue(message);
        }
    }