public void Teleportation(Joueur joueur, Carte carte, GameWindow window, GestionTeleportation gestion_teleportation, EcranChargement ecran_chargement)
 {
     if (!gestion_teleportation.Transition_active && Coordonnees.Intersects(new Rectangle((int)joueur.centre_joueur.X - 20, (int)joueur.centre_joueur.Y - 20, 40, 70)))
     {
         gestion_teleportation.Transition_active = true;
         ecran_chargement.transition = true;
         carte.Chargement(Destination);
         joueur.Positionnement(xdestination, ydestination);
     }
 }
Beispiel #2
0
        public void Affichage(Carte carte, Joueur joueur, SpriteBatch spriteBatch, Environnement environnement, EcranChargement ecranChargement, GestionTeleportation gestion_transition, Histoire histoire, KeyboardState clavier)
        {
            if (ecranChargement.affichage_ecran)
            {
                for (int i = 0; i < carte.carte.Count; i++)
                {
                    for (int j = 0; j < carte.carte[i].Count; j++)
                    {
                        carte.AffichageCase(40 * j - x, 40 * i - y, spriteBatch, carte.carte[i][j], environnement, joueur, new Vector2(j * 40, i * 40));
                    }
                }
            }

            carte.gestion_objet.Draw(spriteBatch, x, y, environnement);
            carte.murs.AffichageCase_Mur(x, y, spriteBatch, joueur, new Color(environnement.ambient, environnement.ambient, environnement.ambient));
            carte.gestion_ennemis.Draw(spriteBatch, x, y, environnement);

            if (affichage_collision)
            {
                foreach (List<Rectangle> rect_ligne in carte.collision)
                {
                    foreach (Rectangle rect in rect_ligne)
                    {
                        spriteBatch.Draw(texture_collision, new Rectangle(rect.X - x, rect.Y - y, rect.Width, rect.Height), Color.White);
                    }
                }

                carte.gestionTeleportation.Draw(spriteBatch, x, y);

            }

            joueur.Draw(spriteBatch, environnement, 0, 0);

            carte.murs.AffichageMur_DevantJoueur(x, y, spriteBatch, joueur, new Color(environnement.ambient, environnement.ambient, environnement.ambient));

            histoire.Draw(spriteBatch, x, y, clavier);
        }
Beispiel #3
0
        protected override void Initialize()
        {
            graphics.ToggleFullScreen();

            #region Gestionnaire
                gameManager = new GameManager();
                carte = new Carte();
                gestionnaire_son = new Gestionnaire_son();
                environnement = new Environnement(Window);
            #endregion

            #region Interface
                lancement = new Lancement();
                menu = new Menu(Window);
                camera = new Camera(Window);
                curseur = new Curseur(Content.Load<Texture2D>("Curseur"));
                jauge = new Jauge();
                barreAction = new BarreAction(Window);
            #endregion

            bruitages = new Bruitages();
            joueur = new Joueur(Window, Joueur.Sexe.homme);
            gestion_transition = new GestionTeleportation();
            ecran_chargement = new EcranChargement(Window);
            joueur.inventaire = new Inventaire(Window);
            histoire = new Histoire(Window);
            intro = new IntroNouveauJeu(Window);
            base.Initialize();
            //Guide.ShowSignIn(1, false);
        }
        public void TestTeleportation(Carte map, Joueur joueur, GameWindow window, EcranChargement ecran_chargement, Gestionnaire_son gestion_son)
        {
            if (compteur_optimisation == 0)
            {
                if (liste_teleporteur.Count > 0)
                {
                    foreach (Teleporteur teleporteur in liste_teleporteur)
                    {
                        teleporteur.Teleportation(joueur, map, window, this, ecran_chargement, gestion_son);
                    }
                }
            }

            compteur_optimisation++;

            compteur_optimisation %= 40;
        }
Beispiel #5
0
 public void Update(KeyboardState clavier, Joueur joueur, GameWindow window, EcranChargement ecran_chargement)
 {
     gestionTeleportation.Desactivation_Transition(joueur);
     gestionTeleportation.TestTeleportation(this, joueur, window, ecran_chargement);
 }
Beispiel #6
0
        public void Update_Deplacement(KeyboardState clavier, Carte carte, EcranChargement ecran_chargement)
        {
            courseactive = clavier.IsKeyDown(Keys.LeftShift);

            #region Valeur de deplacement
            int deplacement;

            if (courseactive)
            {
                deplacement = 4;
            }

            else
            {
                deplacement = 2;
            }
            #endregion

            if (!ecran_chargement.transition)
            {
                if (!blocage_gauche && clavier.IsKeyDown(Keys.Q) && centre_joueur.X - 20 > 0)
                    centre_joueur.X -= deplacement;

                if (!blocage_droit && clavier.IsKeyDown(Keys.D) && centre_joueur.X + 20 < carte.largeur)
                    centre_joueur.X += deplacement;

                if (!blocage_haut && clavier.IsKeyDown(Keys.Z) && centre_joueur.Y - 50 > 0)
                    centre_joueur.Y -= deplacement;

                if (!blocage_bas && clavier.IsKeyDown(Keys.S) && centre_joueur.Y + 50 < carte.hauteur)
                    centre_joueur.Y += deplacement;
            }
        }
