Sie sind auf Seite 1von 9

Game Maker Studio 2 – Notizen

Inhalte des Ressourcenfelds (Game Assets):

Sprites: Grafiken, die die Spielobjekte darstellen.


Tile Sets: Grafik-Pinsel zum Erstellen der Grafik von Leveln.
Sounds: Sounds aus Datei auswählen u. hiermit ins Spiel hineinladen.
Paths: Wegpunkte für Spielobjekte setzen, die diesem Pfad dann
folgen.
Skripts: Codedateien.
Shader: Erlauben das modifizieren der Grafikkarte, hierbei ist Shader-
Sprache zu verwenden. Wirklich komplex.
Fonts: Schriftarten, die man im Spiel haben möchte, kann man
hiermit definieren.
Objects: Sämtliche Spielobjekte, aus denen man das Spiel bildet.
Ihnen können u.a. Sprites zugewiesen werden.
Rooms: Level, in denen das Spiel stattfindet und sich Objekte
befinden.
Code:

Das Semikolon (“;”):


Die Aufgabe des Semikolons im Code ist es, zwei Zeilen Code
voneinander zu trennen. Hierbei gelten Ausnahmen, wie z.B. für
Funktionen wie „if (variable = Wert X)“, auf die sich bestimmter
nachfolgender Code beziehen kann, woraufhin man in der, das if-
Statement beinhaltenden, Zeile kein Semikolon setzt.
Bsp.: Münzen = 420;
if (Münzen >= 100)
{
show_message(“Du kannst dir das Schwert leisten!“);
}

show_message(str):
„show_message(“str”)“ gibt in einer separaten Text-Box, ähnlich
eines eigenen Fensters, den, in der Klammer platzierten Text (in
Anführungszeichen!) bzw. die Zahl o.ä. aus.
DIESE FUNKTION IST NUR FÜR DIE BENUTZUNG ALS DEBUG-HILFE
GEDACHT.
Bsp.: Name = Cassian;
show_message(Name);

Kommentare im Code:
Kommentare im Code haben keinerlei Auswirkungen auf den Code,
könne aber nützliche Notizen sein, die beim Verständnis und der
Übersichtlichkeit des Codes helfen können.
1. Einzeilige Kommentare: Zwei „/“ vor dem Text
2. Mehrzeilige Kommentare: „/*“ um den Kommentar zu
aktivieren, „*/“ um ihn zu deaktivieren

Variablen:
Ein Speicherplatz für Werte, zum Abspeichern von Daten. Die
abgespeicherten Werte können Zahlen, Fließkommazahlen,
Zeichenketten (z.B. Wörter oder ganze Sätze) oder Wahrheitswerte
(z.B. „true“ oder „false“) sein.
Bsp.: Münzen = 6

Mathematische Ausdrücke:
Eine mathematische Rechnung, die ein Ergebnis liefert.
Bsp.: zahl = 1 + 2

Mathematische Operatoren:
Mathematische Operatoren werden genutzt, um eine Rechnung
anzustellen. Sie können nicht nur auf Literale (Literale sind lediglich
Zahlen wie z.B. -1; 2; 3.5 usw.), sondern auch auf Variablen
angewendet werden. Zu den mathematischen Operatoren im Game
Maker 2 gehören:
 „+“, um eine Addition durchzuführen
 „-“, um eine Division durchzuführen
 „*“, um eine Multiplikation durchzuführen
 „/“, um eine Division durchzuführen
Bsp.: Produkt = Faktor * Faktor
Rechnen:
Das Rechnen mit Literalen verläuft im Game Maker wie gewohnt. Um
z.B. die Zahl 1 mit zwei zu addieren, kann man einfach „1 + 2“
schreiben (im Code z.B.: „zahl = 1 + 2“). Das ändern des Wertes einer
Variablen weicht allerdings davon ab: Diese verschiedenen
Methoden, um mit dem Wert einer Variablen zu rechnen, gibt es im
Game Maker:
 „variable++“ / „variable--“ addiert 1 zum / subtrahiert 1 vom
