protected override void RemoveMessage(int messageId) { var index = MessageViews.FindIndex(x => x.Id == messageId); if (index < 0) { return; } var message = MessageViews[index]; message.HideWithAnimation(() => { message.gameObject.GetComponent <MessageViewsPool.PolledObject>()? .ReturnToPool(); MessageViews.Remove(message); CheckMessagesBlock(index); }); }