Exemple #1
0
        //-----------------------------------------------------------------------------
        public string RamasserObjets(ZoneAbstraite z, List <Quete> quetes)
        {
            string res = "Il n'y a rien ici.";

            if (z != null && z.objets != null && z.objets.Count != 0)
            {
                int cpt = 0;
                foreach (Objet o in z.objets)
                {
                    if (o.monType == monTypeObjet.ObjetDeQuete)
                    {
                        ObjetQuete obj = (ObjetQuete)o;
                        foreach (Quete q in quetes)
                        {
                            if (q.Type == TypeQuete.TrouverObjetUnique && q.Fini == false)
                            {
                                QueteObjet quete = (QueteObjet)q;
                                if (quete.ObjetATrouver == obj)
                                {
                                    Objets.Add(o);

                                    if (cpt == 0)
                                    {
                                        res = string.Format("{0} à ramassé : ", Nom) + " " + o.Nom;
                                    }
                                    else
                                    {
                                        res = res + ", " + o.Nom;
                                    }

                                    z.objets = null;
                                }
                            }
                        }
                    }
                    else
                    {
                        Objets.Add(o);

                        if (cpt == 0)
                        {
                            res = string.Format("{0} à ramassé : ", Nom) + " " + o.Nom;
                        }
                        else
                        {
                            res = res + ", " + o.Nom;
                        }

                        z.objets = null;
                    }
                    cpt++;
                }
            }

            return(res);
        }
 public override AccesAbstrait CreerAcces(ZoneAbstraite z1, ZoneAbstraite z2)
 {
     return new Acces((Zone)z1, (Zone)z2);
 }
 public AdjacentEtage(ZoneAbstraite z1, ZoneAbstraite z2)
     : base(z1, z2)
 {
 }
Exemple #4
0
 public void AjoutZone(ZoneAbstraite z)
 {
     zones.Add(z);
 }
Exemple #5
0
 public override AccesAbstrait CreerAcces(ZoneAbstraite z1, ZoneAbstraite z2)
 {
     return(new Acces((Zone)z1, (Zone)z2));
 }
 public abstract AccesAbstrait CreerAcces(ZoneAbstraite z1, ZoneAbstraite z2);
Exemple #7
0
 public override AccesAbstrait CreerAcces(ZoneAbstraite z1, ZoneAbstraite z2)
 {
     return(new AdjacentEtage((CaseEtage)z1, (CaseEtage)z2));
 }
 public AccesAbstrait(ZoneAbstraite z1, ZoneAbstraite z2)
 {
     this.z1 = z1;
     this.z2 = z2;
 }
 public MapZone(ZoneAbstraite zone)
 {
     this.zone    = zone;
     this.ToolTip = zone.point.X + " - " + zone.point.Y;
 }
 public abstract AccesAbstrait CreerAcces(ZoneAbstraite z1, ZoneAbstraite z2);
Exemple #11
0
 public MapZone(ZoneAbstraite zone)
 {
     this.zone = zone;
     this.ToolTip =zone.point.X +" - "+ zone.point.Y;
 }
        //-----------------------------------------------------------------------------
        public string RamasserObjets(ZoneAbstraite z, List<Quete> quetes)
        {
            string res = "Il n'y a rien ici.";
            if (z != null && z.objets != null && z.objets.Count != 0)
            {
                int cpt = 0;
                foreach (Objet o in z.objets)
                {
                    if (o.monType == monTypeObjet.ObjetDeQuete)
                    {
                       ObjetQuete obj = (ObjetQuete)o;
                       foreach(Quete q in quetes)
                       {
                           if (q.Type == TypeQuete.TrouverObjetUnique && q.Fini == false)
                           {
                                QueteObjet quete = (QueteObjet)q;
                                if (quete.ObjetATrouver == obj)
                                {
                                    Objets.Add(o);

                                    if (cpt == 0)
                                        res = string.Format("{0} à ramassé : ", Nom) + " " + o.Nom;
                                    else
                                        res = res + ", " + o.Nom;

                                    z.objets = null;
                                }
                            }
                       }
                    }
                    else
                    {
                        Objets.Add(o);

                        if (cpt == 0)
                            res = string.Format("{0} à ramassé : ", Nom) + " " + o.Nom;
                        else
                            res = res + ", " + o.Nom;

                        z.objets = null;
                    }
                    cpt++;
               }

            }

            return res;
        }
 public AccesAbstrait(ZoneAbstraite z1, ZoneAbstraite z2)
 {
     this.z1 = z1;
     this.z2 = z2;
 }
 public Adjacent(ZoneAbstraite z1, ZoneAbstraite z2)
     : base(z1, z2)
 {
 }
 public override AccesAbstrait CreerAcces(ZoneAbstraite z1, ZoneAbstraite z2)
 {
     return new Adjacent((Case)z1, (Case)z2);
 }
 public void AjoutZone(ZoneAbstraite z)
 {
     zones.Add(z);
 }
        public void UpdateMapLayout()
        {
            List <Personnage> mespersos = new List <Personnage>();

            mespersos.InsertRange(0, conf.EquipeRouge.Joueurs);
            mespersos.InsertRange(0, conf.EquipeVerte.Joueurs);

            List <Quete> mesquetes = new List <Quete>();

            mesquetes.InsertRange(0, conf.EquipeRouge.Quetes);
            mesquetes.InsertRange(0, conf.EquipeVerte.Quetes);

            ChessBoard.Children.Clear();
            for (int x = 0; x < Parametres.nbColonne; ++x)
            {
                for (int y = 0; y < Parametres.nbLigne; ++y)
                {
                    ZoneAbstraite zone = conf.Plateau.GetZone(new Position(x, y));
                    if (zone != null)
                    {
                        //List<ZoneAbstraite> meszones = conf.Plateau.GetNeighbourZones(zone.point);
                        ChessBoard.Children.Add(design.GetCaseImage(zone, mespersos, mesquetes));
                    }
                }
            }

            /***
             * Affichage des personnages
             ***/
            //this.personnages.ClearValue(TextBlock.TextProperty);

            personnages.Document.Blocks.Clear();

            String textEquipeRouge = conf.EquipeRouge.Nom + "\n";
            String textEquipeVerte = conf.EquipeVerte.Nom + "\n";

            foreach (Personnage p in mespersos)
            {
                if (p.equipe == TypeEquipe.Rouge)
                {
                    textEquipeRouge += p.Nom + " (" + p.PointsDeVie + "pv)";
                }
                else
                {
                    textEquipeVerte += p.Nom + " (" + p.PointsDeVie + "pv)";
                }
            }


            textEquipeRouge += "\n\n";
            textEquipeVerte += "\n\n";

            #region ajout des couleurs et du style de la fenêtre personnages

            TextRange styleEquipeRouge = new TextRange(personnages.Document.ContentEnd, personnages.Document.ContentEnd);
            styleEquipeRouge.Text = textEquipeRouge;
            styleEquipeRouge.ApplyPropertyValue(TextElement.ForegroundProperty, Brushes.Red);
            styleEquipeRouge.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold);


            TextRange styleEquipeVerte = new TextRange(personnages.Document.ContentEnd, personnages.Document.ContentEnd);
            styleEquipeVerte.Text = textEquipeVerte;
            styleEquipeVerte.ApplyPropertyValue(TextElement.ForegroundProperty, Brushes.Green);
            styleEquipeVerte.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold);

            #endregion

            /***
             * Fin affichage des personnages
             ***/
            this.Refresh();
            UpdateLayout();
        }