public bool acheterTrain(CarreauTrain carreau) { Joueur joueurCourant = Plateau.Instance.JoueurCourant; if (joueurCourant.PeutPayer(carreau.PrixAchat)) { joueurCourant.Payer(carreau.PrixAchat); // le jouer peut decider d'acheter la case. carreau.Proprietaire = joueurCourant; joueurCourant.Trains.Add(carreau); return(true); } return(false); }
public static void Restaurer(Joueur j, StreamReader fichierSauvegarde, string nomJoueurCourant) { j.Nom = fichierSauvegarde.ReadLine(); j.Position.colonne = Int32.Parse(fichierSauvegarde.ReadLine()); j.Position.rangee = Int32.Parse(fichierSauvegarde.ReadLine()); j.Argent = Int64.Parse(fichierSauvegarde.ReadLine()); j.PositionCarreau = Int32.Parse(fichierSauvegarde.ReadLine()); j.EstVivant = Boolean.Parse(fichierSauvegarde.ReadLine()); while ((char)fichierSauvegarde.Peek() != 'p') { int positionCarreau = Int32.Parse(fichierSauvegarde.ReadLine()); CarreauPropriete prop = (CarreauPropriete)Plateau.Instance.getCarreau(positionCarreau); prop.NombreBatiement = Int32.Parse(fichierSauvegarde.ReadLine()); prop.EstHypotheque = Boolean.Parse(fichierSauvegarde.ReadLine()); j.Proprietes.Add(prop); } fichierSauvegarde.ReadLine(); while ((char)fichierSauvegarde.Peek() != 't') { int positionCarreau = Int32.Parse(fichierSauvegarde.ReadLine()); CarreauTrain train = (CarreauTrain)Plateau.Instance.getCarreau(positionCarreau); train.EstHypotheque = Boolean.Parse(fichierSauvegarde.ReadLine()); j.Trains.Add(train); } fichierSauvegarde.ReadLine(); while ((char)fichierSauvegarde.Peek() != 's') { int positionCarreau = Int32.Parse(fichierSauvegarde.ReadLine()); CarreauService service = (CarreauService)Plateau.Instance.getCarreau(positionCarreau); service.EstHypotheque = Boolean.Parse(fichierSauvegarde.ReadLine()); j.Services.Add(service); } fichierSauvegarde.ReadLine(); if (j.Nom == nomJoueurCourant) { Plateau.Instance.JoueurCourant = j; } j.BougerLaPiece(j.PositionCarreau); }
/// <summary> /// on lis le xml des trains /// on initialise les trains /// </summary> private void lireXMLTrains() { XDocument doc = XDocument.Parse(Properties.Resources.cheminFer); XElement trains = doc.Root.Element("CheminFers"); foreach (XElement titre in doc.Root.Elements("Titre")) { String indexDictionnaire = titre.Descendants("IndexDictionnaire").First().Value.ToString(); int position = Int32.Parse(titre.Descendants("Position").First().Value.ToString()); long prixAchat = Int32.Parse(titre.Descendants("Prix").First().Value.ToString()); long droitPass1Train = Int32.Parse(titre.Element("Location").Descendants("unTrain").First().Value.ToString()); long droitPass2Trains = Int32.Parse(titre.Element("Location").Descendants("deuxTrains").First().Value.ToString()); long droitPass3Trains = Int32.Parse(titre.Element("Location").Descendants("troisTrains").First().Value.ToString()); long droitPass4Trains = Int32.Parse(titre.Element("Location").Descendants("quatreTrains").First().Value.ToString()); long[] droitPassage = { droitPass1Train, droitPass2Trains, droitPass3Trains, droitPass4Trains }; Carreau nouveauTrain = new CarreauTrain(position, prixAchat, droitPassage); //MessageBox.Show(titre.Descendants("Couleur").First().Value.ToString() + " "+ nouveauCarreauCouleur); dictionnaireCarreaux.Add(indexDictionnaire, nouveauTrain); } }
public void execute(Carreau carreau) { if (carreau is CarreauPropriete) { CarreauPropriete carreauActuel = (CarreauPropriete)carreau; if (!carreauActuel.estPossede()) { acheterPropriete(carreauActuel); } } else if (carreau is CarreauTrain) { CarreauTrain carreauActuel = (CarreauTrain)carreau; if (!carreauActuel.estPossede()) { acheterTrain(carreauActuel); } } else { CarreauService carreauActuel = (CarreauService)carreau; //if (!carreauActuel.estPossede()) } }