public void Update(Kirby Joueur)
        {
            RecPerso = new Rectangle(Joueur.recPerso.X, Joueur.recPerso.Y, Joueur.recPerso.Width, Joueur.recPerso.Height);

            if (RecPerso.isOnBottomOf(RecObj))
            {
                Joueur.position = new Vector2(Joueur.position.X, Joueur.position.Y + 2);
            }
            else if (RecPerso.isOnTopOf(RecObj))
            {
                Joueur.position = new Vector2(Joueur.position.X, Joueur.position.Y - 2);
            }
            else if (RecPerso.isOnRightOf(RecObj))
            {
                Joueur.position = new Vector2(Joueur.position.X + 2, Joueur.position.Y);
            }
            else if (RecPerso.isOnLeftOf(RecObj))
            {
                Joueur.position = new Vector2(Joueur.position.X - 2, Joueur.position.Y);
            }

            else if (RecPerso.Intersects(RecObj))
            {
                if (Joueur.position.X > RecObj.X)
                {
                    Joueur.position = new Vector2(Joueur.position.X + 2, Joueur.position.Y);
                }
                else
                {
                    Joueur.position = new Vector2(Joueur.position.X - 2, Joueur.position.Y);
                }
            }
        }
예제 #2
0
        /// <summary>
        /// Allows the game to perform any initialization it needs to before starting to run.
        /// This is where it can query for any required services and load any non-graphic
        /// related content.  Calling base.Initialize will enumerate through any components
        /// and initialize them as well.
        /// </summary>
        protected override void Initialize()
        {
            // TODO: Add your initialization logic here

            base.Initialize();
            Ressource.Load(Content);
            //Ninja = new Ninja(new Vector2(100, 100));
            //Ninja.Load();
            Kirby = new Kirby(new Vector2(100, 100));
            Kirby.Load();
        }
예제 #3
0
        public void Update(Kirby Joueur)
        {
            ///Pour que la vie descendre beaucoup moins vite et pour donner un peu plus de facilité VieReele est gérée
            if (Joueur.hurt)
            {
                VieReele -= 20f; CompteurNoTouch = 0; Invisible = false; Joueur.hurt = false;
            }

            //Compteur pour faire disparaitre Barre de vie si non touché (ne fait pas le traitement si deja invisible)
            else
            {
                if (!Invisible)
                {
                    CompteurNoTouch++; if (CompteurNoTouch == 120)
                    {
                        Invisible = true;
                    }
                }
            }

            //Position
            Position = new Vector2(Joueur.position.X - RecVisible.Width / 2, Joueur.position.Y - 10 - 8 * (RecVisible.Height));

            //Changement de grosseur du rectangle
            RecVisible.Width = (int)VieReele;

            //Si grosseur=0 C'EST LA MORT
            if (RecVisible.Width == 0)
            {
                Tuer = true;
            }

            //Position TexteBackspace
            if (Position.X < 800)
            {
                PosBackSpace = new Vector2(350, 450);
            }
            else if (Position.X < 1600)
            {
                PosBackSpace = new Vector2(1200, 20);
            }
        }