(Repost) How to i make automatic shooting target?
Hi, I'm doing a third-person game and I need to create a system that when you press the right button of the player, the player looks at one target, then changes to another and, therefore, with all enemies within a range, uses the smoothlookat script. , but just look at a target instead of detecting ANY enemy with a tag in a SHOOTING RANGE, thank you!
 using UnityEngine;
     using System.Collections;
     
     public class PlayerAim : MonoBehaviour {
     
         public GameObject Camara;
         public bool Targeting = false;
         public MonoBehaviour SmoothFllw;
         public MonoBehaviour SmoothLkAt;
         public GameObject Crosshair;
         public GameObject Player;
     
         void Start () 
         {
         
         }
         
         void Update () 
         {       
             Camara = GameObject.Find ("Camera");
             SmoothFllw = Camara.GetComponent("SmoothFollow") as MonoBehaviour;
             SmoothLkAt = Camara.GetComponent("SmoothLookAt") as MonoBehaviour;
     
             if(Targeting == true)
             {
                 SmoothFllw.enabled = false;
                 SmoothLkAt.enabled = true;
                 Crosshair.SetActive(true);
                 Player.gameObject.GetComponent<MouseLook>().enabled = false;
     
             }
             if(Targeting == false)
             {
                 SmoothFllw.enabled = true;
                 SmoothLkAt.enabled = false;
                 Crosshair.SetActive(false);
                 Player.gameObject.GetComponent<MouseLook>().enabled = true;
     
             }
         
             if(Input.GetMouseButtonDown(1))
             {
                 Targeting = true;
             }
             if(Input.GetMouseButtonUp(1))
             {
                 Targeting = false;
             }
         }
     }
 
               lookat script:
 var target : Transform;
 var damping = 6.0;
 var smooth = true;
 
 @script AddComponentMenu("Camera-Control/Smooth Look At")
 
 function LateUpdate () {
     if (target) {
         if (smooth)
         {
             // Look at and dampen the rotation
             var rotation = Quaternion.LookRotation(target.position - transform.position);
             transform.rotation = Quaternion.Slerp(transform.rotation, rotation, Time.deltaTime * damping);
         }
         else
         {
             // Just lookat
             transform.LookAt(target);
         }
     }
 }
 
 function Start () {
     // Make the rigid body not change rotation
        if (GetComponent.<Rigidbody>())
         GetComponent.<Rigidbody>().freezeRotation = true;
 }
 
              
               Comment
              
 
               
              Your answer
 
             Follow this Question
Related Questions
lookAt doesnt work with navmeshagent 0 Answers
Face object top to camera or Keep current top with LookAt 0 Answers
Unity 2D lookat and shoot issues 0 Answers
How do I rotate a 2d Object to face another object? 3 Answers
How do I make it so if a raycast hits an object with a certain tag it will instantiate an effect? 0 Answers