示例#1
0
 public Message(Joueur JoueurEmetteur, Command TypeMessage, object Message)
 {
     this.JoueurEmetteur = JoueurEmetteur;
     this.Sender = null;
     this.TypeMessage = TypeMessage;
     this.ContenuMessage = Message;
 }
示例#2
0
 private void btnJouer_Click(object sender, EventArgs e)
 {
     JeuxPendu frmPrincipal;
     NiveauDiff niveauDiff;
     if (radFacile.Checked)
     {
         niveauDiff = NiveauDiff.Facile;
     }
     else if (radMoyen.Checked)
     {
         niveauDiff = NiveauDiff.Moyen;
     }
     else
     {
         niveauDiff = NiveauDiff.Difficile;
     }
     if (cboUtil.SelectedItem != null)
     {
         frmPrincipal = new JeuxPendu(niveauDiff, (Joueur)cboUtil.SelectedItem);
     }
     else
     {
         int noJoueur = Utilitaire.putJoueur(cboUtil.Text);
         Joueur joueur = new Joueur(noJoueur, cboUtil.Text);
         frmPrincipal = new JeuxPendu(niveauDiff, joueur);
     }
     frmPrincipal.Owner = this;
     frmPrincipal.Show();
     Hide();
 }
示例#3
0
 private void Marque(Joueur joueur, Joueur adversaire)
 {
     if (joueur.Score == Egalite)
     {
         joueur.Score = Avantage;
         adversaire.Score = Desavantage;
     }
     else if (joueur.Score == Avantage)
     {
         joueur.Score = Vainqueur;
     }
     else if(joueur.Score == Desavantage)
     {
         joueur.Score = Egalite;
         adversaire.Score = Egalite;
     }
     else if (adversaire.Score == "40" && joueur.Score == "30")
     {
         joueur.Score = Egalite;
         adversaire.Score = Egalite;
     }
     else if (joueur.Score == "40")
     {
         joueur.Score = Vainqueur;
     }
     else
     {
         AvanceScoreDansTableau(joueur);
     }
 }
示例#4
0
 public static void BroadcastMessage(Message msg, List<Joueur> Joueurs, Joueur Ignore)
 {
     foreach (Joueur jc in Joueurs)
     {
         if(Ignore == null || jc.Client.Client.RemoteEndPoint != Ignore.Client.Client.RemoteEndPoint)
             DataSender.SendObject(jc.Client, msg);
     }
 }
示例#5
0
 public void Demarrer_une_nouvelle_partie()
 {
     Joueur joueurOuest = new Joueur("Ouest", JoueurType.Ordinateur);
     Joueur joueurNord = new Joueur("Nord", JoueurType.Ordinateur);
     Joueur joueurEst = new Joueur("Est", JoueurType.Ordinateur);
     Joueur nicholas = new Joueur("Nicholas", JoueurType.Humain);
     Partie partie = new Partie(1000, joueurOuest, joueurNord, joueurEst, nicholas);
 }
示例#6
0
        public Paire(Joueur joueur1, Joueur joueur2)
        {
            joueur1.Partenaire = joueur2;
            joueur2.Partenaire = joueur1;

            Joueur1 = joueur1;
            Joueur2 = joueur2;
            Score = 0;
        }
示例#7
0
 // Initialisations
 public JeuxPendu(NiveauDiff niveauDiff, Joueur joueurCourrant)
 {
     InitializeComponent();
     joueur = joueurCourrant;
     difficulte = niveauDiff;
     langue = Langues.Fraçais;
     nbPartieJoue = 0;
     enJeu = false;
     partieEnLigne = false;
 }
示例#8
0
 public void AjoutPersonne()
 {
     Joueur unJoueur = null;
     Utilitaire.putJoueur("Catwoman");
     List<Joueur> listeJoueur = Utilitaire.getUtils();
     unJoueur = listeJoueur.Find(p => p.Nom.Equals("Catwoman"));
     Assert.AreEqual(unJoueur.Nom, "Catwoman");
     Statistique stats = Utilitaire.getSats(unJoueur.NoJoueur);
     Assert.IsNotNull(stats);
     Utilitaire.deleteUtils(unJoueur.NoJoueur);
     unJoueur = null;
     listeJoueur = Utilitaire.getUtils();
     unJoueur = listeJoueur.Find(p => p.Nom.Equals("Catwoman"));
     Assert.IsNull(unJoueur);
 }
    public static Joueur obtenirJoueur2()
    {
        Deck DeckJoueur2 = construireUnDeck(new Dictionary<string, int>{
                {"Guêpe",10},
                {"Mante religieuse",5},
                {"Goéland leucophée",5}
            });

        Dictionary<string, CaracteristiqueJoueur> caracs = new Dictionary<string, CaracteristiqueJoueur> {
                {"Force",new CaracteristiqueJoueur(8)}
                ,{"PV",new CaracteristiqueJoueur(22)}
            };
        Joueur MonJoueur = new Joueur("JoueurTest1", curCaracs: caracs, curDecks: new List<Deck> { DeckJoueur2 });
        return MonJoueur;
    }
