Exemplo n.º 1
0
 private static void DrawHostileObjects(SpriteBatch spriteBatch, ObjectPositionRepository objectPositionRepository)
 {
     foreach (var item in objectPositionRepository.GetHostilePositions())
     {
         spriteBatch.Draw(item.Texture, item.DestinationRectangle, item.SourceRectangle, item.Color, item.Rotation, item.Origin, item.Effects, item.LayerDepth);
     }
 }
Exemplo n.º 2
0
        private static void If_Hostile_Touch_Then_Lose_Player_Life(ObjectPositionRepository objectPositionRepository)
        {
            var players  = objectPositionRepository.GetPlayerPositions();
            var hostiles = objectPositionRepository.GetHostilePositions();

            var hostileRectangles = hostiles.Select(x => x.DestinationRectangle);
            var playersHit        = new List <IPlayer>();

            foreach (var player in players)
            {
                foreach (var hostile in hostileRectangles)
                {
                    if (player.DestinationRectangle.Intersects(hostile))
                    {
                        player.PlayerLives -= 1;
                        //TODO Rename 'position', these are more than just the positions
                        objectPositionRepository.UpdatePlayerPosition(player);
                        break;
                    }
                }
            }
        }