void InitializeCard() { int index; List <CardLocalization> CardList = new List <CardLocalization>(); Card card = ScriptableObject.CreateInstance("Card") as Card; switch (cardtype) { case CardContainer.CardType.TextCard: index = Random.Range(0, cardContainer.TextCards.Count); card = cardContainer.TextCards[index]; cardContainer.UsedTextCards.Add(cardContainer.TextCards[index]); cardContainer.TextCards.RemoveAt(index); cardContainer.CheckIfAllCardsUsed(); CardList = NormalCards; break; case CardContainer.CardType.SpecificCard: card = specificCard; CardList = SpecificCards; break; } string language = PlayerPrefs.GetString("language"); TitleText.text = (string)CardList[card.ID - 1].GetType().GetField("Title_" + language).GetValue(CardList[card.ID - 1]); DescriptionText.text = (string)CardList[card.ID - 1].GetType().GetField("Description_" + language).GetValue(CardList[card.ID - 1]); image.sprite = card.CardSprite; Panel.GetComponent <Image>().color = card.Color; button.onClick.AddListener(CardFunction.Invoke); }