Example #1
0
        /// <summary>
        /// Changer la puissance d'un element
        /// <obsolet>Cette méthode est obsolète. </obsolet>
        /// </summary>
        /// <param name="_element"></param>
        /// <param name="_intToAdd"></param>
        void ChangeEffetPuissance(Entite.Element _element, int _intToAdd)
        {
            /*
             * Changer la puissance de toutes les cartes d'un certain élément.
             * A AJOUTER DANS GERER ACTIONS.
             */
            // La puissance de toutes les entités air sur le champ de bataille augmente de intEffet.
            List <GameObject> carteElement = FindAllEntiteChampBatailleElement(_element);

            Debug.Log("Changer effet puissance" + carteElement.Count.ToString());
            for (int i = 0; i < carteElement.Count; ++i)
            {
                Debug.Log("Une carte affectée");
                Entite _carte = carteElement[i].GetComponent <Entite>();
                if (_carte.isFromLocalPlayer)
                {
                    // on peut directement changer la STAT depuis la carte.
                    _carte.CmdAddStat(_intToAdd, 0);
                }
                else
                {
                    FindLocalPlayer().GetComponent <Player>().CmdEnvoiMethodToServerCarteWithIntParameter(_carte.IDCardGame,
                                                                                                          "CmdAddStat", _intToAdd, FindLocalPlayer().GetComponent <Player>().PlayerID);
                }
            }
        }
Example #2
0
        /*  ======================================================================================================
         *
         *											METHODES ANNEXES
         *
         *	======================================================================================================
         */

        /// <summary>
        /// Transforme un string en un enum Entite.Element.
        /// </summary>
        /// <param name="ElementString">Le string de la base de données.</param>
        /// <returns>Un Element de Entite.Element</returns>
        public static Entite.Element stringToElement(string ElementString)
        {
            /*
             * Transformer le string récupéré en un carte.Element.
             *
             */

            Entite.Element _element = Entite.Element.NONE;
            switch (ElementString)
            {
            case "FEU":
                _element = Entite.Element.FEU;
                break;

            case "AIR":
                _element = Entite.Element.AIR;
                break;

            case "TERRE":
                _element = Entite.Element.TERRE;
                break;

            case "EAU":
                _element = Entite.Element.EAU;
                break;

            default:
                // Si la carte est neutre, astrale ou maléfique.
                _element = Entite.Element.NONE;
                break;
            }

            return(_element);
        }
        /// <summary>
        /// Filtrer les entités par type d'élémentaires.
        /// </summary>
        /// <param name="filtre"></param>
        public void FiltreElementaire(string filtre)
        {
            // Dans le cas du filtre d'une entité élementaire
            if (filtre == "TERRE" || filtre == "EAU" || filtre == "FEU" || filtre == "AIR")
            {
                Entite.Element elementFiltre = Entite.Element.NONE;
                switch (filtre)
                {
                case "TERRE":
                    elementFiltre = Entite.Element.TERRE;
                    break;

                case "FEU":
                    elementFiltre = Entite.Element.FEU;
                    break;

                case "EAU":
                    elementFiltre = Entite.Element.EAU;
                    break;

                case "AIR":
                    elementFiltre = Entite.Element.AIR;
                    break;

                default:
                    Debug.LogError("Ce cas ne peut pas arriver");
                    break;
                }
                ResetFiltres();
                filtreElementaire = elementFiltre;
                PutCardsInScrollView("allCards", CartesCorrespondantesElement(elementFiltre), true);
            }
            else if (filtre == "ASTRAL" || filtre == "MALEFIQUE")
            {
                Entite.Ascendance ascendanceFiltre = Entite.Ascendance.NONE;
                if (filtre == "ASTRAL")
                {
                    ascendanceFiltre = Entite.Ascendance.ASTRALE;
                }
                else
                {
                    ascendanceFiltre = Entite.Ascendance.MALEFIQUE;
                }
                ResetFiltres();
                filtreAscendance = ascendanceFiltre;
                PutCardsInScrollView("allCards", CartesCorrespondantesAscendance(ascendanceFiltre), true);
            }
            else
            {
                throw new Exception("Ce filtre n'existe pas");
            }

            ListeFiltreElementaires.SetActive(false);
            tri = Tri.NONE;
        }
        /// <summary>
        /// Récupérer toutes les cartes d'un élément donné
        /// </summary>
        /// <param name="element"></param>
        /// <returns></returns>
        public List <GameObject> CartesCorrespondantesElement(Entite.Element element)
        {
            Dictionary <string, List <GameObject> > uniqueCards = getUniqueCards();
            List <GameObject> entites     = CartesCorrespondantesType(CarteType.Type.ENTITE);
            List <GameObject> elementList = new List <GameObject>();

            foreach (GameObject g in entites)
            {
                if (g.GetComponent <Entite>().EntiteElement == element)
                {
                    elementList.Add(g);
                }
            }
            return(elementList);
        }
Example #5
0
        /// <summary>
        /// Cette méthode est TEMPORAIRE.
        /// Elle permet juste d'ajouter une touche de visuel.
        /// </summary>
        /// <param name="element"></param>
        /// <param name="ascendance"></param>
        /// <returns></returns>
        public Color GetCouleurCarte()
        {
            // Si c'est une entité.
            if (GetComponent <Carte>().IsEntite())
            {
                Entite.Element    element    = GetComponent <Entite>().EntiteElement;
                Entite.Ascendance ascendance = GetComponent <Entite>().EntiteAscendance;
                Entite.Nature     nature     = GetComponent <Entite>().EntiteNature;

                switch (element)
                {
                case Entite.Element.AIR:
                    // On retourne une teinte verte
                    return(new Color(0, 1, 0));

                case Entite.Element.EAU:
                    return(new Color(0, 0, 1));

                case Entite.Element.FEU:
                    return(new Color(1, 0, 0));

                case Entite.Element.TERRE:
                    return(new Color(1, 190f / 255f, 73f / 255f));

                case Entite.Element.NONE:
                    // On ne met pas de couleur ici
                    break;
                }

                switch (ascendance)
                {
                case Entite.Ascendance.ASTRALE:
                    return(Color.white);

                case Entite.Ascendance.MALEFIQUE:
                    // Couleur grise.
                    return(new Color(0.5f, 0, 1f));

                case Entite.Ascendance.NONE:
                    // On ne met aps de couleur ici.
                    break;
                }

                if (nature == Entite.Nature.NEUTRE)
                {
                    return(new Color(0.4f, 0.4f, 0.4f));
                }
            }
            // Si c'est un sort.
            else if (GetComponent <Carte>().IsSort())
            {
                return(Color.white);
            }
            // Si c'est une assistance.
            else if (GetComponent <Carte>().IsAssistance())
            {
                return(Color.white);
            }

            Debug.LogError("On ne devrait pas arriver ici normalement. ");
            return(Color.white);
        }
 public void ResetFiltres()
 {
     filtreAscendance  = Entite.Ascendance.NONE;
     filtreElementaire = Entite.Element.NONE;
     filtreType        = CarteType.Type.AUCUN;
 }