override public void LookAt() { base.LookAt(); string verb = "OPEN"; if (m_IsOpen) { verb = "CLOSE"; } m_uiGame.SetInteractText(verb + " Door"); }
virtual public void LookAt() { //uiGame = FindObjectOfType<UIGameManager>(); uiGame.SetInteractText(verb + " " + itemName); }
private void Update() { if (PauseManager.isPaused) { return; } #region Raycasting for Interaction // Raycasting for interaction m_uiGame.SetInteractText(""); RaycastHit[] allHits; int layerMask = 1 << gameObject.layer; layerMask = LayerMask.NameToLayer("Interactable"); layerMask = ~layerMask; allHits = Physics.RaycastAll(Camera.main.transform.position, Camera.main.transform.forward, interactReach, layerMask, QueryTriggerInteraction.Collide); foreach (var hit in allHits) { if (hit.transform.gameObject.layer != layerMask) { var interacted = hit.transform.gameObject.GetComponent(typeof(Interactive)) as Interactive; if (interacted != null) { interacted.LookAt(); if (Input.GetKeyDown("e")) { interacted.Interact(); if (interacted.verb == Interactive.Verbs.GET) { items.Add(interacted.GetItem()); } } } } } #endregion target = null; Monster_TV monster = FindObjectOfType <Monster_TV>(); if (monster) { if (monster.alive) { target = monster.screenTransform; } } //Collider[] overlap = Physics.OverlapSphere(transform.position, 5f); //foreach (Collider c in overlap) //{ // if (c.gameObject.GetComponent<Monster_TV>()) // { // c.gameObject.GetComponent<Monster_TV>().alive = true; // target = c.GetComponent<Monster_TV>().screenTransform; // } //} hasFlashlight = false; // Inventory check foreach (Interactive.Items i in items) { if (i == Interactive.Items.FLASHLIGHT) { hasFlashlight = true; } } if (hasFlashlight) { if (Input.GetKeyDown("f")) { // Toggle the flashlight flashlightIsOn = !flashlightIsOn; if (flashlightIsOn) { AudioManager.PlaySound(flashlightSoundOn); } else { AudioManager.PlaySound(flashlightSoundOff); } } flashlight.enabled = flashlightIsOn; } else { flashlight.enabled = false; } }