Wert der Variable „variable“.
 „variable += x“ / „variable -= x“ / „variable *= x“ / „variable /=
x“ addiert / subtrahiert / multipliziert / dividiert den Wert der
Variable „variable“ mit dem Wert „x“.
 „variable = variable + x“ / „variable = variable - x“ / „variable =
variable * x“ / „variable = variable / x“ addiert / subtrahiert /
multipliziert / dividiert den Wert der Variable „variable“ mit
dem Wert „x“ und ist damit lediglich eine längere Schreibweise
des oben aufgeführten Weges.
 „variable = x“ setzt den Wert einer Variablen „variable“ auf den
Wert „x“.
Bsp.: zahl = 3 * 1;
zahl += 10;
zahl--;
Der Wert der Variable „zahl“ oben ist, nach ausführen des Codes, 12.

Modulo:
Der Modulo-Operator („%“) ermittelt den Restwert einer Division.
Ein Beispiel: Bei der Divisionsaufgabe „10 / 3“, passt die Drei dreimal
in die Zehn, 3 * 3 = 9 und 10 – 9 = 1. Hierbei ist Eins das Ergebnis,
welches der Modulo-Operator ermittelt.
Bsp.: wert = 21 % 7

Buhlscher Ausdruck:
Ist ein Wert, der aussagt, ob etwas wahr („true“) oder („false“) ist.
Bsp.: 1 < 2 = true

Größenvergleiche und Vergleichsoperatoren:


Größenvergleiche werden verwendet, um die Größe zweier Werte zu
vergleichen. Die verschiedenen Vergleichsoperatoren des Game
Makers sind:
 „<“, dieser Operator, erfragt ob die linke Zahl kleiner ist als die
Rechte.
 „>“, dieser Operator, erfragt ob die linke Zahl größer ist als die
Rechte.
 „<=“, dieser Operator, erfragt ob die linke Zahl kleiner oder
gleich ist als/wie die Rechte.
 „>=“, dieser Operator, erfragt ob die linke Zahl größer oder
gleich ist als/wie die Rechte.
 „==“, dieser Operator, erfragt ob die linke Zahl gleich wie die
Rechte ist.
 „!=“, dieser Operator, erfragt ob die linke Zahl ungleich der
Rechten ist.

If-Abfragen:
If-Abfragen werden zum Steuern des Codes benutzt, d.h. sie sorgen
dafür, dass gewisse Blöcke Code nur unter bestimmten Bedingungen
ausgeführt werden. Eine simple If-Abfrage (Englisch “if“ statement)
besteht aus dem Schlüsselwort „if“, einer Bedingung (in Klammern,
z.B. „(Leben > 5)“ ) und einem Codeblock (in geschweiften
Klammern), der besagt, was geschieht, sollte(n) die gegebene(n)
Bedingung(en) erfüllt werden. Eine komplexere If-Abfrage, die auch
festlegt, was passiert, wenn die vorausgesetzte(n) Bedingung(en)
nicht erfüllt werden, benötigt zusätzlich noch das Schlüsselwort
„else“ und einen weiteren Codeblock in geschweiften Klammern, der
besagt, was geschieht, sollten die gegebenen Bedingungen nicht
erfüllt werden.
Bsp.: alter = 16;
if (alter > 18)
{
show_message(“Du darfst dir das Spiel kaufen.“);
}
else
{
show_message(“Du darfst dir das Spiel nicht kaufen.”);
}

Kombinationsoperatoren (Und-, Oder- und Nicht-Operator):


