public GameObject Get_Best_Item()
    {
        // Get object with highest damage
        GameObject ret   = null;
        float      force = float.PositiveInfinity;

        foreach (GameObject obj in m_Dangers)
        {
            float item_force = Custom_Math_Utils.Calculate_Kinetic_Energy(obj);
            if (item_force < force)
            {
                ret   = obj;
                force = item_force;
            }
        }
        return(ret);
    }
    private void Update()
    {
        foreach (GameObject obj in m_Objects)
        {
            if (!m_Dangers.Contains(obj))
            {
                if ((Custom_Math_Utils.Calculate_Kinetic_Energy(obj) >= GLOBAL_VALUES.SECURITY_ITEM_SPEED_THRESHOLD) && (obj.GetComponent <Item>().prev_owner != m_Manager))
                {
                    m_Dangers.Add(obj);
                }
            }
        }
        List <GameObject> to_delete = new List <GameObject>(m_Dangers);

        foreach (GameObject obj in to_delete)
        {
            Item l_item = obj.GetComponent <Item>();
            if (l_item.BeingCarried())
            {
                m_Dangers.Remove(obj);
            }
        }
    }