Ejemplo n.º 1
0
        private void Gestion_Coup_Jouer(PlayClass.Couleurs _tour_de_jouer)
        {
            _coup_jouer = true;

            CaseClass.Type_Case caca;
            if (_tour_de_jouer == PlayClass.Couleurs.Green)
            {
                caca = CaseClass.Type_Case.Green;
            }
            else
            {
                caca = CaseClass.Type_Case.Red;
            }

            if (_type_coup_jouer == CaseClass.Surbrillance_Type.Evolution)
            {
                array_case_class [_coup_jouer_index]._type_case  = caca;
                array_case_class [_coup_jouer_index]._type_annim = CaseClass.Type_Annimation.On;
            }
            else if (_type_coup_jouer == CaseClass.Surbrillance_Type.Saut)
            {
                array_case_class [_origin_saut_coup_jouer]._type_annim = CaseClass.Type_Annimation.Off;
                array_case_class [_coup_jouer_index]._type_case        = caca;
                array_case_class [_coup_jouer_index]._type_annim       = CaseClass.Type_Annimation.On;
            }

            _test_contamination_needed = true;
            _coup_jouer_annimation     = true;
        }
Ejemplo n.º 2
0
 public AnnimationClass(GameScreen screen, PlayClass.Couleurs couleur_joueur, Vector2 position_gauche, Vector2 position_droite)
 {
     _screen          = screen;
     _couleur_joueur  = couleur_joueur;
     _position_droite = position_droite;
     _position_gauche = position_gauche;
     LoadContent();
 }
Ejemplo n.º 3
0
 public Plateau_Intro(GameScreen screen, int height_debut)
 {
     _height_debut   = height_debut;
     _screen         = screen;
     _couleur_joueur = PlayClass.Couleurs.Red;
     _multi          = false;
     LoadContent();
 }
Ejemplo n.º 4
0
 public PlateauClass(GameScreen screen, int height_debut, PlayClass.Couleurs couleur_joueur, string side)
 {
     _height_debut   = height_debut;
     _screen         = screen;
     _couleur_joueur = couleur_joueur;
     _multi          = false;
     _side           = side;
     LoadContent();
 }
Ejemplo n.º 5
0
 public PlateauClass(GameScreen screen, int height_debut, PlayClass.Couleurs couleur_joueur, bool is_joueur_1, string side, string plateau)
 {
     _height_debut   = height_debut;
     _screen         = screen;
     _couleur_joueur = couleur_joueur;
     _multi          = true;
     _side           = side;
     _plateau_debut  = plateau;
     _is_joueur_1    = is_joueur_1;
     LoadContent();
 }
Ejemplo n.º 6
0
        public void Update_Annimation(float timer, PlayClass.Couleurs _tour_de_jouer)
        {
            if (_coup_jouer_annimation)
            {
                foreach (CaseClass caca in array_case_class)
                {
                    if (caca._type_annim == CaseClass.Type_Annimation.On)
                    {
                        caca._scale_annimation = caca._timer_annimation._timer / caca._timer_annimation._timer_max;
                        if (caca._timer_annimation.IncreaseTimer(timer))
                        {
                            caca._scale_annimation = 1;
                            caca._type_annim       = CaseClass.Type_Annimation.None;
                        }
                    }
                    else if (caca._type_annim == CaseClass.Type_Annimation.Off)
                    {
                        caca._scale_annimation = 1 - caca._timer_annimation._timer / caca._timer_annimation._timer_max;
                        if (caca._timer_annimation.IncreaseTimer(timer))
                        {
                            caca._scale_annimation = 0;
                            caca._type_annim       = CaseClass.Type_Annimation.None;
                            caca._type_case        = CaseClass.Type_Case.Vide;
                        }
                    }
                    else if (caca._type_annim == CaseClass.Type_Annimation.Both)
                    {
                        float half = caca._timer_annimation._timer_max / 2;

                        if (caca._timer_annimation._timer < half)
                        {
                            caca._scale_annimation = 1 - caca._timer_annimation._timer / half;
                        }
                        else
                        {
                            caca._half_done_annimation_both = true;
                            caca._scale_annimation          = (caca._timer_annimation._timer - half) / half;
                        }

                        if (caca._timer_annimation.IncreaseTimer(timer))
                        {
                            caca._scale_annimation          = 1;
                            caca._half_done_annimation_both = false;
                            caca._type_annim = CaseClass.Type_Annimation.None;
                        }
                    }
                }
            }


            if (_coup_jouer && Fin_Tour_Annimation(array_case_class))
            {
                if (_test_contamination_needed && !_multi)
                {
                    _coup_jouer_annimation = true;
                    Contamination(_coup_jouer_index);
                    _test_contamination_needed = false;
                }
                else if (_test_contamination_needed && _multi)
                {
                    _coup_jouer_annimation = true;
                    Contamination_multi(index_conta, _code_plateau_coup_jouer);
                    _test_contamination_needed = false;
                }
                else
                {
                    _coup_jouer                = false;
                    _coup_jouer_annimation     = false;
                    _test_contamination_needed = false;
                    _coup_jouer_index          = -1;
                    _origin_saut_coup_jouer    = -1;
                    _type_coup_jouer           = CaseClass.Surbrillance_Type.Rien;
                    _tour_changement           = true;
                    if (_multi)
                    {
                        _code_plateau_coup_jouer = "";
                    }
                }
            }
        }
