//Il faut une fonction permettant de changer l'affectation d'un monstre d'une atttraction a une autre
        public void ChangerAffectationTravailleurAttractionAUneAutre() // En paramètre : int matriculePersonnel, int matriculeAttraction
        {
            Console.WriteLine("BIENVENUE DANS LA GESTION DES AFFECTATIONS D'UN MONSTRE SUR UNE AUTRE ATTRACTION");
            Console.WriteLine("--------------------------------------------------");
            Console.WriteLine("Nous allons pour le monstre suivant et l'attraction suivante effectuer une affectation");
            int      matriculePersonnel  = 66254;
            int      matriculeAttraction = 112;
            CMonstre personnelATrouver   = (CMonstre)m_toutLePersonnelListPers.Find(delegate(CPersonnel personnelAAffecter) //on cast car logique c'est un montre concerné par le matricule
                                                                                    { return(personnelAAffecter.MatriculeInt == matriculePersonnel); });
            //On récupère dans la liste des attractions celle que l'on veut mettre en maintenance
            CAttraction attractionATrouver = m_attractionsListAttr.Find(delegate(CAttraction attraction)
                                                                        { return(attraction.IdentifiantInt == matriculeAttraction); });

            Console.WriteLine(attractionATrouver.DisplayObject());
            Console.WriteLine(personnelATrouver.DisplayObject());
            Console.WriteLine("Appuyer sur une touche pour continuer...");
            Console.ReadKey();
            //on stock les infos de l'attraction dans l'attribut affectation du monstre
            personnelATrouver.ChangerAffectation(attractionATrouver); //attribut attraction du monstre = attraction
            //inversement, on ajoute les monstres dans l'attributs equipeMonstre de chacun des attractions
            attractionATrouver.AjouterUnMonstreALEquipe(personnelATrouver);
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("Changement effectué ! Le monstre n° " + matriculePersonnel + " travaille maintenant sur l'attraction n° " + matriculeAttraction + ".\nStatut :");
            Console.WriteLine("------------------------------------------------------------------------------------------------------------");
            Console.WriteLine(attractionATrouver.DisplayObject());
            Console.WriteLine(personnelATrouver.DisplayObject());
            Console.WriteLine("--------------------------------FIN GESTION DES AFFECTATIONS---------------------------------------------");
            Console.ForegroundColor = ConsoleColor.Gray;
        }
        public void GererActivationMaintenance() //Attribut int matriculeAttraction, string natureDeLaMaintenance, TimeSpan dureeMaintenance
        {
            int matriculeAttraction = 523; string natureDeLaMaintenance = "Panne Générateur"; TimeSpan dureeMaintenance = new TimeSpan(1, 0, 0);

            Console.WriteLine("---------------------------ACTIVATION MAINTENANCE-------------------------");
            Console.WriteLine("On va mettre l'attraction suivante en maintenance :");

            //On récupère dans la liste des attractions celle que l'on veut mettre en maintenance
            CAttraction attractionATrouver = m_attractionsListAttr.Find(delegate(CAttraction attraction)
                                                                        { return(attraction.IdentifiantInt == matriculeAttraction); });

            attractionATrouver.DisplayObject();
            if (attractionATrouver.MaintenanceBool == false)
            {
                attractionATrouver.AjouterUneMaintenance(natureDeLaMaintenance, dureeMaintenance);
                Console.WriteLine("La maintenance est ajoutée ! Voici son statut :");
                Console.WriteLine(attractionATrouver.DisplayObject());
                Console.ReadKey();
            }
            else
            {
                Console.WriteLine("L'attraction est déjà en maintenance. Echec de l'opération !");
            }
            Console.WriteLine("---------------------------FIN ACTIVATION MAINTENANCE-------------------------");
        }
        public void GererFinDesMaintenances() //int matriculeAttraction
        {
            int matriculeAttraction = 523;

            Console.WriteLine("---------------------------ACTIVATION FIN MAINTENANCE-------------------------");
            Console.WriteLine("On va mettre l'attraction suivante en fin de maintenance :");

            //On récupère dans la liste des attractions celle que l'on veut mettre en maintenance
            CAttraction attractionATrouver = m_attractionsListAttr.Find(delegate(CAttraction attraction)
                                                                        { return(attraction.IdentifiantInt == matriculeAttraction); });

            attractionATrouver.DisplayObject();
            if (attractionATrouver.MaintenanceBool == true)
            {
                attractionATrouver.FinMaintenance();
                Console.WriteLine("La maintenance est supprimée ! Voici son statut :");
                Console.WriteLine(attractionATrouver.DisplayObject());
            }
            else
            {
                Console.WriteLine("L'attraction n'est pas en maintenance. Echec de l'opération !");
            }
            Console.WriteLine("---------------------------FIN ACTIVATION FIN DE MAINTENANCE-------------------------");
            Console.WriteLine("Appuyer sur une touche pour continuer...");
            Console.ReadKey();
        }
