using UnityEngine;

public class EnemyController : MonoBehaviour {
    private GameObject player;
    public float enemySpeed = 2f;
    public float minDistance = 0.5f; // Minsta avstånd mellan fiender

    void Start() {
        player = GameObject.FindWithTag("Player");
    }

    void Update() {
        if (player != null) {
            // Beräkna riktning mot spelaren
            Vector3 direction = (player.transform.position - transform.position).normalized;

            // Kontrollera om det finns andra fiender nära
            Collider2D[] nearbyEnemies = Physics2D.OverlapCircleAll(transform.position, minDistance);
            foreach (Collider2D enemy in nearbyEnemies) {
                if (enemy.gameObject != this.gameObject && enemy.CompareTag("Enemy")) {
                    // Flytta bort från den andra fienden
                    Vector3 away = (transform.position - enemy.transform.position).normalized;
                    direction += away; // Justera riktningen
                }
            }

            // Normalisera riktningen igen
            direction = direction.normalized;

            // Flytta fienden mot spelaren (med justerad riktning)
            transform.position += direction * enemySpeed * Time.deltaTime;
        }
    }

    void OnDrawGizmosSelected() {
        // Rita cirkeln i Scene för att se minDistance
        Gizmos.color = Color.red;
        Gizmos.DrawWireSphere(transform.position, minDistance);
    }
}