Ejemplo n.º 7
0
        private void LoadContent()
        {
            //PLATEAU DIMENSION
            array_case_class = new CaseClass[NOMBRE_PLATEAU_LARGEUR * NOMBRE_PLATEAU_LARGEUR];
            LARGEUR_PLATEAU  = (int)(_screen.ScreenManager.GraphicsDevice.Viewport.Width * 0.9);

            _taille_bordure = Taille_Bordure();
            int Largueur_Case = Taille_Case();


            //INITIALISATION TEXTURE
            plateau_fond = RoundedRectangle_Class.Texture_Rounded_Rectangle(_screen.ScreenManager.GraphicsDevice, LARGEUR_PLATEAU, LARGEUR_PLATEAU, color_fond, (int)(LARGEUR_PLATEAU * 0.005), (int)(LARGEUR_PLATEAU * 0.03));
            case_vide    = RoundedRectangle_Class.Texture_Rounded_Rectangle(_screen.ScreenManager.GraphicsDevice, Largueur_Case, Largueur_Case, color_case_vide, (int)(LARGEUR_PLATEAU * 0.005), (int)(LARGEUR_PLATEAU * 0.03));
            case_verte   = RoundedRectangle_Class.Texture_Rounded_Rectangle(_screen.ScreenManager.GraphicsDevice, Largueur_Case, Largueur_Case, color_green, (int)(LARGEUR_PLATEAU * 0.005), (int)(LARGEUR_PLATEAU * 0.03));
            case_rouge   = RoundedRectangle_Class.Texture_Rounded_Rectangle(_screen.ScreenManager.GraphicsDevice, Largueur_Case, Largueur_Case, color_red, (int)(LARGEUR_PLATEAU * 0.005), (int)(LARGEUR_PLATEAU * 0.03));

            //INITIALISATION TEXTURE SURBRILLANCE SAUT

            case_surbrillance_vert  = RoundedRectangle_Class.Texture_Rounded_Rectangle_Saut_Cercle(_screen.ScreenManager.GraphicsDevice, Largueur_Case, Largueur_Case, color_green, color_case_vide, (int)(LARGEUR_PLATEAU * 0.005), (int)(LARGEUR_PLATEAU * 0.03));
            case_surbrillance_rouge = RoundedRectangle_Class.Texture_Rounded_Rectangle_Saut_Cercle(_screen.ScreenManager.GraphicsDevice, Largueur_Case, Largueur_Case, color_red, color_case_vide, (int)(LARGEUR_PLATEAU * 0.005), (int)(LARGEUR_PLATEAU * 0.03));

            position_plateau = new Vector2((float)(_screen.ScreenManager.GraphicsDevice.Viewport.Width * 0.05), _height_debut);

            if (!_multi)
            {
                _plateau_debut = Return_Type_Plateau();
            }

            // SET COLOR JOUEUR
            if (_couleur_joueur == PlayClass.Couleurs.Green)
            {
                _case_joueur        = CaseClass.Type_Case.Green;
                _case_adversaire    = CaseClass.Type_Case.Red;
                _couleur_adversaire = PlayClass.Couleurs.Red;
            }
            else
            {
                _case_joueur        = CaseClass.Type_Case.Red;
                _case_adversaire    = CaseClass.Type_Case.Green;
                _couleur_adversaire = PlayClass.Couleurs.Green;
            }

            //INITIALISATION ARRAY
            if (!_multi)
            {
                _type_plateau = new char[NOMBRE_PLATEAU_LARGEUR * NOMBRE_PLATEAU_LARGEUR];
                for (int i = 0; i < array_case_class.Length; i++)
                {
                    _type_plateau [i] = _plateau_debut [i];
                    CaseClass.Type_Case type_case = CaseClass.Type_Case.Vide;

                    switch (_type_plateau [i])
                    {
                    case '0':
                        type_case = CaseClass.Type_Case.Vide;
                        break;

                    case '1':
                        type_case = CaseClass.Type_Case.Obstacle;
                        break;

                    case '3':
                        type_case = CaseClass.Type_Case.Red;
                        break;

                    case '4':
                        type_case = CaseClass.Type_Case.Green;
                        break;

                    default:
                        type_case = CaseClass.Type_Case.Vide;
                        break;
                    }
                    array_case_class [i] = new CaseClass(_screen, type_case, Position_Par_Index(i, NOMBRE_PLATEAU_LARGEUR));
                    if (array_case_class [i]._type_case == CaseClass.Type_Case.Green || array_case_class [i]._type_case == CaseClass.Type_Case.Red)
                    {
                        array_case_class [i]._scale_annimation = 1;
                    }
                }
            }
            else
            {
                _type_plateau = new char[NOMBRE_PLATEAU_LARGEUR * NOMBRE_PLATEAU_LARGEUR];
                for (int i = 0; i < array_case_class.Length; i++)
                {
                    _type_plateau [i] = _plateau_debut [i];
                    CaseClass.Type_Case type_case = CaseClass.Type_Case.Vide;

                    switch (_type_plateau [i])
                    {
                    case '0':
                        type_case = CaseClass.Type_Case.Vide;
                        break;

                    case '1':
                        type_case = CaseClass.Type_Case.Obstacle;
                        break;

                    case '3':
                        if (_is_joueur_1)
                        {
                            type_case = _case_joueur;
                        }
                        else
                        {
                            type_case = _case_adversaire;
                        }
                        break;

                    case '4':
                        if (_is_joueur_1)
                        {
                            type_case = _case_adversaire;
                        }
                        else
                        {
                            type_case = _case_joueur;
                        }
                        break;

                    default:
                        type_case = CaseClass.Type_Case.Vide;
                        break;
                    }
                    array_case_class [i] = new CaseClass(_screen, type_case, Position_Par_Index(i, NOMBRE_PLATEAU_LARGEUR));
                    if (array_case_class [i]._type_case == CaseClass.Type_Case.Green || array_case_class [i]._type_case == CaseClass.Type_Case.Red)
                    {
                        array_case_class [i]._scale_annimation = 1;
                    }
                }
            }
        }