private List <CardData> GetCardsFromEvents(List <EventTypeData> events) { EventTypeData randomEventTypeData = getRandomEventTypeData(events); EventData randomEventData = randomEventTypeData.CardsInEvent[Random.Range(0, randomEventTypeData.CardsInEvent.Count)]; _eventTitle.text = randomEventData.Name; _eventDescription.text = randomEventData.Description; _priorityImage.sprite = Game.Instance.GetPlayerData(_playerPriorityIndex).PrioritySprite; _lastEventType = randomEventTypeData.EventType; return(randomEventData.EventCards); }
private EventTypeData getRandomEventTypeData(List <EventTypeData> events) { if (events.Count <= 0) { _eventTypeDataEntriesLeft = _eventTypeDatas; events = _eventTypeDataEntriesLeft; } List <EventTypeData> possibleEventTypeDataEntries = events.FindAll(item => item.EventType != _lastEventType); if (possibleEventTypeDataEntries.Count <= 0) { possibleEventTypeDataEntries.Add(events.First()); } EventTypeData eventTypeData = possibleEventTypeDataEntries[Random.Range(0, possibleEventTypeDataEntries.Count)]; _eventTypeDataEntriesLeft.Remove(eventTypeData); return(eventTypeData); }