Beispiel #1
0
        private void ExecuterRecyclage()
        {
            List <Carte> lstRecyclageUtiliser;
            List <Carte> lstMainUtiliser;
            Carte        aRecycler = null;

            if (joueurActifEst1)
            {
                lstRecyclageUtiliser = LstUsineRecyclageJ1;
                lstMainUtiliser      = LstMainJ1;
            }
            else
            {
                lstRecyclageUtiliser = LstUsineRecyclageJ2;
                lstMainUtiliser      = LstMainJ2;
            }
            if (AExecuter.getCible() == 1)
            {
                foreach (Carte uneCarte in lstRecyclageUtiliser)
                {
                    if (uneCarte is Unite)
                    {
                        aRecycler = uneCarte;
                    }
                }
            }
            else if (AExecuter.getCible() == 2)
            {
                foreach (Carte uneCarte in lstRecyclageUtiliser)
                {
                    if (uneCarte is Gadget && (uneCarte.EffetCarte.Type != "recyclage" || uneCarte.EffetCarte.getCible() != 2))
                    {
                        aRecycler = uneCarte;
                    }
                }
            }
            else // c'est 3
            {
                foreach (Carte uneCarte in lstRecyclageUtiliser)
                {
                    if (uneCarte is Batiment)
                    {
                        aRecycler = uneCarte;
                    }
                }
            }
            lstRecyclageUtiliser.Remove(aRecycler);
            lstMainUtiliser.Add(aRecycler);
        }
Beispiel #2
0
        private void ExecuterImpact()
        {
            Joueur              Attaquant, Defenseur;
            ChampConstructions  ConstructionAttaquant, ConstructionDefenseur;
            ChampBatailleUnites BatailleAttaquant, BatailleDefenseur;

            if (JoueurActifEst1)
            {
                Attaquant             = Joueur1;
                Defenseur             = Joueur2;
                ConstructionAttaquant = ChampConstructionsJ1;
                ConstructionDefenseur = ChampConstructionsJ2;
                BatailleAttaquant     = ChampBatailleUnitesJ1;
                BatailleDefenseur     = ChampBatailleUnitesJ2;
            }
            else
            {
                Attaquant             = Joueur2;
                Defenseur             = Joueur1;
                ConstructionAttaquant = ChampConstructionsJ2;
                ConstructionDefenseur = ChampConstructionsJ1;
                BatailleAttaquant     = ChampBatailleUnitesJ2;
                BatailleDefenseur     = ChampBatailleUnitesJ1;
            }
            if (AExecuter.getCible() == 10 || AExecuter.getCible() == 9 || AExecuter.getCible() == 0 || AExecuter.getCible() == 1 || AExecuter.getCible() == 12 || AExecuter.getCible() == 13 || AExecuter.getCible() == 18 || AExecuter.getCible() == 19)
            {
                Defenseur.PointDeBlindage -= AExecuter.getValeur();
            }
            if (AExecuter.getCible() == 11 || AExecuter.getCible() == 9 || AExecuter.getCible() == 0 || AExecuter.getCible() == 2 || AExecuter.getCible() == 12 || AExecuter.getCible() == 14 || AExecuter.getCible() == 18 || AExecuter.getCible() == 20)
            {
                Attaquant.PointDeBlindage -= AExecuter.getValeur();
            }
            if (AExecuter.getCible() == 0 || AExecuter.getCible() == 1 || AExecuter.getCible() == 3 || AExecuter.getCible() == 4 || AExecuter.getCible() == 15 || AExecuter.getCible() == 16 || AExecuter.getCible() == 18 || AExecuter.getCible() == 19)
            {
                // TODO: Changer .Defense
                if (ConstructionDefenseur.Champ1 != null)
                {
                    ConstructionDefenseur.Champ1.Defense -= AExecuter.getValeur();
                }
                if (ConstructionDefenseur.Champ2 != null)
                {
                    ConstructionDefenseur.Champ2.Defense -= AExecuter.getValeur();
                }
                if (ConstructionDefenseur.Champ3 != null)
                {
                    ConstructionDefenseur.Champ3.Defense -= AExecuter.getValeur();
                }
                if (ConstructionDefenseur.Champ4 != null)
                {
                    ConstructionDefenseur.Champ4.Defense -= AExecuter.getValeur();
                }
            }
            if (AExecuter.getCible() == 0 || AExecuter.getCible() == 2 || AExecuter.getCible() == 3 || AExecuter.getCible() == 5 || AExecuter.getCible() == 15 || AExecuter.getCible() == 17 || AExecuter.getCible() == 18 || AExecuter.getCible() == 20)
            {
                // TODO: Changer Defense
                if (ConstructionAttaquant.Champ1 != null)
                {
                    ConstructionAttaquant.Champ1.Defense -= AExecuter.getValeur();
                }
                if (ConstructionAttaquant.Champ2 != null)
                {
                    ConstructionAttaquant.Champ2.Defense -= AExecuter.getValeur();
                }
                if (ConstructionAttaquant.Champ3 != null)
                {
                    ConstructionAttaquant.Champ3.Defense -= AExecuter.getValeur();
                }
                if (ConstructionAttaquant.Champ4 != null)
                {
                    ConstructionAttaquant.Champ4.Defense -= AExecuter.getValeur();
                }
            }
            if (AExecuter.getCible() == 0 || AExecuter.getCible() == 1 || AExecuter.getCible() == 6 || AExecuter.getCible() == 7 || AExecuter.getCible() == 12 || AExecuter.getCible() == 13 || AExecuter.getCible() == 15 || AExecuter.getCible() == 16)
            {
                if (BatailleDefenseur.Champ1 != null)
                {
                    if (BatailleDefenseur.Champ1.EffetCarte == null || (BatailleDefenseur.Champ1.EffetCarte != null && BatailleDefenseur.Champ1.EffetCarte.Type != "indestructible"))
                    {
                        BatailleDefenseur.VieChamp1 -= AExecuter.getValeur();
                    }
                }
                if (BatailleDefenseur.Champ2 != null)
                {
                    if (BatailleDefenseur.Champ2.EffetCarte == null || (BatailleDefenseur.Champ2.EffetCarte != null && BatailleDefenseur.Champ2.EffetCarte.Type != "indestructible"))
                    {
                        BatailleDefenseur.VieChamp2 -= AExecuter.getValeur();
                    }
                }
                if (BatailleDefenseur.Champ3 != null)
                {
                    if (BatailleDefenseur.Champ3.EffetCarte == null || (BatailleDefenseur.Champ3.EffetCarte != null && BatailleDefenseur.Champ3.EffetCarte.Type != "indestructible"))
                    {
                        BatailleDefenseur.VieChamp3 -= AExecuter.getValeur();
                    }
                }
            }
            if (AExecuter.getCible() == 0 || AExecuter.getCible() == 2 || AExecuter.getCible() == 6 || AExecuter.getCible() == 8 || AExecuter.getCible() == 12 || AExecuter.getCible() == 14 || AExecuter.getCible() == 15 || AExecuter.getCible() == 17)
            {
                if (BatailleAttaquant.Champ1 != null)
                {
                    if (BatailleAttaquant.Champ1.EffetCarte == null || (BatailleAttaquant.Champ1.EffetCarte != null && BatailleAttaquant.Champ1.EffetCarte.Type != "indestructible"))
                    {
                        BatailleAttaquant.VieChamp1 -= AExecuter.getValeur();
                    }
                }
                if (BatailleAttaquant.Champ2 != null)
                {
                    if (BatailleAttaquant.Champ2.EffetCarte == null || (BatailleAttaquant.Champ2.EffetCarte != null && BatailleAttaquant.Champ2.EffetCarte.Type != "indestructible"))
                    {
                        BatailleAttaquant.VieChamp2 -= AExecuter.getValeur();
                    }
                }
                if (BatailleAttaquant.Champ3 != null)
                {
                    if (BatailleAttaquant.Champ3.EffetCarte == null || (BatailleAttaquant.Champ3.EffetCarte != null && BatailleAttaquant.Champ3.EffetCarte.Type != "indestructible"))
                    {
                        BatailleAttaquant.VieChamp3 -= AExecuter.getValeur();
                    }
                }
            }
            DetruireBatiment();
            DetruireUnite();
            FinDePartie();
        }
