2016-04-06 8 views
-3

Ich versuche, Gegner zu kodieren, die zwischen zwei Punkten wechseln und den Spieler zerstören, wenn er berührt wird.Keine Überladung für Methode 'Entfernung' benötigt 1 Argumente

public class MovementBetweenPoints : MonoBehaviour { 
    public Transform[] keyPoints; 
    public float speed; 
    private int currentKeyPoint; 
    public float min_Distance; 
    public float Distance; 

    // Use this for initialization 
    void Start() 
    { 
     transform.position = keyPoints[0].position; 
     currentKeyPoint = 1; 
    } 

    // Update is called once per frame 
    void Update() 
    { 
     // ----------- Error happens on next line 
     if (Vector3.Distance(transform.position - keyPoints[currentKeyPoint].position) <= min_Distance) 
     { 
      currentKeyPoint++; 
     } 

     if (currentKeyPoint >= keyPoints.Length) 
     { 
      currentKeyPoint = 0; 
     } 

     transform.position = Vector3.MoveTowards(transform.position, keyPoints[currentKeyPoint].position, speed * Time.deltaTime); 
    } 

    void OnTriggerEnter(Collider Player) 
    { 
     Destroy(Player.gameObject); 
    } 

} 

Keine Überlastung bei der Methode 'Distance' dauert 1 Argumente.“

Wie es zu beheben?

+1

Welcher Teil der Fehlermeldung ist für Sie verwirrend? Es ist sehr schwierig, * nützliche * Hilfe ohne diese Informationen zur Verfügung zu stellen. –

+0

Im aktuellen Zustand der Frage sieht es nicht anders aus als Tausende von ähnlichen einmal, die durch die Suche nach Fehlermeldung gefunden werden könnte - (dh http://stackoverflow.com/questions/19517794/how-to-fix-no -overload-for-method-takes-0-Argumente, die ich als Duplikat verwendet habe. Wenn das nicht genug Erklärung liefert - stellen Sie sicher, dass Sie Ihre Frage bearbeiten, um zu klären, was Sie nicht verstehen (vielleicht müssen Sie dafür eine neue, spezifischere Frage stellen). –

Antwort

0

Der Distance Aufruf, den Abstand zwischen zwei Punkten zurück, aber der Code, den Sie geschrieben Ich glaube, Sie haben ein "-", wo Sie ein "," wollten.
Versuchen Sie dies:

if (Vector3.Distance(transform.position, keyPoints[currentKeyPoint].position) <= min_Distance) 
+0

Das war es! Vielen Dank für deine Hilfe! –

Verwandte Themen