示例#10
0
 public void Recieve()
 {
     while (true)
     {
         NetworkStream strm = Client.GetStream();
         IFormatter formatter = new BinaryFormatter();
         if (Client.Connected)
         {
             Message o = null;
             try
             {
                 o = (Message)formatter.Deserialize(strm);
                 o.IDJoueur = Client.Client.RemoteEndPoint.ToString();
                 o.Sender = this;
                 if (o.TypeMessage == Command.Joueur)
                 {
                     JoueurEmetteur = (Joueur)o.ContenuMessage;
                     ((Joueur)o.ContenuMessage).AdresseIP = Client.Client.RemoteEndPoint.ToString();
                     ((Joueur)o.ContenuMessage).Client = Client;
                     this.JoueurEmetteur.Login = ((Joueur)o.ContenuMessage).Login;
                 }
                 //else if (o.TypeMessage == Command.Message)
                 //{
                 //    o.ContenuMessage = (string.IsNullOrEmpty(JoueurEmetteur.Login) ? "Inconnu : " : JoueurEmetteur.Login) + " : " + o.ContenuMessage.ToString();
                 //}
                 else if (o.TypeMessage == Command.ListeClient)
                 {
                 }
             }
             catch
             {
                 Client.Close();
                 return;
             }
             f.NetMsg.Enqueue(o);
             f.ProcessData();
         }
         else
         {
             Client.Close();
             return;
         }
     }
 }
示例#11
0
    public override IPartie CreerPartie(string nomPartie, List<TypePeuple> tp)
    {
        // Creation de la fabrique de cases
        FabriqueCase f = new FabriqueCase();
        WrapperLib w = new WrapperLib(LARGEURCARTE, HAUTEURCARTE);

        // Generation de la carte par la fabrique
        Carte c = new CartePetit(f.CreerGrille(w), f.CreerCases());
        List<Tuple<int, int>> l = w.placer_unites(2);

        // Tirage aleatoire de l'ordre des joueurs
        Random begin = new Random();
        int fst = begin.Next(0, 2);
        int snd = (fst + 1) % 2;

        // Remplissage de la table des joueurs en generant deux nouveaux joueurs
        List<Joueur> joueurs = new List<Joueur>();
        Joueur j1 = new Joueur(tp[fst], 6, new Coordonnee(l[fst].Item1, l[fst].Item2));
        Joueur j2 = new Joueur(tp[snd], 6, new Coordonnee(l[snd].Item1, l[snd].Item2));
        joueurs.Add(j1);
        joueurs.Add(j2);

        return new Partie(nomPartie, c, joueurs, 20);
    }
示例#12
0
 public RetourRequete(string _page)
 {
     joueur      = Game1.joueur;
     page        = _page;
     IsConnected = false;
 }
示例#13
0
 public async Task <List <Classement> > loadHistoriqueClassement(Joueur joueur)
 {
     return(await this.InternalLoadListFromSpid <ListeClassementHeader, List <ClassementDto>, Classement>($"api/joueur/{joueur.Licence}/histoclass", false, liste => liste?.Liste?.Classements));
 }
示例#14
0
        /// <summary>
        /// Créer le nouveau joueur avec les valeurs des champs correspondant
        /// </summary>
        private void btnSignUp_Click(object sender, EventArgs e)
        {
            Joueur j = new Joueur(0, tbxName.Text, tbxFirstName.Text, tbxEmail.Text, tbxPseudo.Text, dtpBirthday.Value);

            Joueur.Ajouter(j);
        }
示例#15
0
 public void AddJoueur(ref Joueur joueur)
 {
     _dbal.Insert("joueur", joueur.ToArray());
     joueur.Id = (int)_dbal.SelectLast("joueur")["id"];
 }
示例#16
0
        private async Task <Joueur> LoadDetailJoueurFromSpid(string licence, bool addToDb = true, bool autoSave = true)
        {
            Joueur result = await this.InternalLoadFromSpid <ListeJoueurHeader, JoueurDto, Joueur>($"api/joueur/{licence}", addToDb, liste => liste?.Liste?.Joueur, (ctx, j) => ctx.Joueurs.Add(j), null, null, autoSave);

            return(result);
        }
示例#17
0
 protected override void Initialize()
 {
     // TODO: Add your initialization logic here
     win = this.Window; // récupérer le handle de la fenetre
     IsMouseVisible = true; // activer la souris
     WindowWidth = GraphicsDevice.Viewport.Width;
     WindowHeight = GraphicsDevice.Viewport.Height;
     joueur = new Joueur("Pierre", 12, 100, 3, 250, 250);
     collide = new Collide();
     controller = new Controller();
     base.Initialize();
 }
        private void bRejoindre_Click(object sender, EventArgs e)
        {
            if (dgvLivres.SelectedRows.Count != 1)
            {
                MessageBox.Show("Sélectionnez une aventure !");
                return;
            }

            if (string.IsNullOrEmpty(tbLogin.Text))
            {
                MessageBox.Show("Entrez un Login.");
                return;
            }

            LivreSelectionne = (Livre)dgvLivres.SelectedRows[0].DataBoundItem;
            Moi = new Joueur();
            Moi.Login = tbLogin.Text;
            FormRejoindreAventure f = new FormRejoindreAventure(Moi, fMain);
            f.ShowDialog();

            if (f.Sender != null)
            {
                this.Sender = f.Sender;
                Connected = true;
                this.Close();
            }
        }
示例#19
0
        //fonction d'attaque de Joueur pour le mode de jeu 2
        public void Attaque(Joueur personnage)
        {
            int nbPoints = LanceLeDe(26);

            personnage.SubitDegats(nbPoints);
        }
