Unity - Wie du deine Gegner bewegst
von Claudia Wendt

Erstelle zuerst ein Objekt, das als Gegner fungiert. Gebe deinem Gegner den Tag Enemy.
Wenn Gegner und Figur kollidieren, ist ein Tag sinnvoll, da mit dem Script vermittelt werden kann, das nur Objekte mit dem Enemy-Tag als Gegner relevant sind.
Erstelle ein C#-Script mit dem Namen "Enemy".
Öffne das Script in Visual Studio. Zuerst benötigt der Gegner eine Rigidbody-Componente:
private Rigidbody2D Rigidbody;
Jetzt benötigen wir die Awake-Funktion. Sie wird einige Zeit vor dem Start aktiv.
void Awake ( )
{
Rigidbody = GetComponent();
}
Jetzt füge dem Gegner eine Rigidbody2D-Komponente in Unity hinzu.
Ziehe jetzt das neue Script auf den Gegner.
Die Bewegung vom Gegner
Jetzt soll der Gegner sich basierend auf einer Geschwindigkeit in eine bestimmte Richtung bewegen:
Wir benötigen: private float speed
public void Move (Vector 2 direction)
{
body.velocity = new Vector2(direction.x * speed, body.velocity.y);
}
Damit das private float spped-Feld im Inspektor erscheint, setzt du davor:
Die Richtung des Gegners soll wechseln:
Wir benötigen:
private Vector2 movementDirection;
Jetzt wird Folgendes festgelegt:
movementDirection = direction;
Die direction.x tauschst du durch movementDirection.x aus.
Für den Richtungswechseln benötigst du die Update-Funktion:
Move(movementDirection);
Nach einer Bewegung in eine Richtung, kehrt der Gegner in die andere Richtung zurück.
Die Kollision mit Gegnern
Weiterhin muss der Gegner eine "Kollision entdecken".
Lesen Sie den ganzen Artikel
Claudia Wendt
Keine Verbindung
Verbindung wird wiederhergestellt
Etwas ist schiefgelaufen
Wir sind gleich wieder da