Quantcast
Channel: Questions in topic: "enemy"
Viewing all articles
Browse latest Browse all 1488

When the enemy character shoots, the bullet won't go to the position of my player!

$
0
0
When the enemy character shoots, the bullet won't go to the position of my player. **The Enemy Script:** using System.Collections; using System.Collections.Generic; using UnityEngine; public class Enemy : MonoBehaviour { public float speed; public float stoppingDistance; public float retreatDistance; private float maxDistance; public int maxEnemyHealth; private float timeBTWShots; public float startTimeBTWShots; public Transform eFirePoint; private Transform player; public GameObject projectile; public float projectileSpeed; private Vector2 target; private void Start() { player = GameObject.FindGameObjectWithTag("Player").transform; target = new Vector2(player.position.x, player.position.y); maxDistance = stoppingDistance + retreatDistance * 2; timeBTWShots = startTimeBTWShots; } private void Update() { if(Vector2.Distance(transform.position, player.position) > stoppingDistance) { transform.position = Vector2.MoveTowards (transform.position, player.position, speed * Time.deltaTime); } if(Vector2.Distance(transform.position, player.position) < retreatDistance) { transform.position = Vector2.MoveTowards (transform.position, player.position, -speed * Time.deltaTime); } if(Vector2.Distance(transform.position, player.position) <= maxDistance || Vector2.Distance(transform.position, player.position) == maxDistance) { EnemyShoot(); } } private void EnemyShoot() { if(timeBTWShots <= 0) { GameObject eBullet = Instantiate (projectile, eFirePoint.position, eFirePoint.rotation); projectile.transform.position = Vector2.MoveTowards (transform.position, target, projectileSpeed * Time.deltaTime); timeBTWShots = startTimeBTWShots; } else { timeBTWShots -= Time.deltaTime; } if(transform.position.x == target.x && transform.position.y == target.y) { Destroy(projectile); } } public void TakeDamage(int damage) { maxEnemyHealth -= damage; if(maxEnemyHealth <= 0) { Destroy(gameObject); } } }

Viewing all articles
Browse latest Browse all 1488

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>