public Card ConvertJsonCardToCard(JSONCard jsonCard) { Card c = null; dynamic cardValue = jsonCard.value; Color cardColor = Color.UNDEFINED; if (jsonCard.color != "") { cardColor = (Color)Enum.Parse(typeof(Color), jsonCard.color, true); } switch (jsonCard.type) { case "number_card": c = new NumberCard(Convert.ToInt32(cardValue), cardColor); break; case "plus": c = new PlusCard(cardColor); break; case "plus_2": c = new TwoPlusCard(cardColor); break; case "stop": c = new StopCard(cardColor); break; case "change_direction": c = new ChangeDirectionCard(cardColor); break; case "change_color": c = new ChangeColorCard(); break; case "taki": c = new TakiCard(cardColor); break; case "super_taki": c = new SuperTakiCard(); break; } return(c); }
/// <summary> /// Checks if the card is suitble to place - /// according to the last card on the table /// </summary> /// <param name="card"></param> /// <returns></returns> internal bool CheckCardIsValid(TakiCard card) { throw new NotImplementedException(); }