public WayPoint(Vector2Int key)
    {
        m_targetDict = new Dictionary <EWayPointFlags, List <Transform> >();

        for (EWayPointFlags e = EWayPointFlags.EMPTY; e < EWayPointFlags.COUNT; e++)
        {
            m_targetDict.Add(e, new List <Transform>());
        }

        m_key = key;
    }
 public List <Transform> .Enumerator GetTarget(EWayPointFlags wayPointFlag)
 {
     return(m_targetDict[wayPointFlag].GetEnumerator());
 }
 public void RemoveTarget(EWayPointFlags wayPointFlag, Transform targetTransform)
 {
     m_targetDict[wayPointFlag].Remove(targetTransform);
 }
 public void AddTarget(EWayPointFlags wayPointFlag, Transform targetTransform)
 {
     m_targetDict[wayPointFlag].Add(targetTransform);
 }