private IEnumerator CardRequest(UnityWebRequest request, string httpVerb, Action <Card> responseHandler, Action <List <Card> > multipleResponseHandler) { yield return(MakeRequest(request, httpVerb, response => { if (responseHandler != null) { CardRepresentation card = JsonUtility.FromJson <CardRepresentation>(request.downloadHandler.text); responseHandler(card.ToCard()); } if (multipleResponseHandler != null) { List <CardRepresentation> results = new List <CardRepresentation>(JsonHelper.getJsonArray <CardRepresentation>(request.downloadHandler.text)); multipleResponseHandler(results.ConvertAll(card => card.ToCard())); } })); }
public CardUpdated(string user, CardRepresentation card) : base(user) { try { Cost = card.Cost; Gems = card.Gems; Name = card.Name; State = card.State; Attack = card.Attack; Shards = card.Colors; Defense = card.Defense; Message = GetMessageName(); Attributes = card.Attributes; Controller = card.Controller.GetInstanceId(); Collection = card.Collection; BaseTemplate = card.TemplateId; Abilities = new List<string>(); foreach (ResourceId id in card.Abilities) if (TemplateManager.Instance.Abilities.ContainsKey(id)) Abilities.Add(TemplateManager.Instance.Abilities[id].m_GameText); } catch (Exception ex) { Log.Exception("Notifier", ex); } }