1 using System.Collections; 2 using System.Collections.Generic; 3 using UnityEngine; 4 using UnityEngine.UI; 5 6 public class Calculations : MonoBehaviour 7 { 8 public GameObject initialNode; 9 public GameObject[] secNodes = new GameObject[8]; 10 11 public void ActivateNode(int index) 12 { 13 //sets clicked on nodes gui active and makes sure that other nodes cannot be clicked 14 15 if(index == 0) 16 { 17 initialNode.transform.GetChild(0).gameObject.SetActive(true); 18 19 for(int i = 0; i < secNodes.Length; i++) 20 { 21 secNodes[i].GetComponent<Button>().interactable = false; 22 } 23 } 24 else 25 { 26 secNodes[index - 1].transform.GetChild(0).gameObject.SetActive(true); 27 28 initialNode.GetComponent<Button>().interactable = false; 29 for (int i = 0; i < secNodes.Length; i++) 30 { 31 if ((index - 1) != i) 32 { 33 secNodes[i].GetComponent<Button>().interactable = false; 34 } 35 } 36 } 37 } 38 39 public void CloseNode(int index) 40 { 41 //turns off currentt GUI and reactivates everything 42 43 if (index == 0) 44 { 45 initialNode.transform.GetChild(0).gameObject.SetActive(false); 46 47 for (int i = 0; i < secNodes.Length; i++) 48 { 49 secNodes[i].GetComponent<Button>().interactable = true; 50 } 51 } 52 else 53 { 54 secNodes[index - 1].transform.GetChild(0).gameObject.SetActive(false); 55 56 initialNode.GetComponent<Button>().interactable = true; 57 for (int i = 0; i < secNodes.Length; i++) 58 { 59 if ((index - 1) != i) 60 { 61 secNodes[i].GetComponent<Button>().interactable = true; 62 } 63 } 64 } 65 } 66 } 67