public void EnemyMovement()
    {
        FindAllPaths();
        m_NodeInWalkableRange = GetAvailableEnemysInRange(m_Grid.m_GridPathList, Node_ObjectIsOn, m_EnemyRange);

        List <Creatures> m_AllysInRange = new List <Creatures>();

        foreach (FloorNode node in m_NodeInWalkableRange)
        {
            if (CheckIfAllyIsOnNode(node))
            {
                m_AllysInRange.Add(node.m_CreatureOnGridPoint);
            }
        }

        if (m_AllysInRange.Count > 0)
        {
            Creatures CharacterInRange = m_Behaviour.AllyToAttack(m_AllysInRange);

            FloorNode NodeNeightboringAlly =
                Grid.instance.CheckNeighborsForLowestNumber(CharacterInRange.m_CreatureAi.m_Position);


            if (NodeNeightboringAlly != null)
            {
                SetGoalPosition(NodeNeightboringAlly.m_PositionInGrid);
                return;
            }
            else
            {
                Debug.Log(gameObject.name + " Failed to be able to get to node ");
                return;
            }
        }
    }