Transkripte
1. Einführung in meinen Roblox: Hallo, ich bin Nico, auch bekannt
als Calvin Draw und willkommen zu meinem Anfängerkurs für Roadblock Scripting hier auf Skillshare. In diesem Kurs lernst du deine ersten Schritte beim
Entwickeln von Spielen mit Roblox. Auch absolute Anfänger
sind hier willkommen, da in dieser Klasse eine
Lua-Einführung enthalten ist. Nachdem Sie
sich mit Lua vertraut gemacht haben, werden
wir uns einige
grundlegende Roblox-Konzepte
wie Klickdetektoren,
Positionswechsel und
das Touched Event ansehen wie Klickdetektoren,
Positionswechsel . Und natürlich viel, viel besser ausgestattet mit
diesem Wissen. Anschließend werden Sie mit der
Erstellung Ihres Projekts fortfahren. Dein erstes EIN Spiel, das ein RB sein wird. Sie können alles, was Sie
gelernt haben und noch mehr, Ihrer Kreativität freien Lauf
lassen. Am Ende wird es
sogar
einige zusätzliche
Zwischenthemen geben einige zusätzliche
Zwischenthemen , die auch
für Romanovs
Spieleentwicklung sehr nützlich
sein werden . Worauf warten Sie noch, melden
Sie sich jetzt für diesen Kurs
an und beginnen Sie mit den ersten Schritten zur Entwicklung großartiger
Spiele und Roblox. Wir sehen uns in
der ersten Lektion.
2. Kursübersicht: In Ordnung, Willkommen bei den
Roblox-Kernen für Anfänger. Und dies wird
ein kurzer kleiner Überblick
darüber sein , was Sie
in diesem Kurs erwarten können. Zuallererst
ist in diesem Kurs eine
kurze Einführung enthalten, die
sehr, sehr nützlich sein wird. Wenn Sie also noch nie in Lua
gescripts geschrieben haben, ich nur empfehlen, dies
durchzugehen. Das erspart Ihnen
stundenlange Kopfschmerzen, da Sie
keine richtigen Spiele
und Roblox entwickeln können , wenn Sie nicht zumindest ein
bisschen Schleife für Schleife wissen, werden
wir über
das Roblox Studio sprechen. Wir werden über das
Referenzieren von Teilen sprechen, die verschiedenen Arten von Skripten. Wir werden uns einige Ereignisse und
Funktionen
ansehen oder Bewegung hinzufügen. Wir werden uns sogar ein bisschen mit Gewalt und
Einschränkungen befassen ein bisschen mit Gewalt und , wenn sie über
den Unterschied zwischen
Spielern und Charakteren sprechen , wir werden eine
Bestenliste erstellen, Teile zum Sammeln
hinzufügen, dem Spieler eine Spur hinzufügen
und noch ein paar Dinge mehr. Nachdem wir mit den
Grundlagen fertig sind, werden wir
ein benutzerdefiniertes Spiel machen , das ein OB sein
wird, und das wird auch
wirklich großartig sein. Nach dem RB habe ich auch
einige
Zwischenthemen, die wir behandeln werden, wie das Veröffentlichen des Spiels, Hinzufügen von GUI-Bildern, das
Speichern der
Daten mit einem Datenspeicherdienst
und einige weitere
Dinge, die
im Laufe des Kurses ebenfalls
sehr nützlich sein können . Zu jeder Vorlesung
erhalten Sie eine RB-Excel-Datei. Sie haben also im Grunde nicht für
jede einzelne Vorlesung einen Überblick über die Skripte
erhalten jede einzelne Vorlesung , die wir geschrieben haben Roblox verfügt über einige ziemlich
leistungsstarke Tools zum Erstellen. Ich hoffe also, dass du die Reise genießen wirst dein
eigenes
erstes Roblox-Spiel zu entwickeln. Wir sehen uns in
der nächsten Vorlesung. Also, ja.
3. (Lua) Roblox Studio installieren: In Ordnung, willkommen
zum Roblox-Kurs. Und in dieser ersten Vorlesung werden
wir
Roblox Studio auf Ihrem PC installieren. Wenn Sie den Roadblocks
Player theoretisch installiert haben, sollte
Roblox Studio
ebenfalls installiert sein. Wenn dies jedoch nicht der Fall
ist, können
Sie zu
roblox.com slash
create navigieren und einfach
auf Start create klicken. Es wird dann geprüft, ob Sie
Roblox Studio installiert haben. Es sollte dann
ein Pop-up haben, falls es nicht gestoppt wird, damit
Sie es starten können. Und wenn Sie es nicht installiert haben, können
Sie das Studio einfach
herunterladen. Dies ist nur eine
EXE-Datei, und wenn Sie starten, werden Roadblocks wie
jedes andere Programm
auf Ihrem PC
installiert . Wenn du nicht
angemeldet bist, liest
du mit so
etwas. Also gibst du einfach deinen Benutzernamen und dein Passwort ein und loggst dich ein, das Login und dann wird Roblox
Studio gestartet. Wir werden das
einfach maximieren. Und du siehst, in meinem Fall habe ich schon einige
aktuelle Spiele, oder? Ich habe bereits einige Dateien, lokale Dateien und sogar
Online-Dateien für Sie. Das ist wahrscheinlich
leer unter meinen Spielen. Du solltest jedoch deinen Platz
haben. Es gibt immer etwas
, das existiert und unter neu kannst du ein neues Spiel starten. Lass uns ein neues Spiel erstellen. Lass uns die
Grundplatte hier wählen. Und nachdem es geladen ist, können
Sie sehen, dass es jetzt
im Grunde einen neuen Ort erstellt hat. Es tauchen viele Dinge auf. Normalerweise schließe ich hier sowohl die Toolbox als auch den
Terrain-Editor. Und ich mache auch das rechte
und ein bisschen größer. Und ich gehe auch zu View und schalte die Ausgabe , weil das eigentlich
ziemlich wichtig ist. Es ermöglicht uns,
bestimmte Ergebnisse zu sehen, und das werden
wir in
Kürze in den nächsten Vorlesungen sehen. Eines fällt auf, dass
Sie diese Datei
mit einer kleinen Wolke hier haben . Und wenn ich Control S drücke, kannst
du sehen, dass
es mein Spiel speichern möchte, das
aber vorerst in
der Roblox Cloud
speichern möchte. Ich schlage vor, das
nicht zu tun. Was ich dir
empfehle ist, dass du zu Datei gehst und entweder in Datei speichern oder Datei speichern, weil das
macht es tatsächlich so, dass du
eine RB Excel-Datei auf
deiner lokalen Festplatte hast eine RB Excel-Datei auf ,
das ist eigentlich ein bisschen besser,
besonders wenn
du z.B. auf ein Problem stößt,
du kannst einfach
deine OB Excel-Datei teilen und dann
kann ich sie mir ansehen, z.B. und du wirst auch Zugriff haben,
als
Sie können wahrscheinlich alle OBX-Dateien sehen,
die in diesem Kurs generiert wurden
. Jede Vorlesung hat also eine RB-EXE-Datei, in der
alle Assets, alle Skripte, die wir schreiben, alles drin ist. Und du kannst im Grunde jeden Schnappschuss
sehen. Moment habe ich das
zwar auf der lokalen Festplatte
gespeichert, ich habe immer noch die Cloud. Wir wollen nur diesen Ort
schließen und sie werden die
Datei aus der Datei öffnen. Und dann öffnen wir
einfach die Datei, die wir gerade erstellt haben. Und Sie können jetzt sehen, dass dies absolut nur unsere lokale Datei ist. Und wenn wir Control S
drücken und es wird tatsächlich
wieder auf
unserer Festplatte gespeichert , wirklich cool. In den kommenden Vorlesungen werden
wir Ihnen zunächst
eine kleine Einführung geben,
um
Sie mit der Programmiersprache Lua vertraut zu machen . Dafür benötigen wir eigentlich nur den Explorer und hauptsächlich
den Server-Skriptdienst sowie den Play-Button. Wenn wir
die Play-Taste drücken würden, kannst
du sehen, dass unser
Spielmodus plötzlich geladen wird und wir
tatsächlich in dieses Spiel laden würden. Ich kann mich jetzt bewegen
und springen. Das ist also im Grunde für
dich da, um dein Spiel zu testen. Aber wie gesagt, all die Dinge,
die mich umgeben, viele dieser Knöpfe werden in
der Einführung auf
das Klo nicht viele dieser Knöpfe werden in
der Einführung auf
das Klo nicht erwähnt. Zuallererst
möchte ich nur, dass du ein sehr,
sehr solides Fundament bekommst , Herr, das ist extrem wichtig. Und dann werden wir
absolut tolle Dinge machen. Und das wird für
diese Vorlesung hier sein. Ich hoffe, Sie fanden das nützlich und Sie werden etwas Neues lernen und wir sehen uns alle
in der nächsten Vorlesung. Also, ja.
4. (Lua) Variable Typen in Lua: Ordnung, also lasst uns hier mit
der Lula-Einführung
für den Roblox-Kurs fortfahren . Und in dieser Vorlesung
werden wir über Variablen sprechen. Variablen sind nun im Grunde
Speicher für bestimmte Daten. Aber was bedeutet das alles? Richtig, wir haben uns hier ein bisschen
von den
Dingen in der Umgebung angesehen . Und jetzt werden wir
reingehen und
unser erstes Drehbuch erstellen und
uns das dann ansehen. Wir werden diese hier
im
Server-Skriptdienst erstellen . Also wir klicken einfach auf das Plus und dann siehst du es
schon häufig
verwendetes Script. Wenn du etwas kreierst
, willst
du normalerweise diejenigen, die nicht ausgegraut
sind Das ausgegraute Zeug
ist im Grunde, ähm, normalerweise willst du diese Art von Teilen
und Dingen sozusagen nicht innerhalb dieses
Containers
erstellen . Aber wir wollen ein Drehbuch erstellen,
also machen wir das. Das Skript wird sofort
geöffnet. Sie können die Kunst hier vergrößern,
indem Sie die Strg-Taste gedrückt halten und dann einfach
mit dem Mausrad nach oben scrollen.
Sie verkleinern die Grafik, indem Sie nach unten scrollen. So können
Sie hier also hineinzoomen. Das ist auch sehr wichtig. Noch ein Skript hier, ich werde es
tatsächlich umbenennen. Es gibt mehrere
Möglichkeiten, dies zu tun. Klicken Sie mit der rechten Maustaste und Sie
können zu Umbenennen wechseln. Sie können auch einfach F2 drücken und dann werden Sie
aufgefordert, dies umzubenennen. Oder du kannst gehen, wenn du
die Eigenschaften hier unten
hast, kannst du einfach
hier zum Skript gehen und das dann einfach aufrufen. Wir werden
das 01 Dash Variablen nennen. Denn das ist, naja, das ist sozusagen die erste Vorlesung, auf die wir uns
wirklich einlassen. Und wir werden das Variablen
nennen. Da hast du es. Nun, was
hier sehr wichtig ist, ist, dass es dieses spezielle Ding bereits
mit einem Aufdruck hier drüben ausfüllt . Wenn wir also nichts tun würden, lösche
ich einfach,
was ich zuvor hatte. Wenn wir nichts tun und
einfach auf Play klicken, oder? Was Sie feststellen, ist, dass, naja, nichts passiert,
weil
wir im Moment unsere Konsole nicht haben. Wir müssen dies oder das tatsächlich
aktivieren. Wir gehen zu View und
wollen zur Ausgabe gehen. Das ist also unsere
Ausgabe und Sie können jetzt helloworld von sehen, gesendet vom Server. Wir werden in
diesem Skript mit einem Namen,
oh, einer Bindestrichvariablen
darüber sprechen diesem Skript mit einem Namen,
oh, einer . Und von Zeile eins an, wenn wir zu dem Tab hier zurückkehren , wo wir unser Drehbuch
haben, können
wir sehen, dass dies
Zeile eins ist, wunderschön. Jetzt können wir
das beenden und fortfahren. Also werde ich
meinen Kommentar hier noch einmal hinzufügen. Wir werden ein
bisschen mehr
über Kommentare und solche
Dinge sprechen . Ich möchte das nur
oben im spezifischen Skript haben,
nur damit wir wissen
, dass wir uns gerade im
Null-Eins-Variablen-Skript befinden. Also der Druck, der dir
egal ist. Also wählen wir es einfach aus und
drücken Löschen, um es zu löschen. Und wir werden
über Variablentypen sprechen. Nun zur allgemeinen Übersicht wollen
wir Variablen, weil wir bestimmte Daten speichern
wollen. Also
wollen wir vielleicht eine Nummer speichern. Das könnte ein Highscore sein, Gesundheit das Reittier,
irgendwas in der Art. Also werden wir einfach
sagen, dass x gleich zehn ist. Und jetzt wird in diesem Fall
jedes Mal, wenn ich von x
spreche, dies
für eine Zahl stehen. In diesem Fall
steht dies für eine Ganzzahl. Eine Ganzzahl ist nur
eine ganze Zahl, also wird es zwei
oder fünf oder -27 sein. Das ist alles in Ordnung. Aber wenn wir
etwa 20,8 wollen, obwohl das jetzt ein Float ist, mache
ich das
20,8, das ist ein Float. Wenn wir das deklarieren, richtig, wenn wir Variablen erstellen, wollen
wir im Grunde
den Namen der Variablen sagen. In diesem Fall ist also x gleich. Dies ist der Zuweisungsoperator, was
im Grunde bedeutet, dass
wir
diesen Wert dieser Variablen zuweisen . Wenn das alles sehr neu für
Sie ist, machen Sie sich keine Sorgen. Während du damit arbeitest, wirst
du in der Lage sein
, mehr und mehr
zu verstehen, was das alles
vorerst bedeutet, du kannst im Grunde einfach darüber
nachdenken, als ob x nur eine Art Platzhalter
ist
, den wir platziert haben. Und wenn der
Code dann richtig läuft, wenn das Skript ausgeführt wird, dann sagen wir, okay, mit x meinen sie tatsächlich zehn. Während wir uns
das in Zukunft
etwas genauer ansehen. Ich werde das einfach ausdrucken damit du sehen kannst, ob wir
einen Druck und dann eine Klammer haben einen Druck und dann eine Klammer und wir ein x
hineinlegen, oder? Und dann die schließende
Klammer, was wird
das ausgeben, die Frage ist,
dass X ausgegeben wird als
würde der Buchstabe X eine Zehn ausgeben. Nun, spielen wir einfach und
Sie werden sehen, dass es
zehn ausgibt , weil wir den Wert ausgeben,
der innerhalb der Variablen x liegt. Eine gute Metapher, die viele
Leute verwenden, ist, dass Variablen
im Grunde genommen nur Buckets sind und
irgendeine Art von Daten enthalten. Es gibt einen speziellen Typ
und der heißt Null. Dies ist eine spezielle Art von Wert, und dies steht im Grunde für
das Fehlen eines Werts, in bestimmten
Programmiersprachen
auch Null genannt wird. In diesem Fall heißt es Null. Das bedeutet nicht
, dass das Null ist. Das bedeutet, dass es
nichts anderes als eine andere Art von Variablen ist, oder die Booleschen Werte. Nun können Boolesche Werte entweder wahr oder falsch
sein, manchmal auch mit
Eins oder Null dargestellt , aber sie
werden so geschrieben. Das ist also ein boolescher Wert
und sie können
entweder wahr oder falsch sein . Wie sieht das jetzt aus? Nun, wir können z.B. sagen, dass es ein
guter Kurs ist und wir
würden natürlich
hoffen, dass das auch stimmt. Und Sie können sehen, dass sich
dadurch auch die Farbe ändert. Im Grunde sind dies bestimmte Schlüsselwörter oder
bestimmte Variablentypen. Sie können
hier im Grunde die Schriftfarbe
ändern und
dies sogar fett vermarkten. Wir können dann einen anderen
booleschen Wert haben, z. B. ist geerdet. Das ist etwas
, das einem Spiel etwas
näher kommt. Und das könnte
gleichbedeutend mit falsch sein. Und Sie können sehen, dass es uns
manchmal auch Dinge
vorschlägt. Während wir also tippen, richtig, was Sie sehen können, schlägt es bereits
vor, Oh, das soll
falsch sein und Sie können
die Tabulatortaste drücken , um das
automatisch zu vervollständigen. Schließlich haben wir auch Saiten. Jetzt werden wir in
einer zukünftigen Vorlesung
etwas ausführlicher
darüber sprechen . Aber im Grunde sind Zeichenketten wie Wörter und
sie sind immer von diesen
Anführungszeichen
umgeben. So können wir z.B. HelloWorld sagen. Und du siehst,
das ist alles in Ordnung, obwohl ich hier
ein Leerzeichen habe weil es von
Anführungszeichen umgeben ist, können
wir das gesamte Wort speichern. Sie könnten
auf die Tatsache stoßen, dass ich
vielleicht tatsächlich mehrere Zeilen
möchte. wären viele Wörter, z. B. und so machst du das, indem du offene Klammern machst
und
du kannst sehen, dass die
schließenden Klammern normalerweise automatisch generiert werden. Und dann kannst du hier
einfach hallo,
hallo student und dann ein Komma eingeben . Und dann könntest du sehen, ich
kann das weiterschreiben. Ich schreibe, weil es
Spaß macht , mehrere
Zeilen zu grüßen. Du gehst, aber lass uns
jetzt mehrere Zeilen geben. Und das ist die allgemeine
Idee hier, oder? Um es hier am Ende zusammenzufassen, richtig, Variablen insgesamt, unsere Datenblöcke, die einige Daten
enthalten, und diese können
unterschiedliche Werte haben und können unterschiedliche Datentypen sein. Sie kann eine normale
Zahl enthalten, die eine Ganzzahl ist. Sie kann Gleitkommazahlen enthalten
, also Zahlen mit einem Dezimalpunkt. Es könnte auch nu sein, was das Fehlen eines Werts
ist. Du kannst Boolesche Werte haben
und du kannst auch
Stärken haben , wo das
für diese Vorlesung hier war. Ich hoffe, Sie fanden das nützlich und Sie werden etwas Neues
lernen und wir sehen uns alle
in der nächsten Vorlesung. Also ja.
5. (Lua) Ausgabe und Kommentare: Ordnung, lassen Sie uns
die Lula-Einführung für den Roadblocks-Kurs
hier fortsetzen . Und in dieser Vorlesung werden
wir uns die Ausgabekommentare ansehen und ein bisschen damit, wie man
Skripte liest Ausgabekommentare ansehen
und ein bisschen damit, wie man
Skripte liest, damit wir noch einmal
beginnen Im Server-Skriptdienst klicken
wir auf
das kleine Plus hier, erstellen Sie ein neues Skript. Und wir werden das umbenennen
, indem wir die Taste F2 drücken. Und wir werden das
in
O2 Dash Output Comments umbenennen . Wie wäre es mit
dem? Da hast du es. Und dann schauen wir mal,
was wir tun können. Nun, wir können diesen Druck tatsächlich
behalten. Ich werde das einfach
nach unten verschieben. Und hier oben werden wir unseren Kommentar erneut
erstellen. Das werden also
Ausgaben und Kommentare sein. Wunderschön. Da hast du es. Wir haben diesen
Druck also schon einmal gesehen und er gibt hier
unten in der Ausgabe etwas aus. Wenn Sie
dies nicht noch einmal haben, können
Sie zu Ansicht gehen und es hier
aktivieren. Sie können also sehen, dass dies
jetzt aktiviert ist, da es eine Art Schaltflächenhintergrund
hat. Und wenn es nicht aktiviert ist,
dann hat es das nicht. So aktivieren Sie das also im
Grunde . Und da hast du es. Wenn wir das in
einem Skript haben und auf Play klicken, dann sehen Sie das, was Sie
unten in der Ausgabe
sehen und Helloworld vom Server aus sehen. Wir werden
das gleich erklären. Und dann gibt es drei
Kommentare zur O2-Ausgabe. Also noch einmal, das liegt daran, dass dies in der dritten Zeile war. Lass uns damit aufhören und lass uns mit dem Drehbuch
weitermachen. Aber das ist schon ziemlich cool. Und das letzte Mal haben wir
über die Idee von Variablen gesprochen. Was ist, wenn wir
eine Gesundheitsvariable haben und die gleich 1.000 ist? Auch hier siehst
du wieder, dass
du die Leerzeichen
dazwischen nicht benötigst. Also sind Leerzeichen nur noch besonders wichtig
wie statt Zahlen, denn jetzt sind die
Zahlen
zwischen bestimmten Operationen nicht mehr miteinander verbunden, du kannst tatsächlich so
viele Leerzeichen setzen, wie du möchtest. Normalerweise empfehle ich es nicht. Entweder ein Leerzeichen
oder Null Leerzeichen sind
im Grunde die bevorzugte
Methode, um dies lesbar zu machen. Aber ja, Sie können so
viele Leerzeichen einfügen, wie Sie möchten. Und jetzt, anstatt
HelloWorld auszugeben, können wir sagen, dass das okay ist,
was die Gesundheit des Spielers
angeht, da ist Gesundheit. Und dann stellt
sich die Frage, okay, wie machen wir, wie können wir dann diese Tausend
ausgeben? Natürlich
könnten wir sagen, naja, es sind 1.000, das ist großartig. Aber wenn wir das jetzt
auf 500 ändern , weil wir vielleicht
getroffen wurden oder so, wird
hier immer noch 1.000 stehen. Das funktioniert also nicht ganz
so, wie wir es uns wünschen würden , wenn wir es bei 1.000 belassen. Und wir sagen eigentlich,
nun, Gesundheit, oder? Und dann ist es so,
nun, offensichtlich
wird es diese
Variable hier nehmen. Nun,
schauen wir einfach, was passiert. In der Tat tut es das nicht. Es heißt nur, dass die
Gesundheit des Spielers Gesundheit ist, was wir hier natürlich nicht ganz im Sinn hatten. Was wir ausgeben wollen, ist der Wert dieser Variablen
und nicht der Name. Nun, wenn es in einer Schnur ist. Also wir haben schon einmal darüber gesprochen, innerhalb der Anführungszeichen, dann wird das einfach
als normales Wort gelesen. Es ist kein Schlüsselwort und es ist
nicht rot als Variable. Aber wir können die Variablen tatsächlich
verwenden. Das funktioniert. Es gibt zwei Möglichkeiten
, wie wir das tun können. Wir können entweder hier eine
Kolumne schreiben. Das ist in diesem Fall also spezifisch für die
Druckfunktion. Also nach der ersten
Zeichenfolge, richtig, können
wir ein Komma machen und
dann können wir Gesundheit sagen. Sie können sehen, dass es uns das tatsächlich
vorgeschlagen hat. Und dann drücken Sie einfach die
Tabulatortaste, um die automatische Vervollständigung durchzuführen. Dann geben wir ein weiteres Komma ein, und alles, was
danach kommt
, wird ebenfalls angezeigt. Wir können also beispielsweise HP sagen, und was jetzt
ausgegeben wird, ist die Gesundheit des Spielers, und dann
wird das Reittier hier in
der Gesundheitsvariablen gespeichert und dann direkt danach HP. Also lass uns einfach spielen und
sehen, was es ausgibt. Und Sie können sehen, dass die
Gesundheit des Spielers 1.000 HP beträgt. Perfekt. Jetzt gibt es dort
tatsächlich zwei Leerzeichen. Was wir also tatsächlich tun können, einfach damit aufhören und wir können das sogar loswerden,
denn in diesem Fall wird tatsächlich ein Leerzeichen hinzugefügt. Dies ist nicht die einzige Möglichkeit
, dies zu tun. Wir können einfach diese Zeile kopieren. Also wähle ich es einfach aus, drücke Strg C und dann Strg V, um es erneut
einzufügen. Und anstatt
das zu tun, können wir hier auch
Punkt Punkt und dann noch einen
Punkt Punkt machen . Und was das tun
wird, das, das wird
diese Variable mit der Zeichenfolge verknüpfen. Das könnte jetzt also etwas
komplizierter sein. Aber keine Sorge, wir werden in einer zukünftigen Vorlesung
etwas mehr darüber
sprechen . Und es sollte auch nicht zu verrückt
sein. Im Grunde sagen wir nur, dass dies eine Zeichenfolge ist. Dies ist eine Zeichenfolge. Und obwohl dies eine Variable ist, wollten
wir sie eigentlich auch zu unserer spezifischen Zeichenfolge hinzufügen . Es wird also fast
die exakte Ausgabe wie diese haben. Aber schauen wir einfach,
was hier passiert. Wenn wir das also ausgeben, können
Sie tatsächlich sehen, dass
kein Leerzeichen dazwischen ist, weil wir buchstäblich nur
das Letzte nehmen wir buchstäblich nur
das Letzte nehmen, was hier
ist, oder? Also das heißt, und
dann nehmen wir was auch immer diese Variable ist, was auch immer
der tatsächliche Wert dieser Variablen ist, wir konvertieren sie in eine
Zeichenfolge und dann
platzieren wir sie in diesem Fall einfach direkt
neben das S. Also hier wollen wir ein Leerzeichen. Wenn wir das also einfach beenden
und erneut starten, können
Sie dann sehen, dass
die Ausgabe in diesem
Fall genau dieselbe
sein wird , mit Ausnahme der HP. Denn noch einmal,
komm her, das generiert automatisch ein
Leerzeichen. Es hat übrigens nichts mit
diesen Leerzeichen zu tun , verwechseln
Sie sich nicht damit. Ich kann das einfach ausführen. Diese Räume haben also
nichts damit zu tun. Es hat nur
damit zu tun, wie
das Ganze
grundsätzlich interpretiert wird, oder? Das sind also zwei Arten
der Ausgabe hier. In diesem Fall auch ein Text
mit einer Variablen, was wahnsinnig nützlich sein kann, nicht nur für In-Game-Zwecke, sondern manchmal auch für
Debugging-Zwecke. Debugging
bezieht sich im Wesentlichen auf den Versuch, Probleme oder Bugs
in Ihren Skripten zu finden. Und das kann
manchmal sehr helfen. Schließlich
möchten wir auch über Commons sprechen, wo Sie die Kommentare
mit den zwei Bindestrichen bereits
gesehen haben . Das ist also im Grunde ein einzeiliger
Kommentar, den ich machen kann. Ich kann nur ein paar
interessante Dinge sagen, oder? Das könnte also sein, um
dir selbst oder anderen Dinge zu
erklären ,
deine Drehbücher zu lesen oder solche
Dinge. Jetzt
funktionieren diese nur für eine Zeile. Also, wenn ich hier noch eine Zeile mache, können
Sie sehen, dass
wir plötzlich alle eine Art Kommentar sind. Und Sie müssen die Bindestriche hier am Ende auch nicht hinzufügen. Das ist eine persönliche
Sache, die ich mache, also ist das überhaupt nicht erforderlich. Du kannst es auch einfach so
lassen und alles wird
einwandfrei funktionieren. Es gibt
jetzt eine persönliche Macke von mir , bei der Sie tatsächlich mehr Dinge hinzufügen
müssen , ist
für mehrzeilige Kommentare. Wir können also immer noch
die beiden Striche machen
und dann zwei Klammern öffnen. Sie können wieder sehen, wie
die schließenden Klammern automatisch
generiert wurden. Und dann haben
wir hier tatsächlich einen
mehrzeiligen Kommentar. Da hast du es. Das ist großartig. Da hast du es.
Sie können also sehen, dass dies jetzt ein
mehrzeiliger Kommentar
ist
und alles zwischen den Klammern hier ist im Grunde alles, was wir als Kommentar interpretieren
werden. Sie können das sogar mit
dem kleinen Pfeil hier schließen. Das wird also
ein bisschen netter sein. Du kannst das sogar tun. Und dann wird es geschlossen. Es wird
es so schließen. Das ist interessant. Okay,
nun, da hast du's. Das ist eine sehr interessante
Art, das zu tun. Das ist ein mehrzeiliger Kommentar. Wir haben etwas
Ähnliches gesehen, bei dem wir uns die
Rückseite der Variablen ansehen werden. Wir haben die mehrzeilige
Zeichenfolge hier mit
der gleichen Idee gesehen ,
obwohl sie in diesem Fall nur mit Kommentaren sein wird. Aber wie ich bereits erklärt habe,
wichtiger Hinweis, natürlich stehen
all diese Skripte immer für Sie zum Download
zur Verfügung. Die Skripte sind also
verfügbar und die RB XL-Datei für jede einzelne Vorlesung steht
immer zum Download zur Verfügung. Sie können also im Grunde alles
überprüfen, es sich eins nach dem anderen
ansehen. Also, wenn du vielleicht
etwas anderes
ausgegeben hast oder so, kannst
du
den Code immer noch einmal überprüfen, oder? Zusammenfassend können wir
noch einmal feststellen, dass die Druckfunktion eine Möglichkeit
ist, etwas auszugeben. Normalerweise willst du eine Zeichenfolge
ausgeben, oder? Wenn Sie also in
gedruckter Form schreiben, können Sie sehen , dass
es bereits vorgeschlagen wird,
und Sie können darin die
Tabulatortaste drücken,
um dann mit der Eingabe zu beginnen. Jetzt möchten
Sie normalerweise eine Zeichenfolge eingeben. Du willst also
mit den Anführungszeichen beginnen und dann kannst du dort einfach Dinge
sagen. Und das wird
innerhalb des Ausgabefensters ausgegeben. Und dann gibt es
auch einen Kommentar. Normale Kommentare beginnen
mit Bindestrich, Bindestrich und dann, was auch immer
Sie schreiben möchten, dies ist ein einzeiliger Kommentar. Mehrzeilige Kommentare
funktionieren mit einem Bindestrich, Gedankenstrich und dann den offenen Klammern. Nun, das war's für
diese Vorlesung hier. Ich hoffe, Sie fanden das nützlich und Sie werden etwas Neues lernen und wir sehen uns alle
in der nächsten Vorlesung. Also ja.
6. (Lua) Mathe: Ordnung, willkommen zurück
zur Klo-Einführung hier
für den Roblox-Kurs. Und in dieser Vorlesung werden
wir uns mathematische Operationen ansehen. Dafür werden
wir erneut auf
den Server-Skriptservern ein neues
Skript erstellen und es in A3 Dash Maths
umbenennen. Weil warum nicht? Da hast du es. Lassen Sie uns nun hier
unseren kleinen netten Kommentar
hinzufügen , mathematische Operationen. Und mal sehen, welche Arten von
mathematischen Operationen es gibt. Nun, natürlich
gibt es eine Ergänzung, das ist die erste und die Idee ist die
folgende, oder? Wir können also eine Summe haben und
das könnte z. B. 20 sein. Das wird also einfach wieder eine Variable
sein. Unsere 20 ist der Wert und some
ist der Name der Variablen. Und jetzt können wir
sagen, naja, einige sollten eigentlich 20 plus 50
sein, z. B. jetzt sollten das jetzt 70 sein. Also schauen wir uns das
mal an. Also , wenn ich
hier noch einen Druck mache
und sage, dass Summe ist, verwenden
wir einfach diesen. Also werden wir Summe sagen. Da hast du es.
Jetzt wird die Summenvariable
ausgegeben. Zuerst
machen wir tatsächlich die Summe gleich 20. Ändern wir das tatsächlich auf zehn. Es werden also
60 sein, weil das das ein bisschen besser demonstrieren
wird. Also werden wir zuerst
sagen, dass die Summe gleich 20 ist. Wir sagen, die Summe ist gleich
zehn plus 50. Was dann
rauskommen und hören wird, einige von euch vielleicht sagen,
nun, es wird 20 plus zehn plus 50 oder so
ähnlich sein. Lass uns einfach spielen und
sehen, was passiert. Sie können sehen,
dass einige 60 sind ,
weil das Letzte, was hier passiert
, ist , dass der Variablen
der Wert zehn plus fünf
zugewiesen wird . Dieser wird also einfach
ignoriert oder überschrieben , da Code immer von
oben nach unten
ausgewertet wird . Also beginnen wir bei Zeile
eins und es wird
durchgehen und
durchgehen und durchgehen. Und dann wird es so
sein, unsere Summe ist jetzt 20 und dann die nächste Zeile, unsere Summe ist jetzt 60,
weil ich diesen Ausdruck im Grunde als zehn plus 50
bewertet habe. Das ist die allgemeine Idee. Ich kann auch, ich kann sagen,
naja, was ich eigentlich machen möchte, ist, dass ich noch einen haben
möchte. Also sagen wir einfach, das wird die zweite Summe
sein,
denn, warum nicht? Und das entspricht der Summe plus
einem anderen Betrag, oder? Also plus 50 oder plus 150
können sein, was wir wollen. Und was wird
das jetzt sein? Nun, einige haben den Wert 20. Theoretisch
sollte das also 20 plus 150 sein, was 170 sein sollte. Wenn wir das also tun, können
wir sehen, dass einige 20 sind. Jetzt könntest du sagen,
warte, wie ist die 20? Ah, nun sieh dir das an. Wir geben
die Summenvariable und jetzt die zweite Summenvariable aus. Es gibt also immer etwas, das
Sie beachten müssen. Also noch einmal, wenn ich das schreibe, können
Sie sehen, dass es uns
das bereits vorschlägt und dann
können wir einfach die
Tabulatortaste drücken, um es automatisch zu vervollständigen. Und jetzt geben wir
die zweite Summenvariable aus. Und jetzt sollten wir
sehen, dass die Summe 170 ist. Jetzt können Sie auch alle anderen
Ausgänge
hier unten in der Ausgabe sehen . Das ist völlig in Ordnung und
du kannst es so belassen. Wenn Ihnen das jedoch
zu unübersichtlich wird, können
Sie einfach zu den
anderen Skripten gehen und hier
einfach Kommentare
zu allen Druckzeilen in
den anderen Skripten hinzufügen Druckzeilen in
den , damit Sie dort nicht
auch die
Ausgaben haben . Also behalte das im Hinterkopf. Das ist also eine Ergänzung.
Schauen wir uns jetzt die Subtraktion an. Kannst du dir vorstellen, wie das aussehen
wird? Nun, lass uns einfach eine, nennen
wir das einfach Subtraktion. Und das entspricht, naja, z. B. so
etwas wie 25 -50. Wird das funktionieren? Das wird
eine negative Zahl sein. In der Zwischenzeit, ich meine, schauen wir uns
einfach den richtigen Druck an. Und wir werden sagen,
das wird
einfach Subtraktion ist ,
und dann noch einmal Komma, und dann werden wir noch einmal Subtraktion eingeben
, automatische Vervollständigung
mit der Tabulatortaste. Lassen wir das einfach ablaufen
und schauen wir, was passiert. Und Sie können sehen, dass die Subtraktion minus 25
ist, das ist absolut kein Problem. Negative Zahlen
sind völlig in Ordnung. Das funktioniert also mit negativen Zahlen,
nicht negativen Zahlen, oder? Wir können auch 150 -50 haben
und dann werden es 100 sein. Das ist also wirklich cool. Die nächste Sache ist
natürlich die Multiplikation. Nun,
das wird die Frage Mole T. Nennen
wir das einfach
Multitasking, alles wird gut. Wie funktioniert das? Nun,
das ist mit einem Stern gemacht. Also das sind fünf Sterne, 40 z. B. und dann sollte es sein,
was sollte das sein? 200? Ja, genau. Es werden 200 sein. Das wird also Multiplikation
sein, und dann nochmal, mach einfach
das hier Multiplikation. Und das wird genau
das Gleiche bewirken. Nun noch einmal, was
ich hier sagen möchte, Sie müssen keine
Leerzeichen dazwischen setzen. Sie können Leerzeichen dazwischen setzen, müssen es
aber nicht. Es ist dieselbe Idee, wenn Sie die Leerzeichen hier einfügen, da
der Raum genau hier ist. Weil die Idee ist
, dass dies jetzt
ein Multiplikationsoperator ist ein Multiplikationsoperator , der in diesem Fall zwei ganze Zahlen
verwendet , können
Sie dies natürlich auch tun. Oh, was wird das bewirken? Nun, ich meine, lass uns das
einfach versuchen. Schauen wir uns an, was
fünfmal passiert. 40,5 ist 202,5. Das ist absolut richtig, und das funktioniert auch. Sie können also auch
fließende Zahlen verwenden. Das macht
es im Grunde ganz alleine. Das ist also auch ziemlich cool. Nun, die Teilung ist die eine Sache , die etwas
interessanter ist. Division ist natürlich Division und das
entspricht z.B. 20/3. Sagen wir das einfach
so. Okay, das ist interessant. Also lasst uns die Division machen. Ist, und dann
rufen wir das einfach an und lassen Sie uns sehen was uns das bringt.
20/3 ist, ich weiß nicht. Nun, es ist 6,66, 666666 das wiederholt sich, bis es auf sieben
läuft. Das ist also eine degenerierte Idee. Denken Sie also daran,
wenn Sie Dinge haben , die nicht perfekt
ineinander passen. Also 21/3
wäre natürlich sieben. Also, wenn wir das machen, bekommen wir
einfach sieben. Das ist großartig. Wenn Sie jedoch etwas haben
, das nicht gleichmäßig teilbar ist, erhalten
Sie
eine Dezimalzahl. Und das ist auch sehr wichtig. Wenn wir versuchen würden, durch Null zu teilen. Dies ist eine Sache, die Sie vielleicht schon einmal gehört haben
oder auch nicht. Wenn Sie mit Null addieren, nun, erhalten
Sie unendlich. Das ist also eine sehr interessante
Sache und das ist eine Eigenart von Lu sind mehr oder weniger, man kann tatsächlich durch Null dividieren. Das solltest du nicht tun. Es ist immer noch
so, als ob
das etwas ist , das eigentlich
kein Ding sein sollte. Und in diesem Fall bekommst
du Unendlichkeit. den meisten Programmiersprachen wird in diesem Fall
normalerweise eine
Fehlermeldung angezeigt. Also behalte das im Hinterkopf. Normalerweise solltest du
sicherstellen, dass du nicht durch Null teilst. Aber dann gibt es noch eine andere Sache die sehr interessant sein könnte, und das ist das Modalgesetz, auch der Rest
und das hier genannt, oder? Nennen wir
das einfach einen Rest. Und das entspricht, sagen
wir zum Beispiel, den 20. Und dann wird es ein Prozentzeichen
für
sein und das wird den Rest
drucken. Der Rest ist, lassen Sie uns einfach den Rest
ausdrucken
und sehen, was das sein wird. Und dann wirst du ziemlich
schnell sehen, was das bewirkt. Lass uns den Rest von drei
dividieren oder so. Und dann wirst du sehen, dass
der Rest hier zwei ist. Die allgemeine Idee ist also, dass ich
im Grunde nur
den eigentlichen
Teilungsprozess durchlaufe den eigentlichen
Teilungsprozess und dann sage, dass
dies der Rest ist Ich empfehle dringend, auch den Rest
auszuchecken. Das ist eine normale Sache. Ich denke, das
sollte im Mathematikunterricht gelehrt werden. Das sollte eine Sache sein, die im Mathematikunterricht gelehrt
wird. Und es kann
in diesem Fall für
bestimmte Dinge beim Programmieren
tatsächlich
sehr, sehr wichtig sein, denn wenn wir
den Rest von zwei machen würden,
also 20 modales O2,
ist das eine Methode, um zu also 20 modales O2, überprüfen, ob eine Zahl gerade oder ungerade ist, denn in diesem Fall ist
sie gerade, oder? Also, wenn wir das einfach spielen, bekommen
wir eine Null. Also können wir im Grunde sagen: Hey, wenn diese Zahl und dann machen wir Modulo zwei gleich Null, wissen
wir, dass es eine gerade Zahl ist . Und wenn wir das tun, können wir jede ungerade Zahl
machen, was, in diesem Fall 21,
das spielt keine Rolle. Dann holen wir uns einen. Wenn also der Rest Null ist, dann wissen wir in diesem Fall, wenn wir modales O2 verwenden, also wenn der Rest eins
mit Modal oder zwei ist,
dann wissen wir, dass die Zahl,
die ursprüngliche Zahl, eine ungerade Zahl
ist. Wenn es eine Null ist, dann ist es eine gerade Zahl
von in der Tat sehr interessant, nicht
zuletzt
gibt es etwas, das
als Inkrementieren
und Dekrementieren bezeichnet wird . Das bedeutet im
Grunde nur, dass wir einer bestimmten Zahl eins hinzufügen wollen . Also können wir zum Beispiel eine
Reihe von Cold Five haben, oder? Und dann können Sie in anderen
Programmiersprachen,
je nachdem, ob Sie schon einmal
programmiert haben oder nicht, Dinge
wie Zahl plus
plus oder Zahl minus minus tun . Was du jetzt sehen wirst ist, dass
das nicht funktioniert, okay? Wir können das einfach kommentieren
, oder? Wir werden einfach sagen, dass sie sind und dann
wird das
so sein , als ob es nicht funktioniert, weil
es einfach nicht funktioniert. Es ist einfach etwas, das uns
niedriger nicht bietet. Es gibt jedoch
Dinge, die wir
tun können , um diese Zahl zu erhöhen oder zu
verringern. Im Grunde können wir also
sagen, dass Zahl gleich
sich selbst plus eins ist . Das wird einfach die Zahl nehmen
, die
in diesem Fall als fünf definiert ist , und dann wird
einfach eins hinzugefügt, oder? Also noch einmal, das
ist nichts Verrücktes, es heißt nur, dass Zahl
gleich Zahl plus eins ist. Also nehmen wir einfach, was auch immer dieser Ausdruck ist, und
speichern ihn dann wieder in Zahl. Okay, das ist fair. Wir können auch Zahl
plus gleich eins haben. Das macht
genau das Gleiche. Es ist nur ein bisschen
kompakter und in einer Zeile geschrieben. Das sind genau die gleichen Dinge die
sie tun, ist genau dasselbe. Der Grund, warum Sie beide kennenlernen oder beide
gesehen haben
möchten ,
ist, dass manche Leute es vorziehen, es so
zu machen. Manche Leute ziehen es
vor, es so zu machen. Wenn Sie also die Drehbücher anderer
Leute lesen, ist
es sehr wichtig, beide gesehen
zu haben. Und dann gilt in diesem Fall natürlich
dieselbe Idee für Minus. Nun, du kannst
das sogar verlängern und du kannst sagen,
nun, was ist,
was ist damit, oder? Wenn wir mal gleich machen, absolut Zahlen, dann
wollen wir vielleicht gleich dividieren. Funktioniert das? Das wird sein, ich
weiß nicht einmal , wie der Sommer dort sein
wird, aber die Küstennummer
spielt jetzt verrückt. Modulo ist eigentlich gleich, ja, das können
wir auch. Nun, diesen habe ich noch nie
gesehen, als ob er wirklich irgendwo
gebraucht würde, niemals. Dieser. Es mag
bestimmte Momente geben, in denen das nützlich sein könnte, aber ja, die
meiste Zeit wirst
du
diese verwenden , vielleicht diese drei. Und diese beiden sind
sehr spezifische Dinge , die sehr, sehr selten sind. Aber noch einmal, das gesehen zu haben, kann in
der Tat sehr wichtig sein, oder? Um es noch einmal zusammenzufassen: Mathematische Operationen sind genau das
, was sie sagen, oder? sind es Operationen, die In diesem Fall sind es Operationen, die
bestimmte mathematische Funktionen ausführen, oder? Summierung also nur ein Plussymbol, ein Minussymbol für die Subtraktion, ein Stern für die Multiplikation und der Schrägstrich für die Division. Und in diesem Fall
auch der Prozentsatz für das Modell oder den Rest. Das ist also nur normale Mathematik. Jetzt fragst du dich vielleicht, warum
ich da Mathe brauche,
es gibt viele
Momente, in denen du vielleicht etwas Mathe brauchst, oder? Es könnte also sein, dass du vielleicht eine
Waffe hast und dann
einen bestimmten
Effektmultiplikator für Schaden hast, und dann hat der gegnerische
Spieler eine bestimmte Rüstung. Und du willst
sichergehen, dass die Gesundheit oder der Schaden
korrekt generiert werden , er
wird korrekt berechnet. Hier kommt all
die Addition, Subtraktion, Multiplikation,
Division oder das ins Spiel. Und all
das wird irgendwie, es wird etwas geben das am Ende herauskommt. Das wird
das sein, der Schaden. Nath kann also tatsächlich
sehr, sehr wichtig sein. Das sind natürlich nur
die Grundlagen der Mathematik. Aber mit diesen
Bausteinen kannst
du schon
ein paar ziemlich coole Dinge bauen ,
wo auch immer das für
diese Vorlesung hier ist. Ich hoffe, Sie fanden das nützlich und
Sie werden etwas Neues lernen und wir sehen uns alle
in der nächsten Vorlesung. Also, ja.
7. (Lua) Relationale und logische Operationen: Ordnung, willkommen zurück
zur Klo-Einführung hier für den Roblox-Kurs. Und in dieser Vorlesung
werden wir uns
einen relationalen und
logischen Operatoren ansehen einen relationalen und
logischen Operatoren Das klingt
heutzutage
sehr kompliziert, aber noch einmal, keine Sorge, wir werden
das zuerst durchgehen, es erstellt ein neues Skript
im Server-Skriptdienst genau hier. Und wir werden es 04 Dash
nennen. Nennen wir das
relationale Logik. Da hast du es. Und noch einmal, wir brauchen die HelloWorld nicht, sondern wir
brauchen sie für relationale und
logische Operatoren, manchmal auch als relationale
und logische Operationen bezeichnet werden. Beides funktioniert so ziemlich gut. Vergessen Sie auch hier nicht, den Druck zu kommentieren , wenn Sie nicht
möchten , dass er am Ausgang
komplett mit Spam überschwemmt wird. Und dann lass uns darüber nachdenken. Was sind also relationale, was sind logische Operatoren? Wir sind,
relationale,
sie betrachten im Grunde zwei
Werte und bewerten
im Grunde die Beziehung zwischen ihnen. Das wäre also kleiner als, größer als kleiner oder
gleich, größer oder gleich. Wir haben auch Gleichberechtigte
und auch Ungleiche. Das sind also die,
naja, im Grunde alle
relationalen Operatoren und sie erzeugen einen, sie erzeugen einen
booleschen Wert, oder? Das heißt also noch einmal, wenn Sie an die
Variablentypen zurückdenken, ist
dies entweder wahr oder falsch. Nun, das sollte hier
nichts Verrücktes sein. Wenn ich sage, nun, 20,
kleiner oder gleich 25,
gibt es natürlich kleiner oder gleich 25, nur, es kann
nur wahr oder falsch sein. Es gibt keine Unschärfe, oder?
Es gibt keinen wie einen. Wenn es zu 50 Prozent klein ist, ist das nicht das,
worüber wir sprechen. Wir sagen nur, hey, ist
das kleiner als das, oder ist das gleich? Und das ist die allgemeine Idee. Und logische Operatoren
sind Operatoren, die
zwei boolesche Werte annehmen und
diese auswerten. sind end OR und der
NOT-Operator sind in diesem Fall, das
sind die wirklich
wichtigen. Es gibt auch einige
andere. Wenn Sie
daran wirklich interessiert sind, können
Sie nach Boolescher Algebra suchen. Das ist im Grunde der
Begriff, den man sich ansehen sollte. Und das bringt uns im Grunde
ein bisschen mehr dazu. Aber vorerst beschäftigen
wir uns nicht allzu sehr damit. Wenn wir also darüber nachdenken, können
wir sagen, ein Test, z. B. hier ist drei, kleiner als 20. Dies ist in unserem
Fall natürlich der Fall. Wir können das einfach ausdrucken
, oder? Also sagen wir einfach, ist
drei kleiner als 20? Und wir werden das einfach
ausdrucken. Wir werden den Test hier
ausdrucken. Da hast du es. Aber lass uns das einfach spielen und
sehen, was passiert. Und es wird sich als
wahr herausstellen, weil es drei ist, tatsächlich kleiner als 20. Das ist in der Tat sehr interessant, Sie können das sehen,
wertet diesen Ausdruck aus und macht ihn zu einem booleschen Wert,
der in diesem Fall wahr ist. Jetzt können wir auch sagen, sagen
wir, Tests hier nochmal,
das wird in Ordnung sein. Das ist 20 ist größer als 200. Das wird natürlich falsch sein. Und dann
werden wir einfach das auswählen,
Strg C
drücken, los geht's
, drücken Strg V
, um es wieder einzufügen. Und dann
ändern wir das einfach. Ist 20 größer als 200 , weil wir jetzt sagen, dass
2020 größer als 200 ist, was natürlich falsch ist. Lass uns das einfach noch einmal abspielen. Und wir werden sehen, ob 20
größer als 200 falsch ist. Das ist genau richtig, denn
das ist nicht der Fall. Das sind die
Beispiele für größere. Und dann gilt die gleiche Idee
für kleinere Gleichgestellte, oder? Dann wird es einfach
auch wahr sein, wenn es gleich ist. Und wenn das dann gleich
wäre, oder? Das wäre jetzt falsch. Stimmt es? Sollte Sinn machen, denn nun, 20 ist nicht kleiner als
20 ist gleich 20. Wenn wir das tun würden, wird es plötzlich wieder wahr. Hoffentlich macht das hier in diesem Fall
Sinn. Wenn es nun um den
Gleichheitsoperator geht, nehmen wir zum Beispiel an, wir haben eine Zeichenfolge, eine, die hallo sein wird, und dann haben wir auch eine Zeichenfolge, die auch
hallo heißt. Warum nicht? Da hast du es. Dann machen wir einen Vergleich. Warum kein Vergleich? Das ist gleich, und
dann sagen wir Zeichenfolge eins gleich zwei Gleichheitszeichen. Das ist der relationale
Gleichheitsoperator , der diese
beiden Zeichenketten betrachtet, oder? Und gibt einen booleschen Wert aus. Dies ist der
Zuweisungsoperator, der
sehr, sehr leicht mit
dem anderen verwechselt werden kann. Aber was Sie bekommen sollten,
ist, dass Sie sehen können, dass Sie eine Fehlermeldung
erhalten , wenn Sie nur eine
haben. Also diese rote Unterstreichung
hier, siehst du, es ist wie, oh, das ergibt für mich
keinen Sinn. Absolut keine Sorgen. Zwei Gleichheitszeichen sind der
relationale Operator. Ein Gleichheitszeichen ist der
Zuweisungsoperator. Sehr, sehr wichtig. Jetzt drucken, lassen Sie uns das
einfach ausdrucken und lassen Sie uns einfach den Vergleich ausdrucken. Und wir sollten
theoretisch eine Wahrheit bekommen, oder? Also werden wir einen haben, der erste Ausdruck, ist das
wahr, der zweite ist falsch. Und dann
werden wir hier einfach eine Norm haben, einfach ein echtes Ergebnis. Lass uns einfach sehen. Und wir werden sehen, was
wahr ist, absolut fantastisch. Das funktioniert also auf jeden Fall. Nun, wenn ich hier
etwas ändere, dann sogar die Gehäuse, denn diese sind jetzt
nicht mehr exakt gleichwertig. Was also passieren wird, ist
falsch, denn in diesem Fall sind
beide nicht gleich, sind
beide nicht gleich weil die Groß- und Kleinschreibung immer
berücksichtigt
wird , weil es sich um
ein anderes Zeichen handelt und sie daher
nicht genau gleich sind. Aber das wäre
eines dieser Dinge. Und tu das nicht. Dies ist nur ein Beispiel. Also du, damit du das
irgendwie verstehst. Das ist ungefähr das, was
du tun würdest, oder? Wenn du ein Passwort hast
und denkst,
okay, das ist alles, was
die Person hat. Eingetragen, und das ist das
Passwort, das ich gespeichert habe, rot. Sind die gleichwertig? Und dann nur wenn es wahr ist,
wirst du sie reinlassen. Tun Sie das jetzt nicht,
speichern Sie solche Passwörter nicht. Das
sollte nur von
fortgeschrittenen Leuten gemacht werden. Sehr, sehr, nur
damit du darüber nachdenkst, okay,
das ist eine der
Möglichkeiten, wie du einen Vergleich als wichtig
erachten
könntest. Wenn es nun um
die logischen Operatoren geht, wird
es hier etwas
komplizierter, denn hier wollen wir
eigentlich
mehrere boolesche Werte nehmen und sie zusammensetzen, also
sie nebeneinander setzen. Und dann, weißt du,
das ist quasi eine logische
Erweiterung dafür. Was Sie also beispielsweise tun könnten, ist, sagen
wir, x ist gleich einem
Vergleich. Also wird hier der
Vergleichswert verwendet, was in diesem Fall
der Fall sein wird. Und dann können wir hier einen
AND-Operator eingeben. Und dann
muss der zweite Wert ein weiterer boolescher Wert sein. Also könnten wir z.B. sagen, lass uns einfach hier
testen, oder? Jetzt heißt es also, nun, wenn die Zeichenfolge übereinstimmt
und der Test wahr ist, dann wird x wahr
sein, oder? In diesem Fall wird der
Vergleich also wahr sein und der Test wird falsch
sein, oder? Also das
passiert gerade hier, oder? Weil der Test hier falsch ist. Also wenn wir jetzt x ausdrucken würden ist es nur um des
Arguments x willen gleich hier
oder da gehst du. Wenn wir das zusätzlich tun, sei falsch
und du kannst sehen, dass x falsch ist. Warum ist das so? Nun, weil der
Endoperator besagt, dass beide booleschen Werte
wahr sein müssen , damit der gesamte
Ausdruck wahr ist. Nun noch einmal, falls das für Sie
im Moment
etwas kompliziert ist , machen Sie sich
absolut keine Sorgen. Das ist eine Sache,
mit der du nur ein bisschen herumspielen musst. Ich empfehle
Ihnen also dringend,
dieses relationale logische Skript hier
zu öffnen dieses relationale logische Skript und einfach damit
herumzuspielen. Was noch verrückter ist, ist, dass du das so
oft
anziehen kannst , wie du willst. Ich kann also sagen, dass das Ende wahr ist. Und vielleicht noch eine, die
wir sagen wollen, naja, 20 ist größer oder gleich 50, so
etwas, oder? Sie können also sehen, Sie
können diese beliebig
aneinanderreihen. Noch einmal, es könnte ein
bisschen kompliziert sein. Es geht darum, das
auszuprobieren und ein paar
Dinge mit uns auszuprobieren, oder? Ich werde das einfach
rüberkopieren und hier
auch einen
OR-Operator erstellen. Also das wird
sein, jetzt wird es wahr oder falsch
sein. Was mit dem oder passiert,
bedeutet, dass entweder eines oder beide
wahr sein müssen , damit die Ausgabe wahr ist. In diesem Fall bedeutet wahr oder falsch also
nur, dass der Vergleich wahr ist. Und dann ist es uns egal
, was mit dem Rest ist, weil einer
von ihnen wahr ist. Das wird wahr sein. Wir können also sehen, sagen wir
einfach X1 und X2, nur damit wir verstehen
, dass der Unterschied hier ist. Und wenn wir das spielen, können Sie sehen, dass x2 wahr ist,
weil wir hier den Operator oder
verwenden
und das
kümmert nur, ob einer von ihnen
wahr ist und dann der gesamte
Ausdruck wahr ist. Wie gesagt, es ist nicht
wirklich eine fortgeschrittene Sache, ist nur eines der
Dinge, die nicht wirklich früh in der Schule
gelehrt werden. Ist es im Grunde
nur formale Logik? Daran ist nichts
Verrücktes. Und obwohl es ein bisschen einschüchternd
klingen mag , ist
es das eigentlich nicht. Noch einmal, setz dich einfach ein bisschen
damit hin, spiel ein
bisschen damit herum und du wirst feststellen , dass das eigentlich
nicht so verrückt ist. Nun noch eine letzte Sache,
lassen Sie den
Vergleich auch hier durchführen. Und dann
werden wir sagen, dass wir das eigentlich negieren wollen. Das bedeutet, dass dies
eigentlich kein Test ist. Nun, das könnte
so sein, als wäre die FREC das, das ist ziemlich verrückt. Nun, wir
negieren im Grunde das Falsche oder wir drehen es um. Negieren
bedeutet also einfach, dass wir es von
falsch zu wahr umdrehen. Oder wenn das schon
wahr war, dann falsch. Manchmal
sieht man das
so geschrieben mit einem
Ausrufezeichen vorne. Aber das bedeutet nur, dass die ganze Sache wahr ist, oder? Das ist jetzt also plötzlich nicht mehr falsch, was gleich wahr
sein wird, oder? Lass mich das machen. Das wird also ein bisschen
klarer, oder? Also negieren wir den
Test, dass alles, was in der
Testvariablen geschrieben
ist, in diesem Fall falsch ist. Und wir stellen es auf die Wahrheit um. Nochmals, wenn Sie das nicht
sofort verstehen, spielen Sie
einfach ein bisschen
damit herum. Ich kann nur empfehlen, dass
du wirklich
einfach Sachen abtippen
und
ausdrucken willst einfach Sachen abtippen
und
ausdrucken und dann ein bisschen damit
anfangen und dann sagst,
okay, jetzt verstehst du es, denn das
tatsächlich anzuwenden ist viel wichtiger, als mir
nur zuzuhören, das
etwa zehnmal zu erklären. Es ist besser, wenn du dich
hinsetzt und sagst, okay, das X ist das und
dann ist das Y das, und dann ist es so wie nichts, und dann druckst du es einfach aus. Aber der
Argumentation halber wollen wir einfach
sehen, dass x3 wahr sein wird. Und Sie werden feststellen, dass
X3 tatsächlich wahr ist. Denn wieder einmal ist der
Vergleich wahr und das Gegenteil von
Test ist auch wahr. Daher ist das wahr. Kurz zusammengefasst: Bei Ihren relationalen und
logischen Operatoren dreht sich alles um boolesche Werte. Und im Grunde unsere Operationen,
die zwei Werte vergleichen, in einigen Fällen
zwei oder mehr Werte, und Ihnen daraus einen booleschen
Wert geben, richtig, entweder wahr oder falsch. Es gibt kleiner als,
größer als gleich, nicht gleich und auch die
logischen Operatoren UND, ODER und NICHT, in diesem Fall diese einfachen Operationen eigentlich sind
diese einfachen Operationen eigentlich alles, was der
Computer mag. Wenn Sie zum niedrigsten Wert
heruntergehen dort all die Einsen und
Nullen, von denen Sie vielleicht schon einmal gehört
haben. Das ist alles, was sie benutzen und, oder. Und dann einige
relationale Operatoren, das ist alles, was sie
benutzen, sonst nichts. Damit geht also tatsächlich große
Leistung einher,
wie beim Programmieren,
weshalb sie ziemlich wichtig sind. Noch einmal, hier
am Ende, wollte ich dir
im Grunde den
Anstoß geben, okay, setz dich
wirklich für gute zehn,
20 Minuten hin und teste einfach mal,
wie diese funktionieren. Wenn du sie nicht verstanden hast, wenn du sie verstanden hast,
absolut großartig. Ich flehte
dich immer noch an, sie
einfach ein bisschen auszuprobieren , falls du sie nicht
verstanden hast ,
probiere es noch einmal aus. Ich kann es nur empfehlen, wenn natürlich noch
Fragen offen sind, zögern Sie nicht, sie zu stellen. Sonst wird es das
für diese Vorlesung genau hier sein . Ich hoffe, Sie fanden das
nützlich und Sie werden etwas Neues
lernen
und wir sehen uns alle in der nächsten Vorlesung. Also, ja.
8. (Lua) If- und Else: Ordnung, willkommen zurück zu der kleinen Einführung hier
für den Roadblocks-Kurs. Und in dieser Vorlesung werden
wir uns die Aussagen „Ob“ und „
sonst“ ansehen. Jetzt kommen wir der Sache wirklich auf
den Grund. noch einmal auf den
Server-Skriptservern Lassen Sie uns noch einmal auf den
Server-Skriptservern ein neues Skript erstellen
und es mit fünf Strichen
umbenennen , falls und sonst. Wie wär's damit? Da hast du es. Mir geht es gut, noch einmal,
ich werde alle
fünf machen , falls und sonst. Nun, wenn
Aussagen wirklich sehr,
sehr interessant sind ,
nehmen wir an, wir haben zum Beispiel eine
Goldmenge, die 100 betragen wird. Und dann haben wir vielleicht eine, vielleicht hast du eine
Note und das wird sein, sagen wir, wir haben gerade 65 bestanden, so
etwas. Und dann haben wir auch
einen booleschen Wert. Und das wird,
ist, ist natürlich gut. Und das wird genauso wahr
sein. Nehmen wir einfach an
, dass das der Fall ist. Die Sache, die wir mit
Wenn-Else-Aussagen machen können, ist, dass wir quasi von oben
nach unten unterbrechen den Fluss
quasi von oben
nach unten unterbrechen und sagen können:
Okay, wenn etwas
wahr ist, dann tu das. Oder wenn etwas anderes wahr
ist, dann tu das. So können wir z. B. sagen,
ob es grob ist Gut,
Sie können sehen, dass es darauf hindeutet
, dass es ungleichmäßig war, sagt uns, dass dies ein boolescher Wert ist. Also drücken wir die
Tabulatortaste, um die automatische Vervollständigung zu starten. Wir sagen dann, sobald wir die Eingabetaste drücken, das Ende hier automatisch
generiert. Und jetzt ist das
extrem wichtig. Sie können sehen, dass
unser Cursor
hier tatsächlich eingerückt ist. Das ist also das Gleiche,
als ob ich
die Tabulatortaste drücken würde und Sie können sehen, dass hier
der gleiche Einzug passiert. Und dann ist das
automatisch, weil wir uns
gerade in
dieser If-Anweisung befinden. Und du musst
dir bewusst sein, der Gedankenstrich
es so schreibt. Also kann ich hier Sachen schreiben. Ich denke nicht, dass es
technisch falsch ist, aber es sieht sehr seltsam aus. Also du im Grunde, sobald du
dich in einer if-Anweisung oder einer Funktion
befindest, die wir
später sehen werden und solche Dinge. Du hast immer einen
Gedankenstrich und ja, wenn ich
stattdessen ein anderes
Wenn hier hätte, wenn wir der Argumentation
halber
einen anderen Typ einrücken würden , lass uns einfach damit weitermachen. Das wird also
etwas drucken und es
wird Brent produzieren. Ja, es ist ein ziemlich guter Kurs. Da hast du es also.
Solange das Gute stimmt, drucken
wir das aus. Lass uns das einfach
der Argumentation halber spielen. Es ist wahr. Also, ja, es ist ein hübscher, es ist ein ziemlich guter Kurs. Nun, stellen wir einfach sicher, dass es auch heißt, dass es ein
ziemlich guter Kurs ist. Aber jetzt sagen
wir falsch. Lassen Sie uns einfach lösen, dass
das nicht der Fall ist,
aber falls doch spielen wir
und haben keinen Output. Denn in diesem Fall alles zwischen dann und wird
alles zwischen dann und
Ende nur
ausgeführt, wenn dies zutrifft. Und jetzt
fangen wir wirklich an, diese verschiedenen Tools zu verwenden. Dies ist im Grunde
jede dieser Vorlesungen. Es ist ein weiteres Tool in Ihrem Toolkit, das Sie
benötigen, um die Grundlagen zu verstehen, die später mit
allen
Hindernissen einhergehen. Und das ist eine der größten
und wichtigsten
Wenn-und-Alse-Aussagen . Also könnten wir z.B. auch
über so etwas nachdenken. Nehmen wir an, lassen Sie uns hier einfach einen
weiteren hinzufügen. Das könnte
so etwas wie die Maut sein. Also vielleicht genau dort, wo du die Brücke überqueren willst und
insgesamt sind es 150 Gold. Was wir also
zum Beispiel sagen können ist, ob unser Ziel, das wir haben,
größer oder gleich
der Maut ist , oder? Dann können wir sagen drucken, der
Spieler könnte passen. Aber vielleicht wollen wir sagen,
naja, eigentlich
wollen wir hier nicht enden. Also können wir dieses
Ende durch ein anderes ersetzen. Und dann
kann man wieder sehen, dass es ein Anderes ist. Wenn ich nur den Tap Kick drücke, kann
ich die automatische Vervollständigung vornehmen
und dann die Eingabetaste drücken, dann wird hier
ein weiteres Ende generiert. Wir können also sagen, dass, wenn Gold
höher ist als die Maut, der Spieler möglicherweise besteht. Und wenn das nicht der Fall ist, können wir sagen, dass der Spieler
nicht passen darf, oder? Dann können wir einfach auf Play klicken. Und wir können sehen, wenn
wir uns das ansehen, darf
der
Spieler nicht passen, weil Gold tatsächlich kleiner ist
als oben rechts. Wir haben nur 100 Gold,
aber wir brauchen 150. Daher
wird dies ausgedruckt. Also wird alles
andere ausgedruckt. Wenn das falsch ist und alles hier
ausgedruckt wird, wenn das stimmt, können
wir auch
so etwas machen, oder? Wir können also sagen, das ist jetzt eine
sehr primitive Methode, aber es ist wahr, oder? Wir können also sagen, aktuelles Gold, sagen
wir, Gold wird Rüstung
sein, Gold, oder? Also einfach Outputs reinlegen,
das Gold auch. Und was wir tun können,
ist, wenn wir bestehen, nun ja, wir wollen tatsächlich Gold
minus gleich machen , was auch immer
die Summe ist, nur wenn wir es tatsächlich
erfolgreich bestehen, weil wir es sonst
eigentlich nicht tun wollen. Schauen wir uns jetzt einfach
an, was das Ziel ist nachdem wir das bewertet haben? Nun, es
werden, naja, 100 sein, oder? Weil wir nichts
bezahlt haben. Denn in der Tat können wir
zahlen, weil unsere Maut ,
naja, sie beträgt hier 150 und wir
können nicht einmal etwas tun. Ich werde das einen
Schritt komplizierter machen, aber du wirst
diesen Ort verstehen, sagen
wir einfach nach Hause, oder? Also sind wir gerade zu Hause. Und wenn wir bestehen,
sagen wir einfach, wir werden in der Innenstadt sein. Sagen wir
der Argumentation halber, wenn wir nicht bestehen, nun ja, wir müssen nicht einmal den Standort
ändern, sodass wir das aktuelle Gold sagen können. Lass uns das einfach kopieren und dann können
wir den aktuellen Standort sagen. Dann können wir den Standort auch
ausdrucken. Okay, lass uns das einfach noch einmal spielen
. Und dann werden wir sehen, richtig, wir sind immer noch zu Hause und wir haben
immer noch 100 Gold. Aber was ist, wenn ich jetzt
die Maut ändere? Es kostet tatsächlich 69, um zu bestehen? Was wird jetzt passieren? Nun, jetzt ist unser Gold größer
oder gleich der Mautgebühr,
was bedeutet, dass wir passieren
dürfen. Unser Standort
wird sich in die
Innenstadt ändern und wir werden jedes Ziel, das wir haben,
abziehen, wie die Maut von unserem Gott. Also lasst uns das spielen
und mal sehen, und plötzlich
können wir sehen, dass wir jetzt
31 Gold haben und wir in der Innenstadt sind. Das ist natürlich so, am Spiel
selbst hat sich
nichts geändert. In diesem Fall haben wir nur eine oder
zwei Variablen geändert. Aber vielleicht
siehst du schon, wie unglaublich mächtig es ist,
diese If-Statements zu haben und sie miteinander zu verknüpfen. Sie können hier eine weitere
IF-Anweisung eingeben. Es gibt alle möglichen
Dinge, die du tun kannst, was wirklich, wirklich großartig ist. Das ist wirklich eines der
Dinge, ich meine,
es ist einfach cool zu sehen so etwas zum Leben erweckt wird. Hoffentlich ist das ein
wirklich anschauliches Beispiel dafür, denn sie haben Aussagen
und die
If-Else-Aussagen sind wirklich,
wirklich großartig. Nun, sagen wir
noch einmal, das Letzte. Also wir haben
hier eine Note und sagen wir zum Beispiel wir wollen überprüfen, okay, diese Person hat bestanden. Wir können also sagen, ob der Bildschirm
größer oder gleich 50 ist, dann sagen wir einfach, lassen Sie uns
das genau andersherum machen. Also sagen wir, wenn es
kleiner als 50 ist, dann
drucken wir einen Fehler, oder? Weil wir dann gescheitert sind. Jetzt werden wir
das durch ein anderes ersetzen. Aber wisst ihr was Eigentlich, wenn es durch ein anderes ersetzt wird, wenn weil ich überprüfen möchte ob die
Note größer oder gleich 50 ist und sie auch kleiner
ist. So toll sind sie kleiner
als 100. Dann möchte ich
etwas Bestimmtes machen. Und dann will ich noch einen, denn du kannst
sie so oft anketten, wie du willst. Und dann wird das
etwas anderes bewirken. Das wird also Drucken sein, sagen
wir, es wurde
hier übergangen, das ist großartig. Und dann hier, wenn
du 100 bekommst, richtig, also das würde passieren, wenn
du 100 oder mehr bekommst. Aber lassen Sie uns einfach einen Moment
darüber nachdenken. Aber wenn wir 100 oder mehr haben, werden wir sagen, dass
sie mit Auszeichnung bestanden haben. Weil warum nicht, oder? Weil das wirklich cool ist. Im Moment haben
wir also 65 für die Note. Wir sollten also die Ausgabe von B aus der Vergangenheit sehen. Mal sehen, ob das funktioniert. Und Sie können sehen, dass Vergangenheit tatsächlich Output
ist. Das ist wirklich gut. Lassen Sie uns damit aufhören und dann
hierher zurückkehren und
das tatsächlich auf, sagen wir 100, ändern. Jetzt sollten wir mit uns weitermachen. Lass uns sehen. Lass uns das spielen. Und wir können sehen, dass es mit
Auszeichnung bestanden wurde. Das ist großartig. Wir können sogar noch einen Schritt weiter gehen. Sagen wir einfach
der Argumentation halber, wir wollen hier
noch einen hinzufügen. Was wir tun können, ist, dass wir weitere
hinzufügen können, wenn, und wir können sagen, wenn sie
am besten sind, mehr als 100. Lass es uns, lass es uns so
machen. Nehmen wir an, wenn
groß gleich 100 ist, dann machen wir das, oder? Und dann machen wir
noch etwas anderes. Und das
wird im Grunde so sein, wenn es etwas anderes als 100 sind, und dann können wir mehr sagen, mehr als 100 sind nicht möglich. Du hast geschummelt. Also so etwas, mehr als 100 sind nicht
möglich, du hast geschummelt. Und wenn ich jetzt 101 machen würde,
würden wir plötzlich mehr als 100
bekommen, das ist nicht möglich. Du hast geschummelt. Also, wenn
Sie die
Logik dahinter nicht ganz
verstehen, denken Sie
einfach darüber nach, oder? Was ist
jetzt Note? Großartig wie 101. Ist das kleiner als 50? Nicht 101 ist nicht kleiner als 50. Deshalb gehen wir zum Beispiel, wenn wir
jetzt überprüfen, ob es
größer oder gleich 50 ist? Es ist in der Tat größer
oder gleich 50. Aber das muss auch
wahr sein, weil wir
den logischen Operator UND richtig verwenden , also müssen beide
Dinge
wahr sein , damit die gesamte
Aussage wahr ist. Und weil großartig größer als 100
ist, gehen
wir zum Beispiel, wenn wir
jetzt Großartig aussehen, gleich 100, es ist
nicht gleich 100, es ist tatsächlich 101. Deshalb gehen wir
zu den anderen hier drüben. Und weil wir keine
If-Anweisung haben, sagen
wir nur, okay,
jetzt verwenden wir das L, also wird alles
hier ausgeführt, was
bedeutet, dass das ausgedruckt wird. Nun, ich hoffe, das sind einige interessante
Beispiele für If-und-Else-Aussagen, wie man sie verwenden kann
und warum sie es sind. Also wirklich,
wirklich großartig. Ihr seht, wie wir schon, wir haben hier fast ein
klitzekleines Spiel gemacht, nur mit einer wenn sonst Aussage
mit Gold, mit einer Maut. Und das ist schon richtig
genial, oder, um noch einmal
kurz zusammenzufassen, ob und sonst Aussagen
boolesche Werte verwenden , um
etwas zu bewerten, oder? Sie können einen normalen
booleschen Wert verwenden. Sie können die relationalen
und logischen Operatoren verwenden , um diese
booleschen Werte miteinander zu verknüpfen. Wie wir auf verschiedene
Weise gesehen haben, können
wir if- und
else if- und
else-Anweisungen verwenden , um diese
IF-Anweisungen miteinander zu verknüpfen. Und dann wird alles, was in
dieser IF-Anweisung enthalten ist, ausgeführt. Wenn der boolesche
Ausdruck wahr ist, wirklich eine sehr coole Sache. Und ich kann nur
empfehlen, in Ihrer Freizeit ein bisschen
damit herumzuspielen . Es ist wirklich, wirklich großartig. Nun, das war's für diese
Vorlesung hier. Ich hoffe, Sie fanden das nützlich und Sie werden etwas Neues
lernen und wir sehen uns alle
in der nächsten Vorlesung. Also, ja.
9. (Lua) Lokale Variablen: Ordnung, willkommen zurück
zur Klo-Einführung hier
für den Roblox-Kurs. Und dann, in dieser kurzen Vorlesung, werden
wir
über lokale Variablen sprechen. dafür noch einmal im Server-Skriptdienst Lassen Sie uns dafür noch einmal
im Server-Skriptdienst ein neues Skript erstellen
und
dieses 06 Dash local nennen . Und das wird natürlich
auch gemeinsame lokale O6-Variablen haben . Nun, das ist kein
wahnsinnig wichtiges Thema. Ich wollte es jedoch, wir werden im Grunde einmal darüber
sprechen. Also lokale Variablen,
als wir eine Variable hatten, wir einfach x gleich gemacht, ich weiß nicht, wie
100 und das war's. Jetzt können wir auch das
Schlüsselwort local davor setzen. Und du kannst sehen, du kannst
sehen, dass es ein Schlüsselwort , weil es
fett und auch rot wird. Jetzt können wir also sagen, dass das
lokale Y z. B. 50 ist. Nun, warum sollte das
wichtig sein oder warum nicht? Nun, die allgemeine Idee ist, dass
eine lokale Variable sie im Grunde so
macht, dass sie sie dort einschränkt
, wo sie zugänglich ist. Im Moment
ist es in diesem
Fall eigentlich egal, weil wir einfach x drucken
können und dass alles in Ordnung
sein wird und
y drucken und alles
wird in Ordnung sein. Also werden beide
einfach zur Arbeit gehen. Nehmen wir an, wir haben
eine If-Anweisung und sagen einfach, dass x, sagen
wir, größer als fünf ist , und dann wollen wir etwas tun. Nun, wenn stattdessen jemand
, sagen
wir, diese Aussage wirklich kompliziert,
wirklich komplex
ist und
wir tatsächlich
einige Variablen darin
benötigen, um zu funktionieren. Wir könnten z. B. sagen z ist gleich 100. Das funktioniert. Und das können wir dann hier verwenden
und was auch immer wir tun wollen. Und das Verrückte
ist, dass wir dieses Z dann
sogar außerhalb
dieser if-Anweisung verwenden können . Sie können also sehen, dass das Z hier außerhalb
dieser if-Anweisung
zugänglich ist , aber das ist nicht immer das, was
wir wollen, weil erstens die
Person, die es verwendet, das verwirren kann, oder? Also vielleicht wollen wir das eigentlich
nicht. Z ist nur in
dieser if-Anweisung verwendbar. Und danach,
was auch immer es wird, welchen Wert es auch hat, es ist nicht einmal repräsentativ für das,
was wir wollen. Das könnte der Fall sein. Wenn das der Fall ist, dann können wir es
z.B. lokal machen. Und Sie können sehen, was
passiert, wenn das
jetzt rot unterstrichen ist ,
was bedeutet und was falsch ist. Sie können das globale Z alleine sehen, da Variablen normalerweise globale Variablen
sind. In diesem Fall sagen wir jedoch
ausdrücklich, dass dies eine lokale Variable ist und nur in diesem
bestimmten Kontext
zugänglich ist. Der Kontext ist
die if-Anweisung. Wenn also
die erste n-Ebene beendet wird, das Ende dieser
if-Anweisung im Grunde löscht
das Ende dieser
if-Anweisung im Grunde
auch Anführungszeichen ohne Anführungszeichen,
diese lokale Variable. Insgesamt ist es normal
, grundsätzlich alles lokal zu machen, außer
wenn es Momente gibt, in denen, oh, weißt du was,
das eigentlich nicht lokal sein sollte. Theoretisch sollten Sie jedes Mal, wenn Sie eine Variable
erstellen, einfach mit
einer lokalen Variable beginnen. Und das ist, und dann wird es Ihnen gut gehen und dann wird es Ihnen gut gehen. Weil es nur
sehr wenige Fälle gibt , in denen dies nicht der Fall ist. Und du kannst sehen, ob
es nicht stimmt, wenn du dann damit
weiterarbeiten willst, dann ist es völlig in Ordnung, dann kannst
du das weglassen. Aber normalerweise
willst du sie
lokal machen und dann
wird es dir gut gehen. Ein weiterer weiterer Grund,
warum Sie dies tun möchten ist, dass sie ein
bisschen leistungsfähiger sind. Um fair zu sein, was
moderne Maschinen
angeht, das wird hier wahrscheinlich keinen großen Unterschied
machen, aber nur für den Fall, dass es ziemlich wichtig
sein kann. Und wenn Sie das Local in den Skripten
anderer Leute sehen ,
dann wissen Sie einfach, normalerweise möchten Sie sie für alle
Ihre Variablen
verwenden ,
außer in sehr, unter bestimmten Umständen, in denen
globale Variablen benötigt werden, dann können Sie es weglassen. Normalerweise, wenn ich eine
Variable mit local
davor instanziiere , oder? Also habe ich einfach dafür gesorgt
, dass die Prinzen hier
auskommentiert werden, natürlich wegen dieses Prints, der einen Fehler auslöst solange wir eine lokale Variable haben. Aber insgesamt machen
sie, um es hier noch
einmal
zusammenzufassen , lokale Variablen etwas
schneller und schränken
den Geltungsbereich ein , in dem eine bestimmte
Variable zugänglich ist. Sie kein globales erstellen,
wird es ein bisschen eng und es ist für die Leute
einfacher, Ihre Skripte zu
verwenden. Außerdem läuft das Spiel dadurch
einfach ein bisschen schneller. Vielleicht sind es hier winzige Änderungen, aber normalerweise möchten Sie, wann immer möglich,
local verwenden. Das war's für
diese Vorlesung hier. Ich hoffe, Sie fanden das nützlich und Sie werden etwas Neues
lernen und wir sehen uns alle
in der nächsten Vorlesung. Also, ja.
10. (Lua) String-Operationen: In Ordnung, willkommen zurück
zum Roblox-Kurs. Und in dieser Vorlesung werden
wir uns auf natürlich Zeichenkettenoperationen ansehen, zunächst den Server-Skriptservern.
Lassen Sie uns hier ein neues
Skript erstellen
und es
in Lassen Sie uns hier ein neues
Skript erstellen 07
und Bindestrich-String-Operationen umbenennen. Und natürlich werden
wir noch einmal eine
07-String-Operation durchführen, Ahmed hier drüben, und
dann fangen wir an. Wir können also eine neue Variable erstellen. Nennen wir es einfach einen
Test und wir
nennen es so etwas wie Hallo, ich sage Hallo, und das ist eine Zeichenfolge. Und das haben wir schon
einmal gesehen. Wir können das zum Beispiel
ausdrucken, indem wir die
Funktion printf hier
testen. Und das wird in diesem Fall
natürlich den Wert der
Testvariablen ausgeben. Dafür benötigen wir
die Ausgabe
hier drüben und
stellen auch sicher, dass sie in den alten Skripten ist und
stellen Sie sicher, dass Sie auch die Druckfunktionen in
den alten Skripten
auskommentieren . Und wenn wir das
Ausgabefenster geöffnet haben und das Drucken hier drüben, dann lass uns einfach spielen und wir sollten dort Hallo
sehen können. Ich sage hallo,
das ist ziemlich gut. Warum schreibe ich da jetzt
etwas so Seltsames hinein? Nun, weil wir gleich etwas Interessantes
sehen werden. Aber das erste, was wir mit einer Zeichenfolge tun
können ist herauszufinden, wie
lang die Zeichenfolge ist. Weil
wir das vielleicht manchmal machen wollen. Wir können also die Länge
einer Zeichenfolge herausfinden , indem wir wie
folgt vorgehen. Was wir tun können, ist Hashtag-Test zu sagen, und das wird
die Länge dieser
bestimmten Zeichenfolge ausgeben . Es wird also einfach
gezählt, wie viele Zeichen es gibt, einschließlich Leerzeichen. Bevor wir das ausgeben, zählen wir
tatsächlich 1, 234-567-8910, 1112, 1314, 1516 1718 1920 201-20-2203, 2420, 5206, 2728, 2930. Theoretisch
sollte diese Testvariable, diese Zeichenfolge hier, diese Zeichenfolge hier, drei Zeichen lang sein. Unser Druck hier
sollte also die Länge
einer Schnur 30 ergeben. Lass uns spielen und sehen, ob
das wirklich ES ist. Und die Länge einer Zeichenfolge ist 30. Nett. Das ist schon ziemlich cool, aber was können wir noch tun? Nun, es gibt eine ganze
Reihe verschiedener Dinge. Nehmen wir an, wir erstellen
eine neue Variable. Was wir tun werden, ist eine
Zeichenfolge einzugeben und Sie können sehen, dass sie uns das tatsächlich
vorschlägt, und es markiert es auch als blau. In diesem Fall ist es also ein Schlüsselwort, und wir können einen Punkt dahinter setzen. Und dann können Sie sehen,
dass wir
verschiedene Funktionen haben , die wir aufrufen können. Und diese stehen im Grunde für eine bestimmte Sache, die sie mit bestimmten Dingen
machen. Also zB gibt hier die
Länge der Zeichenfolge zurück. Anstatt also den Hashtag zu verwenden, können
Sie auch die Zeichenfolge Lynn Wright verwenden und dann
die Zeichenfolge dort einfügen. Sehr wichtig. Also können
wir das machen. Und in diesem Fall
wird der neue Test tatsächlich die Länge sein. Nennen wir diese
Länge für einen Moment. Lassen Sie uns das nur als Test kopieren. Und wir können dann genau
hier die Länge angeben. Und wenn wir das spielen, werden
wir 30.30 sehen weil es im Grunde genau das Gleiche
macht. Aber das ist eine der
Operationen, die wir durchführen können. Normalerweise werden
die meisten Operationen für
Zeichenketten in diesem Fall immer mit einem Zeichenkettenpunkt und dann im Grunde mit einer Art
Funktion ausgeführt. Lass uns einen neuen Test machen
und lass uns einen Blick darauf werfen. Also reih das ein. Und du kannst sehen, dass es
eine Menge Sachen gibt. Sie können also sehen dass dadurch n Kopien
derselben Zeichenfolge verkettet werden. Das ist im Grunde
nur, wenn du, wenn ich die Schnur da
reinlege und ich drei da reinlege, dann wird
es Hallo sein. Ich sage hallo. Hallo, ich sage hallo, hallo
, ich sage hallo. Das ist also im Grunde nur
, um dasselbe zu wiederholen. Suppe ist. Dies ist eine Teilzeichenfolge und sie ähnelt
dem, was wir gleich sehen werden. Die Beschreibung hier. Es kann ein
bisschen kompliziert sein, aber mach dir keine Sorgen. Byte ist normalerweise etwas, das
wir nicht wirklich brauchen. Was ich jedoch sehr empfehlen kann, ist, dass Sie
sich jederzeit jede
dieser Funktionen ansehen können und wir klicken
im Grunde einfach auf
sie und dann
sehen Sie eine ziemlich gute
Beschreibung und Sie
können sogar auf Erfahren Sie mehr klicken, um
mehr zu erfahren. Was wir hier machen werden,
ist
G Sub, G Sub zu machen . Das sieht verrückt kompliziert aus, ist es
aber nicht. Also
doppelklicken wir einfach darauf. Es wird das alles korrekt formatieren und wir geben
einfach das Komma
der Testzeichenfolge ein. Und dann ist das ein Muster. Wir wollen uns dieses Muster ansehen. Also z. B. hallo. Und wir wollen
es durch etwas ersetzen. Und in diesem Fall ersetzen wir
es
einfach durch eine normale Zeichenfolge. Und diese Saite wird
einfach Howdy sein. Also, was erwarten Sie hier
, wenn wir jetzt einen neuen
Test herausgeben, oder? Also, wenn wir einen
neuen Test drucken würden, oder? Also diese neue Variable, die G sub haben wird, wird
hoffentlich die
Testvariable genau hier
nehmen. Und es wird nach
dem Wort Hallo suchen, oder? Und es wird eine Kopie
zurückgeben
, in der jedes Mal, wenn Hallo auftaucht, es durch Howdy ersetzt
wird. Also, wenn wir einen neuen Test
ausdrucken würden, nun, hoffentlich
finden wir
heraus , dass er
sagt, wie geht es dir? Ich sage Hallo? Lass uns spielen und sehen, ob
das tatsächlich passiert. Und genau das passiert in der Tat. Wie geht's dir da?
Ich sage hallo? Was nun extrem
wichtig ist, wenn ich den
Originaltest
auch gleich hier ausdrucken würde, richtig, weil wir
das in die Funktion eingebaut haben und
das Hallo durch ein Howdy ersetzt haben,
werdet ihr feststellen, dass sich der
Test nicht geändert hat. Sie können also sehen, dass der Test
völlig unverändert ist. Und so steht es auch. Wenn ich hier einfach aufhöre,
ist es auch das, was ich gesagt habe. Wenn wir hier reingehen, wird
eine Kopie der
übergebenen Zeichenfolge zurückgegeben . Es ändert also nicht die Zeichenfolge, die wir übergeben
haben. Es ist sehr wichtig
, sich daran zu erinnern. Eine andere Sache, die ich dir zeigen kann,
ist z.B. etwas zu finden. Das wird also String Dot Find
sein. Das ist also eine weitere Methode, die sich
tatsächlich angesehen hat, was
darin steht. Sucht also nach der ersten Übereinstimmung
des Musters und
gibt dann die Indizes zurück. Okay? Also, was heißt das? Nun, lassen Sie uns einfach zB hier
testen. Es spielt keine
Rolle, welchen wir einsetzen. Und dann kann ich da sagen, also schauen wir uns
das mal an. Und dann können wir das auch
ausdrucken. Also wo
werden wir es dort
so machen und dann die
Ausgabe finden. Und wir sollten eine Zahl
daraus machen, damit du
sehen kannst , wo sieben ist, okay, also warum ist es bei sieben? Nun, wenn wir noch
einmal zählen, richtig, also zähle ich die
Zeichen rechts von mir, also wird es 1234567 sein. Das ist also in der Tat das
siebte Zeichen, oder es ist das Zeichen mit Indizes oder Index von Sieben.
Das ist die allgemeine Idee. Und dann Dinge zu finanzieren, die Sie verwenden
können, wenn Sie manchmal, ist interessant und das
ist im Grunde genommen,
Fall zu schreien und dann Fall zu flüstern. Die Idee ist also, dass die
Zeichenfolge oben und wenn wir
etwas hineinlegen, und dann können wir das einfach kopieren. Also habe ich einfach Control C,
Control V ausgewählt , um es einzufügen. Und das ist dann Flüstern
und das ist dann leiser. Was Sie finden werden,
ist, dass das obere, Es wird nur sehen eine Zeichenfolge
zurückgibt, bei alle Kleinbuchstaben in Großbuchstaben
geändert werden, während das untere Feld hier eine Kopie mit
allen Großbuchstaben in Kleinbuchstaben
zurückgibt . Also wenn wir das machen,
seht ihr dort Hallo rufen, ich sage Hallo und dann ist
jeder Frühling wie. Die sind also auch ziemlich
cool. Nun
können diese Operationen,
einschließlich einiger
der anderen Funktionen für Zeichenketten, unglaublich
nützlich sein, wenn Sie
irgendwelche Texte haben , die
Sie
je nach Standort
des Players ändern müssen oder wenn Sie irgendwo
etwas ausgeben müssen. Das kann also im Grunde
für eine ganze Menge Dinge verwendet werden. Deshalb kann es sehr wichtig
sein. Und natürlich
empfehle ich wie
immer dringend, ein bisschen
damit herumzuspielen. Es gibt natürlich noch ein paar weitere Zeichenkettenfunktionen
, die Sie verwenden können. Zusammenfassend lässt sich sagen, dass Sie
die Länge einer Zeichenfolge ermitteln können , indem Sie
entweder ein Hashtag als die Zeichenkettenvariable verwenden,
oder Sie können auch die Zeichenkettenfunktionen von
string dot und dann, was auch immer die Funktion ist,
in diesem Fall Len, verwenden. Wir haben auch gesehen, wie
Sie Dinge
in Zeichenketten ersetzen können , und denken Sie immer
daran, dass dies eine Kopie der ursprünglichen
Zeichenfolge
zurückgibt, die niemals geändert wird. Wir können sogar Dinge und
Zeichenketten finden und am
Ende haben wir hier auch gesehen, wie sich
Klein- und Großbuchstaben geändert haben. Nun, ich hoffe, Sie fanden das nützlich und Sie werden etwas
Neues
lernen und wir sehen uns alle
in der nächsten Vorlesung. Also, ja.
11. (Lua) Loops in Lua: Willkommen zurück zur
Loo-Einführung hier für die Roadblocks-Kerne. Und dann werden
wir uns in dieser Vorlesung Loops ansehen. Nun, was sind Loops? Nun, sie sind sehr interessant. Zuallererst natürlich ein neues Script hier drüben, 08 Dash Loops und auch hier
oben ein netter Kommentar. Und die Frage
ist, was sind Loops? Nun, was wäre, wenn
ich dir die Aufgabe
geben würde, jede Zahl 1-100 auszudrucken? Du könntest sagen, nun, okay,
lass uns einfach richtig anfangen. Wir machen einen und dann werden
wir das kopieren. Ich sage 23 und 4,5, und irgendwann bist du fertig. Jetzt
sage ich, naja, eigentlich möchte ich, dass du tust, dass nicht
jede gerade Zahl gedruckt wird . Ich will nur die ungeraden Zahlen, 1-100 und du wirst sagen, Wow, das ist irgendwie nervig. Also wirst du
entweder
jede gerade Zahl kommentieren oder du
wirst einfach
jede gerade Zahl löschen,
dann denke ich, Oh, tut mir leid, ich habe das falsch gelesen. Ich wollte eigentlich
andersherum. Ich wollte die ungeraden Zahlen eigentlich nicht
ausdrucken. Ich wollte eigentlich die ungeraden
Zahlen nicht ausdrucken und du sagst, Oh mein Gott, ich habe einfach alles
geändert. Und an diesem Punkt wirst du dich einfach
sehr ärgern. Das ist natürlich
nicht der richtige Weg. Es gibt einen viel einfacheren
Weg, das zu tun. Das heißt, Schleifen, im Grunde genommen
Schleifen in einem sehr übersichtlichen Begriff, oder bestimmte Codeteile oder bestimmte Teile eines Skripts, die sich x-mal
wiederholen, wie oft
Sie es im Grunde möchten. So können wir z.B. einen For-Loop machen. Sie können sehen, dass dies bereits
darauf hindeutet, dass Sie eine
For-Schleife erstellen können , und dies wird bereits als Schlüsselwort
hervorgehoben. Und das funktioniert so, dass ich das aufschreibe
und es erklären werde. Wir können also sagen, dass ich gleich
eins ist und ich sage zehn, und ich sage noch einmal Komma und dann eins und dann tu es. Und sobald ich hier
die Enter-Taste drücke, siehst
du, dass
das Ende degeneriert und alles innerhalb
dieser For-Schleife, ähnlich wie wir es von Statements gesehen
haben, oder? Alles statt dem
für Loop wird in diesem Fall zehnmal
gemacht. Nun, wie ist das?
Wie funktioniert das? Was bedeutet dieser Wahnsinn? Nun, das bedeutet Folgendes. Das bedeutet, dass
wir die Schleife natürlich mit dem
Zählen beginnen müssen, weil wir wissen müssen, wie
oft wir sie durchlaufen. Was auch immer wir
hier hineinlegen, wir können es in diesem Fall einfach ausdrucken, oder? Also drucken wir
einfach die
Zahl aus , die wir zählen. Und die Frage ist, okay, wir haben angefangen, eins
wird bei eins anfangen, was damit gemeint ist, oder? Also fangen wir bei eins an, okay, das sollte ziemlich
selbsterklärend sein. Habe einen angefangen. Jetzt werden wir um zehn Uhr enden. Das
bedeutet diese Zahl , und dann ist sie
extrem stark. Diese Zahl bedeutet
, dass wir
die Anzahl jedes
Mal um eins erhöhen , wenn wir die Runde beendet haben. Wir könnten auch drei machen. Also erhöhen wir die
Anzahl um drei oder zwei oder sechs oder neun oder ehren
26, wenn wir wollten, damit können
wir eine Menge
Sachen machen. Aber vorerst wir das gerade durch. Und jedes Mal, wenn wir diesen Druck
durchgehen, erhöhen
wir dieses I um eins. Und sobald es
zehn ist, sind wir damit fertig. Nun, lass uns spielen und
sehen, was passiert. Und Sie werden sehen können, ob wir die Leistung
ein wenig erweitern. 1 234-567-8910, genau das, was
wir erwartet hätten. Aber wir erhöhen dieses I jedes Mal
um eins, wenn
wir eine Runde beendet haben. Also fangen wir hier von vorne an. Wir sagen, okay, ich bin
gerade einer. Der Rest geht
uns im Moment nichts an weil ich nicht zehn bin oder
er kleiner als zehn ist. Also sagen
wir, es geht uns völlig gut. Und dann drucken wir
I aus, was in der Tat eins ist. Wir kommen zum Ende. Also kehren wir
zur For-Loop zurück. Wir sagen, okay, jetzt ist
ich um eins erhöht, also jetzt bin ich zwei
und so weiter und so weiter und
so weiter, bis wir zehn sind. Und dann sagt der Loop: Oh, sieh dir das an. Es ist jetzt zehn. Also sind wir fertig. Und das nennt man in diesem Fall
einen For-Loop. In der Tat sehr interessant. Jetzt können wir auch eine
andere Art von Schleife haben. Lass mich das
Spiel für einen Moment unterbrechen. Und wir können eine
andere Art von
Grippe haben und das ist eine Zeitschleife. Also können wir zB
eine lokale Variable x
hier haben , das sind drei. Und dann können wir sagen, während und wir können sagen, solange x
kleiner oder gleich zehn ist, dann werden wir
etwas tun , bei dem es
in Reihe
einen expliziten booleschen Ausdruck gibt
, der wahr sein muss. Und obwohl das stimmt, werden
wir
das jetzt tun, während Schleifen bekanntermaßen anfällig für
die folgende Sache
sind, und das ist eine Endlosschleife. Eine Endlosschleife passiert, wenn Sie dies, aus welchem
Grund auch immer,
nie verfälschen können. Also, wenn x immer
kleiner oder gleich zehn ist, dann geht diese
While-Schleife, wird sie ewig andauern. Ich glaube, wenn ich
mich richtig erinnere, Lula und zusätzlich haben
Lula und zusätzlich
Roblox Studio dafür eine Art
eingebaute Ausfallsicherung, sodass Ihr gesamtes
Roblox Studio diesem Fall
nicht abstürzt. Aber ich empfehle
dir trotzdem,
das nicht auszuprobieren , weil es irgendwie nervig
ist. Also hier können wir z.B. sagen, okay, wir werden einfach jedes Mal x um
eins erhöhen und
dann sollte es uns
völlig gut
gehen jedes Mal x um
eins erhöhen und
dann sollte es uns , denn
wenn wir das um eins erhöhen, wird es natürlich wenn wir das um eins erhöhen, irgendwann größer als x
sein, oder? Wenn wir also einfach
drucken sagen können und das ist eigentlich
auch x ausdrucken, dann wäre
y nichts der Fall. Und lass es uns tun, bevor
wir es erhöhen. Also drucken wir
drei bis zehn aus. Und dann sollten wir auch außerhalb des Geschehens
sein. Also lassen Sie uns
hier drüben außerhalb des Loops
noch einen Druck machen . Und lass uns das spielen und
mal sehen, was hier passiert. Und natürlich 3-10, wo außerhalb der Schleife,
absolut keine Sorgen. Das können wir auch, und das
ist nur ein Beispiel. Darin drin. Egal, ob wir uns innerhalb
einer While-Schleife oder einer
For-Schleife befinden. Stimmt es? Nehmen wir an, wir wollen so
sein, okay, weißt du was? Wenn x sieben erreicht, wollen wir eigentlich
Folgendes tun und wir machen Schluss. Break ist ein weiteres Schlüsselwort
, das
sofort
aus der Schleife ausbrechen wird sofort
aus der Schleife ausbrechen als ob wir
das Ende der Schleife erreicht hätten. Und das heißt nicht, dass
wir dieses Ende erreichen. Wir sind wie außerhalb des kleinen Vogels,
der herausspringt. Wir können auch continue verwenden. Und das würde so tun, als ob wir hier
das Ende erreicht hätten. Das wird also die Runde fortsetzen. Dadurch wird der Kreislauf unterbrochen. Damit sind
wir zu diesem Zeitpunkt im Grunde genommen außerhalb
des Geschehens.
Das ist die allgemeine Idee. Wenn wir hier also Pause verwenden, haben wir
drei bis sieben Ausgänge. Sie können, oder in diesem
Fall sogar sechs , weil wir
x ausgeben, bevor wir es erhöhen. Also x ist sechs, es wird, es wird auf sieben
erhöht. X7, wir brechen aus und
deshalb haben wir 345,6. Und dann sind wir außerhalb des Geschehens. Wenn wir hier weitermachen
würden, würde
eigentlich
nichts
anders sein als
zuvor, denn
danach ist nichts
anders sein als nichts mehr relevant, wenn die
Aussage relevant ist. Wenn wir es hier jedoch ganz
am Anfang platzieren würden , wäre es
jetzt
interessant, weil jetzt sieben nicht ausgegeben
würden. Wenn wir das jetzt sehen, können
Sie plötzlich sehen,
was passieren würde, dass wir in eine Endlosschleife
geraten würden. Nun, das ist natürlich App. Sie können also sehen, dass wir
die zulässige
Ausführungszeit ausgeschöpft haben , denn was
hier passiert , ist, dass x sieben ist
und wir dann sagen, okay, lass uns weitermachen und
dann ist es wie Übung. Lass uns weitermachen, Lass uns weitermachen, Lass uns
weitermachen, Lass uns weitermachen. Und das so lange, bis
in diesem Fall die zulässige
Ausführungszeit erreicht ist. Das sind 10 s, wenn wir das richtig sehen
können, also beträgt der Zeitunterschied
hier 10 s. Theoretisch kann das
also passieren. Deshalb sollten Sie damit vorsichtig
sein. Also könnten wir z.B. so
etwas machen. Also das Drucken passiert
danach und dann passiert das, was der Anstieg
hier ist, vorher. Wenn wir also damit zu tun hätten, dann springen wir plötzlich 6-8 und in diesem Fall über
sieben. Das ist also eine weitere
interessante Idee. Und dann
haben wir auch eine Wiederholungsschleife, die der
While-Schleife ziemlich ähnlich ist . Was wir im Grunde
machen, ist das Gegenteil. Also sagen wir im Grunde: Hey, wir wollen
den folgenden Code wiederholen , bis
etwas stimmt. Das ist so ziemlich, es
entspricht fast dem While-Loop, aber es ist ein bisschen anders. Und das ist so geschrieben. Das ist so ziemlich
alles über Loops. Oder sie können interessant sein. Das sollte so
ziemlich alles sein, oder? Zusammenfassend lässt sich sagen, dass Schleifen eine
unglaublich einfache und
effiziente Methode sind unglaublich einfache und
effiziente Methode , Code, den Sie wiederholen
möchten x-mal zu wiederholen,
es gibt für Loops, while Loops und
repeat until Loops. Und das sind, glaube
ich, die drei Hauptversionen. Es gibt auch ein paar
interessante Sachen
für Loops, für die wir später alle vier Loops
sehen können. Aber insgesamt sind das
im Grunde die großen Drei. Und sie können in der Tat sehr,
sehr interessant sein. Ich empfehle daher dringend ein bisschen
damit
herumzuspielen. Wenn Sie eine
kleine Herausforderung suchen, ist
dies nur eine
Herausforderung für Sie selbst. Du kannst das
auf 100 erhöhen und die Zahlen
1-100
ausdrucken und dann
genau das tun , was ich dir
gesagt habe, und im Grunde sagen:
Hey, wir wollen nur
Zahlen ausdrucken , wenn sie durch zwei
teilbar sind. Also wenn ja, ob es gerade sind oder
wenn es keine gibt. Also das sollte eigentlich
ziemlich einfach sein mit der
If-und-Else-Vorlesung und der Loops-Vorlesung, das
solltest du können. Ich kann
Ihnen nur empfehlen, dies auszuprobieren. Es ist eine sehr unterhaltsame Übung. Unabhängig davon hoffe ich, dass Sie das nützlich
fanden
und Sie
etwas Neues lernen werden . Wir sehen
uns alle in der nächsten Vorlesung. Also, ja.
12. (Lua) Funktionen in Lua: Ordnung, willkommen
zurück auf der Toilette oder hier zur
Einführung in
den Roadblocks-Kurs. Und in dieser Vorlesung werden
wir uns Funktionen ansehen. Also habe ich dieses Wort
ein paar Mal gesetzt. Lassen Sie uns hier ein neues Skript
erstellen und es
in 09 Dash Functions umbenennen , und natürlich auch 09
Funktionen hier. Nun stellt sich die Frage,
was sind Funktionen? Nun, als übergeordnete Übersicht können
Sie im Grunde
mehrere Befehle anstelle
einer Funktion eingeben mehrere Befehle anstelle und diese Funktion dann immer ausführen,
anstatt all
diese verschiedenen Dinge zu tun . Als übergeordnetes Beispiel
können wir eine Funktion schreiben. Sie können sehen, dass dies ein Schlüsselwort und dann ist dies der
Name der Funktion. Nennen wir das einfach
Kochen, oder? Und dann können wir hier sogar
etwas eingeben, also schreiben wir den Namen dieser Funktion und
dann haben wir Klammern. Sobald Sie
die offene Klammer eingeben, sollte
die schließende Klammer automatisch
generiert werden. Und hier können Sie dann bestimmte Argumente vorbringen. Diese werden Parameter genannt, sind Parameter und sie können an die Funktion übergeben
werden, wodurch die Ausgabe geändert wird. Also in unserem Codierungsbeispiel hier, lassen Sie uns hier einfach
nichts eingeben und eigentlich
einfach zum Ende gehen, die Eingabetaste drücken und
dann das Ende hier, wir
generieren wieder automatisch. Das ist dasselbe
, was wir auch bei
den Loops und den Anweisungen if und
else gesehen haben . Und hier drinnen, wenn wir etwas kochen,
kann ich jetzt verschiedene Dinge hineinlegen. Nun, in diesem Fall wird es
nicht funktionieren. Ich werde nur
Kommentare machen, damit Sie Vorstellung von einer Funktion
bekommen. Was ist eine Funktion, oder? Also jedes Mal, wenn wir kochen wollen, wollen wir
vielleicht tatsächlich etwas Bestimmtes
kochen. Also sagen wir einfach, sagen wir
einfach, wir
nennen das Kochessen
der Argumentation halber, oder? Und jedes Mal, wenn ich Abendessen kochen
möchte, muss
ich ein paar Dinge tun, oder? Also muss ich Besteck rausholen, ich muss vielleicht den Ofen
vorheizen. Ich muss
Gemüse schneiden, solche Dinge. Es gibt also bestimmte
Dinge, die ich immer tun
muss , wenn ich
diese bestimmte Funktion ausführen möchte, oder? Diese spezielle Sache. Und Sie können
sie alle innerhalb einer Funktion auflisten. Und dann müssten wir, anstatt
jede einzelne Anweisung einzeln zu schreiben ,
wenn
wir
dies mehrmals tun würden, immer
jede einzelne Anweisung lesen. Und das ist Wahnsinn. Im Grunde
ist eine Funktion ein Container
, in den Sie in diesem Fall mehrere
verschiedene Zeilen
einfügen können , die dann ausgeführt werden. Nun, dies ist ein allgemeines
Beispiel, an dem Sie sich ein Bild machen können. Hoffentlich. Schauen wir uns nun ein
konkretes Beispiel an. Ein konkretes Beispiel
könnte also eine Summenfunktion sein. Wir befinden uns innerhalb
der Klammer. Wir haben tatsächlich Nummer
eins und Nummer zwei angegeben. Und jetzt ist das Verrückte, wenn wir
diese num-Funktion aufrufen würden, wollen
wir tatsächlich, dass
etwas zurückgegeben wird. Wir können also Rückkehr sagen. Und Sie können sehen, dass dies
auch ein Schlüsselwort ist und wir
wollen Nummer eins plus Nummer zwei zurückgeben. Und das ist es, was jetzt zurückgegeben
wird. In diesem Fall haben
wir natürlich schon eine
Art Funktion, haben
wir natürlich schon eine
Art indem wir einfach den Plus-Operator
verwenden. Dies ist jedoch
nur ein Beispiel
für Sie, um Funktionen zu verstehen und zu verstehen warum sie
äußerst nützlich sein können. Denn jetzt können wir drucken und sagen, nun
ja, die Summenfunktion, oder? Und wir können einfach
einige drucken und dann 3.10 sagen. Und das ist, wie Sie sehen können, das ist, wir rufen
die Summenfunktion auf. Sie können sogar sehen, dass es hier
hervorgehoben wird. Wenn ich darauf
und innerhalb von hier klicke, können
wir eine Zahl
und eine weitere Zahl eingeben, und
diese werden hier summiert. Das sind also Parameter, die
wir als Parameter übergeben, Sie müssen immer die
richtige Anzahl an Parametern haben. Also wenn wir das tun, wenn ich das machen
würde, dann
bekommen wir hier zwar keine Probleme, wenn ich
das tatsächlich ausführen würde, würden wir ein Problem bekommen. Aber der Argumentation halber,
lass uns das einfach spielen. Und wir werden sehen, dass wir, wenn
ich mir die Ausgabe ansehe, versucht
haben, eine Addition für eine Zahl von
Null durchzuführen , denn wenn ich etwas nicht
richtig übergebe, dann ist das, was übergeben wird, Null. Jetzt haben wir
das schon einmal gehört, oder? Null, es war nur das
Fehlen eines Werts in einer bestimmten Variablen. Also müssen wir etwas
weitergeben. Und wenn wir
beide Zahlen hier eingeben würden,
dann könnten wir feststellen, dass die Summenfunktion 13 ausgibt, was genau das ist, was
wir hier erwarten würden. Nun, wenn Sie
tatsächlich etwas skripten, können
Funktionen natürlich viel
komplizierter werden,
aber das ist nur eine sehr, sehr kleine Einführung
in Funktionen. Wir werden sie sehen
, wenn wir tatsächlich mit Roblox selbst programmieren. Um es hier zusammenzufassen,
Funktionen, die Sie im Grunde
verwenden können, um
mehrere verschiedene Dinge zu stapeln und sie alle
nacheinander ausführen zu lassen. Dies kann auch
andere Funktionen beinhalten. Sie können auch zu
bestimmten Dingen und Funktionen zurückkehren. ZB haben wir
hier eine Summenfunktion , bei
der wir zwei Parameter übergeben. Und die werden dann
zurückgegeben, nachdem wir etwas mit ihnen
gemacht haben. Das ist ein allgemeiner
Überblick über Funktionen. Wenn Sie sich nicht ganz sicher sind,
wie Sie sie verwenden sollen, machen Sie sich keine Sorgen, das Wichtigste
ist, dass Sie in dieses
Thema
eingeführt wurden und wir in späteren
Vorlesungen auch mehr über
Funktionen erfahren
können mehr über
Funktionen erfahren
können . Ansonsten hoffe ich, dass Sie das
nützlich fanden und
etwas Neues gelernt haben. Wir sehen uns in
der nächsten Vorlesung. Also, ja.
13. (Lua) Tabellen in Lua: Okay, willkommen zurück
zur Klo-Einführung hier für die Roboterergebnisse
, dann zu dieser Vorlesung, wir
werden uns die Tabellen ansehen. Nun, Tabellen sind eine sehr
interessante Sache und sie können
ziemlich kompliziert sein, aber mach dir keine Sorgen, wird
uns gut gehen. Also lass uns
hier Tabellen und Hash-Tabellen machen und dann das
Gleiche hier drüben. Und das ist, Tabellen sind Tische. Die allgemeine Idee von
Tabellen ist im Grunde , dass Sie eine Art
Liste bestimmter Dinge haben. Also, wenn eine Tabelle natürlich ein bisschen
anders
ist als eine Liste, aber Sie können sie sich vorerst
als Liste vorstellen , damit wir etwas zum Testen
haben. Ich werde eine lokale
Variable namens days erstellen. Und in diesen Tagen wird
dies eine Liste aller Tage
von Montag bis Freitag sein. Zuallererst, Was
wir tun werden ist gleich und dann
eine geschweifte Klammer, die sich schließende geschweifte Klammer wird automatisch wieder
generiert. Und das wird in diesem Fall eine
Tabelle mit Zeichenketten sein. Also das wird das Montagskomma
sein, und dann haben wir Dienstag. Und kannst du dir vorstellen, was genau als Nächstes
kommt? Tag der Zeugen, so heißt
es Donnerstag und
dann haben
wir nicht zuletzt auch Freitag. Da hast du es. Das sind also im Grunde, naja, das
sind die Tage und wir
können jetzt Folgendes tun. Wir können drucken, oder? Und was wir drucken können,
ist, dass wir einen Tag drucken können. Und der Tag, an dem wir drucken ist, dass wir gut drucken werden, wie wäre es, wenn wir
ausdrucken wollten, sagen wir Mittwoch. Wie machen wir das? Nun, lassen Sie uns über
diesen Tag nachdenken, damit wir Tage einplanen können und Sie sehen, dass
er uns das sogar vorschlägt. Und wie
kommen wir nun tatsächlich aus einem unserer Todesfälle heraus? Nun, wir haben diese Klammer hier und die Erkenntnisse
können wir in eine Zahl eintragen. Und diese Zahl steht für den Index einer Seite
der Liste, oder? Das wird also
das Element von Index eins und X2 und X3 und X4 und X5 sein. Aber alle, Mittwoch, wir
machen drei und lasst uns einfach spielen und schauen, ob wir
Mittwoch rauskommen und tatsächlich einen Tag,
Mittwoch, das ist schon
ziemlich geil. Jetzt beginnt der Index hier
bei Eins statt bei Null. Das ist also nur
wichtig, wenn Sie bereits programmieren und wenn
Sie schon einmal programmiert haben,
normalerweise, wenn Sie
andere Dinge in anderen Sprachen
und anderen Programmiersprachen tun andere Dinge in anderen Sprachen , beginnen Indizes
normalerweise bei Null. Dies ist bei Lua nicht der Fall. In Lua
beginnt jeder Index bei eins. Das
ist sehr wichtig. Wenn Sie jetzt nicht
wissen, was das alles bedeutet, machen Sie
sich darüber keine Sorgen. Das ist in Ordnung. Ich sage nur, dass es für Leute, die schon einmal
programmiert haben, eine sehr, sehr wichtige
Sache ist, die es zu beachten gilt. Jetzt
haben wir natürlich einen Ausgang, aber was ist, wenn wir vielleicht
wollen, wir geben alles aus. Das wird also
etwas komplizierter aussehen, aber wir haben einen
For-Loop, den wir
verwenden können ,
der im Grunde alles innerhalb
dieser bestimmten Tabelle ausgibt. Nun, es gibt zwei verschiedene
Dinge, die wir tun können. Wir können entweder einen normalen
For-Loop verwenden , genau
da, wo wir sind Hey, ich möchte bei
eins anfangen und ich möchte bei aufhören. Dies ist ein sehr
wichtiger Hashtag-Tag. Das wäre also die Länge
dieser speziellen Tabelle. Zum Beispiel, wie viele Elemente
sind in dieser Tabelle? Ich möchte um eins erhöhen. Dafür will ich machen und
dann einfach Tage ausdrucken. Noch einmal Klammern. Ich habe gesehen, dass dies theoretisch am Montag,
Dienstag, Mittwoch,
Donnerstag, Freitag ausgegeben werden
sollte . Das sollte völlig in Ordnung sein. Mal sehen, ob das funktioniert. Und natürlich Montag,
Dienstag, Mittwoch,
Donnerstag, Freitag. Absolut, keine Sorge. Und es funktioniert völlig gut. Das ist ziemlich cool. Es gibt einen zweiten Weg
, wie wir das tun können. Das funktioniert absolut, aber es gibt einen anderen Weg
, wie wir das machen können. Jetzt dieser, ein
bisschen komplizierter. Der Grund, warum
die andere interessant sein
könnte,
ist jedoch , dass die Tabellen
derzeit dem Index
zugeordnet sind. Also im Grunde ist das
rot, das ist eins, das sind zwei, das sind drei, das sind vier, das sind fünf. Theoretisch könnte ich
machen, was ich will. Also ich könnte, und
ich werde einfach, ich werde einfach verrückte Sachen machen. Sagen wir einfach, a
ist gleich dem, C ist gleich dem, d ist gleich dem und dann ist
F gleich dem. F ist E. Eigentlich hast du es. Sie können also sehen, dass
es hier keine, nein, es gibt
keine Fehler, weil
sie jetzt verschiedenen Schlüsseln zugeordnet sind, oder? Also
das Verrückte ist, wenn ich das behalten würde und ich spiele es, dann wirst du feststellen,
dass ein Tag gleich Null ist. Und wir geben auch
nichts aus weil es kein gibt,
das ist alles Null. Es, das funktioniert nicht. Aber so gut
müssen wir das Schlüsselwertpaar
bekommen. Weil wir
diese Tabelle
im Grunde von einer normalen
Liste, in der Sie über den
Index auf
die Elemente zugreifen können, in eine Art Wörterbuch oder
eine Map umgewandelt diese Tabelle
im Grunde von einer normalen
Liste, in der Sie über den
Index auf
die Elemente zugreifen können , in eine Art haben
, die einen Wert einem anderen Wert
zuordnet. Jetzt können wir also eine For-Schleife
mit einem Schlüssel und einem Wert machen, und zwar
paarweise in der Tagestabelle. Dann werden wir etwas tun. Aber das sieht ziemlich verrückt aus. Die allgemeine Idee
ist jedoch, dass dies das Neue ist. Was wir nehmen ist,
dass
wir einen Schlüssel bekommen , der immer das Erste ist,
was hier ist, oder? Also a ist gleich, das ist der Schlüssel und der Wert ist was
darin geschrieben steht, oder? Vorher war der Schlüssel also
nur der Index 1.234,5. Und jetzt ist der Schlüssel a, B, C, D und E. Das ist das
einzige, was sich geändert hat. Und wenn wir Folgendes
tun würden, wenn wir jetzt Tag oder
sagen wir, sagen wir Schlüssel machen würden. Und dann drucken wir
den Schlüssel aus. Und ich werde den Wert berechnen und dann den Wert ausdrucken. Sie werden feststellen
, dass dadurch der
Schlüsselwert Montag usw. ausgegeben wird . Aber lass uns das einfach spielen. wird Schlüssel a den Wert Montag sehen, Schlüssel C ist Mittwoch Interessanterweise wird Schlüssel a den Wert Montag sehen,
Schlüssel C ist Mittwoch, und das ist auch eine sehr wichtige Sache. Es ist nicht mehr in Ordnung. Ist das nicht verrückt? Nun, das ist in der Tat der Fall. Also lass uns das einfach noch einmal spielen. Wie wir sehen, hatten wir Montag, Mittwoch, Dienstag,
Freitag, Donnerstag. Lass uns das noch einmal machen und wir
bekommen wieder die gleiche Bestellung. Dies ist eine weitere äußerst
wichtige Lektion, denn wenn wir diese
Paare hier verwenden, ist
die Reihenfolge, in der wir sie gespeichert
haben, nicht garantiert. Das ist extrem
wichtig und
muss grundsätzlich beachtet werden. Es ist jedoch immer noch eine sehr,
sehr interessante Sache. Aber behalte das im
Hinterkopf, es ist sehr cool. Und wenn ich
den Wert der Schlüssel hier
nochmal löschen würde , oder? Und wir sollten das noch einmal
durchmachen. Was wird der Schlüssel sein? Nun, es ist genau 12345. Jetzt ist die Reihenfolge korrekt , weil ich mich dazu nicht
zitiere. Ich bin mir nicht hundertprozentig sicher, aber
ich bin mir ziemlich sicher, dass die Schlüssel sortierbar
oder bestellbar sind, oder? Also 1234, es gibt eine bestimmte
Reihenfolge für diese Dinge, dann wird die Reihenfolge
immer so sein , wie du sie
im Grunde gespeichert hast. Und das ist ziemlich cool. In der Tat. Das ist aber nicht
alles, denn was
fehlt in diesen Tagen? Nun, natürlich fehlen Samstag
und Sonntag. Was wir also tun können,
ist, dass wir bestimmte Werte
in diese Tabelle
einfügen können . Wir können Table Dot machen und Sie können sehen, dass es eine
Menge Dinge gibt, die wir tun können, wir können bestimmte Dinge erstellen, wir können bestimmte Dinge
finden. Wir können sogar sehen, dass
der maximale numerische Schlüssel zurückgegeben wird. Es gibt verrückte Sachen. Wir können Dinge bewegen, wir können sie sortieren,
wir können sie klonen. Aber für unsere Zwecke möchte ich
eigentlich nur
etwas einfügen. Und das, was ich einfügen möchte, ist, dass ich in Tage einfügen möchte. Das ist also die Tabelle, in die
wir einfügen wollen. Dann müssen wir das
Spezifische eingeben,
in diesem Fall möchte
ich das eigentlich an einer bestimmten Stelle platzieren. Also werde ich das auf Position Nummer sechs setzen. Und dann möchte ich
den Wert angeben. Und der Wert hier ist Samstag. Und was wir tun können, ist das
einfach zu kopieren. Und dann, in diesem Fall, auf Position
sieben, möchte
ich am Sonntag platzieren. Und wenn wir das jetzt
ausgeben würden, also noch einmal, kann ich einfach
nehmen, was ich will. Eigentlich nehmen wir
einfach diesen und dann
löschen wir ihn einfach von hier aus. Das wird okay sein, damit wir den Output hier
nicht überspannen. Lassen Sie uns spielen, und
Sie werden feststellen, dass wir
jetzt einen Schlüssel
sechs haben, der den Wert
von Samstag zurückgibt, und einen Schlüssel sieben, der den Wert von Sonntag
zurückgibt. In der Tat sehr interessant. Und dann noch eine letzte Sache hier. Jetzt weiß ich, dass das
ziemlich viel war und das sind viele neue Dinge auf
einmal. Mach dir überhaupt keine Sorgen. Wir werden in der
Lage sein, weißt du, du wirst in der Lage sein,
das ein
bisschen später mit Leichtigkeit
zu bewältigen . Was ich jedoch wie
immer
empfehle , ist,
damit einfach
ein paar Dinge auszuprobieren . Probiere es aus. Wenn Sie
hier verschiedene Werte haben, indem Sie
anstelle von Zeichenketten haben, können
Sie hier Zahlen eingeben. Und das ist übrigens auch eine
wirklich interessante Sache. Sie können sogar verschiedene Werte
von Variablentypen
kombinieren und kombinieren. Sie können hier Zahlen haben
und so weiter und so fort. Was eigentlich
sehr interessant ist , denn das bedeutet, dass Sie quasi einen Kurs haben können. Nun, das ist ein bisschen
fortgeschrittener und wieder
etwas für
Leute, die
bereits
in einer anderen Sprache programmiert haben . Also kannst du haben, also können
wir zB eine Person haben, die einen Vornamen
hat, z. B. John. Und es kann einen Nachnamen haben, der vielleicht Smith ist. Und dann kannst du sogar ein H
haben, oder? Welches ist vielleicht eine 32. Und jetzt
kann ich Person für Person drucken. Und dann wollen wir
FirstName eingeben, dieses y und dann wollen wir die Person
haben. Wir können auch Person
Dot machen, und das ist verrückt. Wir können sogar Person Dot machen. Und Sie können alle
drei verschiedenen Dinge sehen , die wir in
diese spezielle Tabelle aufgenommen haben. Wir können so ausgeben. Also können wir den Nachnamen eingeben
und dann können wir sagen,
ist, dass wir
Person.New Age, Jahre alt sagen können. Lassen Sie mich ein
wenig herauszoomen. Da hast du es. Also Person und was? Es wird den Vornamen der
Person ausgeben. So können
wir uns schreiben. Wir können auch so darauf zugreifen. Und wir haben nur ist und
dann das Alter, Jahre alt. Lassen Sie uns dieses LLS ausgeben,
das abspielen und sehen, ob das funktioniert. Und natürlich ist ihr Sohn John
Smith 32 Jahre alt. Absolut verdammt, großartig. Das ist wirklich cool und wir können natürlich noch ein
bisschen weiter gehen. Und jetzt ist das nur, ich möchte das
nur erwähnen. Wir können sogar eine
Tabelle mit Tabellen erstellen. Das bedeutet, dass
wir theoretisch mehrere Personen haben können und dann eine Liste
dieser Personen haben können. Wir werden das hier nicht
machen
, weil das absolut Wahnsinn ist. Dies würde
den Rahmen der
Lula-Einführung hier bei weitem sprengen. Ich wollte
dir Tische vorstellen. Sie können ziemlich kompliziert sein. Das kann ein
bisschen kompliziert sein. Das kann ein
bisschen kompliziert sein. Aber hoffentlich
konnte ich Sie dazu bewegen, zu verstehen, was hier
passiert. verstehen, was hier
passiert. Nochmals, ich
empfehle dringend , das
Skript hier mitzunehmen, das natürlich immer zum Download
zur Verfügung steht. Und du kannst das nehmen
und es einfach ausprobieren. Versuche, verschiedene
Dinge damit
zu machen, Dinge an
verschiedenen Stellen
einzufügen, Dinge einzufügen, die um
die Person hier herum liegen. Ich kann
nur empfehlen, das zu tun und zu versuchen, ein Gefühl
dafür zu bekommen, wie das funktioniert. Aber noch einmal, um die
Gesamttabellen zusammenzufassen, oder es können Listen von Dingen sein , die bestimmte Schlüssel
und bestimmte Werte haben. Wenn Sie die Schlüssel nicht angeben, sind die Schlüssel nur
eins bis unabhängig der Anzahl der Elemente, die sich in diesem Fall in dieser Tabelle
oder Liste
befinden . Und du kannst sie
mit zwei verschiedenen For-Loops durchspielen , zwei verschiedenen Arten
von For-Loops. Und das ist in der Tat
sehr, sehr cool. Wir können die Tabellen sogar verwenden, um so etwas wie
einen Kurs zu machen. In diesem Fall
ist es eine Person hier drüben , die einen
Vornamen und ein Alter hat. Und wir können das
auf zwei verschiedene Arten ausgeben. Nun, das war's für
diese Vorlesung hier. Ich hoffe, Sie fanden das nützlich und Sie werden etwas Neues
lernen und wir sehen uns alle
in der nächsten Vorlesung. Also, ja.
14. (Lua) Die Math in Lua: Ordnung, willkommen zurück
zur Klo-Einführung hier für die Roadblocks-Cores. Und in dieser Vorlesung werden
wir über
die Mathematikbibliothek sprechen , oder? Also lasst uns natürlich noch einmal unser Script hier
erstellen, 11. Das wird mathematisch-liberal sein. Da hast du es. Und das wird 11
Mathe sein, das wird in Ordnung sein. Und das wird hier nur
eine sehr,
sehr kleine Einführung sein . Aber es könnte nützlich sein. Also haben wir natürlich schon ein paar
mathematische Dinge gemacht, oder? Wir haben addiert, subtrahiert, multipliziert, dividiert und wir haben sogar den Rest erhalten. Ziemlich verrückte Dinge
, die wir schon gemacht haben. Aber mit der Mathematikbibliothek
können wir noch verrücktere Dinge machen. Also, wenn wir z. B.
minus fünf drucken würden , aber wir
sagen, weißt du was? Eigentlich ist es mir egal
, ob es
minus fünf oder plus fünf ist oder nicht. Ich will dafür eigentlich nur die
absolute Zahl. Nun, wir können einfach den Mathepunkt
ausdrucken. Und du kannst hier
all die verrückten Dinge sehen , die wir
mit dieser Mathematikbibliothek im Grunde bekommen können. Wir können eine Zufallszahl bekommen. Das werden
wir gleich sehen. Wir können sogar Pi verrückt machen. Wir können den Exponenten machen,
wir bekommen den Kosinus, wir können einen
Winkel zurückgeben, den Sie im Bogenmaß
angeben, und er
wandelt ihn in Grad um. Wir bekommen den Logarithmus. Es gibt eine Menge Dinge, wie Sie deutlich
sehen können, dass wir das können. Und das kann äußerst nützlich sein um noch
mathematischere Dinge zu tun. Wenn du sagst, Oh, ich
brauche diesen Mathekram nicht. Nun, zum Beispiel ist es
wirklich nützlich, Dinge wie
die Sinuswelle zu haben . Denn was man mit einem Schild
machen kann, ist z.B. perfekte Kreise
zu machen und so Dinge in Kreisen zu verwischen. Ich sage nur, dass das eines der Dinge
ist, bei denen das
äußerst nützlich sein kann. Aber in diesem Fall wollen wir
eigentlich abs, was für absolut steht. Wir erhalten also den absoluten
Wert von minus fünf,
was, wenn wir nur spielen, natürlich fünf
ist, weil, nun, das ist
der absolute Wert. Dem absoluten Wert ist das Vorzeichen
egal. Es geht nur darum, nun, was ist der tatsächliche Wert? Es gibt noch andere Dinge
, die wir tun können. Also können wir zum Beispiel blaugrün rechnen. Das wird
also die Decke sein. Sie können sehen, dass
die kleinste Ganzzahl zurückgegeben wird, größer oder gleich x
ist. Was bedeutet das?
Okay, das klingt so, es viel verrückter klingt
als es tatsächlich ist. Wenn wir 10.21 eingeben, wird
es einfach zurückkehren,
naja, es wird versiegelt. Es wird also tatsächlich eine Ganzzahl
daraus machen,
was bedeutet, dass es auf die
nächste ganze Zahl
aufwärts gerundet wird . Wenn wir tatsächlich den anderen machen , der Boden sein wird, wird
das abgerundet. Wir können das also tatsächlich aufstellen, aufrunden und dieser
rundet ab, doppelt. Denken Sie daran, dass das
mit den normalen Rundungen
nicht abgerundet wird, oder? Also haben wir auch eine Runde. Dieser
läuft in diesem Fall auch ab, weil er
eigentlich richtig aussieht. Oder die Regel richtig? 0,5 bedeutet, dass Sie aufrunden und alles unter
0,5 rundet ab. Aber schauen wir mal,
das sollte 111010 sein. Uh, schau, ob das
tatsächlich der Fall ist. Und natürlich 111010. Perfekt. Und lassen Sie uns das beenden und
das noch einmal mit
0,5 machen und dann
sollte es 111011 sein. Und natürlich 111011, genau wie wir dorthin gekommen sind. Sie sind absolut perfekt. Genau so
funktioniert das, weil das die, sagen
wir mal, normalen
Rundungsregeln sind. Da hast du es. Das sollte also
hoffentlich Sinn machen. Wir können auch das
Minimum und das Maximum ermitteln. Das ist also auch, kann in der Tat
ziemlich nützlich sein. Also das ist min,
was im Grunde
bedeutet, dass es dir
die Mindestanzahl gibt. Du hast zwei Zahlen eingegeben, oder? Und es gibt eine kleinere
Zahl zurück, die als r Omega angegeben ist. Das sollte also
sehr sinnvoll sein. Und dann können
wir natürlich zwei logische Konsequenzen daraus ziehen, nämlich die maximale Zahl, die die größte Zahl zurückgibt. Sie können tatsächlich, da bin
ich mir ziemlich sicher, so viele
Zahlen eingeben, wie Sie möchten. Lass uns das einfach machen. Warum nicht 60? Ich meine, das würde nichts
ändern, das sollte theoretisch auch
funktionieren. Lass uns einfach sehen. Und das tut es in der Tat. Der erste ist eins und
der zweite ist 515. Das kann also
sehr nützlich sein, z. B. möchtest du
vielleicht
die höchste Zahl
für einen Highscore oder
so bekommen ,
die Min- und Max-Funktionen
können sehr nützlich sein. Aber lassen Sie uns auch Pi ausdrucken , weil White Hat und
nicht Power sondern Pi. Und dann können wir auch
die Quadratwurzel-Mathematik verwenden , dass SQRT die
Quadratwurzel von 25 ist. Pi wird also natürlich
3,141,
5265 sein , so etwas. Und dann sollte die Quadratwurzel
von 25 fünf sein. Mal sehen, wie
weit war ich mit Pi entfernt? 314-15-9265? Ich glaube, ich hatte recht. Ich glaube, ich sagte 649. Ich bin mir nicht sicher, aber
das ist im Grunde Pi. Und das ist natürlich mit
Präzision, das ist Amin. werde diese
Präzision in Spielen sowieso nie brauchen, ich bin mir ziemlich sicher, dass das
die Präzision ist , die
du dir holen wirst, der Umfang
des beobachtbaren Universums
innerhalb von Millimetern. Ich bin mir also ziemlich sicher
, dass das gut wird. Und dann ist die
Quadratwurzel von 25 natürlich fünf. Perfekt Der letzte geht. Sie können auch eine
gewisse Zufälligkeit haben. Nun ist es sehr wichtig, dass Zufälligkeit für den Computer immer pseudozufällig
ist. Im Grunde bedeutet das, dass
Sie es mit einem bestimmten Wert ausstatten. Und wenn Sie
Zahlen generieren, die immer
gleich sein werden, ist das dasselbe. Die Idee,
wenn man z.B. an die
Minecraft-Weltgenerierung als Beispiel denkt , kann
man sie in
einen Seed stecken und dann generiert
es immer
dieselbe Welt. Nun, wie funktioniert das? Das ist genau der Samen
, den du hineinlegst. Und dann sind die Werte, die man
herausbekommt, immer dieselben. Also können wir eine zufällige Zahl machen, das wird dir
eine Zahl geben, die Nummer 0-1. Und du kannst auch
Mathe Punkt Random machen. Und wir können da tatsächlich Sachen
reinstellen. Wir können also 0,10 eingeben
und
das sind die Unter - und
Obergrenzen, die Sie erreichen können. Also lass uns das einfach spielen
und wir können sehen , dass die erste Zahl 0,6 ist,
was auch immer, was auch immer, was auch immer,
was auch immer, und dann 42. Ich meine, was für eine perfekte
Zahl hier, um n zu bekommen. Wenn wir das beenden und
das nochmal spielen, werdet ihr feststellen, dass, oh, es sind genau die gleichen
Zahlen, und das ist genau die Sache, weil der Startwert derselbe ist
, oder? Also haben wir hier den gleichen
zufälligen Startwert. Wenn ich das ändere, bekommen wir
jetzt
ganz andere Zahlen. Sie können also sehen, jetzt erhalten
wir 0,0,69,57. Also, wenn du es in den Samen steckst ,
richtig, wenn du auch 100
hinzufügst, solltest du theoretisch genau
die gleichen
Zahlen bekommen wie ich. Und das ist die Idee
dieser Zufälligkeit oder der
Pseudo-Zufälligkeit. Das ist in der Tat ziemlich cool Wenn du das komplett
randomisieren willst,
brauchst du
normalerweise die Anzahl der Sekunden auf deinem Computer oder die Anzahl der Ticks
auf deinem Computer, denn das ist normalerweise
zufällig genug für einen Seed. Um es zusammenzufassen. Insgesamt sind die mathematischen
Funktionen, naja, es gibt reichlich und sie können dir viele
verschiedene Dinge bringen. Sie können absolute Zahlen, Sie können auf- und abrunden. Du kannst Minimax bekommen, und du kannst hier sogar einige
Konstanten wie Pi und
sogar Zufallszahlen bekommen , deren
Endspiele extrem nützlich sind. Und sie können dir einfach, sie können dir bei einer
Reihe verschiedener Dinge sehr helfen. Es sind morgendliche Feinde in einem bestimmten Gebiet
, die ein bisschen zufällig sind oder Feinden zufällige
Attribute verleihen. Alle möglichen Dinge.
Wirklich cool, oder? Aber damit sind
diese Vorlesung und auch die gesamte
untere Einführung abgeschlossen. Hoffentlich war dies eine gut
genug Einführung,
damit Sie sich hier mit Laura ein wenig vertraut machen können. Wenn Sie sich diesbezüglich immer noch nicht
sehr sicher fühlen , ist
das völlig in Ordnung. Es gibt zwei Dinge, die ich auf jeden Fall empfehlen
kann. Erstens, wenn es
bestimmte Themen gibt , über die wir
gesprochen haben und bei denen Sie
etwas wackelig sind, versuchen Sie, die
Vorlesung noch einmal durchzugehen und zu sehen, ob mit all den verschiedenen
Dingen,
über die wir bisher im Nachhinein gesprochen haben , sie
mit all den verschiedenen
Dingen,
über die wir bisher im Nachhinein gesprochen haben, jetzt etwas
einfacher zu verstehen sind. Zweitens, was ich nur
empfehlen kann ist, einfach mit diesen herumzuspielen, mit den verschiedenen Themen
, die wir haben. Spielen Sie einfach
ein bisschen mit den mathematischen Funktionen hier drüben herum, spielen Sie mit Tabellen,
spielen Sie mit Loops
und wenn- und Else-Anweisungen herum . Mit
nur diesen 11 Dingen, über die wir gesprochen haben
, können Sie bereits
viele Dinge tun . Auch wenn es vielleicht
nicht viel zu sein scheint. Ich sage dir, das ist die
Grundlage, auf der alles, jedes Spiel, im Grunde genommen
mit all diesen Grundlagen erstellt wird. Ja, natürlich gibt es auch
viele andere Dinge. Aber diese Grundlagen, wenn
Sie sie nicht verwenden können, dann ist alles
andere irrelevant weil Sie die Grundlagen, die
Grundlagen, kennen müssen. Sonst
funktioniert es einfach nicht gut. In dieser Hinsicht stoßen
wir auf echte
Hindernisse, falls dies für Sie
bisher nützlich war Ich würde mich über
eine Bewertung von Ihnen sehr freuen. Ansonsten sehe ich dich in
der nächsten Vorlesung. Also, ja.
15. (Roblox) Roblox Studio erklärt: In Ordnung, willkommen zurück
zu den Roblox-Ergebnissen. In dieser Vorlesung werden
wir uns
einige der Benutzeroberflächen von Roblox Studio ansehen . Das soll euch nur einen allgemeinen Überblick
geben, nicht auf
jeden einzelnen Button eingehen und was alles macht, denn dafür bräuchte man im Grunde ein
zweistündiges Video. Und
genau das hatte ich nicht im Sinn. Ich wollte dir nur jedes
der verschiedenen Fenster
hier
zeigen und ungefähr, was sie machen. Also entweder diese oder vielleicht ohne
die Ausgabe wird
ungefähr das sein , was du
sehen wirst, wenn du
Roblox Studio zum ersten
Mal mit einem benutzerdefinierten Spiel öffnest .
Das Erste, was ich wirklich
möchte, ist die
Ausgabe hier
anzusehen und hinzuzufügen, denn die Ausgabe ist eines
der wichtigsten Dinge, die wir während
des gesamten Kurses verwenden werden, weil sie uns im Grunde
ermöglicht geben alles, was wir
wollen, durch Skripte aus. Und hier
wird das angezeigt. Dann konzentrieren wir uns auf diesen
großen Bereich hier, der quasi
die Kameraansicht ist. Und du kannst sehen, dass ich
gerade im Auswahlmodus bin. Es gibt auch den Bewegungsmodus, den Skalierungsmodus und den Rotationsmodus. Sagen wir im Auswahlmodus. Und wenn ich
mit der rechten Maustaste darauf klicken würde, kann ich mich
jetzt bewegen,
wenn ich die Kamera bewege, aber ich kann mit dem
Scrollen des Mausrads hineinzoomen. Und wenn ich mit der linken Maustaste klicke, kann
ich tatsächlich
bestimmte Dinge auswählen. Sie können also sehen, dass es jetzt blau
umrandet ist,
was bedeutet, dass ich dieses Objekt
ausgewählt habe. Das ist die allgemeine Idee. Ich kann mich auch mit
WASD bewegen und mit E und Warteschlange
hoch, es geht rauf und runter. Sie können sehen, wenn ich die
Kamera oben rechts bewege, bewegt sich auch
der Würfel hier drüben, denn das ist ein
dreidimensionaler Raum, er wird
mit einem X-Wert,
einem Y-Wert dargestellt , und ein Z-Wert
davon ist nur ein dreidimensionales
Koordinatensystem. Ich kann hier auf die
Gesichter klicken und dann wird es zu diesem Gesicht
wechseln. Also kann ich zur Ansicht von
oben nach unten gehen. Und jetzt habe ich alles von oben nach unten
im Blick. Es könnte
für bestimmte Dinge nützlich sein, aber ich kann es auch jederzeit
auswechseln. Wenn ich ein bestimmtes Objekt auswähle, kannst
du sehen, dass es
im Explorer rechts, rechts aufleuchtet , sodass du sehen kannst, dass der
kleine Ort hier
drüben dann hervorgehoben ist. Und die allgemeine Idee ist
, dass ich auch einfach darauf
klicken kann und dann wird es
auch hervorgehoben. Also diese Idee des Entdeckers. Der Explorer
steht für alles
, was sich in unserem Spiel befindet, sowohl innerhalb der Spielwelt. Die Spielwelt ist
der ganze Workspace-Kram, oder? Wenn ich also hier
auf das Plus klicken würde, könnte
ich hier eine
Menge Dinge hinzufügen. Wir werden jetzt
nichts hinzufügen, aber ich könnte
wahnsinnig viele Dinge hinzufügen. Das ist im Grunde
alles, was wir sehen. Und dann gibt es noch
andere Dinge, oder? Es gibt also die
Beleuchtungsdienste eines Spielers, paar Sachen zum Lagern. Einiges wird auch in den Vorlesungen durch
die meisten
dieser Dinge
gehen . Aber vorerst ist
der Arbeitsplatz wirklich das
Wichtigste, was wir haben. Und vielleicht der
Server-Skriptdienst, in den wir vorerst
im Grunde alle unsere Skripte
laden werden. dann unten rechts etwas ausgewählt haben, Wenn wir dann unten rechts etwas ausgewählt haben, können
wir sehen, dass wir
einige Eigenschaften haben. Eigenschaften repräsentieren ein
bestimmtes Objekt, oder? In diesem Fall
hat dieser
spezielle Spawnort also diese besonderen Eigenschaften, genau wie Sie ein Mensch
sind, oder? Und Sie haben einen bestimmten Namen
, der eine Immobilie wäre, nur als allgemeine Idee. Und Sie können sehen, dass
verschiedene
Objekttypen unterschiedliche
Arten von Eigenschaften haben. In diesem Fall ist der
Spawnort also vom Typ Spawnort
und er enthält einige Daten. Sie können also sehen, dass dies ist, was ist Stift orange oder hat
dieser Name eine Größe? Das ist also Teil der
Transformation und hat einen Pivot, es hat ein bestimmtes Verhalten, es hat Kollisionen, es hat
einige Porteigenschaften und so weiter und so fort. Es hat sogar ein
Kraftfeld, das
für die Spawnorte spezifisch ist . Das Gleiche gilt für die Teams, da bin
ich mir ziemlich sicher. Es gibt also eine
Menge Dinge und Sie können hier sogar weitere
Attribute hinzufügen. So sehr, sehr interessant. In der Tat
werden wir uns auch in einer
zukünftigen Vorlesung mit Eigenschaften befassen. Und dann, um auch nur
einen kleinen
Überblick zu geben . Wenn wir das also auswählen und jetzt
in den Bewegungsmodus wechseln können, können wir das jetzt verschieben. Sie können also sehen, dass ich das jetzt bewegen
kann. Ich kann es auch skalieren. Ich kann mir die Skalierung vorstellen. Wenn wir die Umschalttaste gedrückt halten,
skalieren wir sie im
Grunde gleichmäßig. Wenn wir die Kontrolle behalten und
es in einer Achse skalieren, können
wir
es sogar so drehen. Und wenn du willst, dass das
einrastet, dann könntest du
das in der
Bewegung hier drehen, Raster ausrichten, und dann kann ich es jetzt nur um 45 Grad drehen. Ich kann es nur in Schritten von
einem Stern verschieben. Das ist die allgemeine
Idee hier. Die meisten dieser anderen
Dinge werden wir auch
während des Kurses sehen . Die Transformation könnte immer noch einige interessante Dinge
sein. Wenn wir also den
Spa-Standort erneut auswählen, können
Sie sehen, dass dies nicht
die Transformation hier ist. Wir können viel
detaillierter darauf eingehen, wie bestimmte Dinge zu
tun sind. Sie sehen also, ich habe einfach eine viel bessere Kontrolle über
alles, besonders wenn ich die Größe vergrößere. Sie können jetzt sehen, dass der
Umfang der Studie hier
tatsächlich in Zahlen dargestellt
wird , was wirklich großartig ist. So kann ich mit dem
Avatar des aktuellen Moments
sehr, sehr genau umgehen. Wir
brauchen hier eigentlich nichts. Das ist also nur, um Avatare hinzuzufügen, in diesem Fall um zu testen, nur um bestimmte
Dinge hier zu testen. Von hier aus können wir spielen, wir können einen lokalen Server
mit x Anzahl von Spielern starten. Wir können sogar
den Player-Emulator ändern. Es ist sehr interessant. Die Ansicht ist eigentlich
ziemlich wichtig, da wir
hier bestimmte Fenster aktivieren und
deaktivieren können. Und wie Sie sehen, gibt es
tatsächlich eine ganze Reihe von Vermögensverwaltern und
wir haben die Toolbox und wir haben den Objektbrowser und die Skriptanalyse
und die Befehlsleiste. Es gibt hier also eine
Menge Dinge, von denen wir die
meisten im Moment überhaupt
nicht brauchen. Das meiste Interessante ist die Toolbox
vielleicht
interessant sein wird. Hier
kannst du also bestimmte Dinge
von Roblox in
dein Spiel laden , oder? Sie können also Lichter hinzufügen, in
diesem Fall können
Sie sogar einige Plugins hinzufügen, oder? Sie können also Plugins hinzufügen. Manche von ihnen kosten, manche Roebuck, manche
nicht. Einige von ihnen sind kostenlos. Seien Sie jedoch immer vorsichtig,
wenn Sie Dinge von
anderen Leuten hinzufügen, die möglicherweise bösartigen Code
in ihren bösartigen Skripten enthalten. Das gibt es. Meistens ist das für
Dinge, die kostenlos sind. Schau dir immer an, wie
viele Bewertungen sie haben und auch, wie viele positive
Bewertungen die Hälfte sind, oder? Also etwas, das 91% positiv ist und mehr
als 100 Bewertungen hat , das wird
wahrscheinlich in Ordnung sein. Behalte das also im Hinterkopf
und wir können das schließen. Sie können ein Raster hinzufügen, das
jetzt eine Kraft ist. Dieses Raster
können wir als zweistufiges Raster
oder auch als 16. Notenraster erstellen. Das hilft dir nur zu
sehen, was passiert. Beim Wireframe-Rendern
werden im Grunde alle Volumenkörper
deaktiviert, Sie erhalten
nur ein
Drahtmodell von allem. Dies kann etwas
Rechenleistung sparen , da Ihr
PC im Grunde sehr langsam ist. Und dann hier die Plug-ins
,
wir werden vorerst keine Plugins
für die Vorlesungsreihe verwenden,
weil wir in der Regel
fast alles, was wir
brauchen, manuell oder selbst machen können . Es gibt jedoch
einige verdammt coole Plug-ins, die verfügbar
sind. Aber darauf
werden wir uns vorerst nicht konzentrieren, oder? Und das ist ein allgemeiner Überblick. Wie ich schon sagte, wir könnten vorerst auf alle möglichen
Dinge bis ins kleinste Detail eingehen, wir werden damit klarkommen. Und wir werden dann im Grunde von hier aus
einen Schritt nach dem anderen machen. Aber das
war's für diese Vorlesung hier bis zum nächsten Mal. Also, ja.
16. (Roblox) Referenz eines Teils: Ordnung, willkommen zurück
zu den Roblox-Grundlagen hier für den Robotik-Kurs. Und in dieser Vorlesung werden
wir uns Teile
ansehen und herausfinden, wie
man sie referenziert. Was sind also Teile, während
Poren sozusagen
alles sind , was im
Arbeitsbereich existiert. Wenn wir also hier auf
diesen Teil klicken, können
Sie sehen, dass wir einen neuen Port
erstellen. Wir können das wieder löschen. Wir können auch zum Plus
am Workspace gehen und bis zum Port
runter gehen oder wir können einfach einen
Teil hineinlegen und Sie können einen Teil sehen und dann wird auch
ein neuer Teil für uns erstellt , wenn
wir diesen Port haben. Wir können das jetzt verschieben
und verschieben. Und wir können all die Dinge tun , die wir bisher gesehen haben, oder? Wir können uns bewegen und
diesen Port skalieren. Wir können das größer machen,
wir können es kleiner machen. Wir können das regeln. Es gibt also viele Dinge, die wir mit diesem
speziellen Port machen können. Und es wird in
der Tat
sehr interessant , jetzt
heißt dieser Port. Und was wir vielleicht tun
möchten, ist, dass wir in
einem Skript
darauf verweisen möchten, oder? Es gibt also eine Reihe von
Möglichkeiten, wie wir das tun können. Vorerst. Wir werden fast alle
unsere Skripte anstelle des
Server-Skriptdienstes
erstellen , was das zu einem Serverskript machen wird , oder? Dies wird nur auf dem Server
ausgeführt. Die Unterschiede
zwischen Servern und Clients werden in den kommenden Jahren etwas
mehr
darüber sprechen ,
als winziger Überblick im Allgemeinen, der Server ist im Grunde das,
was Roblox kontrolliert. Das ist wie irgendwo
auf einem Server, irgendwo auf Roblox-Land, dass du
damit nichts zu tun hast. Sie sind der Kunde, also ist
Ihr PC der Client. Wenn du dich mit einem Spiel verbindest, verbindest
du dich mit einem
dieser Server und dein Client kann offensichtlich nicht alles
tun, oder? So kann der Kunde die Anzahl der
Münzen
ändern, die Sie haben. Denn wenn du
das machen könntest, könntest
du einfach eine Taste
drücken
oder ein benutzerdefiniertes Skript erstellen
und du denkst,
Oh, ich habe 1.000 Münzen und dann die Server
so, ja, absolut. Du hast 1.000 Münzen.
Also muss es
unabhängig davon eine Entkopplung geben, momentan
eine Art Skriptdienst. Wir werden ein neues
Script erstellen, ich nenne es. Wir wählen
diesen F2-O2-Strich und nennen ihn
die Referenz. Ligo wird dies
noch einmal vergrößern und wir
werden dies als referenzieren einen
Teil im Workspace bezeichnen . Das wird in der Tat sehr
interessant sein. Es gibt also ein paar
Dinge, die wir tun können. Nehmen wir also an, wir möchten auf die Grundplatte
verweisen. Wir können das schaffen. Lassen Sie uns einfach eine lokale
variable Grundplatte erstellen und das entspricht dem Spiel. Wir wollen also immer
mit Kleinbuchstaben beginnen. Das ist sehr wichtig,
und jetzt kannst du sehen,
dass ich alles, was ist, anstatt hier zu bekommen. Das Spiel ist also im Grunde die
Wurzel des Explorers. Du kannst sehen, dass ich Spieler habe, und das ist dieser Typ hier drüben. Ich kriege einen Arbeitsplatz mit diesem Typen. Und jetzt gibt es noch eine
Menge anderer Dinge, ich frage mich, ob Sie einen Arbeitsplatz
haben. Noch einmal, sehr wichtig. Das Gehäuse ist hier wichtig. Behalte das immer im
Hinterkopf. Ein Arbeitsbereich mit einem kleinen W sieht vielleicht
so aus , als ob er funktionieren könnte,
aber er wird nicht funktionieren. Also behalte das im Hinterkopf. Stellen Sie immer sicher, dass das
Gehäuse korrekt ist. Das und jetzt plötzlich kann
man sehen, dass es
eine Menge Dinge gibt, aber es gibt auch eine Kamera,
die genau hier ist. Und da ist Teil eins. Schau dir das an. Das ist cool, ist
das derselbe Port? In der Tat ist es so. Und der Name hier
muss genau übereinstimmen. Wenn ich das umbenenne,
wenn ich darauf klicke, drücke F2 und benenne den Port in den Kleinbuchstaben p
um. Das funktioniert nicht mehr. Jetzt können Sie sogar sehen, dass
es uns einen
Port mit Kleinbuchstaben vorschlägt,
da dies der Name
des Teils ist , auf den
wir verweisen. Es muss exakt übereinstimmen. Ich weiß, dass ich
an diesem Punkt feile, aber es ist extrem wichtig weil ich
immer wieder gesehen
habe , dass die Leute
einfach das Gehäuse gewechselt haben. Das Gehäuse ist wichtig. Okay, jetzt referenzieren wir den Teil mit dem
Kleinbuchstaben p, oder? Okay, das ist in Ordnung. Als Grundplatte wollen wir das
nicht. Wir wollen uns eigentlich
auf die Grundplatten beziehen. Also im Grunde genommen, da hast du es. Ich kann
das mit der Tabulatortaste automatisch vervollständigen. Jetzt habe ich auf
die Grundplatte verwiesen. Ich kann Dinge damit machen. Nun, okay. Aber was ist mit meinem Teil
, auf den ich verweisen möchte? Nun, wir
sagen wieder lokal. Und dann nennen wir es meinen Teil da es nur
der Name der Variablen ist
, der sich vom Namen
des Objekts des Teils unterscheidet . Das ist auch sehr wichtig. Das ist es, was dargestellt wird. Fügen Sie den Code ein, solange dies der eigentliche Teil des physischen Objekts ist. Und noch einmal, wir
sagen Game Workspace und dann Port, nicht Parent. Eigentlich wollen wir
parken. Da hast du es. Und jetzt können wir Dinge
mit einem Port machen, weil das Teil verschiedene
Arten von Eigenschaften hat. Wir können diese Eigenschaften
innerhalb des Skripts ändern. Wir können also meinen Teil sagen, die Variable ist, die
auf diesen bestimmten Teil verweist. Das, und jetzt kannst du sehen, dass
ich die Position ändern kann, ich kann den Namen,
die Drehung, die Farbe ändern . In unserem Fall ändern wir
einfach die Transparenz auf 0,5. Und dann machen wir auch
meinen Teil Punktfarbe. Und dann können wir das
in eine Farbe mit drei Punkten ändern. Und dann machen wir einfach so
etwas wie eine Weile wir können
die Farbe genau hier ändern. Also suchen wir uns einfach ein schönes Blau
aus. Ja, das ist nett. Das
generiert diese Farben also nur automatisch. Du kannst sehen, wenn ich
auf die Höhe klicke, wenn ich auf Samstag klicke, wie du siehst, die
Farbe genau hier, und du kannst auf das
Farbrad klicken, um die Farbe zu ändern,
was in der Tat sehr, sehr cool ist. Was passiert nun, wenn wir das Spiel tatsächlich starten? Nun, lass uns einfach
in die Spielansicht gehen. Wir belauschen den Port
gerade , es sieht völlig normal aus, aber wenn ich das Spiel starte, sollte
das zu 50
Prozent transparent sein. Es sollte also zu 50% transparent sein
und blau werden. Lass uns einfach das Spiel spielen und mal sehen wo,
anstatt das Spiel. Und wenn ich hier rumgehe, können
Sie sehen, dass es
jetzt ein bisschen transparent und blau ist,
genau das, was wir wollten. Wenn wir in den Arbeitsbereich gehen, können
wir den
Teil sogar hier sehen. Es hat jetzt eine andere Farbe
und die Transparenz beträgt 0,5. In der Tat ziemlich cool, ich
sehe , wenn wir das Spiel nicht mehr
spielen, wird es
in diesem Fall im Grunde auf
seine ursprünglichen Eigenschaften zurückgesetzt , denn wenn wir sie
anstelle des Skripts ändern, werden
sie nicht dauerhaft geändert. Das wäre also eine
Möglichkeit,
über den Namen hier auf
ein Teil in einem Workspace zu verweisen . Nun nochmal, es ist
extrem wichtig, dass wenn ich die
Namen hier ändere um z.B. meinen coolen Teil oder? Nun, wenn ich das jetzt spielen würde, was würdest du denken, passiert? Nun, wir beziehen uns auf
etwas, das Teil genannt wird. Lass uns einfach spielen. Und wir werden sehen, dass dieser Teil kein
gültiges Mitglied von
Works ist gültiges Mitglied von oder kein
Development-Mitglied von Workspace ist. Workspace und es hat weder
seine Farbe noch seine Transparenz geändert weder
seine Farbe noch seine Transparenz , da das Teil jetzt Mike Cool Part
heißt .
Also behalte das im Hinterkopf. Wenn Sie diesen
Fehler genau hier erhalten, bedeutet
das einfach, dass
Sie wahrscheinlich auf etwas verweisen
, dessen Name geändert wurde. Wenn wir sicherstellen, dass wir
das machen, können wir plötzlich, wenn wir das spielen,
sehen wir , dass wir keine Fehler
bekommen. Und wieder bekommen wir unseren
blauen Teil, der transparent ist. Ziemlich cool,
richtig, um es zusammenzufassen, wie gesagt, achtet darauf, die Dinge richtig zu
benennen. Du kannst game
dot workspace dot verwenden, egal wie der Name deines Ports lautet, auf den du verweisen möchtest. Stellen Sie sicher, dass diese sicherstellen , dass das Gehäuse
immer korrekt ist. Und dann können Sie auf
die Eigenschaften zugreifen , indem Sie
Ihre Teilvariable Punkt eingeben. Und dann können Sie
auf alle Arten von
Eigenschaften zugreifen , die
Teil dieses speziellen Teils sind. Und du kannst
sie mit einem Drehbuch ändern, aber das war's für
diese Vorlesung hier. Ich hoffe, Sie fanden das nützlich und die Benachrichtigungen und die neue Wir sehen uns alle in
der nächsten Vorlesung. Also, ja.
17. (Roblox) Arten von Skripts: Lassen Sie uns
hier mit
den Grundlagen von Roadblocks fortfahren . Folgen Sie dem Roblox-Kurs und in dieser Vorlesung werden wir
uns die verschiedenen
Arten von Skripten
ansehen . Wir haben das also schon
einmal gesehen, wenn wir ein neues Skript im
Server-Skriptdienst
erstellen, es wird im Grunde häufig verwendet sagen Script und Modulskript. Es gibt jedoch
eine andere Art von Skript. Wenn wir das hier einfach eingeben, werden
Sie sehen, dass
es auch ein lokales Skript gibt. Das normale Skript hat leider anscheinend
keinen Tooltip, das lokale Skript
jedoch. Sie können also sehen, dass ein lokales Skript
ein Skript ist , das auf dem
Client und nicht auf den Servern läuft. Die Logo-Skripte können also unter den
folgenden Dingen
platziert werden . Rucksack eines
Spielers, das Charaktermodell eines Spielers, eine Verwendung der GUI, das
Spielerskript und der replizierte
erste Dienst, das Modulskript, ist ein Skriptfragment
und es wird nur ausgeführt wenn andere Skripts
die Requirements darauf verwenden. Das ist also interessant. Und das Drehbuch, naja, das ist
nur ein normales Drehbuch. Bisher haben wir
normale Skripte unter dem
Server-Skriptdienst verwendet . Und das wurde dann sowohl auf dem Server als auch auf
dem Client
ausgeführt. Das ist die allgemeine Idee. Jetzt gibt es einige
Dinge, von denen Sie
nur möchten, dass sie auf dem
Client passieren. Das sind hauptsächlich Dinge, die im Grunde kundenspezifisch
sind. Also vielleicht Bilder, oder? Vielleicht möchten Sie einem bestimmten Client
Bildmaterial hinzufügen. Das ist so ziemlich etwas, was
du mit dem Klienten machen willst. Lokale Skripts oder Client-Skripts. Sie können über Remote-Ereignisse mit
einem Server kommunizieren . Aber das ist
eher ein Zwischenthema für
Fortgeschrittene, über das wir jetzt
nicht sprechen werden. Aber die allgemeine
Idee ist, dass
wir ja lokale Skripte haben können. Wenn wir uns also noch
einmal
ansehen würden , wo wir das hinzufügen können, würden
ein Rucksack, ein Charaktermodell, ein GYE, ein Spielerskript den ersten Dienst
replizieren. Was wir also tun können, ist dies zuerst der
Replikation
hinzuzufügen. Du kannst sehen, dass es sogar
sagt: Hey, lokales Skript. Und wenn wir das machen
und einfach drucken, drucken, Hallo, die Welt ist
eigentlich völlig in Ordnung. Lassen Sie uns das umbenennen und ich sage in diesem Fall das lokale
O3-Skript. Und dann nur ein lokales
Skriptbeispiel in diesem Fall, wir
drucken einfach Hello World und wir werden
sehen, ob wir das spielen, es wird ausgegeben. Aber jetzt, und das
ist eine entscheidende Sache. Wir haben jetzt Kunden hierher gebracht. Das hatten wir also vorher
nicht, oder? Wir erhalten jetzt tatsächlich
etwas vom Kunden. Und das ist extrem wichtig wenn wir einfach auf den
Referenzpunkt hier
drüben eingehen und HelloWorld drucken würden Referenzpunkt hier
drüben eingehen und , genau das Gleiche, nur der Argumentation halber
und wir spielen das ab. Du wirst sehen, dass das jetzt
auf dem Server ist . Du
kannst sehen, wo du hingehst. HelloWorld ist also
auf dem Server von O2 und referenziert Zeile
acht und die andere, richtig, die HelloWorld,
diese ist
vom Client oder drei
lokalen Skripten zum Schreiben. Jetzt könntest du sagen, nun, was ist der verdammte
Unterschied, oder? Es ist nichts Verrücktes los. Nun, im Moment
ist das mein Client und ich kann tatsächlich auf den
Server und den Server wechseln. Der Server
kontrolliert im Grunde alles, oder? Also zum Server, theoretisch könnte
ich einfach sagen, Hey, weißt
du was, nein, ich werde meinen Mann
hierher bringen und ich
werde ihn einfach bewegen. Jetzt können Sie sich nach
den normalen Bewegungsregeln bewegen. Aber wenn Sie versuchen würden Ihre Position gegenüber
dem Kunden zu
ändern, , Ihre Position gegenüber
dem Kunden zu
ändern,
funktioniert das nicht, denn genau hier kommen
Anti-Cheating-Sachen ins Spiel. Daher
ist die Trennung von Client und Server sehr wichtig. Das ist also im Grunde
die allgemeine Idee ein lokales Skript ins Spiel kommt. Und wie gesagt, du kannst mit dem Server
kommunizieren, aber das ist etwas für
ein mittleres Level. Und dann ist
ein Modulskript etwas komplizierter. Also werden wir hier einfach ein Modulskript
O3-Testmodul
erstellen . In diesem Fall
nennen wir das tatsächlich Testimonial.
Da hast du es. Im Modulskript besteht
die allgemeine Idee also
darin, Funktionen oder bestimmte, im Grunde genommen Funktionen, die Sie oft verwenden
werden,
einzufügen, oder? Also verschiedene Multiplikatoren,
verschiedene Bonusfunktionen, einige Berechnungen, die
Sie möglicherweise verwenden. Oft können
Sie eine neue Funktion erstellen. Und das
geht so, dass wir diesen Tisch hier drüben
nehmen. Ich sage Modul. Das ist also der Name der Tabelle,
die sich summiert. Das wird
also der Name
der Methode sein und dann
was auch immer wir wollen. Also im Grunde
werden wir einfach
noch einmal eine Summenmethode erstellen und diesen Fall zurückgeben, nicht wiederholen, wir
geben x plus y zurück. Also nochmal, das
ist nur ein Beispiel. Schreiben Sie eine Summenmethode. Sie würden wirklich kein
benutzerdefiniertes Modulskript dafür erstellen, sondern nur damit Sie sehen, okay, so würden Sie eine Methode in
einem Modulskript
erstellen und später darauf
verweisen. Also wenn wir das haben, können
wir jetzt im Server-Skript, Server wieder ein
normales Skript erstellen und wir nennen das 03 Dash-Testmodule. Warum nicht? Das ist okay. Da hast du es. Und was wir tun
werden, ist, dass wir dieses Modulskript
jetzt
irgendwie mit diesem bestimmten Skript verbinden müssen. Der Weg dazu ist, dass wir hier die
Require-Methode
verwenden müssen , aber eigentlich wollen
wir eine lokale Variable erstellen. Nennen wir
das einfach die Summe. Sicher, und das
entspricht der erforderlichen Methode. Und dann müssen wir auf das Modulskript
verweisen. Das ist also der Game Dot
Server-Skriptdienst und das.o3-Testmodul
genau so. Und dann
wird es tatsächlich so dargestellt , weil wir eine Referenz eines Punktes mit
einer Zahl
beginnen können eine Referenz eines Punktes mit
einer Zahl
beginnen ,
aber das ist in Ordnung. Wir können es so benutzen,
das ist okay. Und dann können wir sagen,
lasst uns das ausdrucken. Lassen Sie uns also den
Summenpunkt drucken und Sie können sehen, dass er uns jetzt sogar
sagt, hey, wir können diese Tabulatortaste verwenden,
um die automatische Vervollständigung vorzunehmen, und wir können 50,23 Shirt sagen. Warum nicht? Das wären also 73, die wir hier ausdrucken. Also lass uns spielen. Und wir werden
sehen, dass der Server hier 73
ausdruckt. In der Tat ziemlich großartig. Und das ist natürlich
wieder nur ein Beispiel. Die Idee hier ist,
dass Sie wissen , ob Sie bestimmte
Zahlen haben, oder? Sie könnten also Dinge hinzufügen wie, Sie wissen schon, Sie könnten verschiedene Tabellen
hinzufügen. Du könntest vielleicht hinzufügen, dass es
so etwas wie ein
Erlebnis, einen Erfahrungsmultiplikator oder so
etwas gibt, oder? Und dann könntest du einfach
eine neue Tabelle hinzufügen und du würdest sagen
, du weißt schon, vielleicht einfach, du sammelst
mehr Erfahrung, oder? Dann bekommst du etwa 25 Punkte. Erfahrener,
mittlerer,
du bekommst eine ganz normale Erfahrung. Und dann auf hart
hast du vielleicht weniger Erfahrung. Dies ist nur noch einmal, wie nur ein Beispiel dafür, was
Sie hier verwenden könnten. Nun, diese wäre nicht nur
im Modul verfügbar,
das ist extrem
wichtig, da es sich
jetzt um eine lokale
Variable handelt, oder? Schauen wir uns das mal an. Wenn wir
die Summe R ausdrucken würden und versuchen
würden, diese zu verwenden. Das könnten wir nicht tun. Wir verwenden hier nur einige,
was interessant ist. Nun, wenn wir nicht
lokal handeln würden, was würde jetzt passieren? Denken Sie, dass wir das
jetzt nutzen können? Nun, schauen wir uns das an, richtig,
Zusammenfassung, dass wir das
immer noch nicht verwenden können, denn um das zu verwenden, müssen
wir das Modul Punkt ausführen. Und jetzt wird es
plötzlich zu dieser
speziellen Tabelle
hinzugefügt. Und wenn wir jetzt hier rein gehen,
haben wir plötzlich den
Erfahrungsmultiplikator zur Verfügung, der wirklich großartig ist
und es kann im Grunde, ich meine, es macht einfach
so viel Sinn, oder? Sie könnten viele
Dinge anstelle von Modulen speichern,
Skripten, die Sie
in,
naja, in allen verschiedenen Skripten verwenden werden. Vielleicht benennt ein spezieller
Spieler das, vielleicht bestimmte Dinge , um später eine
Verbindung zu bestimmten
Diensten herzustellen. Also ein Modulskript, das für
viele Dinge
äußerst, äußerst nützlich ist. Und nur um es
dir zu zeigen, du kannst
Summationserfahrung sehen ,
Multiplikator Medium. Wenn du das ausdrucken würdest, dann würden wir uns eine Eins
oder hier holen, weil das
genau das Medium ist , das
wir hier definiert haben. Das ist in der Tat ziemlich
großartig. Zusammenfassend lässt sich sagen, dass es
drei Arten verschiedener Skripts gibt, drei Arten verschiedener Skripts denen es sich um lokale Skripts handelt, die nur auf dem Client
ausgeführt werden. Dann gibt es
normale Skripte, die sowohl auf dem
Server als auch auf dem Client ausgeführt werden
können und die quasi automatisch
synchron sind. Und dann gibt es auch Module,
Skripte, die
zum Speichern von Variablen
oder Funktionen verwendet werden, die Sie überall
in Ihrem Code verwenden
können. Und das hilft
dir im Grunde, dich nicht zu wiederholen. Wie dem auch sei, ich hoffe, Sie fanden das nützlich und Sie werden etwas
Neues
lernen und wir sehen uns alle
in der nächsten Vorlesung. Also, ja.
18. (Roblox) Eigenschaften Übersicht: Lassen Sie uns mit dem
Roadblocks-Anfängerteil
des Roadblocks-Kurses fortfahren . Und in dieser Vorlesung werden
wir
uns die Eigenschaften ansehen. Also werden wir uns eingehend mit den Immobilien
befassen. Also lasst uns einfach dieses
Fenster erweitern und lasst uns einfach unseren coolen Teil übernehmen und uns
all die verrückten
verschiedenen Immobilien ansehen all die verrückten
verschiedenen Immobilien , die wir zur Verfügung haben. Die erste ist also die
Ziegelfarbe im Allgemeinen, die Ziegelfarbe und die Farbe oder fast dasselbe. Wenn wir hier also eine andere
Ziegelfarbe wählen, sagen
wir ein dunkles Blau, können
Sie sehen, dass sich die
Farbe hier ändert. Und die allgemeine Idee von
Bricolage ist,
dass es sich um
vordefinierte Farben handelt , die einfach zu verwenden sind. Die Farbe kann zwar
buchstäblich wie jede Farbe sein, oder? Wenn ich
hier einfach eine
zufällige Farbe auswähle , wird
sie keinen Namen haben. Sie können also sehen, es sagt, dass es braun, gelblichgrün ist. Es wird also
ungefähr dieser Farbe entsprechen, aber es ist nicht genau
diese Farbe, oder? Du kannst also sehen, dass das alles Liebe ist. Und dann weiß ich nicht, ob es sich um Olivin
handelt ,
aber wenn ich die
Zahlen hier ein bisschen ändern würde , oder? Vielleicht wird das hier wie eine Zwei
sein. Und dann wird es ein Sandviolett
sein. Aber du kannst sehen, dass es, es ist nicht genau hier drin. Es ist einfach ähnlich wie
Wo ist der Sand, Violett. Ich habe keine Ahnung. Ich kann es nicht finden. Wie dem auch sei, das ist die
allgemeine Idee, oder? Sie können hier also eine Nummer eingeben. Das wäre also ein Hex, oder? So etwas.
Jetzt ist es Black Metallic, aber das ist nicht wirklich
schwarze Mentalität. Du kannst diese
Farbe und diese Farbe sehen, sie sind nicht dasselbe. Es ist also die allgemeine
Idee der Ziegelfarbe
und der Farbe , wenn es
darum geht, Schatten zu werfen, die ziemlich
selbsterklärend sein sollte. Im Moment wirft er einen Schatten
und jetzt nicht mehr. Das ist, das ist
so ziemlich alles dazu
gehört, das Material. Sie können also verschiedene
Materialarten wählen. Bestimmte Materialien haben also
bestimmte Eigenschaften. Sie können also z. B. Metall wählen , das ein
wenig reflektierendes Licht sein wird. Sie können also sehen, dass das
jetzt wirklich sehr nach Metall aussieht. Plastik
würde einfach nichts sein. Wenn wir uns also für Glas entscheiden, ist
es nicht zu 100% durchscheinend , weil die
Transparenz natürlich nicht da ist. Aber wenn wir
das transparent machen würden, wäre es
jetzt wie ein Glas Shine n wäre auch
transparent. Ziemlich cool. Es gibt also eine Reihe verschiedener Materialien
, aus denen Sie wählen können. Plastik ist einfach der normale ohne echte Textur
, oder? Also die
Materialvariante in diesem Fall, wir haben keine
Materialvarianz und ich bin mir nicht einmal sicher, welches
der Materialien eine hat. Wir können zum
Materialmanager hier oben gehen und uns tatsächlich
alle Materialien ansehen ,
die es hier gibt. Kraftfeld, z. B. könnten wir das Kraftfeld
wählen. So würde das
Kraftfeld also aussehen. Und dann können wir
hier reingehen und
das Kraftfeld wählen ,
z.B. Kraftfeld. Und jetzt ist das ein Kraftfeld. Sie können also sehen, dass es von allen Seiten sehr
durchsichtig ist. Das ist also in der Tat interessant. Und es gibt noch eine
Menge anderer Dinge. Wir haben Metall hier, verschiedene Metallarten,
Diamantfolie, korrodiert. Metal ist echt geil, dass
man das mit so
manchem Zeug kann, oder? Wenn wir korrodiertes Metall wählen, z. B. wenn sie sehen können, dass sich die
Farbe hier ändert was ändert sich an der
Textur selbst, oder? Jetzt können Sie also sehen
, dass die Farbe hier der Grundfarbe entspricht. Wenn wir dieses Rot wählen würden, dann wird es
plötzlich Rot, Grün, solche Sachen. Es ist also wirklich cool, was
du hier gerne ändern kannst, und es ist wirklich geil. also nur empfehlen, ein bisschen damit
herumzuspielen und ein Gefühl
für diesen Brick zu ist auch ziemlich cool und man bekommt eine Brick-Textur
obendrauf. In der Tat ziemlich beeindruckend, rote
Reflexion und Transparenz. Wir haben schon einmal
darüber gesprochen, oder? Durch Reflexion wird
das eigentliche Ding einfach stärker reflektiert. Jetzt siehst du, dass
das vom Material abhängig
ist , denn
jetzt das Ziegelmaterial, sie können eigentlich nicht reflektiert
werden. Wenn wir
wieder auf Plastik umsteigen würden, was im Grunde
alles sein kann, was Sie wollen, können
wir das so
reflektieren, wie Sie möchten. 100% wären wortwörtlich, es reflektiert alles Licht. Also jetzt hat es einen, jetzt ist es ein Spiegel, oder? Und das
spiegelt das perfekt wider. Aber weil unser Skript
die Transparenz auf 0,5 erhöht, wollen wir das
eigentlich nicht. Und jetzt haben wir wieder einen Spiegel. Jetzt können Sie sehen, dass es den Spieler
nicht widerspiegelt. Das wird
für einen Großteil der Verarbeitung viel zu intensiv sein. Aber das ist die allgemeine Idee für die Reflexion und
dann für die Transparenz. Wir haben das
schon gesehen, im Grunde genommen, wie transparent dieser
spezielle Teil ist. Also Archivierung, eine sehr wichtige Sache bei all
den verschiedenen Immobilien. Und das ist eigentlich
sehr wichtig. Sie können den Mauszeiger darüber
bewegen und es wird Ihnen
eine kurze Beschreibung dessen geben , was
dieses spezielle Ding bewirkt. Sie können also sehen, dass das Archiv
im Grunde genommen nur so ist: Wird das hier gespeichert? Dann haben wir einen
Klassennamen, der normalerweise
gesperrt ist , weil
dies in diesem Fall ein Port ist. Wir können das auch sperren. Wenn wir dann dieses Schloss machen, können wir es tatsächlich
weiter bewegen. Also wenn wir das sperren
und jetzt kann ich nicht einmal ich kann nicht einmal mehr
versuchen, das auszuwählen. Und jetzt kann ich wieder
reingehen und es entsperren, und jetzt kann ich es
wieder auswählen, ich kann es wieder bewegen. Sehr interessant.
In der Tat sollten der Name hier
und der Elternteil
ziemlich selbsterklärend sein. Und dann sind diese
normalerweise auch unveränderlich. Die Größe ist jedoch veränderbar, also wollen wir sie vielleicht vergrößern, vielleicht 758 machen, vielleicht
etwas, das nicht so ist. Da hast du es. Das ist also ziemlich cool. Sie können also sehen, dass es jetzt
größer ist und wir können auch die Position
ändern. Wenn wir also die Position ändern, können
Sie sehen, dass sich die Position
sowohl am Ursprung
als auch am C-Frame ändert. Sie können dies also auch
manuell tun. Also ich könnte wieder -25,20 machen, und du kannst sehen, jetzt hat es sich bewegt
und das ist ziemlich cool. Nun, der
Ausgangspunkt ist im Grunde genommen, du kannst den Mauszeiger darüber bewegen, oder? Diese enthält die
Information der Position und die Matrix der Drehung. Das kannst du ändern und
du kannst daraus lesen. Der Ursprung, falls Sie
jemals daran gedacht haben, hier dreht sich
das im Grunde. Die allgemeine Idee
ist also, wenn ich es drehe, dreht
es sich um
einen bestimmten Punkt im Raum und Sie
können sehen, dass
es zeigt, es dreht sich genau um
die Mitte dieses bestimmten Teils, oder? Wenn ich jedoch
die Position des Ursprungs ändern würde, übernehmen
wir einfach die Kontrolle Z um die Drehung wieder auf Null zu setzen, wenn ich das hier
auf 000 ändern würde, oder? Nun, das Ding
gehört tatsächlich dazu. Das wollen wir
nicht. Wir wollen den Dreh-
und Angelpunkt ausgleichen, oder? Wenn wir nun den Pivot
um 20 minus fünf und -20 ausgleichen würden , wollen wir ihn damit ausgleichen. Plötzlich steht der
Drehpunkt bei Nullen, Nullen. Sie können also sehen, dass
die Position jetzt 00 ist, weil
wir den Drehpunkt verschoben haben. Und wenn ich rotieren würde, würden
wir uns jetzt um
diese bestimmte Position drehen. Also drehen wir uns jetzt darum. Das ist eigentlich ziemlich cool, denn was Sie tun können,
ist, es auszugleichen. Und wenn du z.B. eine
Spinnplattform haben
möchtest, nun, sie können einfach die
ändern, hier die Drehung ändern und jetzt hast du plötzlich
eine Spinnplattform. Du kannst verrückt werden
wie eine Distanz. Aber ja, das ist
wirklich cool und kann für viele
verschiedene Dinge
verwendet werden . In diesem Fall sollten Can
Collide und Can Touch ziemlich
selbsterklärend sein, oder? Es geht nur darum, ob hier
eine physische Interaktion
stattfinden kann oder nicht , kann berührt werden. Wenn das Touched
Event deswegen aufgerufen wird,
gibt es grundsätzlich auch
verschiedene
Kollisionsgruppen , die Sie definieren können. Verankert bedeutet
, dass dies nicht der Fall ist,
dass es nicht von der Schwerkraft beeinflusst wird. Also, wenn wir das haben würden, lasst uns das in die Luft heben und es ist nicht verankert. Wenn wir spielen,
fällt es auf den Boden. Wir können das also tatsächlich sehen. Sie können also sehen, dass es
jetzt am Boden liegt, obwohl wir
es in die Luft gebracht haben. Und wenn wir das richtig
verankern, wenn wir hier runtergehen und das
hier verankern,
dann bedeutet das, dass
es an
dieser bestimmten Position bleibt und
nicht von der Schwerkraft beeinflusst wird. Sie können also sehen,
dass es jetzt in der Luft ist. Ziemlich cool, oder? Maßgeschneiderte physikalische Eigenschaften,
masselos, solche Dinge. Normalerweise empfehle ich,
sich
von denen ein bisschen fernzuhalten , weil
man dann in verrückte Sachen gerät, oder? Die benutzerdefinierten physikalischen
Eigenschaften, die Sie sehen können, Sie können die Reibung,
die Elastizität und die Dichte ändern . Es gibt also einige coole Dinge
, die du damit machen kannst. Aber das ist definitiv
ein bisschen mehr für fortgeschrittene und
fortgeschrittene Benutzer, oder? Und mit dem Rest würde ich mich vorerst nicht anlegen. Sie könnten jedoch jederzeit
den Mauszeiger über die Dinge bewegen und sich
ansehen , was die verschiedenen
Eigenschaften im Grunde bedeuten. Und jetzt sind das natürlich
Eigenschaften, die für
ein Teil spezifisch sind , je nachdem, was
Sie hier erstellen. Wenn wir auf Textur
oder D-Kuh oder auf eine Dialograte
oder
eine Annäherungsaufforderung klicken . All diese verrückten
Dinge, die werden alle
unterschiedliche Eigenschaften haben. Sie müssen jedoch denken, einfach darüber im Klaren sein, dass eine
Eigenschaft nichts anderes ist als eine Variable oder ein Attribut, das
an ein bestimmtes Objekt angehängt ist. In diesem Fall sollte es
eigentlich nichts Verrücktes sein. Aber wenn du eine
Eigenschaft hast, ist das
so etwas wie die Spawnrate, es könnte z.B. auch eine benutzerdefinierte
Eigenschaft sein. Und dann würdest du sagen, oh, das ist wahrscheinlich eine Zahl, die eine bestimmte Beziehung
zu A's zur Spawnrate
eines bestimmten Dings
hat , oder? Das ist also die
Eigenschaftenübersicht, die
wirklich nützlich und
cool sein kann wirklich nützlich und , um ein bisschen
damit herumzuspielen. Und dann werden Sie sehen, dass es eine Menge Dinge gibt, die Sie mit Eigenschaften und
sogar benutzerdefinierten Eigenschaften machen
können Wir werden uns später
zusammenfassen lassen, dass
jedes Ihrer vorhandenen Objekte Eigenschaften hat. Einige von ihnen sind Eigenschaften , die all die
verschiedenen Dinge gemeinsam haben. Wenn das zum Beispiel ein Ding
statt eines 3D-Raums ist, hat
es immer einen
C-Rahmen und einen Ursprung, Bedeutung und eine Größe. Das ist also im Grunde die
Transformation, die die tatsächliche Position
des Objekts im 3D-Raum bezeichnet. Und es gibt noch andere
Dinge wie Kollisionen,
Dinge, die von einem Teil
absteigen, können auch masselos verankert sein,
alles Mögliche. Es gibt also eine Reihe von
Eigenschaften. Ich empfehle dringend, ein bisschen damit
herumzuspielen, einfach einen neuen Port hinzuzufügen mit einigen der hier vorhandenen
Eigenschaften
herumzuspielen . Und Sie können vorerst sogar Ihre eigenen
Attribute hinzufügen . Darauf werden wir uns jetzt nicht
einlassen. Aber es genügt zu sagen, dass
Sie
mit Immobilien viele
coole Dinge tun könnten. Okay, das war's
für diese Vorlesung hier, oder wir fanden das nützlich
und haben etwas Neues gelernt. Wir sehen uns alle in der
nächsten Vorlesung. Also, ja.
19. (Roblox) Vector3 und Position: Ordnung, Willkommen zu den
Roblox-Grundlagen für den Roblox-Kurs. Und in dieser Vorlesung werden
wir über Vektoren
und das Ändern der
Position eines Teils sprechen . Wir haben also schon einmal darüber gesprochen, Teile zu
referenzieren. Wir haben über Module und
Skripte gesprochen und wir haben
über die Eigenschaften gesprochen. Und jetzt lassen Sie uns
diese Eigenschaften
innerhalb eines Skripts richtig ändern . Also lasst uns hier ein neues
Drehbuch machen. Es benötigt einen Server-Skriptdienst. Nennen wir es 05 Dash Positions. Und dann schauen wir mal. Also nennen wir das den
Vektor Drei und die Positionen. Kommentieren Sie hier und dann werden wir
darüber sprechen, was das ist. Lassen Sie uns also
zunächst unseren Teil übernehmen. Das wird also sein, mein Teil hier
wird gleich
dem Game-Workspace sein , mein cooler Teil. Das haben wir also schon einmal
in der Referenzvorlesung gesehen. Das sollte also nichts Verrücktes
sein. Und jetzt können wir
meinen Teil dazu beitragen und jetzt können wir
ändern, was ich meine so
ziemlich all die verschiedenen Eigenschaften,
die da drin sind, einschließlich einiger Dinge, die hier wie ein Blitz
sind. Und wir haben sogar diese seltsamen Dinge vom Typ Aktenschrank. Vorerst werden
wir nur die blauen Würfel
verwenden und z. B. die Position,
die Sie sehen können,
ist vom Typ Vektor drei, und dies beschreibt die Position dieses
Teils innerhalb
der Welt. Derzeit, wenn wir das
einfach tun und das
nur der Argumentation halber ausdrucken. Lass uns das einfach ausdrucken. Wir sollten einen Vektor bekommen
und der ist -21,8 und so weiter und so weiter bis
0,4, 99,1, 17,93. Das ist also im Grunde
diese Position. Und wenn ich es ändern würde, würde sich an
der Ausgabe
nichts ändern , weil wir
nur gleichzeitig ausgeben. Also, wenn ich in die Position
hier gehe und 50, 50,
50 mache , dann wird sich die tatsächliche
Position ändern. Also jetzt ist es da drüben. Aber es würde
die Ausgabe nicht aktualisieren , denn
obwohl diese bereits
ausgegeben wurde und wir
sie nur einmal ausgeben, ist das fair genug. Was wäre, wenn wir
diese Position ändern würden, oder? Was ist, wenn wir
die Position ausgeben und dann Y Teil
dieser Position sagen, und dann wollen wir das ändern. Wie ändern wir das? Nun, wir ändern
das, indem wir ihm einen neuen Vektor drei geben, oder? Also wollen wir
Vektor-Menü mit drei Punkten sagen. Und dann
geben wir hier eine X-Nummer, eine Zahl und eine Z-Nummer ein. Das
Wichtigste hier ist nun, dass ein Vektor drei, einen Vektor schreibt. Vielleicht hattest du
das in Mathematik. Vielleicht hattest du das
in Mathematik insgesamt. Es ist sehr einfach zu verstehen. Was Sie wahrscheinlich schon einmal gesehen
haben, ist, lassen Sie uns so etwas machen. Sie haben also wahrscheinlich schon einmal
ein zweidimensionales Gitter
mit einer Y-Achse
und einer X-Achse gesehen , oder? Und darauf kannst du
jeden einzelnen Punkt
mit zwei Zahlen beschreiben . Jetzt ist es dasselbe
in drei Richtungen, nur in eine andere
Richtung, oder? Also diese Position, wie
wir sie schon einmal gesehen haben,
ist, lass uns das einfach
ein bisschen netter machen. 2015 und -17 der Argumentation
halber, oder? Also jetzt ist es hier drüben
und wir können
diese Position jetzt ändern , indem wir ihr
einfach andere Koordinaten geben. Also sagen wir, statt -21 nehmen
wir, lass uns nochmal 50, 50, 50
machen. Und das sind jetzt die Teile
verankert, also wird es in der Luft
bleiben. Was wir erwarten würden,
ist, dass dies -20, 15, -17 ausgibt, dann ändern wir
die Position auf 50, 50, 50. Wenn wir also das
Spiel tatsächlich starten, obwohl es
die alten Zahlen ausgibt, wird
das jetzt
auf 50, 50, 50 geändert. Und wir können das bestätigen, wir gehen einfach
runter und wir können sehen Position 50, 50, 50 ist. In der Tat sehr interessant, aber das können
wir nur ändern. Wir können natürlich,
ich meine, so ziemlich alles ändern . Wir können sogar die Drehung ändern, die ebenfalls ein Vektor drei ist. Nun gibt es einige
interessante Dinge über die Rotation im
dreidimensionalen Raum. Vorerst machen
wir nur den
Vektor hier drüben. Also könnten wir zum Beispiel 4500
machen, sagen wir, und jetzt sollte es
in X-Richtung gehen, wir drehen um 45 Grad. Schauen wir uns das einfach an
und wir können sehen, wenn wir uns das ansehen, können
Sie sehen, dass es jetzt um 45 Grad
gedreht ist . Und wenn wir uns das tatsächlich
ansehen, können
Sie auch sehen, dass
die Orientierung jetzt nicht ganz 45,
sondern ziemlich 45
ist. Manchmal gibt es
Rundungsprobleme. Denken Sie also daran , dass die Rundung manchmal etwas
seltsam sein
kann , insbesondere bei
diesen Vektoren da viele ,
da viele
Berechnungen durchgeführt werden
müssen. Also runden sie manchmal auf eine
etwas seltsame Weise ab oder runden sich auf. Wir können auch etwas tun
, das sehr interessant ist
, und das ist vielleicht, dass wir den Teil
verschieben wollen, oder? Also vielleicht wollen wir wirklich
sagen, weißt du was? Ich möchte eigentlich, dass sich die
Position ändert. Ich möchte also
die aktuelle Position
meinerseits einnehmen und ich
wollte nur vielleicht
ein paar Studien nach unten machen. Nehmen wir an, erstellen Sie hier einen
neuen Vektor. Wir wollen die X-Achse nicht bewegen. Wir wollen es auf der Z-Achse vielleicht um
25 Grad nach unten bewegen. Und vielleicht wollen wir ein Plus fünf auf der Z-Achse
machen, eigentlich kein Plus Fünf,
sondern nur ein 5-Jahr auf der Z-Achse. Sie können sehen, dass das alles funktioniert,
denn wenn Sie einen Vektor, Vektor minus einen Vektor, funktioniert
das alles völlig gut. Wenn wir das also einfach spielen, werden
wir jetzt sehen, dass sich der Würfel
dorthin bewegt hat, wo er sich bewegt hat. Nun, es lohnt sich,
es ist genau da. Und wenn wir uns dieses
Mikro-Apart ansehen, ist
es jetzt in 50, 75, 45. Jetzt denkst du,
das ist irgendwie komisch. Ja, das ist irgendwie komisch.
Wie ist das passiert? Nun, wir haben
diesen Vektor subtrahiert, oder? Also nehmen wir 50 minus
Null, das ist 50. Fair genug. Wir haben 50 minus -25 gemacht. Oh, nun minus, minus, das ist ein Plus, das
heißt, es gibt eine 75. Und dann haben wir hier fünf
subtrahiert. Das ist also interessant
. Wenn wir
etwas subtrahieren ,
wollen wir hier eigentlich keine negativen
Zahlen haben. Und wenn wir das dann noch einmal machen würden
, können Sie
jetzt sehen, dass sich jeder weiter
unten befindet und da ist es. Also ist es jetzt viel weiter unten. Und jetzt funktionieren
unsere Berechnungen völlig einwandfrei. Das ist also die allgemeine Idee
der Vektorberechnung, oder? Es ist also grundsätzlich
immer das erste Element minus oder plus Rate, das funktioniert
z.B.. Wir würden es also tun, wenn
wir das Minus behalten, das wäre das erste Element. Die neuen Elemente
werden 50 minus Null sein. Und dann wäre der
zweite 50 -25, und dann
wäre der letzte 50 minus fünf. Das ist die allgemeine
Idee dahinter. Was passiert, wenn wir sagen würden, weißt
du was, lass uns das mal durchgehen. Wird das funktionieren?
Nun, lass uns hier einfach 22.2
machen. Und lass uns einfach sehen, was passiert. Es gibt also keine Fehler. Und wenn wir einen Blick darauf werfen,
ist es jetzt sehr, sehr weit weg. Und wenn Sie sich das ansehen, können
Sie 150, 90 sehen. Also genau das, was wir hier
erwarten würden. Dieselbe Idee, oder? Anstatt ein Minus zu machen, machen
wir jetzt mal zwei. Und dann machen wir das im Grunde
für alle, oder? Also machen wir das und
dann machen wir das. Nun, das sind tatsächlich
45 und das waren 25. Und deshalb bekommen wir hier 150,90
als Teile. In der Tat sehr interessant. Nun gibt es noch ein
paar andere interessante Dinge und das ist z.B. wenn wir
etwas vergrößern wollen, oder? Also haben wir die Größe hier drüben. Wir können z. B. ein
Mal gleich machen und dann können wir die Größe
um 50 Prozent erhöhen. Das wird in diesem Fall einfach Zahlen mit 1,5
multiplizieren oder verkleinern. Wenn wir uns das noch einmal ansehen, können
Sie sehen, dass es
jetzt größer ist , jetzt
sieht es
nicht mehr so aus. Aber wenn wir hier hingehen und sehen, dass die Größe jetzt
10,57 Punkt 5.12 ist. Und wenn wir nicht rennen, beträgt
die Größe nur 75,8. Dies sind jedoch einige
der Beispiele für das Ändern der Position, der Drehung und der Größe. Das ist
schon richtig cool, oder? Zusammengefasst wird Position oder Drehung
durch einen Vektor dargestellt. Und ein Vektor besteht hier einfach
aus drei Zahlen mit einem X- und einem Y-Wert
und dem Z-Wert. Und Sie können sie mit
den normalen Vorgängen ändern , oder? Multiplizieren, subtrahieren,
all diese Arbeit. Das ist also ziemlich cool
und du machst es so. Nun, das war's für diese
Vorlesung hier. Ich hoffe, Sie fanden das nützlich und
Sie werden etwas Neues lernen und wir sehen uns alle
in der nächsten Vorlesung. Also, ja.
20. (Roblox) Die Wait-Function: Ordnung, lassen Sie uns hier die Grundlagen der
Robotik
für den robusten Kurs fortsetzen . In dieser Vorlesung werden
wir
über die Gewichtsfunktion sprechen . Die Gewichtsfunktion ist also eine unglaublich wichtige
Sache, der
Sie beim Scripting und
bei Roblox oft begegnen werden . Und lass uns hier einfach ein
neues Skript erstellen, es 06 Dash Waiting
nennen. Und wir nennen das einfach die Gewichtsfunktion, weil es um die Gewichtsfunktion geht. Nehmen wir an, ich habe einen For-Loop. Ich habe bei Null angefangen und gehe zu
zehn und erhöhe um eins. Lass uns das machen. Und
sagen wir, ich drucke die Nummer aus. Also, wenn wir das machen würden, würde es
die Zahlen ausdrucken, oder? Unverzüglich. Man kann in einer Frage von,
ich meine, buchstäblich
fast allen von Null bis Zehn sehen ,
sogar im selben Tick, also denselben Millisekunden. So schnell war es. Aber sagen wir Nein,
nein, nein, nein, nein. Ich möchte, dass das jede Sekunde
ausgedruckt wird. Nun, wir verwenden einfach die
Gewichtsfunktion hier drüben. Ich gebe einen weiter. Was es also tatsächlich tut ist, dass es den
aktuellen Thread ausgibt, bis die angegebene
Zeit in Sekunden abgelaufen ist. Nun
ist es sehr wichtig, dass dies, sagen
wir,
negative Folgen haben kann sagen
wir,
negative Folgen wenn viele
Drehbücher laufen. Die Gewichtsfunktion
ist also nicht das
A und O, dass Sie sie überall
verwenden sollten. Es gibt auch andere Möglichkeiten,
darauf
zu warten, dass etwas passiert. Das ist also nicht
das A und O. Aber in diesem Fall, wenn
wir dieses
012 ausführen würden und Sie sehen, dass
es weitergeht. So kann ich
herumlaufen, es ist alles in Ordnung. Und es geht
genau 1 Sekunde nach der anderen weiter und wir nehmen teil und jetzt ist
das Gewicht fertig. Das ist also ziemlich cool. Das ist cool für bestimmte Dinge wie zum Beispiel zum Zählen von
Dingen, solche Sachen. Das ist echt geil. Dies ist ein Beispiel dafür, wo die Gewichtsfunktion wirklich nützlich sein
könnte. Manchmal
kann es auch wichtig sein, wenn du bestimmte Dinge importierst und manchmal denkst du einfach, ich warte einfach
ein bisschen und dann kannst du etwas weiter
ausführen. Aber wie gesagt,
das eigentliche, was es tut,
ist, dass es im Grunde
den aktuellen Thread liefert. Nun, das ist
Computersprache
auf hohem Niveau , was im Grunde genommen dass
alles, was es bei dieser bestimmten Art
von Arbeitslast
tut, irgendwie gestoppt bei dieser bestimmten Art
von Arbeitslast
tut, irgendwie wird und es dann nach Ablauf der
Sekunden
fortgesetzt wird. Es gibt also Dinge
, die, wenn du das verwendest, möglicherweise
bestimmte Dinge in deinem Spiel kaputt machen könnten. Seien Sie also vorsichtig und
verwenden Sie Ihre Gewichte nicht überall. Wir sagen einfach, oh,
das funktioniert nicht. Lass uns hier einfach warten , dass das normalerweise nicht das ist,
was du tun willst. Ich möchte das nur noch einmal betonen
. Was ich im Druck kommentieren werde und das ist
so ziemlich alles, was Druck kommentieren werde und das ist
so ziemlich es
zur Gewichtsfunktion gibt. Es gibt wirklich
nichts zusammenzufassen. Es wartet nur ein
paar Sekunden und Sie sollten es nicht
überall in Ihren Skripten verwenden. Es wird einige
Beispiele geben, wo wir es verwenden werden, die interessant
sein werden. Und dann gibt es einige
Beispiele, wo wir es verwenden könnten, aber wir möchten vielleicht etwas anderes
verwenden. Nun, das war's für
diese Vorlesung hier, oder wir fanden das nützlich und
ihr werdet etwas Neues lernen und wir sehen uns alle
in der nächsten Vorlesung.
21. (Roblox) Basic: Ordnung, willkommen zurück
zu den Grundlagen der Robotik hier für den Roblox-Kurs. Und in dieser Vorlesung werden
wir uns dem Verschieben eines Teils befassen. Das wird also in der Tat sehr
interessant sein. Also dafür im
Serverskriptdienst, noch einmal, indem
wir ein neues Skript erstellen und das nennen wir 07 und wir nennen diese Bewegung. Das wird also im Grunde einige der Dinge beinhalten
, die wir bisher gelernt haben. Um sich zu trennen,
gibt es
natürlich viele Möglichkeiten, dies zu tun. Dies ist übrigens nur
ein Beispiel, das wir mit einem aktuellen
Verständnis, das wir haben, verwenden
können. Es gibt also verschiedene Möglichkeiten, wie wir Teile
besser bewegen könnten, aber es ist möglich, di