public void Handle(IEvent @event) { List <StarSystem> systems = _navigator.GetAllExpeditionSystems(); double totalSystems = systems.Count; double scannedSystems = systems.Where(s => s.Scanned).Count(); double progressPercentage = Math.Round(scannedSystems / totalSystems * 100); TimeSpan expeditionLength = _playerStatus.ExpeditionLength; _communicator.Communicate(_progressPhrases.GetRandomPhraseWith(expeditionLength.Days, expeditionLength.Hours, expeditionLength.Minutes, progressPercentage)); _communicator.Communicate(_systemsScannedPhrases.GetRandomPhraseWith(scannedSystems, totalSystems)); }