private void DisplayEntityMessage(EntityMessageDto emDto) { ClearExcessOnScreenMessages(); if (emDto.Portrait == null) { DisplayPartyMessage(new PartyMessageDto { Message = emDto.Message, TextColor = emDto.TextColor }); return; } var messageInstance = Instantiate(messagePrefab, messagePrefab.transform.position, Quaternion.identity); messageInstance.transform.SetParent(messageParent); var rect = messageInstance.GetComponent <RectTransform>(); rect.localScale = new Vector3(1, 1, 1); var portrait = messageInstance.GetComponent <TravelMessage>().portrait; SetPortrait(emDto.Portrait, portrait); var writer = messageInstance.GetComponent <TextWriter>(); writer.AddWriter(messageInstance.GetComponent <TravelMessage>().messageText, emDto.Message, GlobalHelper.DefaultTextSpeed, true, emDto.TextColor); _messagesOnScreen.Enqueue(messageInstance); StartCoroutine(PushToBottom()); }
public void QueueEntityMessage(EntityMessageDto message) { if (_entityMessageQueue == null) { _entityMessageQueue = new Queue <EntityMessageDto>(); } _entityMessageQueue.Enqueue(message); }