void Awake() { _busy++; active = false; atomList = new List <Atom> (); userSelection = new List <int>(); atomsHolder = new GameObject("Atoms"); atomsHolder.transform.parent = transform; graph = Instantiate <Graph> (GameObject.FindObjectOfType <PrefabManager>().graphPrefab, transform); combinedMesh = GetComponent <MeshFilter> ().mesh; amberRepMesh = amberRepMeshFilter.mesh; selectionDict = new Dictionary <int, SelectionHalo>(); _hoveredAtom = -1; activeCamera = Camera.main; hoverHalo = Instantiate <SelectionHalo>(GameObject.FindObjectOfType <PrefabManager>().selectionHaloPrefab, haloHolder.transform); hoverHalo.parent = this; hoverHalo.SetColor(hoverColor); selectionCount = 0; _busy--; }
//Selection public void Select(int a0, bool updateAmberReps = true) { if (!selection.Contains(a0)) { SelectionHalo newHalo = Instantiate <SelectionHalo>(hoverHalo, haloHolder.transform); newHalo.SetColor(selectionColor); newHalo.SetAtom(this[a0]); newHalo.sizeRatio = 2.2f; newHalo.parent = this; selectionDict.Add(a0, newHalo); selection.Add(a0); selectionCount++; if (updateAmberReps) { UpdateAmberReps(); } } }