Willkommen zurück, meine Spieleentwickler.
Wie Sie sehen können, haben wir hier ein paar Stacheln geschaffen.
Wenn wir diese Fahrräder haben,
wenn ich auf ihnen stehe, gehen wir los.
Ich werde beschädigt. Und wenn ich stehe und zurückgehe,
werde ich nicht beschädigt.
Und wenn ich stehe und weiter stehe, werde ich beschädigt.
Aber jetzt, weil ich immer noch unbesiegbar bin,
werde ich wieder beschädigt.
Wenn ich weiter hier drin stehe,
damit ich vielleicht sterbe,
gehe ich ein bisschen weg
und verschwenden wir keine Zeit mehr.
Und lasst uns anfangen.
Oh, okay, also lasst uns zur Spike-Kreation kommen.
Und ich habe schon die Stacheln und alles geschaffen.
Nun, das ist etwas, das ich nicht gerne mache.
Ich mag es nicht, Dinge außerhalb des Bildschirms zu machen und es Ihnen dann zu sagen,
aber weil ich sicherstellen wollte, dass
dieses Video so effizient wie möglich ist,
ist es lange und etwas muss erklärt werden.
Aus diesem Grund
habe ich alle Animationen erstellt und so weiter.
Ich gebe dir einfach eine kurze Tour.
Was ich getan habe, habe ich mich für eine dieser drei Fallen entschieden
.
Ich bin wieder im Spiel gegangen.
Ich habe die Sprites ausgewählt,
ich bin mir sicher, dass es 32 mehrere
sind, das Sprite bearbeitet und 32 mal 32 aufgeschnitten,
den Filter erstellt und so weiter.
Ich habe dann diese Spike-Falle erstellt,
die einen Sprite-Renderer hat.
Ein Animator wird dazu kommen und
ein Box Collider, der gerade um ihn herum ist,
was auch ein Auslöser ist, weil wir
möchten, dass der Spieler darüber läuft.
Okay?
Jetzt habe ich auch eine Animation für den Spike erstellt.
Man ist untätig, einer knallt,
also steht der Leerlauf einfach da, tut nichts.
Dies ist die Standardanimation.
Und dann knallen die Stacheln,
die hier drin sind.
Du wirst sehen, dass ich einen erstellt habe, um das privat zu machen.
Also los gehst du. Du siehst,
und warum sollte ich es etwas langsam machen?
Ich wollte dem Spieler nur die Chance geben,
zweimal darüber nachzudenken, bevor ich wieder dort bin.
Es hat also nichts damit zu tun
dass der Spieler
anhält und er beginnt auszulösen.
Und dann hat er ein paar Frames.
Kann das genau hierher bewegen.
Er hat ein paar Frames, um seinen Fehler zu erkennen
und dann zu versuchen, davor davonzulaufen.
Wenn das aus dem Weg ist,
sprechen wir über den Animator und was wir hier gemacht haben.
Also habe ich das Ival erstellt,
es zum Standard-Ebenenstatus gemacht
und dann die beiden Übergänge erstellt,
von denen einer 21 ging.
Ich habe hier auch einen Parameter erstellt, der
ein boolescher Wert für die BOP-Spikes ist.
Und sobald die Pop-Spikes wahr sind ,
gehen wir vom Leerlauf zu Pops Spikes.
Wir haben keine Übergangsdauer,
wir haben keine Ausstiegszeit.
Aber wenn wir vom Bopping zurückkehren,
haben wir eine Ausstiegszeit, die etwa
90 Prozent der Animation entspricht.
Wir können es sogar auf eins erhöhen, bis
wir die gesamte Animation beendet haben und dann zurückkehren.
Ich schaffe es eher 0,57.
Aber aus irgendeinem Grund, als ich es dafür einstelle,
verschwindet die Animation hier drin.
Ich bin wirklich verwirrt, warum das passiert.
Mir gefällt es überhaupt nicht.
Also 92 vielleicht 1906.
1907 lässt einfach alles verschwinden,
was extrem nervig ist.
Und ich habe keine Ahnung warum das passiert.
Aber wie auch immer, wir haben eine Ausstiegszeit
, die 96 Prozent der Animation beträgt.
Dann gehen wir zurück. Nun, das ist aus dem Weg,
wenn du eins machst, pausiere das Video jetzt,
mach alles dafür.
Erstelle alle Animationen und so weiter.
Weil ich fortfahre und mit den Skripten beginne
, indem ich einen erstelle,
nennen wir diesen Ordner die Fallen.
Vielleicht willst du mehrere Fallen erstellen.
Und hier drin werde ich die Stacheln erstellen.
Klicken Sie also mit der rechten Maustaste, erstellen Sie das C-Sharp,
und lassen Sie uns die Spikes machen, drücken Sie die Eingabetaste,
wählen Sie die Spike-Falle aus.
Und ich schleppe diese Parks hier rein.
Jetzt doppelklicke ich und
öffne es und Visual Studio.
Bevor wir fortfahren, lassen Sie mich jetzt
einfach erklären
was die Grundidee ist oder wie dieser Anstieg funktionieren wird.
Denn in nur ein bisschen werde ich die Herausforderung stellen
und möchte, dass du weißt, wie der Spike funktionieren wird.
Der Spieler läuft also herum,
während der Spieler, kein Spieler, herumläuft.
Dann plötzlich, während die Stacheln versteckt und versteckt sind,
geht er auf den Stacheln rüber und sie fangen an zu springen.
Wenn sie ihn also treffen,
wollen wir, dass
die Animation eine Art Ereignissystem hat
und dass dieses Ereignissystem die Blade beschädigen wird.
Wir müssen also
die Schadensbetragsvariable haben, um einen Verweis auf diese Ebene zu erhalten
, und wir
müssen hier ein Ereignis hinzufügen, das ihm Schaden zufügen wird.
Wir möchten auch sicherstellen, dass wir ihm weiterhin Schaden zufügen wollen, wenn
der Spieler noch auf den Stacheln steht
.
Werden Sie nicht nur einmal beschädigt
und überspringen Sie dann das Stehen hier und fühlen Sie nichts.
Wir möchten auch sicherstellen, dass der Spieler, wenn
er die Stacheln aktiviert, verschwindet.
Wir wollen nicht, dass er immer wieder beschädigt wird, denn während
die Animation der Spikes
funktioniert und das Ereignissystem immer noch ausgelöst wird,
oder Sie werden sehen, wie alles
funktioniert, wenn wir das tatsächlich erstellen.
Aber bis dahin werde ich eine Herausforderung stellen,
die tiefe Schicht mit Stacheln zu beschädigen.
Erstellen Sie also zunächst eine Variable für den Schaden und
der Spieler, den wir beschädigen sollten
, muss den Unternehmer Enter erstellen.
Sie müssen die Animation starten
und sicherstellen, dass sie stoppt.
Stellen Sie also sicher, dass es stoppt, bedeutet, dass wir
möglicherweise brauchen und auf Zuckeraustritt.
Dann musst du den Spieler mit dem Eventsystem beschädigen
.
Und schließlich möchte ich nur, dass du
darüber nachdenkst, was passieren sollte, wenn
die Unschärfe auf den Stacheln bleibt und dann ausgeht.
Wenn das aus dem Weg ist,
pausiere das Video jetzt und erledige die Herausforderung.
Okay, willkommen zurück.
Zurück in unserem Skript hier drin
erhalten wir zunächst ein serialisiertes Feld,
das vom Typ Integer und dem Schadensbetrag sein wird
.
Dann werden wir eine private Leere erstellen.
Und es gibt keine Entschuldigung, keine private Leere,
einen privaten Collider 2D,
und dies wird der Spieler sein, der beschädigt werden muss.
Spar dir das auf.
Jetzt werde ich den Start entfernen und
aktualisieren, wenn wir sie später brauchen, können wir sie hinzufügen.
Es ist ziemlich einfach.
Ich werde den On Trigger Enter to D erstellen.
Ich werde prüfen, ob dieses
collision.com-Tag die Ebene ist.
Wenn ja, dann bekomme ich die Komponente, die die
letzte Haupttür ist.
Und ich werde weitermachen und den Bool setzen,
der Buchstabe sein wird
weil dies eine Zeichenfolgenreferenz ist.
Wir kriegen diese Motorräder.
Bob Spikes, kopiere das.
Und wieder hier drin.
Und lasst uns das machen.
Bikes, heb dir das auf.
Und dann erstellen wir hier eine Methode
, die den Spieler beschädigen soll, bei dem
es sich um eine öffentliche Schadensschicht handelt.
Und wir müssen dies auch auf wahr setzen.
Spar dir das auf.
Also werden wir dem Spieler Schaden zufügen.
Was sollen wir hier drin machen?
Wir werden den Spieler nur dazu bringen, die Dot-Get-Komponente zu
beschädigen,
den Gesundheitshandler des Spielers.
Und wir werden die
Schicht mit der Höhe des Schadens beschädigen.
Und bevor wir vergessen,
wie erhalten wir Zugriff auf
diesen Ebenenschaden, wenn der Spieler hier eintritt?
Was ist das Problem hier drin?
Die Anzahl der Spender existiert nicht.
Oh, tut mir so leid.
Betrag des Schadens.
Woher habe ich die Höhe des Schadens bekommen?
Ich bin mir sowieso nicht einmal sicher,
der zu beschädigende Spieler
der Kollision gleich sein wird.
Da sind wir los.
Also bei Trigger Enter prüfen wir,
ob es der Spieler ist?
Ja, wir starten die Pop-Spikes-Animation.
Dann setzen wir den Spieler als Kollision auf
Schaden, weil er deklariert ist,
wir wissen, dass wir dann den Spieler beschädigen werden.
Und schließlich werden wir wieder hier rein gehen.
Was ist das Problem?
Okay? Nichts Animation und wir
werden in der Szene auswählen.
Also los gehst du.
Wir können sehen, dass es anfängt, dann passiert nichts.
Und ein paar Sekunden warten wir und dann buchen wir hier,
ich füge das Event
und ich werde auswählen, ob der Spieler beschädigt werden soll.
Wir werden das speichern, um das Spiel zu starten.
Und wir werden sehen, dass wir ein Leben von 600 haben
, sobald ich auf diesen Rädern anhalte.
Jep. Da sind wir los.
Es schadet uns.
Es schadet uns nicht, denn wenn ich zurück zu den Stacheln gehe,
haben wir nichts zu beschädigen.
Lass es uns vorerst einfach auf 100 setzen, denn das Leben ist 600.
Also denke ich, dass er ein paar Treffer machen kann.
Jetzt haben wir die Stacheln.
Ja, da sind wir los.
Sie können sehen, dass es jedes Mal 100 entfernt.
Und weil wir diese Unbesiegbarkeit für ein paar Sekunden haben
,
wirkt sich der zweite Tipp nicht auf die Ebene aus.
Aber das Problem ist,
man sehen kann, dass es weiterspielt
und ich immer wieder beschädigt werde.
Der Spieler ist also gestorben, obwohl er außerhalb des Funkenumfangs steht
.
Was wir also tun sollten, ist zunächst,
wir die Animation bei Trigger exit 2D stoppen müssen.
Und hier drin mache ich einfach
das Gleiche wie ich hier drin.
Sucht nach dem Spieler.
Und wenn es der Spieler ist, der gerade die Kollision beendet hat,
setzen wir dies auf False,
speichern Sie das wieder in unserem Spiel.
Und da laufen wir das Spiel aus.
Jetzt gehen wir also hier rein,
wir werden beschädigt, wir gehen raus.
Da sind wir los.
Wir können sehen, dass die Animation aufhört,
aber es gibt etwas, wenn ich anhalte und zurückgehe,
du kannst das sehen, obwohl ich draußen bin, also geh zurück.
Ich werde immer noch beschädigt.
Warum? Weil die Animation hier immer noch abgespielt wird.
Ereignissystem wird immer noch
ausgelöst und wir wissen, was der Spieler ist.
Um das zu vermeiden,
erstelle ich einen öffentlichen Bool.
Und dieser öffentliche Bool, nur damit wir es im Inspektor sehen können
, wird es später auf privat setzen.
Und ich nenne das
den Give Player oder Damage Player
oder sollte den Spieler nicht beschädigen,
ich glaube, dass es dafür ein besserer Name ist.
Verben sollten den Spieler beschädigen.
Und sobald er drin ist,
ist der Spieler mit dem Sollschaden gleich wahr.
Wenn er draußen ist, ist der Spieler sollte beschädigen falsch.
Und dann überprüfe ich innerhalb der Schadensspieler-Methode,
ob wir den Spieler verwalten sollen.
Dann greifen wir auf den
Gesundheitshandler des Spielers zu und beschädigen den Spieler.
Jetzt, zurück in unserem Spiel,
sollten wir sehen, dass wir den Spieler nicht beschädigen sollten, wenn ich das Spiel führe
.
Sobald ich hier reingehe, sollten wir
den Spieler beschädigen, wir werden beschädigt.
Aber wenn ich aktiviere und dann nach draußen gehe, dann gehst du.
Du kannst sehen, dass das Spielerbuch beschädigen sollte, Buch.
Da sind wir los.
Du siehst, dass ich nicht mehr betroffen bin.
Ich hoffe, dir hat dieses Video gefallen.
Ich hoffe, Ihnen hat dieser Abschnitt gefallen.
Ich hoffe, Sie stellen Ihre Dateien immer auf ,
übernehmen Ihre Änderungen und erstellen Bewertungen.
Und dann werden wir im nächsten Abschnitt
sehen, wohin uns diese Reise führt.
Also werde ich weitermachen und hier sagen
, dass ich Spikes erstellt habe,
diese Schadensschicht, die Änderungen vornehme.
Und ich sehe genau hier und
die Meister, wie sich unser Spiel entwickelt.
Sieh dir an, wie viel wir getan
haben und schau, wie viel wir noch tun müssen.
Dieses Spiel fängt gerade erst an, also kann ich es kaum erwarten.
Verschwenden wir keine Zeit mehr und wir sehen uns
im nächsten Video.