Skip to content
Permalink
master
Switch branches/tags
Go to file
 
 
Cannot retrieve contributors at this time
using UnityEngine;
public class EnemyPatrol : MonoBehaviour
{
public float speed;
public Transform[] waypoints;
public int damageOnCollision = 20;
public SpriteRenderer graphics;
private Transform target;
private int destPoint = 0;
void Start()
{
target = waypoints[0];
}
void Update()
{
Vector3 dir = target.position - transform.position;
transform.Translate(dir.normalized * speed * Time.deltaTime, Space.World);
// Si l'ennemi est quasiment arrivé à sa destination
if(Vector3.Distance(transform.position, target.position) < 0.3f)
{
destPoint = (destPoint + 1) % waypoints.Length;
target = waypoints[destPoint];
graphics.flipX = !graphics.flipX;
}
}
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.transform.CompareTag("Player"))
{
PlayerHealth playerHealth = collision.transform.GetComponent<PlayerHealth>();
playerHealth.TakeDamage(damageOnCollision);
}
}
}