/// <summary> /// A request to normal summon the monster is given to the game class. If allowable, it will be summoned. /// </summary> /// <param name="monsterToSummon">A MonsterCard to play.</param> /// <returns>"" if successful. Error string if failed.</returns> public string NormalSummon(Object monsterToSummon) { if (monsterToSummon is MonsterCard && hand.Contains(monsterToSummon)) { Game.Result amIAllowedToSummon = myCurrentGame.RequestNormalSummon(id, monsterToSummon, faceDownCardsInMonsterZone.Count + m_meReadOnly.getFaceUpMonstersInMonsterZone().Count); if (amIAllowedToSummon.ToString().Equals("Success")) { return(""); } else { return(amIAllowedToSummon.ToString()); } } else { return("Either Card is not a monster or the card is not in your hand!"); } }
public string Sacrifice(MonsterCard toSacrifice) { Game.Result r = myCurrentGame.RequestSacrifice(id, toSacrifice); if (r.Equals(Game.Result.Success)) { return(""); } else { return(r.ToString()); } }
public string AttackFaceUpOpponent(MonsterCard attackingCard, MonsterCard defendingCard) { Game.Result r = myCurrentGame.RequestAttack(id, attackingCard, defendingCard); if (r.Equals(Game.Result.Success)) { return(""); } else { return(r.ToString()); } }
public string AttackFaceDownOpponent(MonsterCard attackingCard, Mode faceDownCardsMode) { Game.Result r = myCurrentGame.RequestAttackOnFaceDownCard(id, attackingCard, faceDownCardsMode); if (r.Equals(Game.Result.Success)) { return(""); } else { return(r.ToString()); } }
public string AttackLifePoints(MonsterCard attackingCard) { Game.Result r = myCurrentGame.RequestAttackLifePoints(id, attackingCard); if (r.Equals(Game.Result.Success)) { return(""); } else { return(r.ToString()); } }
/// <summary> /// Asks the game to change the mode of the card (to attack mode or defense mode). /// </summary> /// <param name="toChangeModeOf">to change to attack mode or defense mode</param> /// <returns>"" if successful. Error message if Error</returns> public string ChangeModeOfCard(MonsterCard toChangeModeOf) { Game.Result r = myCurrentGame.RequestChangeModeOfCard(id, toChangeModeOf); if (r.Equals(Game.Result.Success)) { return(""); } else { return(r.ToString()); } }
public string TryEquip(Object EquipableCard, string nameOfCardToEquipTo) { bool found = false; if (hand.Contains(EquipableCard)) { for (int i = 0; i < faceDownCardsInMonsterZone.Count && !found; i++) { if (faceDownCardsInMonsterZone[i].getName().Equals(nameOfCardToEquipTo)) { MonsterCard equippingTo = faceDownCardsInMonsterZone[i]; found = true; Game.Result r = myCurrentGame.RequestEquip(id, EquipableCard, ref equippingTo); if (r == Game.Result.Success) { faceDownCardsInMonsterZone[i] = equippingTo; SendToGraveYard(EquipableCard, Zone.Hand); return(""); } else { return(r.ToString()); } } } IList <MonsterCard> faceUpMonsters = m_meReadOnly.getFaceUpMonstersInMonsterZone(); for (int i = 0; i < faceUpMonsters.Count && !found; i++) { if (faceUpMonsters[i].getName().Equals(nameOfCardToEquipTo)) { found = true; MonsterCard equippingTo = faceUpMonsters[i]; Game.Result r = myCurrentGame.RequestEquip(id, EquipableCard, ref equippingTo); if (r == Game.Result.Success) { faceUpMonsters[i] = equippingTo; m_meReadOnly.setFaceUpMonstersInMonsterZone(faceUpMonsters); SendToGraveYard(EquipableCard, Zone.Hand); return(""); } else { return(r.ToString()); } } } return("Failed to find card"); } else { return("Equipable Card not in hand anymore."); } }
/// <summary> /// Tell the game and opponent you are done for this turn. Should be called after you attack, summon, etc. /// </summary> /// <returns>"" if successfully ended turn. Error string if failed.</returns> public string EndTurn() { Game.Result r = myCurrentGame.RequestEndTurn(id); if (r == Game.Result.Success) { return(""); } else { return(r.ToString()); } }