Пример #1
0
        public void action_hero(PhysicsEngine map_physique, List <IA> liste_ia, List <DestructibleItems> liste_barrel)
        {
            Rectangle rectangle_ = rectangle();

            foreach (DestructibleItems barrel in liste_barrel)
            {
                if (barrel.Aire_barrel.Intersects(rectangle_) && barrel.type == "barrel")
                {
                    this.actionjoueur = "";
                }
            }

            this.maj_direction(this.actionjoueur);
            if (this.actionjoueur == "up" || this.actionjoueur == "down" || this.actionjoueur == "left" || this.actionjoueur == "right")
            {
                if (this.actionjoueur == "up")
                {
                    if (!(map_physique.mur(this.futur_position_X_gauche(), this.futur_position_Y_haut())) &&
                        !(map_physique.mur(this.futur_position_X_droite(), this.futur_position_Y_haut())) && this.collision_entite_hero(liste_ia))
                    {
                        this.mise_a_jour(this.actionjoueur);
                    }
                    this.actionjoueur = "";
                }

                if (this.actionjoueur == "down")
                {
                    if (!(map_physique.mur(this.futur_position_X_gauche(), this.futur_position_Y_bas())) &&
                        !(map_physique.mur(this.futur_position_X_droite(), this.futur_position_Y_bas())) && this.collision_entite_hero(liste_ia))
                    {
                        this.mise_a_jour(this.actionjoueur);
                    }
                    this.actionjoueur = "";
                }

                if (this.actionjoueur == "left")
                {
                    if (!(map_physique.mur(this.futur_position_X_gauche(), this.futur_position_Y_haut())) &&
                        !(map_physique.mur(this.futur_position_X_gauche(), this.futur_position_Y_bas())) && this.collision_entite_hero(liste_ia))
                    {
                        this.mise_a_jour(this.actionjoueur);
                    }
                    this.actionjoueur = "";
                }

                if (this.actionjoueur == "right")
                {
                    if (!(map_physique.mur(this.futur_position_X_droite(), this.futur_position_Y_haut())) &&
                        !(map_physique.mur(this.futur_position_X_droite(), this.futur_position_Y_bas())) && this.collision_entite_hero(liste_ia))
                    {
                        this.mise_a_jour(this.actionjoueur);
                    }
                    this.actionjoueur = "";
                }
            }
            this.actionjoueur = ""; //"Remet à zéros" les actions du joueurs
        }
Пример #2
0
        public void action_hero(PhysicsEngine map_physique, List<IA> liste_ia, List<DestructibleItems> liste_barrel)
        {
            Rectangle rectangle_ = rectangle();
            foreach (DestructibleItems barrel in liste_barrel)
            {
                if (barrel.Aire_barrel.Intersects(rectangle_) && barrel.type == "barrel")
                {
                    this.actionjoueur = "";
                }
            }

            this.maj_direction(this.actionjoueur);
            if (this.actionjoueur == "up" || this.actionjoueur == "down" || this.actionjoueur == "left" || this.actionjoueur == "right")
            {
                if (this.actionjoueur == "up")
                {
                    if (!(map_physique.mur(this.futur_position_X_gauche(), this.futur_position_Y_haut()))
                     && !(map_physique.mur(this.futur_position_X_droite(), this.futur_position_Y_haut())) && this.collision_entite_hero(liste_ia))
                        this.mise_a_jour(this.actionjoueur);
                    this.actionjoueur = "";
                }

                if (this.actionjoueur == "down")
                {
                    if (!(map_physique.mur(this.futur_position_X_gauche(), this.futur_position_Y_bas()))
                     && !(map_physique.mur(this.futur_position_X_droite(), this.futur_position_Y_bas())) && this.collision_entite_hero(liste_ia))
                        this.mise_a_jour(this.actionjoueur);
                    this.actionjoueur = "";
                }

                if (this.actionjoueur == "left")
                {
                    if (!(map_physique.mur(this.futur_position_X_gauche(), this.futur_position_Y_haut()))
                     && !(map_physique.mur(this.futur_position_X_gauche(), this.futur_position_Y_bas())) && this.collision_entite_hero(liste_ia))
                        this.mise_a_jour(this.actionjoueur);
                    this.actionjoueur = "";
                }

                if (this.actionjoueur == "right")
                {
                    if (!(map_physique.mur(this.futur_position_X_droite(), this.futur_position_Y_haut()))
                     && !(map_physique.mur(this.futur_position_X_droite(), this.futur_position_Y_bas())) && this.collision_entite_hero(liste_ia))
                        this.mise_a_jour(this.actionjoueur);
                    this.actionjoueur = "";
                }
            }
            this.actionjoueur = ""; //"Remet à zéros" les actions du joueurs
        }