Kombinationsoperatoren werden verwendet, um Buhlsche
Ausdrücke präziser zu formulieren. Es gibt drei
Kombinationsoperatoren:
1. Und-Operator: Dieser Operator („and“ oder „&&“) kann
mehrere Buhlsche Ausdrücke aneinanderkoppeln und bewirkt
damit, dass, damit der zusammengekoppelte Ausdruck true ist,
die beiden, ihn formenden Ausdrücke, true sein müssen,
andernfalls ist er false.
2. Oder-Operator: Dieser Operator („or“ oder „||“) bewirkt, dass
es ausreicht, dass einer der, durch in zusammengekoppelten,
Buhlschen Ausdrücke true ist, damit der gesamte,
zusammengekoppelte Ausdruck, true ist.
3. Nicht-Operator: Dieser Operator („!“) bewirkt, dass an ihn
gekoppelte Ausdrücke nicht erfüllt sein müssen, um erfüllt zu
werden und andersherum, d.h., er lässt den Game Maker,
anders als sonst üblich, prüfen, ob die betreffende Variable
false ist, anstatt sie auf true zu prüfen.
Bsp.: ausweisFehlt = false;
alter = 24;
führerscheinDabei = false;
if ((alter >= 18) and (!ausweisFehlt or führerscheinDabei)
{
show_message(“Du darfst hier saufen!“)
}

Switch-Statements:
Ähnlich wie If-Statements dienen Switch-Statements („switch(var)“)
dazu, das Ausführen bestimmter Blöcke Code zu kontrollieren. Dabei
verwenden sie jedoch keine Buhlschen Ausdrücke, sondern legen
einfache eine Variable fest, deren Wert dann im folgenden Statement
genauer überprüft wird. Der, unter dem Switch-Statement geschweift
eingeklammerte, Codeblock im Switch-Statement definiert
verschiedene Fälle („case x :“, wobei x ein möglicher Wert der
Variable ist), in denen die angegebene Variable einen bestimmten
Wert besitzt und führt dann, je nachdem, welche der Fälle erfüllt
wird, bestimmten Code aus. Dies Erlaubt das Ausführen
verschiedener Blöcke Codes als Reaktion auf unterschiedliche
mögliche Werte einer Variablen. Die Fälle werden dadurch getrennt,
dass einem „case“ der darauffolgende, sich noch innerhalb der
gesamten geschweiften Klammer befindende Code, nur zugeordnet
ist, bis das Schlüsselwort „break“, welches die einzelnen Fälle
voneinander trennt und den eventuell ausgeführten Code beendet,
erreicht wird. Falls kein „case“ zutrifft, d.h., wenn die Variable einen
Wert hat, der durch keinen der festgelegten Fälle definiert wurde,
setzt der Fall „default“ ein. Er führt immer dann, wenn kein anderer
Fall zutrifft, den, ihm zugeordneten, Code aus.
Bsp.: tag = 2;
switch(tag)
{

case 1 :
show_message(“Montag“);
break;

case 2 :
show_message(“Dienstag“);
break;

default :
show_message(“Dies ist kein Wochentag.“)
break;
}

Schleifen:
Schleifen sind Kontrollstrukturen, die, anders als z.B. If- oder Switch-
Statements, Code nicht kontrollieren, indem sie Abfragen machen,
sondern indem sie bestimmte, ihnen zugeordnete Codeblöcke
wiederholen und mehrmals ausführen.
Es gibt vier verschiedene Schleifenarten im Game Maker:
 Die Repeat-Schleife,
 die While-Schleife,
 die Do-While-Schleife,
 und die For-Schleife.

Repeat-Schleife:
Die einfachste aller Schleifenarten führt ihren Codeblock einfach so
häufig hintereinander aus, wie im Vorhinein festgelegt. Sie besteht
aus dem Schlüsselwort „repeat“, samt einem Klammerpaar, in dem
sich ein Wert befindet, der festlegt, wie häufig die Schleife wiederholt
werden soll, und einem zugeordneten Codeblock in geschweiften
Klammern. Die Wiederholungen werden hintereinander ausgeführt,
was bedeutet, dass, unter der Schleife stehender Code, erst
ausgeführt wird, wenn die Schleife beendet wurde.
Bsp.: wert = 1;
repeat(10)
{

show_message(wert);
wert++;
}