示例#4
0
        /* public CMonstre(string matriculeStr, string nomStr, string prenomStr, string sexeStr, string fonctionStr, string cagnotteStr, string affectationStr) : base(matriculeStr, nomStr, prenomStr, sexeStr, fonctionStr)
         * {
         *   try
         *   {
         *       int cagnotteInt = Int32.Parse(cagnotteStr);
         *       if (cagnotteInt >= 0) //ID attraction fait 3 chiffre et cagnotte positive
         *       {
         *           m_cagnotteInt = cagnotteInt;
         *           m_affectationAttra = new CAttraction(affectationStr);
         *
         *       }
         *       else throw new Exception("La cagnotte ne peut pas etre negative");
         *   }
         *   catch (Exception e)
         *   {
         *       Console.WriteLine("ERREUR CONSTRUCTEUR CMONSTRE : " + e.Message);
         *   }
         * }*/

        public void AjouterUneAffectationAttraction(CAttraction affectation)
        {
            try
            {
                m_affectationAttra = affectation;
                //Console.WriteLine("L'attraction " + affectation.IdentifiantInt + " a été affecté au monstre\n");
            }
            catch (Exception e)
            {
                Console.WriteLine("ERREUR DANS AjouterUneAffectationAttraction() : " + e.Message);
            }
        }
示例#5
0
        } //Efface les grids pour l'ajout

        private void button_Copy1_Click(object sender, RoutedEventArgs e) //Click Bouton "Affichage en détail"
        {
            int index = Liste1.SelectedIndex; //Correspond a l'index dans a listBox de l"élément sélectionné

            if (ComboBox1.Text == "Listes des personnels" && index >= 0)
            {
                CPersonnel p = ListePersonnelParc.ElementAt(index - 1);
                MessageBox.Show(p.DisplayObject());
            }
            else if (ComboBox1.Text == "Listes des attractions" && index >= 0)
            {
                CAttraction a = ListeAttractionParc.ElementAt(index - 1);
                MessageBox.Show(a.DisplayObject());
            }
        }
示例#6
0
 public CMonstre(string matriculeStr, string nomStr, string prenomStr, string sexeStr, string fonctionStr, string cagnotteStr, string affectationStr) : base(matriculeStr, nomStr, prenomStr, sexeStr, fonctionStr)
 {
     try
     {
         m_racePersonnelString = "Monstre";
         int affectationInt;
         //Console.WriteLine("Nouveau cas : " + affectationStr);
         int cagnotteInt = Int32.Parse(cagnotteStr);
         if (affectationStr == "neant" && cagnotteInt >= 0)
         {
             m_cagnotteInt            = cagnotteInt;
             m_affectationAttra       = null;
             m_intituleAffectationStr = "membre administration";
         }
         else if (affectationStr == "parc" && cagnotteInt >= 0)
         {
             m_cagnotteInt            = cagnotteInt;
             m_affectationAttra       = null;
             m_intituleAffectationStr = "parc";
         }
         else if (cagnotteInt >= 0 && affectationStr.Length == 3) //ID attraction fait 3 chiffres et cagnotte positive
         {
             affectationInt            = Int32.Parse(affectationStr);
             m_cagnotteInt             = cagnotteInt;
             m_affectationAttra        = null;
             m_IDAttractionAffecteeInt = affectationInt;
             m_intituleAffectationStr  = "attraction";
         }
         else if (cagnotteInt >= 0 && affectationStr.Length == 0) //ID attraction fait 0 chiffre et cagnotte positive
         {
             m_cagnotteInt             = cagnotteInt;
             m_affectationAttra        = null;
             m_IDAttractionAffecteeInt = -1;
             m_intituleAffectationStr  = "libre";
         }
         else
         {
             throw new Exception("La cagnotte ne peut pas etre negative");
         }
     }
     catch (Exception e)
     {
         Console.WriteLine("ERREUR CONSTRUCTEUR CMONSTRE : " + e.Message);
     }
 }
        public void VoirListDesLibresPourAffectation()
        {
            //try
            //{
            Console.WriteLine("BIENVENUE DANS L'ESPACE D'AFFECTATION DES MEMBRES DU PERSONNEL LIBREs A UNE ATTRACTION");
            Console.WriteLine("--------------------------------------------------------------------------------------\n");
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("Voici la liste du personnel libre : ");
            Console.ForegroundColor = ConsoleColor.Gray;
            AffichagePersonnelStatutDesire("libre");
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("Voici la liste des attractions existantes dans le parc : ");
            Console.ForegroundColor = ConsoleColor.Gray;
            AffichageListeAttraction(m_attractionsListAttr);
            Console.ForegroundColor = ConsoleColor.Blue;
            Console.WriteLine("On choisit le matricule d'un membre du personnel que l'on souhaite affecter, par exemple: 66654");
            int reponseUtilisateurPersonnelInt = Int32.Parse(Console.ReadLine());

            Console.WriteLine("On choisit le matricule de l'attraction sur laquelle le membre du personnel va êre affecté par exemple: 112");
            int reponseUtilisateurAttraction = Int32.Parse(Console.ReadLine());

            Console.ForegroundColor = ConsoleColor.Gray;
            CMonstre personnel = (CMonstre)m_toutLePersonnelListPers.Find(delegate(CPersonnel personnelAAffecter)                                          //on cast car logique c'est un montre concernéar le matricule
                                                                          { return(personnelAAffecter.MatriculeInt == reponseUtilisateurPersonnelInt); }); //ici on cherche dans la liste le membre ayant le matricule entréar l'utilsateur dans la liste complete
                                                                                                                                                           // ICI il faut aussi trouver la bonne attraction
            CAttraction attraction = m_attractionsListAttr.Find(delegate(CAttraction attractionAffectee)
                                                                { return(attractionAffectee.IdentifiantInt == reponseUtilisateurAttraction); });

            //on met a jour l'affection du membre du personnel
            personnel.ChangerAffectation(attraction); //l'intituléu statut est MAJ en meme temps
                                                      //on met a jour la liste des travailleurs sur une attraction
            attraction.AjouterUnMonstreALEquipe(personnel);
            //}
            //catch(Exception e)
            //{
            //    Console.WriteLine("Erreur dans VoirListDesLibresPourAffectation()" + e.Message);
            //}
        }