Beispiel #7
0
        public void Update(KeyboardState clavier, Carte carte, Camera camera, EcranChargement ecran_chargement)
        {
            rectangle = new Rectangle((int)(centre_joueur.X) - 20 - camera.x, (int)centre_joueur.Y - 50 - camera.y, 40, 100);
            rectangle_femme = new Rectangle(rectangle.X, rectangle.Y, rectangle.Width * 3 / 2, rectangle.Height);
            rectangle_femme_face = new Rectangle(rectangle.X, rectangle.Y, rectangle.Width * 28 / 20, rectangle.Height);

            collisionhaut   = new Rectangle((int)centre_joueur.X - 15, (int)centre_joueur.Y + 22, 30, 8);
            collisionbas    = new Rectangle((int)centre_joueur.X - 15, (int)centre_joueur.Y + 50, 30, 8);
            collisiongauche = new Rectangle((int)centre_joueur.X - 21, (int)centre_joueur.Y + 30, 6, 20);
            collisiondroite = new Rectangle((int)centre_joueur.X + 15, (int)centre_joueur.Y + 30, 8, 20);
            UpdateDirection(clavier);
            Update_Deplacement(clavier, carte, ecran_chargement);
        }
Beispiel #8
0
        public void Update_Deplacement(KeyboardState clavier, Carte carte, EcranChargement ecran_chargement, Menu menu)
        {
            courseactive = clavier.IsKeyDown(Keys.LeftShift);

            #region Valeur de deplacement
            int deplacement;

            if (courseactive)
            {
                deplacement = 4;
            }

            else
            {
                deplacement = 2;
            }
            #endregion

            if(menu.clavierType == Menu.ClavierType.AZERTY)
            {
                fleche_haut = clavier.IsKeyDown(Keys.Z);
                fleche_bas = clavier.IsKeyDown(Keys.S);
                fleche_gauche = clavier.IsKeyDown(Keys.Q);
                fleche_droite = clavier.IsKeyDown(Keys.D);
            }
            else
            {
                fleche_haut = clavier.IsKeyDown(Keys.W);
                fleche_bas = clavier.IsKeyDown(Keys.S);
                fleche_gauche = clavier.IsKeyDown(Keys.A);
                fleche_droite = clavier.IsKeyDown(Keys.D);
            }

            if (!ecran_chargement.transition)
            {
                if (!blocage_gauche && fleche_gauche && centre_joueur.X - 20 > 0)
                    centre_joueur.X -= deplacement;

                if (!blocage_droit && fleche_droite && centre_joueur.X + 20 < carte.largeur)
                    centre_joueur.X += deplacement;

                if (!blocage_haut && fleche_haut && centre_joueur.Y - 50 > 0)
                    centre_joueur.Y -= deplacement;

                if (!blocage_bas && fleche_bas && centre_joueur.Y + 50 < carte.hauteur)
                    centre_joueur.Y += deplacement;
            }
        }
Beispiel #9
0
        protected override void Initialize()
        {
            graphics.ToggleFullScreen();

            #region Gestionnaire
                gameManager = new GameManager();
                carte = new Carte();
                gestionnaire_son = new Gestionnaire_son();
                environnement = new Environnement(Window);
            #endregion

            #region Interface
                lancement = new Lancement();
                menu = new Menu(Window);
                camera = new Camera(Window);
                curseur = new Curseur(Content.Load<Texture2D>("Curseur"));
                jauge = new Jauge();
                barreAction = new BarreAction(Window);
            #endregion

            joueur = new Joueur(Window, Joueur.Sexe.homme);
            gestion_transition = new GestionTeleportation();
            ecran_chargement = new EcranChargement(Window);

            base.Initialize();
        }
Beispiel #10
0
 public void Update(KeyboardState clavier, Joueur joueur, GameWindow window, EcranChargement ecran_chargement, Gestionnaire_son gestion_son, BarreAction barre_action)
 {
     gestionTeleportation.Desactivation_Transition(joueur);
     gestionTeleportation.TestTeleportation(this, joueur, window, ecran_chargement, gestion_son);
     gestion_objet.RamasseObjet(joueur, barre_action);
 }