/// <summary>
        /// Führt die Kollisionsbehebung zwischen Entities aus.
        /// </summary>
        /// <param name="entity">eine Entity</param>
        /// <param name="counter">des Objekts, aktuelle Stelle in der Liste</param>
        private void collisionWithEntities(Entity entity, int counter)
        {
            for(int c = 0; c < scene.Entities.Count; c++)
            {
                // Prüft sich nicht selbst
                if(c == counter)
                    continue;

                Vector2 collisionResolving = scene.Entities[c].Shape.GetCollisionSolvingVector(entity.Shape);
                if(collisionResolving != Vector2.Zero)
                {
                    Collision collision = new Collision(entity, scene.Entities[c], collisionResolving);
                    if(!collisions.ContainsKey(collision.ID))
                        collisions.Add(collision.ID, collision);
                }
            }
        }
        /// <summary>
        /// Führt die Kollisionsbehebung zwischen einer Entity und der Map aus.
        /// </summary>
        /// <param name="entity">eine Entity</param>
        private void collisionWithMap(Entity entity)
        {
            foreach(Layer layer in scene.Map.Layers)
            {
                if(layer.CollisionLevel != entity.Body.CollisionLevel)
                    continue;

                foreach(Tile tile in layer.TileMap)
                {
                    Vector2 collisionResolving = tile.Shape.GetCollisionSolvingVector(entity.Shape);
                    if(collisionResolving != Vector2.Zero)
                    {
                        Collision collision = new Collision(entity, tile, collisionResolving);
                        if(!collisions.ContainsKey(collision.ID))
                            collisions.Add(collision.ID, collision);
                    }
                }
            }
        }