Question by
mnmwert · Sep 01, 2016 at 12:36 PM ·
scripting problemgameobjectplayerenemylookat
enemy look at GameObject player? unity ver. 5.2 C#
How do I make my enemy look at my player in the scene. I haft to use gameobjects because the enemy is spawned. Here is my script:
public class enemymovement : MonoBehaviour
{
public float speed;
public bool notinrange = false;
public float C1, C2;
public Transform target;
public GameObject player;
public float fireRate, FireSpeed;
public GameObject enemyBullet;
public Transform spawn;
public int health, value;
public Vector3 Playerpos;
void Start ()
{
player = GameObject.FindWithTag("Player");
}
void Update ()
{
if(notinrange == true)
{
transform.position = Vector3.MoveTowards(transform.position, target.position, speed);
if (Time.time > C1)
{
C1 = Time.time + C2;
Vector3 euler = transform.eulerAngles;
euler.y = Random.Range(0f, 360f);
transform.eulerAngles = euler;
}
}
if(notinrange == false)
{
transform.LookAt(player);
if(Time.time > fireRate)
{
fireRate = Time.time + FireSpeed;
Instantiate(enemyBullet,spawn.position,spawn.rotation);
}
}
if(health <= 0)
{
player.GetComponent<playerMovement>().score += value;
Destroy(gameObject);
}
}
private void OnCollisionEnter(Collision collision)
{
if(collision.gameObject.tag == "Player")
{
player.GetComponent<playerMovement>().score += value;
Destroy(gameObject);
}
if(collision.gameObject.tag == "bullet")
{
health -= 1;
}
}
}
Thanks!
Comment
Transform.Lookat does not work with my player as a gameobject
Your answer
Follow this Question
Related Questions
how to move a gameobject based on a dice roll 1 Answer
How to change value of another gameobject through script 2 Answers
Status Effect Help 0 Answers
Framing multiple objects from a list along y axis only? 0 Answers
Trouble with player lookat 1 Answer