Пример #3
0
        public void action_ia(IA ia, Player joueur, List <DestructibleItems> liste_barrel, PhysicsEngine map_physique, List <IA> liste_ia, List <Player> liste_joueur)
        {
            foreach (DestructibleItems barrel in liste_barrel)
            {
                if (barrel.Aire_barrel.Intersects(ia.rectangle()) && barrel.type == "barrel")
                {
                    ia.actionIA = "";
                }
            }

            if (ia.actionIA == "up" || ia.actionIA == "down" || ia.actionIA == "left" || ia.actionIA == "right")
            {
                if (!ia.ia_vol)
                {
                    if (ia.actionIA == "up")
                    {
                        if (!(map_physique.mur(ia.futur_position_X_gauche(), ia.futur_position_Y_haut())) &&
                            !(map_physique.mur(ia.futur_position_X_droite(), ia.futur_position_Y_haut())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                        {
                            ia.mise_a_jour(ia.actionIA);
                        }
                        else
                        {
                            ia.actionIA = "";
                        }
                    }

                    if (ia.actionIA == "down")
                    {
                        if (!(map_physique.mur(ia.futur_position_X_gauche(), ia.futur_position_Y_bas())) &&
                            !(map_physique.mur(ia.futur_position_X_droite(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                        {
                            ia.mise_a_jour(ia.actionIA);
                        }
                        else
                        {
                            ia.actionIA = "";
                        }
                    }

                    if (ia.actionIA == "left")
                    {
                        if (!(map_physique.mur(ia.futur_position_X_gauche(), ia.futur_position_Y_haut())) &&
                            !(map_physique.mur(ia.futur_position_X_gauche(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                        {
                            ia.mise_a_jour(ia.actionIA);
                        }
                        else
                        {
                            ia.actionIA = "";
                        }
                    }

                    if (ia.actionIA == "right")
                    {
                        if (!(map_physique.mur(ia.futur_position_X_droite(), ia.futur_position_Y_haut())) &&
                            !(map_physique.mur(ia.futur_position_X_droite(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                        {
                            ia.mise_a_jour(ia.actionIA);
                        }
                        else
                        {
                            ia.actionIA = "";
                        }
                    }
                }
                else
                {
                    if (ia.actionIA == "up")
                    {
                        if (!(map_physique.mur_projectile(ia.futur_position_X_gauche(), ia.futur_position_Y_haut())) &&
                            !(map_physique.mur_projectile(ia.futur_position_X_droite(), ia.futur_position_Y_haut())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                        {
                            ia.mise_a_jour(ia.actionIA);
                        }
                        else
                        {
                            ia.actionIA = "";
                        }
                    }

                    if (ia.actionIA == "down")
                    {
                        if (!(map_physique.mur_projectile(ia.futur_position_X_gauche(), ia.futur_position_Y_bas())) &&
                            !(map_physique.mur_projectile(ia.futur_position_X_droite(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                        {
                            ia.mise_a_jour(ia.actionIA);
                        }
                        else
                        {
                            ia.actionIA = "";
                        }
                    }

                    if (ia.actionIA == "left")
                    {
                        if (!(map_physique.mur_projectile(ia.futur_position_X_gauche(), ia.futur_position_Y_haut())) &&
                            !(map_physique.mur_projectile(ia.futur_position_X_gauche(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                        {
                            ia.mise_a_jour(ia.actionIA);
                        }
                        else
                        {
                            ia.actionIA = "";
                        }
                    }

                    if (ia.actionIA == "right")
                    {
                        if (!(map_physique.mur_projectile(ia.futur_position_X_droite(), ia.futur_position_Y_haut())) &&
                            !(map_physique.mur_projectile(ia.futur_position_X_droite(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                        {
                            ia.mise_a_jour(ia.actionIA);
                        }
                        else
                        {
                            ia.actionIA = "";
                        }
                    }
                }
            }

            ia.actionIA = ""; //"Remet à zéros" les actions de l'IA
        }
Пример #4
0
        public void action_ia(IA ia, Player joueur, List<DestructibleItems> liste_barrel, PhysicsEngine map_physique, List<IA> liste_ia, List<Player> liste_joueur)
        {
            foreach (DestructibleItems barrel in liste_barrel)
            {
                if (barrel.Aire_barrel.Intersects(ia.rectangle()) && barrel.type == "barrel")
                {
                    ia.actionIA = "";
                }
            }

            if (ia.actionIA == "up" || ia.actionIA == "down" || ia.actionIA == "left" || ia.actionIA == "right")
            {
                if (!ia.ia_vol)
                {
                    if (ia.actionIA == "up")
                    {
                        if (!(map_physique.mur(ia.futur_position_X_gauche(), ia.futur_position_Y_haut()))
                         && !(map_physique.mur(ia.futur_position_X_droite(), ia.futur_position_Y_haut())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                            ia.mise_a_jour(ia.actionIA);
                        else
                            ia.actionIA = "";
                    }

                    if (ia.actionIA == "down")
                    {
                        if (!(map_physique.mur(ia.futur_position_X_gauche(), ia.futur_position_Y_bas()))
                         && !(map_physique.mur(ia.futur_position_X_droite(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                            ia.mise_a_jour(ia.actionIA);
                        else
                            ia.actionIA = "";
                    }

                    if (ia.actionIA == "left")
                    {
                        if (!(map_physique.mur(ia.futur_position_X_gauche(), ia.futur_position_Y_haut()))
                         && !(map_physique.mur(ia.futur_position_X_gauche(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                            ia.mise_a_jour(ia.actionIA);
                        else
                            ia.actionIA = "";
                    }

                    if (ia.actionIA == "right")
                    {
                        if (!(map_physique.mur(ia.futur_position_X_droite(), ia.futur_position_Y_haut()))
                         && !(map_physique.mur(ia.futur_position_X_droite(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                            ia.mise_a_jour(ia.actionIA);
                        else
                            ia.actionIA = "";
                    }
                }
                else
                {
                    if (ia.actionIA == "up")
                    {
                        if (!(map_physique.mur_projectile(ia.futur_position_X_gauche(), ia.futur_position_Y_haut()))
                         && !(map_physique.mur_projectile(ia.futur_position_X_droite(), ia.futur_position_Y_haut())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                            ia.mise_a_jour(ia.actionIA);
                        else
                            ia.actionIA = "";
                    }

                    if (ia.actionIA == "down")
                    {
                        if (!(map_physique.mur_projectile(ia.futur_position_X_gauche(), ia.futur_position_Y_bas()))
                         && !(map_physique.mur_projectile(ia.futur_position_X_droite(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                            ia.mise_a_jour(ia.actionIA);
                        else
                            ia.actionIA = "";
                    }

                    if (ia.actionIA == "left")
                    {
                        if (!(map_physique.mur_projectile(ia.futur_position_X_gauche(), ia.futur_position_Y_haut()))
                         && !(map_physique.mur_projectile(ia.futur_position_X_gauche(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                            ia.mise_a_jour(ia.actionIA);
                        else
                            ia.actionIA = "";

                    }

                    if (ia.actionIA == "right")
                    {
                        if (!(map_physique.mur_projectile(ia.futur_position_X_droite(), ia.futur_position_Y_haut()))
                         && !(map_physique.mur_projectile(ia.futur_position_X_droite(), ia.futur_position_Y_bas())) && collision_entite_ia(ia, liste_ia, liste_joueur))
                            ia.mise_a_jour(ia.actionIA);
                        else
                            ia.actionIA = "";
                    }
                }
            }

            ia.actionIA = ""; //"Remet à zéros" les actions de l'IA
        }