Jump to content
Unity Insider Forum

Gegner AI funktioniert nicht richtig


Recommended Posts

Moin Leute,

ich habe einen Gegner in meinem spiel, er soll eigentlich nur ein Pfad ablaufen und sobald der Spieler in Reichweite ist, den Spieler verfolgen. Wenn ich das Spiel starte, läuft er einfach gerade aus und rennt nicht zu den Punkten. Wenn ich nun in seine nähe komme, fängt er an um mich zu kreisen, wobei er eigentlich direkt auf mich zu laufen soll

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class enemyController : MonoBehaviour {

	public Transform player;
	public float playerDistance;
	public float awareAI = 10f;
	public float AIMoveSpeed;
	public float damping = 6.0f;
	
	public Transform[] navPoint;
	public UnityEngine.AI.NavMeshAgent agent;
	public int destPoint = 0;
	public Transform goal;
	public static float enemyHealth;
	
	void Start () {
		enemyHealth = 100;
		UnityEngine.AI.NavMeshAgent agent = GetComponent<UnityEngine.AI.NavMeshAgent>();
        agent.destination = goal.position; 

		agent.autoBraking = false;
		
	}
	
	void Update () {
		Debug.Log(enemyHealth);
		
		if(enemyHealth <=0)
		Destroy(gameObject);
			
		
		playerDistance = Vector3.Distance (player.position, transform.position);

		if (playerDistance < awareAI)
		{
			LookAtPlayer();
			Debug.Log("Seen");
		}

		if (playerDistance < awareAI)
		{
			if (playerDistance < 2f)
			{
			Chase();
			}
				else
			GotoNextPoint();		
		}
		
		
		if (agent.remainingDistance < 0.5f)
				GotoNextPoint();	
		
	}
	
	void LookAtPlayer()
	{
		transform.LookAt(player);	
	}

	
	void GotoNextPoint()
		{
			if (navPoint.Length == 0)
				return;       
			agent.destination = navPoint[destPoint].position;
			destPoint = (destPoint + 1) % navPoint.Length;
		}
	
		
		void Chase ()
		{
			transform.Translate (Vector3.forward * AIMoveSpeed * Time.deltaTime);
		}


	}

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...
×
×
  • Neu erstellen...