Esempio n. 1
0
        public override void Update(GameTime gameTime)
        {
            float vel = 100;

            // 1.57 90 grados
            // 3.14 180 grados
            // 4.71 240 grados
            // 6.28 360 grados

            if (Keyboard.GetState().IsKeyDown(Keys.D))
            {
                objetoFisico.AddVelocity(new Vector2((float)gameTime.ElapsedGameTime.TotalSeconds * vel, 0));
            }
            else if (Keyboard.GetState().IsKeyDown(Keys.A))
            {
                objetoFisico.AddVelocity(new Vector2(-(float)gameTime.ElapsedGameTime.TotalSeconds * vel, 0));
            }
            if (Keyboard.GetState().IsKeyDown(Keys.W))
            {
                objetoFisico.AddVelocity(new Vector2(0, -(float)gameTime.ElapsedGameTime.TotalSeconds * vel));
            }
            else if (Keyboard.GetState().IsKeyDown(Keys.S))
            {
                objetoFisico.AddVelocity(new Vector2(0, (float)gameTime.ElapsedGameTime.TotalSeconds * vel));
            }

            if (Keyboard.GetState().IsKeyDown(Keys.Space))
            {
                isShooting = true;
            }
            if (shootCD > 0f)
            {
                shootCD -= (float)gameTime.ElapsedGameTime.TotalSeconds;
            }

            if (invulnerable)
            {
                shield.objetoFisico.pos = objetoFisico.pos;

                if (tiempoInvulnerable > 3)
                {
                    shield.Destroy();
                    tiempoInvulnerable     = 0;
                    invulnerable           = false;
                    objetoFisico.isTrigger = false;
                }
                else
                {
                    tiempoInvulnerable += (float)gameTime.ElapsedGameTime.TotalSeconds;
                }
            }
        }
Esempio n. 2
0
        public override void Update(GameTime gameTime)
        {
            float vel;

            // 1.57 90 grados
            // 3.14 180 grados
            // 4.71 240 grados
            // 6.28 360 grados
            if (Keyboard.GetState().IsKeyDown(Keys.X))
            {
                vel = 0;
            }
            else
            {
                vel = 100;
            }
            if (Keyboard.GetState().IsKeyDown(Keys.D))
            {
                //Console.WriteLine("D");

                objetoFisico.dibujable.rot = 1.57f;
                objetoFisico.AddVelocity(new Vector2((float)gameTime.ElapsedGameTime.TotalSeconds * vel, 0));
            }
            else if (Keyboard.GetState().IsKeyDown(Keys.A))
            {
                objetoFisico.dibujable.rot = 4.71f;
                objetoFisico.AddVelocity(new Vector2(-(float)gameTime.ElapsedGameTime.TotalSeconds * vel, 0));
            }
            if (Keyboard.GetState().IsKeyDown(Keys.W))
            {
                objetoFisico.dibujable.rot = 0f;
                objetoFisico.AddVelocity(new Vector2(0, -(float)gameTime.ElapsedGameTime.TotalSeconds * vel));
            }
            else if (Keyboard.GetState().IsKeyDown(Keys.S))
            {
                objetoFisico.dibujable.rot = 3.14f;
                objetoFisico.AddVelocity(new Vector2(0, (float)gameTime.ElapsedGameTime.TotalSeconds * vel));
            }

            if (Keyboard.GetState().IsKeyDown(Keys.D) && Keyboard.GetState().IsKeyDown(Keys.W))
            {
                objetoFisico.dibujable.rot = 1.57f / 2f;
            }
            if (Keyboard.GetState().IsKeyDown(Keys.A) && Keyboard.GetState().IsKeyDown(Keys.W))
            {
                objetoFisico.dibujable.rot = -1.57f / 2f;
            }
            if (Keyboard.GetState().IsKeyDown(Keys.D) && Keyboard.GetState().IsKeyDown(Keys.S))
            {
                objetoFisico.dibujable.rot = 1.57f / 2f + 1.57f;
            }
            if (Keyboard.GetState().IsKeyDown(Keys.A) && Keyboard.GetState().IsKeyDown(Keys.S))
            {
                objetoFisico.dibujable.rot = -1.57f / 2f - 1.57f;
            }

            if (invulnerable)
            {
                shield.objetoFisico.pos = objetoFisico.pos;

                if (tiempoInvulnerable > 3)
                {
                    shield.Destroy();
                    tiempoInvulnerable     = 0;
                    invulnerable           = false;
                    objetoFisico.isTrigger = false;
                }
                else
                {
                    tiempoInvulnerable += (float)gameTime.ElapsedGameTime.TotalSeconds;
                }
            }
        }