Das magisches Teleporteramulett - Gegenstände die mehr können!
...welcher Held kennt es nicht. Man hat den Endboss gelegt und will nun den Loot einstecken... aber die Taschen sind voll!
Für unseren Harold ist das kein Proble. Er hat ein Amulett, mit dem er sich ganz schnell in den Laden seines alten Freundes Bertram teleportieren kann. Wenn du für deinen Helden auch soetwas möchtest lies weiter. Dieses Tutorial erklärt, wie man Gegenstände über ein gewöhnliches Ereignis komplexe Funktionen zuweist!
Ziel: Gegenstand erstellen, der komplexe Funktionen übernimmt
Benötigt: Ein Maker, etwas Zeit und Geduld
Schwierigkeit: leicht
1: Der Gegenstand braucht einen Namen, ein Symbol und eine Beschreibung, dabei ist der Kreativität keine Grenze gesetzt. Wir erstellen ein magisches Amulett, das uns zum Shop bringen soll.
2: Die Eckdaten des Objektes sollten passen. Stellt "vVerbrauchber - Nein" ein, damit das Amulett für immer erhalten bleibt. Zudem soll Herold das Amulett nur außerhalb eines Kampfes (also im Menübildschirm) verwenden können.
3: Schaden macht das Amulett keinen, dafür rufen wir unter "Effekte" ein gewöhnliches Ereignis (Common Event) auf. Dieses heißt in diesem Beispiel "Amulett Teleport"
Super, das Amulett ist angelegt! Herold kann es nun im Spielmenü unter Gegenstände aufrufen und anwählen. (Zumindest, wenn er es im Inventar trägt...)
Das wird ein wenig komplexer... nicht erschrecken. Das Event wird Schritt für Schritt erklärt!
Öffnet die Datenbank (F9 oder unter Werkzeuge - Datenbank oder in der Symbollesite oben auf die 2 Zahnräder klicken) und klickt links auf "Gew. Ereignisse"
Wie bei den Gegenständen sind links alle eure Ereignisse aufgelistet und so soll es aussehen, wenn wir fertig sind:
Das sieht jetzt nach mehr arbeit aus, als es ist... lasst uns Schritt für Schritt durchgehen:
Herold befindet sich in einer krassen Höhle, vor der Truhe. Damit er am Ende genau auf diese Position zurück teleportiert wird, müssen wir seinen aktuellen Standpunkt speichern. Dazu zählt die X-Koordinate, die Y-Koordinate und die Karten_ID.
Klickt doppelt in das Fenster und wählt "Variable steuern" aus
Es öffnet sich ein Fenster. Stellt unter "Variable" die Variable für die X-Koordinate des Spielers ein (bei uns heißt sie Map_x)
Die Variable muss nun den richtigen Wert zugewiesen bekommen. Klicht in das Feld neben"Spieldaten". Im neuen Fenster kann unter "Charakter" der Wert "Karte X" gewählt werden. Mit dieser Funktion wird die X-Koordinate des Spielers auf die entsprechende Variable gespeichert.
Wiederholt diesen Schritt für die Y-Koordinate
und nocheinmal für die Karten_ID. Den wert für die Karten_ID findet ihr unter Spieldaten - Sonstiges
Mein Amulett fragt noch einmal nach, bevor es Harold teleportiert. Ob und was das Amulett fragt, bleibt aber euch überlassen
Wird das Amulett aufgerufen, müssen wir ersteinmal herausfinden, wo sich Harold derzeit befindet. Dazu legen wir eine zusätzliche Variable "Aktuelle_Map_ID" an und speichern in ihr die Karte, auf der sich der Spieler derzeit befindet.
Danach bauen wir eine "Bedingte Verzweigung" ein. (Ihr findet diese auf Seite 1 unter Ablaufsteuerung, gleich der 1. Eintrag)
Wir überprüfen, ob sich der Spieler auf unserer Shopkarte befindet. Die Shopkarte hat bei mir die ID 2. (Um die ID einer Mapr herauszufinden klickt in dem Fenster, wo all eure Maps stehen, rechts auf die Map und auf "Bearbeiten". In der Kopfzeile des Fensters steht dann die ID)
setzt auch den Haken bei "Else-Verzweigung". Der Inhalt der Else-Verzweigung wird nur dann ausgeführt, wenn die Bedinung nicht erfüllt ist.
Das Fenster sollte bei euch ungefähr so aussehen, wie auf dem Beispiel links
Befindet sich der Spieler NICHT auf der Shopmap, ist er vermutlich irgendwo unterwegs und will sich teleportieren. Die in Schritt 1 angelegten Befehle, können in den Else-Zweig kopiert werden.
Nun wollen wir uns noch darum kümmern, wie Harold zurück in die Höhle gelangt
Dazu brauchen wir die Option "Spieler übertragen" (Seite 2, ganz oben links)
Die Position, von der aus Herold gestartet ist, haben wir bereits gepeichert und so bauen wir sie nun auch ein.
Statt "Dierkte Zuweisung" nutzen wir nun "Bezeichnung mit Variablen" und stellen die entsprechenden Variablen ein.
Diese Zuweisung ist Teil des "if-zweiges" und soll nur ausgeführt werden, wenn der Spieler auf der Shopmap ist.
Ist der Spieler im Shop und wählt das Amulett aus, so wird er zurück ins Abenteuer teleportiert und kann nun alle Schätze einsammeln!
Bei mir hat es geklappt! Harold ist im Shop und kann all die Wertvollen Dinge verkaufen, die er nicht mehr benötigt. Dann ist wieder Platz für mehr!
Ich hoffe bei euch klappt es ebenfalls! Falls etwas unverständlich ist oder ihr Probleme habt, schreibt es einfach und ich versuch bestmöglich zu helfen :3
Übrigens!
Mit dieser Technik lässt sich auch ganz einfach ein Unterschlupf wie in Fable umsetzen! Wär doch mal was, oder?
Natürlich könnt ihr in das Gewöhnliche Ereignis noch ganz andere Dinge packen. ZB könnte sich ein Helferlein mit euch Unterhalten und Tipps geben, oder ihr schaltet darüber Licht ein/aus, oder ihr lasst den Speicherbildschim öffnen oder ihr änder das Aussehen des Charakters. Euch stehen alle Möglichkeiten offen!