示例#20
0
    /// <summary>
    /// Lance l'attaque sur le territoire cible.
    /// </summary>
    /// <param name="unitAttacking">List(Submarin) Les sous-marins donnant l'assaut.</param>
    /// <param name="cible">Territoire Le territoire cible.</param>
    /// <param name="targetsIds">int[] Les index des unités ciblées dans la liste d'unités du défenseur.</param>
    public IEnumerator LaunchAttack(List <Submarin> unitAttacking, Route cible, int[] targetsIds)
    {
        routeCible = cible;
        subAtt     = unitAttacking;
        joueurAtt  = subAtt[0].Joueur;
        joueurDef  = cible.joueur;

        // Récupération des unités présentes sur la cible
        foreach (Unite unit in cible.joueur.Unites)
        {
            if (unit.GetType().BaseType.Name == "Maritime")
            {
                Maritime maritime = unit as Maritime;

                if (maritime.route.Equals(cible))
                {
                    unitDef.Add(maritime);
                }
            }
        }

        int[]         diceAtt = new int[Math.Min(3, subAtt.Count)], diceDef = new int[Math.Min(2, unitDef.Count)];
        System.Random rand    = new System.Random();

        // Jets de dés
        for (int i = 0; i < 3; i++)
        {
            if (i < Math.Min(3, subAtt.Count))
            {
                diceAtt[i] = rand.Next(1, 7); // Tire un chiffre entre 1 et 7 non inclus
            }
            if (i < Math.Min(2, unitDef.Count))
            {
                diceDef[i] = rand.Next(1, 7);
            }
        }

        DestroyUnits(diceAtt, diceDef, targetsIds);

        foreach (Submarin unit in subAtt)
        {
            unit.Disable();
            unitAtt.Add(unit);
        }

        // Si toutes les unités de la défense sont détruites, la route est à nouveau libre.
        if (unitDef.Count == 0 && unitAtt.Count > 0)
        {
            joueurDef.Routes.Remove(cible);
            joueurAtt.Routes.Add(cible);

            foreach (Submarin unit in subAtt)
            {
                unit.route = cible;
            }
        }
        else
        {
            unitAtt[0].ResetPosition();
        }

        // Affichage du résultat de l'assaut.
        yield return(StartCoroutine(GameObject.Find("GUIManager").GetComponent <GUIController>().ShowAssaultResult(diceAtt, diceDef, unitesDetruitesAtt, unitesDetruitesDef, unitAtt, unitDef)));

        // Réinitialisation des variables pour éviter toute erreur.
        Reset();
    }
示例#21
0
        static void Main(string[] args)
        {
            Joueur joueur1      = new Joueur(3, 0);
            Joueur joueur2      = new Joueur(3, 1);
            Carte  carteCentre  = new Carte((Sorte)genererNB(1, 5), genererNB(1, 14));
            bool   finManche    = false;
            Joueur joueurActif  = joueur1;
            int    menu         = 0;
            bool   knock        = false;
            int    totalJoueur1 = 0;
            int    totalJoueur2 = 0;
            bool   dernierTour  = false;
            bool   showTotal    = false;
            int    total        = 0;

            while (finManche == false)
            {
                if (knock == true)
                {
                    finManche = true;
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("C'est votre dernier tour.");
                    Console.ForegroundColor = ConsoleColor.White;
                }
                AfficherCarte(joueurActif.tabCarte);
                AdditionnerPoints(joueurActif, ref finManche, ref dernierTour, ref showTotal, total);
                AfficherMenu(ref carteCentre);
                menu = Convert.ToInt32(Console.ReadLine());
                switch (menu)
                {
                case 1: PigerCarte(ref joueurActif.tabCarte, ref carteCentre, ref joueurActif); break;

                case 2: PrendreCarteCentre(ref carteCentre, ref joueurActif.tabCarte); break;

                case 3: knock = true; break;

                default: Console.WriteLine("Cette option n'est pas valide"); break;
                }
                if (finManche == false)
                {
                    if (joueurActif.id == joueur1.id)
                    {
                        joueurActif             = joueur2;
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine("C'est maintenant le tour du joueur 2");
                        Console.ForegroundColor = ConsoleColor.White;
                    }
                    else
                    {
                        joueurActif             = joueur1;
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine("C'est maintenant le tour du joueur 1");
                        Console.ForegroundColor = ConsoleColor.White;
                    }
                }
            }

            dernierTour  = false;
            finManche    = false;
            showTotal    = true;
            totalJoueur1 = AdditionnerPoints(joueur1, ref finManche, ref dernierTour, ref showTotal, total);
            totalJoueur2 = AdditionnerPoints(joueur2, ref finManche, ref dernierTour, ref showTotal, total);
            showTotal    = false;
            if (totalJoueur1 > totalJoueur2)
            {
                Console.ForegroundColor = ConsoleColor.Green;
                Console.WriteLine("\n Le gagnant est le joueur 1!");
                Console.ForegroundColor = ConsoleColor.White;
                joueur2.nbVie          -= 1;
            }
            else if (totalJoueur1 < totalJoueur2)
            {
                Console.ForegroundColor = ConsoleColor.Green;
                Console.WriteLine("\n Le grand gagnant est le joueur 2!");
                Console.ForegroundColor = ConsoleColor.White;
                joueur1.nbVie          -= 1;
            }
            else if (totalJoueur1 == totalJoueur2)
            {
                Console.ForegroundColor = ConsoleColor.Green;
                Console.WriteLine("C'est une égalité pour les deux joueurs!");
                Console.ForegroundColor = ConsoleColor.White;
            }

            Console.ReadKey();
        }
示例#22
0
 public JoueurArg(string joueur)
 {
     this.nomJoueur = joueur;
     this.joueur    = null;
 }
