using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; using UnityEngine; public class Enemie_Movement_Panzer : MonoBehaviour { public float speed = 3f; // Bewegungsgeschwindigkeit public float shootingInterval = 2f; // Schuss-Intervall public GameObject bulletPrefab; // Projektil-Objekt public Transform firePointA; // Punkt, von dem die Kugeln abgefeuert werden public Transform firePointB; public Transform firePointC; public int life = 20; Enemie_Spawn_System enemie_Spawn_System; private Transform player; // Referenz auf den Spieler void Start() { // Spieler-Objekt finden player = GameObject.FindGameObjectWithTag("Starship").transform; // Starte das Schießen in Intervallen InvokeRepeating(nameof(Shoot), shootingInterval, shootingInterval); enemie_Spawn_System = GameObject.Find("Enemie_Spawner_System").GetComponent(); } void Update() { if (player == null) return; // Falls kein Spieler gefunden wurde, nichts tun // 1. Richtung zum Spieler berechnen Vector2 direction = (player.position - transform.position).normalized; // 2. Gegner drehen (damit er den Spieler anvisiert) float angle = Mathf.Atan2(direction.y, direction.x) * Mathf.Rad2Deg; transform.rotation = Quaternion.Euler(0, 0, angle - 90); // 3. Bewegung zum Spieler transform.position = Vector2.MoveTowards(transform.position, player.position, speed * Time.deltaTime); } void Shoot() { if (bulletPrefab != null && firePointA != null && firePointB != null && firePointC != null) { Instantiate(bulletPrefab, firePointA.position, firePointA.rotation); Instantiate(bulletPrefab, firePointB.position, firePointB.rotation); Instantiate(bulletPrefab, firePointC.position, firePointC.rotation); } } private void OnTriggerEnter2D(Collider2D other) { if (other.CompareTag("Player Bullet")) { Bullet_movement bulletScript = other.gameObject.GetComponent(); if (bulletScript != null) { life--; Debug.Log("Gegner Getroffen! -2"); if (life <= 0) { Destroy(gameObject); enemie_Spawn_System.ChangeEnemyCounter(-1); } } } } } //chat gpt modified, nicht komplett generiert