public void Add(DrawBehavior behavior, DrawableEntity entity)
		{
			if (behaviors.ContainsKey(behavior))
				behaviors[behavior].Add(entity);
			else
				behaviors.Add(behavior, new List<DrawableEntity> { entity });
		}
 internal void AddToDrawBehaviorList(DrawableEntity entity, DrawBehavior drawBehavior)
 {
     if (entity.RenderLayer == DrawableEntity.DefaultRenderLayer)
     {
         unsortedDrawEntities[drawBehavior].Add(entity);
     }
     else
     {
         FindSpotOrCreateOne(entity.RenderLayer).Add(drawBehavior, entity);
     }
 }
 public void Add(DrawBehavior behavior, DrawableEntity entity)
 {
     if (behaviors.ContainsKey(behavior))
     {
         behaviors[behavior].Add(entity);
     }
     else
     {
         behaviors.Add(behavior, new List <DrawableEntity> {
             entity
         });
     }
 }
 private void RemoveFromDrawBehaviorList(DrawableEntity entity, DrawBehavior drawBehavior)
 {
     foreach (var pair in unsortedDrawEntities.Where(pair => pair.Key == drawBehavior))
     {
         pair.Value.Remove(entity);
     }
     foreach (var drawBehaviorEntities in negativeSortedDrawEntities)
     {
         foreach (var pair in drawBehaviorEntities.behaviors.Where(pair => pair.Key == drawBehavior))
         {
             pair.Value.Remove(entity);
         }
     }
     foreach (var drawBehaviorEntities in positiveSortedDrawEntities)
     {
         foreach (var pair in drawBehaviorEntities.behaviors.Where(pair => pair.Key == drawBehavior))
         {
             pair.Value.Remove(entity);
         }
     }
 }