示例#23
0
        public static Joueur getUtils(int noJoueur)
        {
            List<Joueur> nomsUtil = new List<Joueur>();
            OleDbConnection connexion = new OleDbConnection(connBD);
            Joueur unJoueur = null;
            try
            {

                connexion.Open();
                commande = new OleDbCommand("SELECT * FROM tblUtilisateurs WHERE noUtil=@noUtil", connexion);
                commande.Parameters.Add("@noUtil", OleDbType.Integer).Value = noJoueur;

                OleDbDataReader reader = commande.ExecuteReader();
                if (reader.Read())
                {
                    String nom = reader["nom"].ToString();
                    int no = Convert.ToInt32(reader["noUtil"]);
                    unJoueur = new Joueur(no, nom);
                }

                return unJoueur;
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
            finally
            {
                commande.Dispose();
                connexion.Close();
            }
        }
示例#24
0
 public virtual void activer(Joueur joueur)
 {
 }
示例#25
0
 public void ramasser(Joueur joueur)
 {
     // si bonus actif alors stocker son nom pour le joueur
     // ainsi que sa durée restante
 }
 public void Test_Joueur_2()
 {
     IJoueur j = new Joueur(TypePeuple.VIKING, 1, new Coordonnee(0, 0));
     Unite u = j.Peuple.Unites[0];
     u.NouveauTour(TypeCase.PLAINE);
     j.MAJPoints();
     Assert.IsTrue(j.Points == 1);
     Assert.IsTrue(j.EnJeu);
     j.Peuple.TuerUnite(u);
     j.MAJPoints();
     Assert.IsTrue(j.Points == 0);
     Assert.IsFalse(j.EnJeu);
 }
示例#27
0
 /// <summary>
 /// Réception d'un message de chat
 /// </summary>
 /// <param name="msg">Le message en question</param>
 /// <param name="expediteur">L'expéditeur du message</param>
 public virtual void RecevoirMessagePublic(ChatMessage msg, Joueur expediteur)
 {
 }
示例#28
0
 public ExecuteurSimple(Joueur joueurEnCours, Niveau niveauEnCours, Forme formeEnCours)
 {
     JoueurEnCours = joueurEnCours;
     this.niveauEnCours = niveauEnCours;
     this.FormeEnCours = formeEnCours;
 }
示例#29
0
 /// <summary>
 /// Idem ChangerJoueur mais sans changement de cartes
 /// </summary>
 /// <param name="joueurAChanger">Le joueur & ses infos</param>
 /// <param name="pot">le pot</param>
 public virtual void ChangerJoueurSansCartes(Joueur joueurAChanger, int?pot)
 {
 }
示例#30
0
        // GET: Joueur/Details/5
        public ActionResult Details(int id)
        {
            Joueur joueur = ctx.Joueurs.Single(j => j.CodeJou == id);

            return(View(joueur));
        }
        private void bCommencer_Click(object sender, EventArgs e)
        {
            if (dgvLivres.SelectedRows.Count != 1)
            {
                MessageBox.Show("Sélectionnez une aventure !");
                return;
            }

            if (string.IsNullOrEmpty(tbLogin.Text))
            {
                MessageBox.Show("Entrez un Login.");
                return;
            }

            Moi = new Joueur();
            Moi.Login = tbLogin.Text;
            LivreSelectionne = (Livre)dgvLivres.SelectedRows[0].DataBoundItem;
            this.Close();
        }
示例#32
0
    /// <summary>
    /// Lance l'attaque sur le territoire cible.
    /// </summary>
    /// <param name="unitAttacking">List(Unite) Les unités donnant l'assaut.</param>
    /// <param name="cible">Territoire Le territoire cible.</param>
    public IEnumerator LaunchAttack(List <Unite> unitAttacking, Territoire cible)
    {
        unitAtt = new List <Unite>();

        foreach (Unite unite in unitAttacking)
        {
            unitAtt.Add(unite);
        }

        //Debug.Log("unitAtt.Count : " + unitAtt.Count);

        territoireCible = cible;
        joueurAtt       = unitAtt[0].Joueur;
        joueurDef       = territoireCible.joueur;
        bool ranged = false;

        if (unitAtt[0].GetType().Name == "Artillerie" || unitAtt[0].GetType().Name == "Bombardier")
        {
            ranged = true;
        }

        // Récupération des unités présentes sur la cible
        foreach (Unite unit in cible.joueur.Unites)
        {
            if (unit.GetType().BaseType.Name == "Terrestre")
            {
                Terrestre terrestre = unit as Terrestre;

                if (terrestre.territoire.Equals(cible))
                {
                    unitDef.Add(terrestre);
                }
            }
            else if (unit.GetType().BaseType.Name == "Aerienne")
            {
                Aerienne aerienne = unit as Aerienne;

                if (aerienne.territoire.Equals(cible))
                {
                    unitDef.Add(aerienne);
                }
            }
        }

        int[]         diceAtt = new int[Math.Min(3, unitAtt.Count)], diceDef = new int[Math.Min(2, unitDef.Count)];
        System.Random rand    = new System.Random();

        // Jets de dés
        for (int i = 0; i < 3; i++)
        {
            if (i < Math.Min(3, unitAtt.Count))
            {
                diceAtt[i] = rand.Next(1, 7); // Tire un chiffre entre 1 et 7 non inclus
            }
            if (i < Math.Min(2, unitDef.Count))
            {
                diceDef[i] = rand.Next(1, 7);
            }
        }

        DestroyUnits(diceAtt, diceDef, ranged);

        // Si toutes les unités de la défense sont détruites, le territoire est conquit
        if (unitAtt.Count > 0 && unitDef.Count == 0)
        {
            territoireCible.joueur.Territoires.Remove(territoireCible.Num);
            territoireCible.joueur = joueurAtt;
            joueurAtt.Territoires.Add(territoireCible.Num, territoireCible);
            territoireCible.unites.Clear();

            if (!ranged)
            {
                foreach (Unite unit in unitAtt)
                {
                    if (unit.GetType().Name == "Infanterie" || unit.GetType().Name == "Tank")
                    {
                        Terrestre terrestre = unit as Terrestre;

                        terrestre.territoire.unites.Remove(terrestre);
                        terrestre.territoire = territoireCible;
                        territoireCible.unites.Add(unit);

                        if (joueurAtt.GetType().Name.Equals("IAEasy") || joueurAtt.GetType().Name.Equals("IAMedium") || joueurAtt.GetType().Name.Equals("IAHard"))
                        {
                            terrestre.transform.localPosition = territoireCible.Position;
                        }
                    }
                }
            }
        }
        else
        {
            foreach (Unite unit in unitAtt)
            {
                unit.ResetPosition();
            }

            if (ranged)
            {
                foreach (Unite unit in unitAtt)
                {
                    unit.Disable();
                }
            }
        }

        ////Debug.Log("Ça se voit.");

        // Affichage du résultat de l'assaut.
        yield return(StartCoroutine(GameObject.Find("GUIManager").GetComponent <GUIController>().ShowAssaultResult(diceAtt, diceDef, unitesDetruitesAtt, unitesDetruitesDef, unitAtt, unitDef)));

        //Debug.Log("Eh bien, je frappe pour qu'on vienne nous ouvrir.");

        // Réinitialisation des variables pour éviter toute erreur.
        Reset();
    }
示例#33
0
        // GET: Joueur/Edit/5
        public ActionResult Edit(int id)
        {
            Joueur oldJoueur = ctx.Joueurs.Single(j => j.CodeJou == id);

            return(View(oldJoueur));
        }
示例#34
0
 /// <summary>
 /// Réception d'un nouveau joueur : recu à la connection de ce nouveau joueur
 /// </summary>
 /// <param name="nouveauJoueur"></param>
 public virtual void RecevoirNouveauJoueur(Joueur nouveauJoueur)
 {
     _listeJoueurs.Add(nouveauJoueur);
 }
示例#35
0
        // GET: Joueur/Delete/5
        public ActionResult Delete(int id)
        {
            Joueur joueurDeleted = ctx.Joueurs.Single(j => j.CodeJou == id);

            return(View(joueurDeleted));
        }
示例#36
0
 /// <summary>
 /// Réception d'un regard : on sait quel est le joueur qui regarde ses cartes
 /// </summary>
 /// <param name="joueurRegard">Le joueur qui regarde</param>
 /// <param name="etatDeLaMain"></param>
 public virtual void RecevoirRegard(Joueur joueurRegard, EtatMain etatDeLaMain)
 {
 }
示例#37
0
 public static void AddPlayer(Joueur j)
 {
     joueurs.Add(j);
 }
示例#38
0
        static void Main(string[] args)
        {
            bool   TourOrdi      = false;
            bool   Tourjoueur    = true;
            int    total         = 0;
            int    totalOrdi     = 0;
            int    NbtourRestant = 1;
            bool   finManche     = false;
            bool   lastTurn      = false;
            bool   CognerOrdi    = false;
            int    options       = 0;
            int    nbJoueur      = 0;
            bool   cogner        = false;
            Joueur joueur1       = new Joueur(3);
            Joueur ordi          = new Joueur(3);
            int    valeurCarte   = genererNB(1, 14);
            Sorte  sorteCarte    = (Sorte)genererNB(1, 5);

            Console.WriteLine("Bienvenue au jeu du 31");
            Console.Clear();
            Console.WriteLine("Vous allez jouer contre l'odinateur. Bonne chance!");

            while (finManche == false)
            {
                if (cogner == false)
                {
                    Console.WriteLine("");
                    Console.WriteLine("Voici vos cartes : " + joueur1.tabCarte[0].valeur + " - " + joueur1.tabCarte[0].sorte + " / " + joueur1.tabCarte[1].valeur + " - " + joueur1.tabCarte[1].sorte + " / " + joueur1.tabCarte[2].valeur + " - " + joueur1.tabCarte[2].sorte);
                    Console.WriteLine("");
                    total = joueur1.tabCarte[0].valeur + joueur1.tabCarte[1].valeur + joueur1.tabCarte[2].valeur;
                    Console.WriteLine("Votre total est de : " + total);
                    Console.WriteLine("");
                    Console.WriteLine("Voici la carte de la pile : " + valeurCarte + " - " + sorteCarte);
                    Console.WriteLine("");
                    Console.WriteLine("Que voulez-vous faire?");
                    Console.WriteLine("");
                    Console.WriteLine("1- Prendre une nouvelle carte et se débarrasser d’une de ses 3 cartes");
                    Console.WriteLine("");
                    Console.WriteLine("2- Prendre la carte retournée et se débarrasser d’une de ses 3 cartes");
                    Console.WriteLine("");
                    Console.WriteLine("3- Aviser les joueurs que c’est le dernier tour. ( il faut avoir plus de 21  pour  réaliser  cette  étape  ).  Alors,  chaque  joueur  à  un dernier tour pour essayer d’augmenter son score");
                    options = Convert.ToInt32(Console.ReadLine());

                    switch (options)
                    {
                    case 1:
                        Console.Clear();

                        Jetezcarte(ref joueur1, valeurCarte, sorteCarte, joueur1);
                        Console.WriteLine("Voici vos cartes : " + joueur1.tabCarte[0].valeur + " - " + joueur1.tabCarte[0].sorte + " / " + joueur1.tabCarte[1].valeur + " - " + joueur1.tabCarte[1].sorte + " / " + joueur1.tabCarte[2].valeur + " - " + joueur1.tabCarte[2].sorte);
                        total = joueur1.tabCarte[0].valeur + joueur1.tabCarte[1].valeur + joueur1.tabCarte[2].valeur;
                        Console.WriteLine("");
                        Console.WriteLine("Votre total est de : " + total);
                        Tourjoueur = false;
                        TourOrdi   = true;
                        break;

                    case 2:
                        Console.Clear();
                        Pile(ref joueur1, valeurCarte, sorteCarte, joueur1);
                        Console.WriteLine("Voici vos cartes : " + joueur1.tabCarte[0].valeur + " - " + joueur1.tabCarte[0].sorte + " / " + valeurCarte + " - " + sorteCarte + " / " + joueur1.tabCarte[2].valeur + " - " + joueur1.tabCarte[2].sorte);
                        total = joueur1.tabCarte[0].valeur + valeurCarte + joueur1.tabCarte[2].valeur;
                        Console.WriteLine("");
                        Console.WriteLine("Votre total est de : " + total);
                        Tourjoueur = false;
                        TourOrdi   = true;
                        break;

                    case 3:
                        Cogner(total, ref cogner);
                        TourOrdi = true;
                        break;
                    }
                }



                //tour ordi

                Console.WriteLine("C est le tour de l ordinateur");
                totalOrdi = ordi.tabCarte[0].valeur + ordi.tabCarte[1].valeur + ordi.tabCarte[2].valeur;
                Console.ReadKey();

                if (CognerOrdi == true || lastTurn == true)
                {
                    if (total > 31)
                    {
                        Console.WriteLine("Vous avez dépasser 31. Vous avez perdu.");
                        finManche = true;
                    }
                    else if (totalOrdi > 31)
                    {
                        Console.WriteLine("Lordinateur a dépassé 31. Vous avez gagner.");
                        finManche = true;
                    }

                    else if (totalOrdi < total)
                    {
                        Console.WriteLine("Bravo! Vous gagnez. ladversaire a un total de : " + totalOrdi);
                        finManche = true;
                    }
                    else if (totalOrdi > total)
                    {
                        Console.WriteLine("Oh non! Vous avez perdu... l'ordinateur a un total de : " + totalOrdi);
                        finManche = true;
                    }
                }
                else if (lastTurn == false)
                {
                    if (totalOrdi > 21)
                    {
                        Cogner(totalOrdi, ref CognerOrdi);
                    }
                    else if (totalOrdi < 21)
                    {
                        Console.WriteLine("l'ordinateur change de carte...");
                        if (ordi.tabCarte[0].valeur < ordi.tabCarte[1].valeur)
                        {
                            ordi.tabCarte[0].valeur = valeurCarte;
                            if (cogner == true)
                            {
                                lastTurn = true;
                            }
                        }
                    }
                }
            }
            Environment.Exit(0);
        }
示例#39
0
 public bool PossedeePar(Joueur j)
 {
     return(proprietaire == j);
 }
示例#40
0
 public async Task <List <Partie> > loadJoueurParties(Joueur joueur)
 {
     return(await this.InternalLoadListFromSpid <ListePartiesHeader, List <PartieDto>, Partie>($"api/joueur/{joueur.Licence}/parties", false, liste => liste?.Liste?.Parties));
 }
示例#41
0
 public override void PasserSur(Joueur j)
 {
     Console.WriteLine($"Passage sur : {nom}");
     Thread.Sleep(1000);
 }
示例#42
0
        public static async void CombattreFantôme()
        {
            Joueur  Vivi  = Joueur.Instance;
            Fantôme Bhou  = Fantôme.Instance;
            Query   query = new Query();
            Page    page  = Page.Instance;
            bool    jeu   = true;

            DelegAsync.MethAsyncTexteJ("Combat: un fantôme.");
            await Task.Delay(2000);

            while (jeu)
            {
                while (Vivi.Vivant && Bhou.Vivant)
                {
                    Form1.PanelJeu.Invoke(new MethodInvoker(delegate { Vivi.LibereAttaque(); }));
                    MesBouttons.stop.WaitOne();
                    await Task.Delay(3000);

                    MesBouttons.stop.WaitOne();
                    Form1.PanelJeu.Invoke(new MethodInvoker(delegate { Vivi.BlockAttaque(); }));
                    Bhou.Attaque(Vivi);
                    if (Bhou.Degats == Bhou.AttaqueRapide && Vivi.Degats == Vivi.Bouclier || Bhou.Degats == Bhou.AttaqueLourde && Vivi.Degats == Vivi.AttaqueRapide || Bhou.Degats == Bhou.Bouclier && Vivi.Degats == Vivi.AttaqueLourde || Vivi.Degats == Vivi.Magie)
                    {
                        Bhou.SubirDegats(Vivi.Degats);
                        MesLabels.PVM.Invoke(new MethodInvoker(delegate { Bhou.UpMVie(); }));
                        if (Bhou.MVie > 0)
                        {
                            DelegAsync.MethAsyncTexteC("Ton attaque réussit.\nIl reste " +
                                                       Convert.ToString(Bhou.MVie) +
                                                       " point de vie au fantôme et tu en as encore " +
                                                       Convert.ToString(Vivi.Vie) +
                                                       " point de vies!");
                            await Task.Delay(3000);
                        }
                        else
                        {
                            DelegAsync.MethAsyncTexteJ("Le fantôme meurs!");
                            DelegAsync.MethAsyncTexteM("");
                        }
                    }
                    else if (Bhou.Degats == Bhou.AttaqueRapide && Vivi.Degats == Vivi.AttaqueLourde || Bhou.Degats == Bhou.AttaqueLourde && Vivi.Degats == Vivi.Bouclier || Bhou.Degats == Bhou.Bouclier && Vivi.Degats == Vivi.AttaqueRapide)
                    {
                        Vivi.SubitDegats(Bhou.Degats);
                        MesLabels.PV.Invoke(new MethodInvoker(delegate { Vivi.UpVie(); }));
                        if (Vivi.Vie > 0)
                        {
                            DelegAsync.MethAsyncTexteC("Le fantôme te touche.\nIl te reste " +
                                                       Convert.ToString(Vivi.Vie) +
                                                       " point de vie et le fantôme possède encore " +
                                                       Convert.ToString(Bhou.MVie) +
                                                       " point de vies!");
                            await Task.Delay(3000);
                        }
                        else
                        {
                            DelegAsync.MethAsyncTexteJ("Tu meurs!\nLe fantome se ris de toi!");
                            DelegAsync.MethAsyncTexteM("");
                        }
                    }
                    else
                    {
                        DelegAsync.MethAsyncTexteC("Le coup est contré!");
                        await Task.Delay(3000);
                    }
                    if (Vivi.Vivant && !Bhou.Vivant)
                    {
                        Vivi.Experience += 15;
                        Vivi.NiveauGagner();
                        Stuff stuff = Stuff.Lotterie;
                        stuff.EquipementLeger();
                        Vivi.PotionDeVie();
                        MesLabels.TexteCombat.Invoke(new MethodInvoker(delegate { Vivi.UpVie(); }));
                        query.SauvegardeDuJeu();
                        jeu = false;
                        Form1.PanelJeu.Invoke(new MethodInvoker(delegate { page.PageCombatFinit(); }));
                    }
                    else if (!Vivi.Vivant)
                    {
                        DelegAsync.MethAsyncTexteC("Perdu!!!");
                        jeu = false;
                    }
                }
            }
        }
示例#43
0
 /// <summary>
 /// Enregistrer l'acheteur dans les variables de la Case
 /// </summary>
 /// <param name="j"></param>
 private void EnregistrerAcheteur(Joueur j)
 {
     proprietaire = j;
     possede      = true;
 }
示例#44
0
        /// <summary>
        /// Verifie les coup et resort le joueur victorieux
        /// </summary>
        /// <param name="Coup1"></param>
        /// <param name="J1"></param>
        /// <param name="Coup2"></param>
        /// <param name="J2"></param>
        /// <returns>Joueur gagant</returns>
        public Joueur verif(Etape.posibilite Coup1, Joueur J1, Etape.posibilite Coup2, Joueur J2)
        {
            #region Pierre

            if (Coup1 == Etape.posibilite.Pierre && Coup2 == Etape.posibilite.Pierre)
            {
                return(null);
            }

            if (Coup1 == Etape.posibilite.Pierre && Coup2 == Etape.posibilite.Feuille)
            {
                return(J2);
            }

            if (Coup1 == Etape.posibilite.Pierre && Coup2 == Etape.posibilite.Ciseaux)
            {
                return(J1);
            }

            if (Coup1 == Etape.posibilite.Pierre && Coup2 == Etape.posibilite.Puit)
            {
                return(J2);
            }

            #endregion Pierre

            #region Feuille

            if (Coup1 == Etape.posibilite.Feuille && Coup2 == Etape.posibilite.Pierre)
            {
                return(J1);
            }

            if (Coup1 == Etape.posibilite.Feuille && Coup2 == Etape.posibilite.Feuille)
            {
                return(null);
            }

            if (Coup1 == Etape.posibilite.Feuille && Coup2 == Etape.posibilite.Ciseaux)
            {
                return(J2);
            }

            if (Coup1 == Etape.posibilite.Feuille && Coup2 == Etape.posibilite.Puit)
            {
                return(J1);
            }

            #endregion Feuille

            #region Ciseau

            if (Coup1 == Etape.posibilite.Ciseaux && Coup2 == Etape.posibilite.Pierre)
            {
                return(J2);
            }

            if (Coup1 == Etape.posibilite.Ciseaux && Coup2 == Etape.posibilite.Feuille)
            {
                return(J1);
            }

            if (Coup1 == Etape.posibilite.Ciseaux && Coup2 == Etape.posibilite.Ciseaux)
            {
                return(null);
            }

            if (Coup1 == Etape.posibilite.Ciseaux && Coup2 == Etape.posibilite.Puit)
            {
                return(J2);
            }

            #endregion Ciseau

            #region Puit

            if (Coup1 == Etape.posibilite.Puit && Coup2 == Etape.posibilite.Pierre)
            {
                return(J1);
            }

            if (Coup1 == Etape.posibilite.Puit && Coup2 == Etape.posibilite.Feuille)
            {
                return(J2);
            }

            if (Coup1 == Etape.posibilite.Puit && Coup2 == Etape.posibilite.Ciseaux)
            {
                return(J1);
            }

            if (Coup1 == Etape.posibilite.Puit && Coup2 == Etape.posibilite.Puit)
            {
                return(null);
            }

            #endregion Puit

            #region Egalité

            if (Coup1 == Coup2) //en cas d'egalité, retour d'aucun vainquer
            {
                return(null);
            }

            #endregion Egalité

            return(null);
        }
示例#45
0
 private void AvanceScoreDansTableau(Joueur joueur)
 {
     var positionDansLeTableauDeScore = Array.IndexOf(tableauDeScore, joueur.Score);
     joueur.Score = tableauDeScore[positionDansLeTableauDeScore + 1];
 }
 public FormRejoindreAventure(Joueur moi, FormMain f)
 {
     this.moi = moi;
     this.f = f;
     InitializeComponent();
 }
 public void Test_Joueur_1()
 {
     IJoueur j = new Joueur(TypePeuple.VIKING, 4, new Coordonnee(0, 0));
     foreach(IUnite u in j.Peuple.Unites) {
         u.NouveauTour(TypeCase.PLAINE);
     }
     j.MAJPoints();
     Assert.IsTrue(j.Points == 4);
     Assert.IsTrue(j.EnJeu);
 }
示例#48
0
 public void init()
 {
     unMot = new Mots(Langues.Fraçais);
     frmPrinciplale = new JeuxPendu(NiveauDiff.Moyen, new Joueur(1, "Batman"));
     unJoueur = Utilitaire.getUtils(1);
 }
示例#49
0
 public ExecuteurSimple(Joueur joueurEnCours, Niveau niveauEnCours, Forme formeEnCours)
 {
     JoueurEnCours      = joueurEnCours;
     this.niveauEnCours = niveauEnCours;
     this.FormeEnCours  = formeEnCours;
 }
示例#50
0
        private void FormMain_Shown(object sender, EventArgs e)
        {
            FormSelectionAventure fa = new FormSelectionAventure(this);
            fa.ShowDialog();
            if (fa.LivreSelectionne == null)
            {
                return;
            }
            LivreSelectionne = fa.LivreSelectionne;

            Moi = fa.Moi;
            if (fa.Connected)
            {
                ModeEnLigne = TypeModeEnLigne.Client;
                Serveur = fa.Sender;
            }
            else
            {
                ModeEnLigne = TypeModeEnLigne.Aucun;
                Serveur = null;
            }

            MonJeu = new Jeu(LivreSelectionne.Repertoire);
            MonJeu.ChangerParagraphe(LivreSelectionne.Repertoire + "\\Paragraphes\\1.xml");
            MettreAJour();
            Carte = new FormCarte(MonJeu);
            Rec = "";

            //Test de connexion
            try
            {
                TcpListener server = new TcpListener(GetLocalIPAdress(), 9050);
                server.Start();
                server.Stop();

                //Connexion réussie
                Thread listener = new Thread(new ThreadStart(LancerEcoute));
                listener.IsBackground = true;
                listener.Start();
            }
            catch
            {
                MessageBox.Show("Impossible d'initialiser le réseau. Le mode en-ligne a été désactiver. Pour le réactiver, vérifiez vos paramètres de pare-feu et relancez l'application.");
            }
        }
示例#51
0
 public GUI_Joueur(Joueur joueur)
 {
     _joueur = joueur;
 }
示例#52
0
 private void NextPlayer(object sender, EventArgs e)
 {
     if (mainView.GetEtat() == 3 || mainView.GetEtat() == 2)
     {
         foreach (var carte in joueurs[0].SaMain)
         {
             if (carte.NomCarte().Equals(mainView.GetNomCarteMain()))
             {
                 Carte tmp = carte;
                 joueurs[0].SaMain.Remove(tmp);
                 joueurs[3].SaMain.Add(tmp);
                 joueurs[3].SaMain.Sort();
                 break;
             }
         }
         RotatePlayersCounterClockwise();
         if (mainView.GetEtat() == 3)
         {
             RotatePlayerClockwise();
         }
     }
     else if (mainView.GetEtat() == 1)
     {
         mainView.SetEtat(0);
         foreach (Carte carte in joueurs[0].SaMain)
         {
             if (carte.NomCarte().Equals(mainView.GetNomCarteMain()))
             {
                 Carte tmp = carte;
                 joueurs[0].SaMain.Remove(tmp);
                 joueurs[1].SaMain.Add(tmp);
                 joueurs[1].SaMain.Sort();
                 break;
             }
         }
         RotatePlayerClockwise();
     }
     else
     {
         if (mainView.GetNomJoueur().Equals(mainView.GetNomDernierJoueur()))
         {
             nombreCarteJouer = 0;
             valeurCarteJouer = 0;
             carteJouer.Clear();
             dernierJoueur = null;
             mainView.ProchainJoueur();
             changeJoueur();
         }
         else
         {
             if (mainView.GetNombreCarteMain() != 0)
             {
                 nombreCarteJouer = mainView.GetNombreCarteMain();
                 valeurCarteJouer = mainView.GetValeurCarteMain();
                 dernierJoueur    = joueurs[0];
                 carteJouer       = mainView.GetCartesJouees();
                 foreach (string carteJouer in carteJouer)
                 {
                     foreach (Carte carteJoueur in joueurs[0].SaMain)
                     {
                         if (carteJouer.Equals(carteJoueur.NomCarte()))
                         {
                             joueurs[0].SaMain.Remove(carteJoueur);
                             break;
                         }
                     }
                 }
             }
             RotatePlayersCounterClockwise();
         }
     }
 }
    // Use this for initialization
    void Start()
    {
        maxGeneration = 0;

        _Player = GameObject.FindGameObjectWithTag ("Player");
        playerScript = _Player.GetComponent<Joueur> ();
        GameManager = GameObject.FindGameObjectWithTag ("Manager");
        Grid = GameManager.GetComponent<GridManager> ();
        RoomLists = GameManager.GetComponent<RoomManager> ();
        fill = GameManager.GetComponent<FillRoom> ();

        GameObject NewRoom = Instantiate (_StartRoom) as GameObject;

        Grid._Dungeon [11, 11] = NewRoom;

        Room RoomProperties = NewRoom.GetComponent<Room> ();
        RoomProperties.Xpos = 11;
        RoomProperties.Ypos = 11;

        NewRooms.Add (NewRoom);

        for (int f = 0; f < 7; f++) {

            ShuffleList ();
            Generation ();
            maxGeneration++;
        }

        fill.Fill ();
    }