private GameManager gameManager; // Game manager reference #endregion #region Main Methods public void AwakeBehaviour(Character player) { // Get references gameManager = GameManager.Instance; playerChar = player; // Initialize values brilliantMat = pilarRenderer.materials[index]; shadowColor = brilliantMat.GetColor("_SColor"); rimColor = brilliantMat.GetColor("_RimColor"); // Instantiate interact game object GameObject newObject = (GameObject)Instantiate(interactPrefab, Vector3.zero, Quaternion.identity); // Get input UI reference from new object InputUI newUI = newObject.GetComponent <InputUI>(); // Add new input UI reference to interface manager inputs list interfaceManager.Inputs.Add(newUI); // Initialize new input UI reference newUI.AwakeBehaviour(); // Set new interact object parent to the interact root transform newObject.transform.SetParent(interactRoot, false); // Get transform and rect transform references from new object interactUI = newObject.transform; interactRect = newObject.GetComponent <RectTransform>(); interactRect.anchoredPosition = Vector2.zero; // Disable interact game object by default interactUI.gameObject.SetActive(false); if (lineRenderer) { // Initialize line renderer positions and get values linePositions = new Vector3[lineRenderer.transform.childCount]; for (int i = 0; i < linePositions.Length; i++) { linePositions[i] = lineRenderer.transform.GetChild(i).position; } // Initialize line renderer lineRenderer.useWorldSpace = true; lineRenderer.SetVertexCount(linePositions.Length); lineRenderer.SetPositions(linePositions); laserEnd.position = linePositions[1]; } }
private float vibrationCounter; // Gamepad vibration time counter #endregion #region Main Methods public void AwakeBehaviour(Character player) { // Get references gameManager = GameManager.Instance; playerChar = player; // Initialize values canInvoke = true; Renderer[] renderers = GetComponentsInChildren <Renderer>(); materials = new Material[renderers.Length]; // Get references for (int i = 0; i < renderers.Length; i++) { materials[i] = renderers[i].material; } // Instantiate interact game object GameObject newObject = (GameObject)Instantiate(interactPrefab, Vector3.zero, Quaternion.identity); // Get input UI reference from new object InputUI newUI = newObject.GetComponent <InputUI>(); // Add new input UI reference to interface manager inputs list interfaceManager.Inputs.Add(newUI); // Initialize new input UI reference newUI.AwakeBehaviour(); // Set new interact object parent to the interact root transform newObject.transform.SetParent(interactRoot, false); // Get transform and rect transform references from new object interactUI = newObject.transform; interactRect = newObject.GetComponent <RectTransform>(); interactRect.anchoredPosition = Vector2.zero; // Disable interact game object by default interactUI.gameObject.SetActive(false); }