public static void update(SpriteContainer characterSprites, SpriteContainer staticSprites)
 {
     foreach (BasicSprite cs in characterSprites)
     {
         for (int i = staticSprites.Count - 1; i >= 0; i--)
         {
             // all-in-one collision detection/handling for input slip
             cs.velocity = collisionWithSlip(cs, staticSprites[i]);
         }
         cs.updatePosition();
     }
 }
示例#2
0
        public void Update(GameTime gameTime, SpriteContainer spritesToPhysics)
        {
            //Console.WriteLine();
            float frameTime = (float)gameTime.TotalGameTime.TotalSeconds;

            //gravity is applied to every sprite in the game here so that there is a universal gravity
            foreach (BasicSprite i in spritesToPhysics)
            {
                i.velocity.setY(i.velocity.getY() + (gravity * frameTime));
                if (i.velocity.getY() >= 30.0f)
                {
                    i.velocity.setY(30.0f);
                }

                //Console.WriteLine(gravity * Velocity.FromCoordinates(frameTime, frameTime));
            }
        }