public void RemoveNode(I_EnvironmentNode _poi) { if (m_EnvironmentNodesDict.ContainsKey(_poi.GetType())) { m_EnvironmentNodesDict[_poi.GetType()].Remove(_poi); } }
public void RegisterNodeAsType(I_EnvironmentNode _poi, System.Type _type) { if (!m_EnvironmentNodesDict.ContainsKey(_type)) { m_EnvironmentNodesDict[_type] = new EnvironmentQueryResult(); } Debug.Log("[POIManager] Registerd POI " + _type.Name); m_EnvironmentNodesDict[_type].Add(_poi); }
public void Remove(I_EnvironmentNode _poi) { int index = nodes.IndexOf(_poi); if (index < 0) { return; } nodes.RemoveAt(index); nodePositionsXZ.RemoveAt(index); }
public T QueryRandomNodeOfType <T>() where T : I_EnvironmentNode { EnvironmentQueryResult pois = QueryNodesOfType <T>(); if (pois.Count() > 0) { I_EnvironmentNode randomPoi = pois.AtIndex(Random.Range(0, pois.Count())); return((T)randomPoi); } return(default(T)); }
public void Add(I_EnvironmentNode _poi) { nodes.Add(_poi); nodePositionsXZ.Add(_poi.GetPositionXZ()); }
public void AddNode(I_EnvironmentNode _poi) { RegisterNodeAsType(_poi, _poi.GetType()); }