private void ReadWayPointsIntoInspector() { if (m_Map == null) { return; } m_InspectorWayPoints.Clear( ); for (int i = 0; i < m_Map.m_WayPoints.Count; ++i) { WayPointInspectorItem newPoint = new WayPointInspectorItem( ); newPoint.m_WayPoint = m_Map.m_WayPoints[i]; for (int j = 0; j < m_Map.m_WayPoints[i].m_Connections.Count; ++j) { int connection = 0; for (int k = 0; k < m_Map.m_WayPoints.Count; ++k) { if (m_Map.m_WayPoints[i].m_Connections[j] == m_Map.m_WayPoints[k]) { connection = k; break; } } newPoint.m_Connections.Add(connection); } m_InspectorWayPoints.Add(newPoint); } }
public override void OnInspectorGUI() { GUILayout.Label(m_keyTitle); if (GUILayout.Button(m_keyAddWaypoint)) { GameObject wp = new GameObject( ); wp.AddComponent <WayPoint>( ); wp.name = m_strNewObjectName; wp.transform.position = m_Map.transform.position + (Vector3.up * 5); WayPointInspectorItem wpDB = new WayPointInspectorItem( ); wpDB.m_WayPoint = wp.GetComponent <WayPoint>( ); m_InspectorWayPoints.Add(wpDB); SaveWayPointsToCurrentMap( ); } GUILayout.Label(m_keyListName); if (m_InspectorWayPoints.Count == 0) { GUILayout.Label(m_keyNoWaypoints); return; } DrawInterfaceForWaypoints( ); }