public void ajouter_attaque(Carte carteAttaquant, Carte carteMarchand) { if (carteAttaquant.afficher_nomCarte().Contains("capitaine")) { Carte temp = null; foreach (var carte in _attaquesEnCours) { if (carte.Value.recuperer_idCarte() == carteMarchand.recuperer_idCarte()) { if (carte.Key.afficher_nomCarte().Contains("capitaine")) { temp = carte.Key; } } } if (temp != null) { _attaquesEnCours.Remove(temp); _idCartesCapitaines_idJoueurs.Remove(temp.recuperer_idCarte()); } } _attaquesEnCours.Add(carteAttaquant, carteMarchand); }
public void poser_carte(Carte carte) { _nombreCartesEnMain -= 1; var recup = _cartesEnMain.First(x => x.Value.recuperer_idCarte() == carte.recuperer_idCarte()); _cartesEnMain.Remove(recup.Key); }
public void poser_carte(Carte carte) { if (_attaqueValide == false) { if (_estEnTrainDAttaquer == true && _attaqueActuel.Count != 0) { var attaque = _attaqueActuel.First(x => x.Key == _attaqueActuel.Count); if (attaque.Value.afficher_nomCarte().Contains("pirate")) { _idCartesPirates_idJoueurs.Remove(attaque.Value.recuperer_idCarte()); } else if (attaque.Value.afficher_nomCarte().Contains("capitaine")) { _idCartesCapitaines_idJoueurs.Remove(attaque.Value.recuperer_idCarte()); } else if (attaque.Value.afficher_nomCarte().Contains("amiral")) { _idCarteAmiral_idJoueur.Remove(attaque.Value.recuperer_idCarte()); } } if (carte.GetType() == typeof(CarteMarchand)) { _cartesMarchandsTapis_etape_1.Add(_cartesMarchandsTapis_etape_1.Count + 1, carte); _idCartesMarchands_idJoueurs.Add(carte.recuperer_idCarte(), _etape); _aPoserMarchand = true; _estEnTrainDAttaquer = false; } else if (carte.GetType() == typeof(CartePirate)) { if (_cartesMarchandsTapis_etape_1.Count != 0 || _cartesMarchandsTapis_etape_2.Count != 0 || _cartesMarchandsTapis_etape_3.Count != 0 || _cartesMarchandsTapis_etape_4.Count != 0) { _idCartesPirates_idJoueurs.Add(carte.recuperer_idCarte(), _etape); _attaqueActuel.Add(_attaqueActuel.Count + 1, carte); _estEnTrainDAttaquer = true; } } else if (carte.GetType() == typeof(CarteCapitaine)) { if (_attaquesEnCours.Count != 0) { _idCartesCapitaines_idJoueurs.Add(carte.recuperer_idCarte(), _etape); _attaqueActuel.Add(_attaqueActuel.Count + 1, carte); _estEnTrainDAttaquer = true; } } else if (carte.GetType() == typeof(CarteAmiral)) { if (_attaquesEnCours.Count != 0) { _idCarteAmiral_idJoueur.Add(carte.recuperer_idCarte(), _etape); _attaqueActuel.Add(_attaqueActuel.Count + 1, carte); _estEnTrainDAttaquer = true; } } } if (_aPoserMarchand || _attaqueValide) { _attaqueActuel = new Dictionary <int, Carte>(); Joueur jonh = recupererJoueurCourant(); jonh.poser_carte(carte); modifier_aPoserUneCarte_joueurCourant(true); _aPoserMarchand = false; _attaqueValide = false; if (carte.afficher_nomCarte().Contains("pirate")) { _cartesPiratesTapis_etape_1.Add(_cartesPiratesTapis_etape_1.Count + 1, carte); } else if (carte.afficher_nomCarte().Contains("capitaine")) { _cartesCapitainesTapis_etape_1.Add(_cartesCapitainesTapis_etape_1.Count + 1, carte); } else if (carte.afficher_nomCarte().Contains("amiral")) { _carteAmiralTapis_etape_1.Add(_carteAmiralTapis_etape_1.Count + 1, carte); } Dictionary <int, Carte> newCartesEnMain = new Dictionary <int, Carte>(); foreach (var carteMain in jonh.recuperer_mainJoueur()) { newCartesEnMain.Add(carteMain.Key, carteMain.Value); } jonh.modifier_mainJoueur(newCartesEnMain); } }