Beispiel #3
0
        private void ExecuterEffet()
        {
            if (AExecuter.Type == "impact")
            {
                // Si pas le nombre de cible n'est pas important, donc frappe tous ce qu'il y a dans cible.
                if (AExecuter.getCible() == 10 || AExecuter.getCible() == 11 || AExecuter.getNbCible() == 0)
                {
                    ExecuterImpact();
                }
                else if (joueurActifEst1)
                {
                    if (ChoixEffetPossible(AExecuter) >= AExecuter.getNbCible())
                    {
                        // Lancer un evenement pour que parti le catch.
                        ChoisirCibleEventArgs p  = new ChoisirCibleEventArgs(AExecuter.getCible(), AExecuter.getNbCible());
                        TrousseGlobale        TG = new TrousseGlobale();
                        TG.OnChoisirCible(p);
                    }
                    else if (ChoixEffetPossible(AExecuter) < AExecuter.getNbCible() && ChoixEffetPossible(AExecuter) > 0)
                    {
                        // Lancer un evenement pour que parti le catch.
                        ChoisirCibleEventArgs p  = new ChoisirCibleEventArgs(AExecuter.getCible(), ChoixEffetPossible(AExecuter));
                        TrousseGlobale        TG = new TrousseGlobale();
                        TG.OnChoisirCible(p);
                    }
                }
            }
            if (AExecuter.Type == "gain")
            {
                ExecuterGain();
            }
            if (AExecuter.Type == "recyclage")
            {
                ExecuterRecyclage();
            }

            /*
             *  Cible
             *  0	Tout le monde
             *  1	Tout les enemies
             *  2	Tout les allié
             *  3	Tout les bâtiments
             *  4	Bâtiments Enemies
             *  5	Bâtiments Allié
             *  6	Tout les Unités
             *  7	Unités Enemies
             *  8	Unités Allié
             *  9	Tout les Hero
             *  10	Hero Enemies
             *  11	Hero Allié
             *  12	Tout les Unités/Hero
             *  13	Unités/Hero Enemies
             *  14	Unités/Hero Allié
             *  15	Tout les Unités/Bâtiments
             *  16	Unités/Bâtiments Enemies
             *  17	Unités/Bâtiments Allié
             *  18	Tout les bâtiments/hero
             *  19	Bâtiments/Hero Enemies
             *  20	Bâtiments/Hero Allié
             *
             *  Valeur
             *  0	Destroy
             *  1 à 60	Quantité de dégats
             *
             *  NbCible
             *  0	Tout le monde
             *  1-2-3-4-etc...	La quantité exacte.
             *
             */
        }