public void CreateCollisions()
        {
            var hurtboxes = ArrayPool <Hurtbox> .Shared.Rent(256);

            foreach (var hitbox in ActiveHitboxes)
            {
                var hurtboxCount = hitbox.GetCollidedHurtboxes(hurtboxes);
                for (var i = 0; i < hurtboxCount; i++)
                {
                    if (!ActiveHurtboxes.Contains(hurtboxes[i]))
                    {
                        continue;
                    }
                    CollisionManager.Add(new HitboxCollision {
                        Source      = hitbox,
                        Destination = hurtboxes[i]
                    });
                }
            }
            ArrayPool <Hurtbox> .Shared.Return(hurtboxes);
        }
        public void CreateCollisions()
        {
            var hurtboxes = ArrayPool <Hurtbox> .Shared.Rent(256);

            foreach (var hitbox in ActiveHitboxes)
            {
                var hurtboxCount = HitboxUtil.CollisionCheck(hitbox, hurtboxes);
                for (var i = 0; i < hurtboxCount; i++)
                {
                    if (!ActiveHurtboxes.Contains(hurtboxes[i]))
                    {
                        continue;
                    }
                    var collision = new HitboxCollision {
                        Source = hitbox, Destination = hurtboxes[i]
                    };
                    CollisionManager.Add(collision);
                }
            }
            ArrayPool <Hurtbox> .Shared.Return(hurtboxes);
        }