Question by 
               no00ob · Mar 26, 2018 at 05:01 PM · 
                raycastfpsraycastingcarraycasthit  
              
 
              Why isn't my ray working?
I have a car and wan't to open it's hood when I mouse over it and click left mouse button, I got something like this done, but it doesn't seem to be working...
code:
 void Update()
 {
     Ray ray = cam.ScreenPointToRay(Input.mousePosition);
     RaycastHit hit;
     if (Physics.Raycast(ray,out hit))
     {
         if (hit.collider == hod && (Input.GetMouseButtonDown(0)) && open == false) {
             hood.SetActive(false);
             open = true;
         }
         if (hit.collider == hod && (Input.GetMouseButtonDown(0)) && open == true)
         {
             hood.SetActive(true);
             open = false;
         }
     }
 }
               Comment
              
 
               
              Answer by no00ob · Mar 26, 2018 at 05:09 PM
I got it solved, issue was timing, if someone is interested, this worked:
     void Update()
     {
         Ray ray = cam.ScreenPointToRay(Input.mousePosition);
         RaycastHit hit;
         if (Physics.Raycast(ray,out hit))
         {
             if (hit.collider == hod && (Input.GetMouseButtonDown(0)) && open == false) {
                 hood.SetActive(false);
                 open = true;
                 
             }
             if (hit.collider == hod && (Input.GetMouseButtonDown(0)) && open == true && wait <= 0f)
             {
                 hood.SetActive(true);
                 open = false;
                 wait = waitTime;
             }
             if (open)
             {
                 wait -= Time.deltaTime;
             }
         }
     }    void Update()
     {
         Ray ray = cam.ScreenPointToRay(Input.mousePosition);
         RaycastHit hit;
         if (Physics.Raycast(ray,out hit))
         {
             if (hit.collider == hod && (Input.GetMouseButtonDown(0)) && open == false) {
                 hood.SetActive(false);
                 open = true;  
             }
             if (hit.collider == hod && (Input.GetMouseButtonDown(0)) && open == true && wait <= 0f)
             {
                 hood.SetActive(true);
                 open = false;
                 wait = waitTime;
             }
             if (open)
             {
                 wait -= Time.deltaTime;
             }
         }
     }
 }
Your answer
 
 
              koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                