예제 #1
0
    public List <Message> GetMessagesByType(GameManager.MessageTypes type)
    {
        List <Message> messages = Messages.FindAll(delegate(Message m) { return(m.MessageType == type); });

        messages.Sort(delegate(Message m1, Message m2) { return(m2.Date.CompareTo(m1.Date)); });
        return(messages);
    }
예제 #2
0
 public int GetMessageTypeCount(GameManager.MessageTypes messageType, bool onlyUnread)
 {
     return((Messages.FindAll(delegate(Message m)
     {
         if (onlyUnread)
         {
             return m.MessageType == messageType && m.IsRead == false;
         }
         else
         {
             return m.MessageType == messageType;
         }
     })).Count);
 }
예제 #3
0
    public void AddMessage(string message, GameManager.MessageTypes messageType, PositionInfo position)
    {
        Message m = new Message(message, messageType);

        m.Position = position;
        Messages.Add(m);

        if (Messages.Count > NumberOfMessagesInList && NumberOfMessagesInList != -1)
        {
            RemoveOldestMessage();
        }

        _Changed = true;
        SortMessagesByDate(true);
        //ShowPopup(m);
        GUIWindow.StackMessages.Add(new StackMessage(m, GameManager.Instance.GUIManager.PopupWindowTimer));
    }
예제 #4
0
    public Message(string message, GameManager.MessageTypes messageType)
    {
        if (message.Length > GameManager.Instance.MaxMessageLength)
        {
            _Header  = message.Substring(0, GameManager.Instance.MaxMessageLength) + "...";
            _Body    = message;
            _HasBody = true;
        }
        else
        {
            _Header = message;
            _Body   = message;
        }

        _Date        = DateTime.Now;
        _MessageType = messageType;
    }
예제 #5
0
    public GUIStyle GetMessageStyleByType(GameManager.MessageTypes messageType, bool isRead, int mode)
    {
        GUIStyle ret;

        switch (messageType)
        {
        case GameManager.MessageTypes.Game:
            ret = isRead == true ? GameMessageStyleRead : GameMessageStyle;
            break;

        case GameManager.MessageTypes.Chat:
            ret = isRead == true ? ChatMessageStyleRead : ChatMessageStyle;
            break;

        case GameManager.MessageTypes.Battle:
            ret = isRead == true ? BattleMessageStyleRead : BattleMessageStyle;
            break;

        case GameManager.MessageTypes.Detection:
            ret = isRead == true ? DetectionMessageStyleRead : DetectionMessageStyle;
            break;

        default:
            ret = SystemMessageStyleRead;
            break;
        }

        if (mode != -1)
        {
            GUIStyleState gss = ret.normal;

            gss.background    = mode == 0 ? MessageBackground1 : MessageBackground2;
            ret.normal        = gss;
            ret.imagePosition = ImagePosition.TextOnly;
            ret.alignment     = TextAnchor.MiddleLeft;
        }

        return(ret);
    }