// Play card from my hand to my playing area public bool playMyCard(string cardName, GameObject c) { if (myState.onField.Count >= DuelFunctions.MAX_FIELD) { return(false); } for (int i = 0; i < myState.inHand.Count; i++) { if (myState.inHand[i].CardName.Equals(cardName) && DuelFunctions.CanCast(myState.inHand[i], myState)) { Card played = myState.inHand[i]; //edit state myState.mana -= played.CardCost; myState.onField.Add(played); myState.inHand.RemoveAt(i); Debug.Log("Resolving abilities"); StartCoroutine(resolveAbilities(played, c)); //sync with opp string data = "play:" + cardName; sendDataToOpp(data); return(true); } } return(false); }
public bool CanCast(GameObject c) { if (DuelFunctions.CanCast(Library.GetCard(c.name), myState)) { return(true); } return(false); }