示例#1
0
        public static ChatMessage ParseExact(StrongString serverValueString)
        {
            ChatMessage message;

            StrongString[] myString = serverValueString.Split(CharSeparator);
            message = new ChatMessage(myString[0],                                   // 1
                                      myString[1],                                   // 2
                                      SocialPosition.GetSocialPosition(myString[2]), // 3
                                      Avatar.ConvertToAvatar(myString[3]),           // 4
                                      AvatarFrame.ParseToAvatarFrame(myString[4]),   // 5
                                      myString.Length > 5 ?
                                      ThereIsConstants.Actions.ToDateTime(myString[5]) :
                                      null);                        // 6
            return(message);
        }
示例#2
0
 //-------------------------------------------------
 #region Constructors Region
 private ChatMessage(StrongString sender,
                     StrongString context,
                     SocialPosition position,
                     Avatar avatar,
                     AvatarFrame frame,
                     IDateProvider <DateTime, Trigger, StrongString> dateTime = default)
 {
     SenderName           = sender;
     MessageContext       = context;
     SenderSocialPosition = position;
     SenderAvatar         = avatar;
     SenderAvatarFrame    = frame;
     if (dateTime == default)
     {
         SendDateTime = ThereIsConstants.AppSettings.GlobalTiming;
     }
     else
     {
         SendDateTime = dateTime;
     }
     IsCommand = CheckForCommand();
     IsMe      =
         ThereIsServer.GameObjects.MyProfile.PlayerName == SenderName;
 }