public MyObjectBuilder_FactionChatItem GetObjectBuilder() { var objectBuilder = new MyObjectBuilder_FactionChatItem(); objectBuilder.Text = Text; objectBuilder.IdentityIdUniqueNumber = MyEntityIdentifier.GetIdUniqueNumber(IdentityId); objectBuilder.TimestampMs = (long)Timestamp.TotalMilliseconds; if (PlayersToSendTo != null) { objectBuilder.PlayersToSendToUniqueNumber = PlayersToSendTo.Keys.ToList(); for (int i = 0; i < objectBuilder.PlayersToSendToUniqueNumber.Count; i++) { objectBuilder.PlayersToSendToUniqueNumber[i] = MyEntityIdentifier.GetIdUniqueNumber(objectBuilder.PlayersToSendToUniqueNumber[i]); } objectBuilder.IsAlreadySentTo = PlayersToSendTo.Values.ToList(); } return objectBuilder; }
public void Init(MyObjectBuilder_FactionChatItem chatBuilder) { Text = chatBuilder.Text; IdentityId = MyEntityIdentifier.ConstructId(MyEntityIdentifier.ID_OBJECT_TYPE.IDENTITY, chatBuilder.IdentityIdUniqueNumber); Timestamp = TimeSpan.FromMilliseconds(chatBuilder.TimestampMs); PlayersToSendTo = new Dictionary<long,bool>(); if (chatBuilder.PlayersToSendToUniqueNumber != null && chatBuilder.PlayersToSendToUniqueNumber.Count != 0) { for (int i = 0; i < chatBuilder.PlayersToSendToUniqueNumber.Count; i++) { PlayersToSendTo.Add(MyEntityIdentifier.ConstructId(MyEntityIdentifier.ID_OBJECT_TYPE.IDENTITY, chatBuilder.PlayersToSendToUniqueNumber[i]), chatBuilder.IsAlreadySentTo[i]); } } }