//Sets up the safe puzzle public void SetUp() { PinNumbersObjects = new List <Transform>(); if (!IsSafeOpen && !GameplayChecker.SafePuzzleSolved) { SafePinNumber = GameObject.Find("Code").GetComponent <SafePinNumber>(); SafeDoors = GameObject.Find("Safe").transform.GetChild(0).GetComponent <Transform>(); SafePinNumberObj = GameObject.Find("Code"); if (SafePinNumber == null) { return; } if (SafeDoors == null) { return; } if (SafePinNumberObj == null) { return; } if (PinNumbersObjects.Count > 1) { PinNumbersObjects = new List <Transform>(); } if (PinNumbersObjects != null) { for (int i = 0; i < 4; i++) { PinNumbersObjects.Add(SafePinNumberObj.transform.GetChild(i)); } } } else { if (IsSafeOpen) { SafeDoors.Rotate(new Vector3(0f, 0f, 99.192f)); IsSafeOpen = false; } else { SafeDoors.Rotate(new Vector3(0f, 0f, -99.192f)); IsSafeOpen = true; } } }
public override void Interact() { if (!IsSafeOpen && !GameplayChecker.SafePuzzleSolved) { InteractableManager = GameObject.Find("Interaction").GetComponent <InteractableManager>(); InteractableManager.safeInteraction = this.gameObject; if (InteractableManager == null) { return; } playerAgent = GameObject.Find("Character(Clone)").GetComponent <NavMeshAgent>(); if (GameObject.Find("Safe")) { InteractableManager.Activate("Safe"); } SafePinNumber = GameObject.Find("Code").GetComponent <SafePinNumber>(); SafeDoors = GameObject.Find("Safe").transform.GetChild(0).GetComponent <Transform>(); SafePinNumberObj = GameObject.Find("Code"); if (SafePinNumber == null) { return; } if (SafeDoors == null) { return; } if (SafePinNumberObj == null) { return; } if (PinNumbersObjects.Count > 1) { PinNumbersObjects = new List <Transform>(); } if (PinNumbersObjects != null) { for (int i = 0; i < 4; i++) { PinNumbersObjects.Add(SafePinNumberObj.transform.GetChild(i)); } } } else { if (IsSafeOpen) { SafeDoors.Rotate(new Vector3(0f, 0f, 99.192f)); IsSafeOpen = false; } else { SafeDoors.Rotate(new Vector3(0f, 0f, -99.192f)); IsSafeOpen = true; } } }