- Home /
 
               Question by 
               Wesley21spelde · Oct 30, 2016 at 09:45 PM · 
                not workingresetexitenter  
              
 
              Enter Turrent Works But Exit Does not work
Hey guys i have this script but it is not working correctly it does enther the turrent when i enter the collider & press E but when i press E again nothing !!
Can you help me
 using UnityEngine;
 using System.Collections;
 
 public class EnterTurrent : MonoBehaviour {
     public GameObject Turrent;// the player turrent
     public GameObject Player; // the player
     public GameObject TurrentOff;// the scene turrent
     private bool inTurrent = false;
     EnterTurrent turrentscript;
     GameObject guiObj;
     AudioSource source;
     public AudioClip audio;
 
     // Use this for initialization
     void Start () {
         Player = GameObject.FindWithTag("Player");// Find Player
         turrentscript = GetComponent<EnterTurrent>();
         turrentscript.enabled = true;
         Turrent.SetActive(false);
         source = GetComponent<AudioSource>();
         // guiObj = GameObject.Find("PressE");
         // guiObj.SetActive(false);
         TurrentOff.SetActive(true);
        // guiObj.SetActive(false);
     
     }
 
     void OnTriggerStay(Collider other)
     {
         if (other.gameObject.tag == "Player" && inTurrent == false)
         {
             //guiObj.SetActive(true);
         }
         if (other.gameObject.tag == "Player" && inTurrent == false && Input.GetKey(KeyCode.E))
         {
             Turrent.SetActive(true);
             source.PlayOneShot(audio, 1);
             //guiObj.SetActive(false);
             TurrentOff.SetActive(false);
             Player.SetActive(false);
             Player.transform.parent = Turrent.transform;
             turrentscript.enabled = false;
         }
     }
 
     void OnTriggerExit (Collider other)
     {
         if (other.gameObject.tag == "Player")
         {
            // guiObj.SetActive(false);
         }
     }
     
     // Update is called once per frame
     void Update ()
     {
         if (inTurrent == true && Input.GetKey(KeyCode.E))
         {
             Player = GameObject.FindWithTag("Player");// Find Player
             Player.SetActive(true);
             Player.transform.parent = null;
             TurrentOff.SetActive(false);
             turrentscript.enabled = true;
             inTurrent = true;
         }
     
     }
 }
               Comment
              
 
               
              Answer by tanoshimi · Oct 30, 2016 at 09:48 PM
Change your Input.GetKeys to Input.GetKeyDowns, otherwise you'll keep toggling in and out of the turret every frame.
Also, line 63, didn't you mean to set inTurrent = false?
Your answer
 
 
             Follow this Question
Related Questions
OnPointerEnter & OnPointerExit NOT WORKING 2 Answers
Problem with "sticking" to a block. 0 Answers
Entering/exiting vehicles 1 Answer
Car Enter/Exit Script Multiple Cars Problem 4 Answers
Enter/Exit vehicle 0 Answers
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                