Die Straße überqueren
Teil des Abschnitts Grundlagen des Scripting in Unity der Unity-Journey von Coddy. Lektion 66 von 67.
Ein Hopper wartet am Rand einer stark befahrenen Straße. Autos kommen von links auf drei Fahrspuren und fahren hinüber. Der Spieler hüpft mit den Pfeiltasten nach oben und unten jeweils eine Fahrspur vor oder zurück und muss jeden Sprung so timen, dass er die andere Seite erreicht. Ein Auto, das den Hopper berührt, schickt ihn an seinen Startpunkt zurück.
Schreibe das ganze Spiel in ein Skript, Crossing, auf dem Hopper.
Aufgabe
SchwerSchreibe das Skript Crossing auf den Hopper, der bei z = -4 startet, unterhalb einer Straße mit drei Fahrspuren. Lege im Inspector carPrefab (das Car-Prefab), lanes (die z-Positionen der Fahrspuren: -2, 0 und 2), spawnEvery (1) und carSpeed (5) fest.
- Mit jedem Druck auf die Pfeiltaste nach oben springt der Hopper 2 Einheiten nach vorne (+z). Mit jedem Druck auf die Pfeiltaste nach unten springt er 2 Einheiten zurück, aber niemals hinter seine Startposition.
- Alle
spawnEverySekunden erscheint ein Car bei x = -9, y = 0.5 auf einer zufällig gewählten Fahrspur auslanes. Cars fahren mitcarSpeedEinheiten pro Sekunde entlang +x. Ein Car, dessen x-Wert größer als 9 ist, wird zerstört. - Ein Car trifft den Hopper, wenn ihre x-Positionen weniger als 1.5 Einheiten und ihre z-Positionen weniger als 1 Einheit auseinanderliegen. Bei einem Treffer wird
Hit!protokolliert und der Hopper an seine Startposition zurückgesetzt. - Wenn der Hopper z = 4 erreicht, die gegenüberliegende Seite, protokolliere
You made it!und schalte das Skript aus.
Drücke Play, überquere die Straße und klicke dann auf Check.
Probier es selbst
using System.Collections.Generic;
using UnityEngine;
public class Crossing : MonoBehaviour
{
[SerializeField] private GameObject carPrefab;
[SerializeField] private float[] lanes;
[SerializeField] private float spawnEvery = 1f;
[SerializeField] private float carSpeed = 5f;
void Start()
{
}
void Update()
{
}
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen des Scripting in Unity
1Dein erstes Skript
Hallo, UnityPlatziere den WürfelBewege dich in jedem FrameDrehe dich jede SekundeSteuere mit den TastenRückblick: Steuere den Würfel4Vektoren
Vektoren addierenRichtungenLokaler und globaler RaumDiagonale GeschwindigkeitAbstand zwischen ObjektenVector3 ist ein StructRückblick: Drohnenpilot7Projekt: Fang den Stern
Der FängerEin fallender Stern10Der Lebenszyklus eines Skripts
Awake und StartUpdate und LateUpdateOnEnable und OnDisableDie Reihenfolge im LebenszyklusRückblick: Lifecycle Logger5Transformationen und Hierarchie
Eltern und KinderSkalierungDinge ansehenAuf einen Punkt zubewegenRückblick: Umlaufender Mond8Dinge finden
Nach Namen findenTagsNach Typ findenReferenzen schlagen FindUnitys NullRückblick: Nächste Münze11Projekt: Weiche den Blöcken aus
Der LäuferFallende Blöcke6GameObjects und Komponenten
Referenzen im InspectorEine Komponente abrufenFehlende KomponentenEine Komponente hinzufügenRequireComponentEin- und AusblendenRückblick: Lichtschalter