示例#8
0
 public CVampire(int matricule, string nom, string prenom, TypeSexe sexe, string fonction, int cagnotte, CAttraction affectation, float luminosite) : base(matricule, nom, prenom, sexe, fonction, cagnotte, affectation)
 {
     m_indiceLuminositeFloat = luminosite;
 }
示例#9
0
 public CLoupGarou(int matricule, string nom, string prenom, TypeSexe sexe, string fonction, int cagnotte, CAttraction affectation, double indiceCruaute) : base(matricule, nom, prenom, sexe, fonction, cagnotte, affectation)
 {
     m_indiceCruauteDbl = indiceCruaute;
 }
示例#10
0
 public CMonstre(int matricule, string nom, string prenom, TypeSexe sexe, string fonction, int cagnotte, CAttraction affectation) : base(matricule, nom, prenom, sexe, fonction)
 {
     m_affectationAttra = affectation;
     m_cagnotteInt      = cagnotte;
 }
示例#11
0
 public void DisparitionCagnotte500() //pour les zombies et demons, ils n'ont plus d'attraction mais doivent se balader dans le parc
 {
     m_IDAttractionAffecteeInt = -1;
     m_intituleAffectationStr  = "se balade dans le parc pour faire peur";
     m_affectationAttra        = null;
 }
示例#12
0
 public void ChangerAffectation(CAttraction attraction)
 {
     m_IDAttractionAffecteeInt = attraction.IdentifiantInt;
     m_intituleAffectationStr  = "attraction";
     m_affectationAttra        = attraction;
 }
示例#13
0
 public CDemon(int matricule, string nom, string prenom, TypeSexe sexe, string fonction, int cagnotte, CAttraction affectation, int force) : base(matricule, nom, prenom, sexe, fonction, cagnotte, affectation)
 {
     m_forceInt = force;
 }
示例#14
0
 public CFantome(int matricule, string nom, string prenom, TypeSexe sexe, string fonction, int cagnotte, CAttraction affectation) : base(matricule, nom, prenom, sexe, fonction, cagnotte, affectation)
 {
     m_racePersonnelString = "Fantome";
 }
示例#15
0
 public CZombie(int matricule, string nom, string prenom, TypeSexe sexe, string fonction, int cagnotte, CAttraction affectation, CouleurZ teint, int degreDecomposition) : base(matricule, nom, prenom, sexe, fonction, cagnotte, affectation)
 {
     m_degreDecompositionInt = degreDecomposition;
     m_teintCouleurZ         = teint;
 }