![]() ![]() |
Handel mit Gegenständen |
Unser Kaufmann soll der Heldentruppe einige grundlegende Dinge ermöglichen:
![]() |
Zuallererst brauchen wir ein Ereignis auf der Shop-Karte, wo ihr schon
zuvor den Geld-Zähler angelegt habt. Dieses Ereignis soll später den Handel
mit einem bestimmten Gegenstand auswählen. Bestimmt, dass das Ereignis aus drei Ereignisseiten besteht und begebt euch auf die dritte Ereignisseite. Jede der Ereignisseiten hat keine (!) Startvoraussetzungen und soll beim Drücken der ENTER-Taste (Push Key) aktiv werden. |
![]() |
Zu Beginn sind einige Variablenfunktionen anzulegen: Eine neue, freie Variable "Item - Besitz" soll die Anzahl des Gegenstandes, um den es geht, speichern. In unserem Beispiel soll es der Gegenstand namens "kleiner Heiltrank" sein. Eine zweite, freie Variable, der ihr den Namen "Item-Obergrenze" gebt, soll zuerst die Zahl 99 speichern. Direkt danach soll von dieser Variable der Wert der Variable "Item - Besitz" abgezogen werden. Hintergrund ist der, dass die Heldentruppe von einem Gegenstand maximal 99 Stück haben kann. Eine dritte Variable, die ihr "Item - Kaufbar" nennt, soll zuerst das Geldvermögen der Heldentruppe speichern. Dann soll der Wert durch den Preis des Gegenstandes geteilt werden. In unserem Beispiel soll dieser Gegenstand "kleiner Heiltrank" einen Wert von "25" haben. |
![]() |
Danach geht es um die Begrüßung durch den Kaufmann. Er soll die Heldengruppe fragen, ob sie etwas an- oder verkaufen möchte. |
![]() |
Die Unterscheidung - also die Auswahl, was die Heldengruppe machen
möchte - soll mittels Auswahlmenü stattfinden. |
![]() |
Soll etwas gekauft werden, so soll die erste Ereignisseite des Aktuellen
Ereignisses aufgerufen werden, was durch "Call Event/Ereignis aufrufen"
geschieht. |
![]() |
Sofern etwas verkauft werden soll, soll die zweite Ereignisseite mittels "Call Event/Ereignis aufrufen" in Aktion treten. |
Trankkauf-Ereignis | ||||||||||||||||
[Ereignisseite 1][ENTER-Taste] | ||||||||||||||||
[Ereignisseite 2][ENTER-Taste] | ||||||||||||||||
[Ereignisseite 3][ENTER-Taste] [Variable [Item - Besitz] [<-- [Wert setzen][Item [kleiner Heiltrank][Anzahl Besitz]]] [Variable [Item - Obergrenze] [<-- [Wert setzen][99]] [Variable [Item - Obergrenze] [<-- [-][Item - Besitz]] [Variable [Item - Kaufbar] [<-- [Wert setzen][Geld]] [Variable [Item - Kaufbar][<-- [/][25]] [Nachricht] [\c[1]Kaufmann:\c[0]] [Oh, ihr interessiert euch für einen] [kleinen Heiltrank...] [Nachricht] [\c[1]\n[1]:\c[0]]
|
Im englischem Maker |
<>Change Var: Var[xxx1: Item -
Besitz](Set)- Kleiner Heiltrank hold amount <>Change Var: Var[xxx2: Item - Obergrenze](Set)- 99 <>Change Var: Var[xxx2: Item - Obergrenze](-)- Var[xxx1] <>Change Var: Var[xxx3: Item - Kaufbar](Set)-[$ Have] <>Change Var: Var[xxx3: Item - Kaufbar](/)- 25 <>Message: \c[1]Kaufmann:\c[0] : : Oh, ihr interessiert euch für einen : : Kleinen Heiltrank... <>Message: \c[1]\n[1]:\c[0] <>Show Choice: Wir kaufen welche/Wir möchten welche verkaufen/Nein, kein Interesse :[Wir kaufen welche] Case <>Call Event: Trankkauf-Ereignis Pg[1] <> :[Wir möchten welche verkaufen] Case <>Call Event: Trankkauf-Ereignis Pg[2] <> :[Nein, kein Interesse] Case <> :End Case <> |
Im deutschem Maker (V1.10c) |
<>Var. ändern: [xxx1: Item -
Besitz]Wert, Kleiner Heiltrank Ausgerüs <>Var. ändern: [xxx2: Item - Obergrenze]Wert, 99 <>Var. ändern: [xxx2: Item - Obergrenze]-, Var.[xxx1]Wert <>Var. ändern: [xxx3: Item - Kaufbar]Wert, Geld# <>Var. ändern: [xxx3: Item - Kaufbar]/, 25 <>Nachr: \c[1]Kaufmann:\c[0] : : Oh, ihr interessiert euch für einen : : Kleinen Heiltrank... <>Nachr: \c[1]\n[1]:\c[0] <>Auswahlmenü: Wir kaufen welche/wir möchten welche verkaufen/Nein, kein Interesse :[Wir kaufen welche] Fall <>Ereignis aufrufen: Trankkauf-Ereignis [1] <> :[Wir möchten welche verkaufen] Fall <>Ereignis aufrufen: Trankkauf-Ereignis [2] <> :[Nein, kein Interesse] Fall <> :End Fall <> |
Hier geht es lediglich darum, dass die Heldentruppe einen Gegenstand kaufen
will. Wenn ihr euch den zuvor angelegten Ereignisteil anschaut, seht ihr, dass
der Code dafür auf der Ereignisseite 1 angelegt werden soll. Ebenso kommen hier
die beiden Variablen "Item-Obergrenze" und "Item-Kaufbar" zum Einsatz.
Zu Beachten ist hier, dass die Heldengruppe maximal die Anzahl an Gegenständen
kaufen kann, die zum Einen kleiner als 99 ist (lt. Maker-Vorgaben kann die
Heldentruppe maximal 99 Stück eines Gegenstandes mit sich führen) und zum
Anderem maximal dem kleinsten Wert der beiden Variablen "Item - Obergrenze" und
"Item - Kaufbar" entspricht.
Steht in der Variable "Item - Obergrenze" beispielsweise die Zahl 64, in der
Variable "Item - Kaufbar" jedoch der Wert 23, so soll es der Heldentruppe
möglich sein, maximal 23 Gegenstände zu kaufen. Sind die Werte hingegen bei der
Variable "Item - Obergrenze" 72 und bei der Variable "Item - Kaufbar" 104, so
soll die Heldentruppe höchstens 72 Gegenstände kaufen können. Mehr nicht.
![]() |
Begebt euch auf die erste Seite des Ereignisses, das ihr momentan
bearbeitet. Hier beginnt ihr mit einer Nachricht, die den Gegenstand kurz
beschreibt und den Preis nennt (in unserem Beispiel soll der "kleine
Heiltrank" 25 Golddollar kosten). Auch soll in der Nachricht die Frage
gestellt werden, wie viele die Heldentruppe gerne haben möchte. Das alles
sollte sich auf eine einzelne Nachricht beschränken. Eine zweite ist dann der Dialog der Hauptcharaktere, die dann hier feststellen, wie viele von dem betreffendem Gegenstand sie haben. Die sollte nicht mehr als drei Zeilen der Nachricht belegen. |
![]() |
Direkt danach wird eine "Input-Number/Nummer-Eingeben-Funktion" nötig,
die nur zwei Stellen große Eingaben zu aktzeptieren hat und in eine neue,
freie Variable namens "Item - Gewollt" schreibt. Der Grund dafür ist, dass
maximal 99 Gegenstände des gleichen Typs gekauft werden können, daher ist
mehr auch nicht erforderlich. |
![]() |
Nun soll eine Bedingung abfragen, ob der Wert der Variable "Item -
Gewollt" anders als 0 ist. Legt im Nein-Fall (also wenn "Item - Gewollt" genau 0 ist) eine Nachricht an, in der der Kaufmann dann etwas nach dem Motto "Dass ihr nichts wollt, hättet ihr auch früher sagen können" von sich gibt. |
![]() |
Im Ja-Fall der Bedingung folgt eine weitere, die nun abfragen soll, ob
der Wert der Variable "Item - Gewollt" kleiner oder gleich (below) dem Wert
der Variable "Item - Obergrenze" ist. Auch braucht ihr hier einen Nein-Fall,
wie zuvor auch. In diesem folgt eine Nachricht der Heldentruppe darüber, dass die gewünschte Menge zu viel ist, um sie zusätzlich tragen zu können. |
![]() |
Im Ja-Fall dieser Bedingung wiederum folgt die letzte für den Moment.
Sie soll abfragen, ob der Wert der Variable "Item - Gewollt" kleiner oder
gleich (below) dem Wert der Variable "Item - Kaufbar" ist. Im Nein-Fall soll die Heldentruppe zum Ausdruck bringen, dass sie sich die gewünschte Menge nicht leisten können. |
![]() |
Im Ja-Fall dieser letzten Bedingung soll nun die gewünschte Anzahl an
"kleinen Heiltränken" dem Inventar der Heldentruppe hinzugefügt werden. Dies
geschieht mit Hilfe des Ereigniskommandos "Add Item/Items
hinzufügen/entfernen", wobei hier die Menge an hinzuzufügenden Gegenständen
durch die Variable "Item - Gewollt" bestimmt wird. |
![]() |
Direkt danach soll der Wert der Variable "Item - Gewollt" mit dem Preis
des betreffenden Gegenstandes multipliziert werden (in unserem Beispiel soll
ein "kleiner Heiltrank" genau 25 Geldeinheiten kosten, weshalb der Wert der
Variable "Item - Gewollt" hier mit 25 malgenommen wird.) |
![]() |
Dann soll mit "Change Gold Held/Geld erhöhen/vermindern" vom
Geldvermögen der Heldentruppe der Gesamtbetrag, den die gewünschte Menge an
Gegenständen kostet, abgezogen werden. |
![]() |
Damit im Shop auch das Geldvermögen der Heldentruppe aktualisiert wird,
muss noch der Schalter "Geldzähler läuft" aktiviert werden. |
![]() |
Zuletzt kann noch eine Bestätigungsnachricht kommen, die in Etwa wie "Vielen dank, hier habt ihr eure Bestellung" lauten kann. |
Das fett hervorgehobene ist der neu hinzugekommene Teil
Trankkauf-Ereignis | ||||||||||||||||||||||||||||||
[Ereignisseite 1][ENTER-Taste] [Nachricht] [\c[1]Kaufmann:\c[0]] [Kleiner Heiltrank:] [Ein süssliches Getränk, das 50] [Lebenspunkte wieder herstellt.] [Nachricht] [\c[1]\n[1]:\c[0]] [Wir haben \v[93] Stück bei uns...] [Hm, ich glaube, wir nehmen dann...] [Variable [Item - Gewollt][2 Ziffern]] [<-- [Eingabe]] [Bedingung][Variable [Item - Gewollt]][anders][0]
|
||||||||||||||||||||||||||||||
[Ereignisseite 2][ENTER-Taste] | ||||||||||||||||||||||||||||||
[Ereignisseite 3][ENTER-Taste] [Variable [Item - Besitz] [<-- [Wert setzen][Item [kleiner Heiltrank][Anzahl Besitz]]] [Variable [Item - Obergrenze] [<-- [Wert setzen][99]] [Variable [Item - Obergrenze] [<-- [-][Item - Besitz]] [Variable [Item - Kaufbar] [<-- [Wert setzen][Geld]] [Variable [Item - Kaufbar][<-- [/][25]] [Nachricht] [\c[1]Kaufmann:\c[0]] [Oh, ihr interessiert euch für einen] [kleinen Heiltrank...] [Nachricht] [\c[1]\n[1]:\c[0]]
|
Im englischem Maker |
<>Message: \c[1]Kaufmann:\c[0] : : Kleiner Heiltrank: : : Ein süssliches Getränk, das 50 : : Lebenspunkte wieder herstellt. <>Message: \c[1]\n[1]:\c[0] : : Wir haben \v[93] Stück bei uns... : : Hm, ich glaube, wir nehmen dann... <>Input Number:(Digits=2) Var[xxx4: Item - Gewollt] <>If Var(xxx4: Item - Gewollt)0(<>) <>If Var(xxx4: Item - Gewollt) V[xxx2](<=) <>If Var(xxx4: Item - Gewollt) V[xxx3](<=) <>Chng Item Count:(Kleiner Heiltrank) V[xxx4] (Add) <>Change Var: Var[xxx4: Item - Gewollt] (*)- 25 <>Change Money: $V[xxx4] (Rem) <>Change Switch: Var[xxxx: Geldzähler läuft] Switch ON <>Message: \c[1]Kaufmann:\c[0] : : Vielen Dank, hier ist eure Be- : : stellung... <> :Else Case <>Message: \c[1]\n[1]:\c[0] : : Nein... so viel davon können wir uns : : nicht leisten... <> :End Case <> :Else Case <>Message: \c[1]\n[1]:\c[0] : : Nein... DAS ist zu viel für uns, : : um das noch mit uns rumschleppen : : zu können... <> :End Case <> :Else Case <>Message: \c[1]Kaufmann:\c[0] : : Dass ihr nichts wollt hättet ihr : : auch früher sagen können... <> :End Case <> |
Im deutschem Maker (V1.10c) |
<>Nachr: \c[1]Kaufmann:\c[0] : : Kleiner Heiltrank: : : Ein süssliches Getränk, das 50 : : Lebenspunkte wieder herstellt. <>Nachr: \c[1]\n[1]:\c[0] : : Wir haben \v[93] Stück bei uns... : : Hm, ich glaube, wir nehmen dann... <>Nummer eingeben:#2->V[xxx4: Item - Gewollt] <>Bedingung:Varbl[xxx4: Item - Gewollt]- 0andr <>Bedingung:Varbl[xxx4: Item - Gewollt]-V[xxx2]< <>Bedingung:Varbl[xxx4: Item - Gewollt]-V[xxx3]< <>+/- Item: kleiner Heiltrank->V[xxx4]erhöh <>Var. ändern: [xxx4: Item - Gewollt] *, 25 <>Geld ändern: Geld V[xxx4] verm. <>Schalter ändern:[xxxx: Geldtähler läuft]-[AN] <>Nachr: \c[1]Kaufmann:\c[0] : : Vielen Dank, hier ist eure Be- : : stellung... <> :Ansonsten <>Nachr: \c[1]\n[1]:\c[0] : : Nein... so viel davon können wir uns : : nicht leisten... <> :End-Fall <> :Ansonsten <>Nachr: \c[1]\n[1]:\c[0] : : Nein... DAS ist zu viel für uns, : : um das noch mit uns rumschleppen : : zu können... <> :End-Fall <> :Ansonsten <>Nachr: \c[1]Kaufmann:\c[0] : : Dass ihr nichts wollt hättet ihr : : auch früher sagen können... <> :End-Fall <> |
... kann das schon einmal vorkommen, beispielsweise wenn sie eine neue Waffe oder Rüstung brauchen und nicht genug Geld dabei haben. Da kann es dann schon helfen, den einen oder anderen Gegenstand zu verkaufen und davon dann den gewünschten Gegenstand kaufen. Oder eure Heldentruppe steht vor dem Problem, beispielsweise für eine Überfahrt, das Passieren einer Brücke oder irgendwo sonst Eintritt bezahlen zu müssen, um weiter zu kommen.
![]() |
Den Code dafür legt ihr auf der zweiten Seite des aktuell bearbeiteten
Ereignisses "Trankkauf-Ereignis" an. Alles beginnt damit, dass der Kaufmann
kurz den Gegenstand sowie den Preis nennt, den er dafür zahlt. Dieser sollte
unter dem Preis liegen, für den der Kaufmann die Ware sonst verkauft. In
unserem Beispiel 15 Geldeinheiten. |
![]() |
Die Heldentruppe soll nun zum Ausdruck bringen, wie viele der
Gegenstände sie haben und ebenso die Kaufabsicht ausdrücken. Dies sollte auf
maximal drei Zeilen stattfinden. |
![]() |
Direkt danach wird eine "Input-Number/Nummer-Eingeben-Funktion" nötig,
die nur zwei Stellen große Eingaben zu aktzeptieren hat und in die bereits
weiter oben verwendete Variable "Item - Gewollt" die eingegebene
Zahl schreibt. |
![]() |
Nun soll direkt darunter eine Bedingung abfragen, ob der Wert der
Variable "Item - Gewollt" anders als 0 ist. Im Nein-Fall soll eine Nachricht vom Kaufmann zum Ausdruck bringen, dass die Heldentruppe es sich beim nächsten Mal doch bitte vorher überlegen soll, wenn sie nichts verkaufen will. |
![]() |
Im Ja-Fall der Bedingung soll eine weitere abfragen, ob der Wert der
Variable "Item - Gewollt" kleiner oder gleich groß wie der Wert ist, der in
der Variable steht, die ihr "Item - Besitz" genannt habt. Im Nein-Fall der Bedingung soll dann eine Nachricht ausdrücken, dass die Heldentruppe nicht über die eingegebene Menge an Gegenständen verfügt. |
![]() |
Im Ja-Fall dieser zuletzt angelegten sollen mit Hilfe des
Ereigniskommandos "Add Item/Items hinzufügen/entfernen" die mit der Variable
"Item - Gewollt" bestimmte Anzahl zu verkaufender Items vom Inventar
abgezogen werden. |
![]() |
Direkt danach soll der Wert der Variable "Item - Gewollt" mit dem
Verkaufspreis eines (!) der gewählten Gegenstände multipliziert werden. In
unserem Beispiel zahlt der Kaufmann 15 Geldeinheiten für einen kleinen
Heiltrank, also wird der Wert in der Variable "Item - Gewollt" mit 15
Malgenommen. |
![]() |
Danach wird vom Geldvermögen der Heldentruppe die Geldmenge abgezogen,
die durch die Variable "Item - Gewollt" bestimmt wird. Auch
hiernach muss wieder der Schalter "Geldzähler läuft" auf AN gestellt werden. |
![]() |
Zum Schluss kann der Kaufmann noch sagen, dass er die Gegenstände abgenommen und einen gewissen Betrag gezahlt hat. |
Das fett hervorgehobene ist der neu hinzugekommene Teil
Trankkauf-Ereignis | ||||||||||||||||||||||||||||||
[Ereignisseite 1][ENTER-Taste] [Nachricht] [\c[1]Kaufmann:\c[0]] [Kleiner Heiltrank:] [Ein süssliches Getränk, das 50] [Lebenspunkte wieder herstellt.] [Nachricht] [\c[1]\n[1]:\c[0]] [Wir haben \v[93] Stück bei uns...] [Hm, ich glaube, wir nehmen dann...] [Variable [Item - Gewollt][2 Ziffern]] [<-- [Eingabe]] [Bedingung][Variable [Item - Gewollt]][anders][0]
|
||||||||||||||||||||||||||||||
[Ereignisseite 2][ENTER-Taste] [Nachricht] [\c[1]Kaufmann:\c[0]] [Okay... wie viele wollt ihr mir denn] [verkaufen? Ich biete euch 15 Gold-] [dollar Pro Stück...] [Nachricht] [\c[1]\n[1]:\c[0]] [Wir haben \v[93] Stück bei uns...] [ich glaube, wir verkaufen...] [Variable [Item - Gewollt][2 Ziffern]] [<-- [Eingabe]] [Bedingung][Variable [Item - Gewollt]][anders][0]
|
||||||||||||||||||||||||||||||
[Ereignisseite 3][ENTER-Taste] [Variable [Item - Besitz] [<-- [Wert setzen][Item [kleiner Heiltrank][Anzahl Besitz]]] [Variable [Item - Obergrenze] [<-- [Wert setzen][99]] [Variable [Item - Obergrenze] [<-- [-][Item - Besitz]] [Variable [Item - Kaufbar] [<-- [Wert setzen][Geld]] [Variable [Item - Kaufbar][<-- [/][25]] [Nachricht] [\c[1]Kaufmann:\c[0]] [Oh, ihr interessiert euch für einen] [kleinen Heiltrank...] [Nachricht] [\c[1]\n[1]:\c[0]]
|
Im englischem Maker |
<>Message: \c[1]Kaufmann:\c[0] : : Okay... wie viele wollt ihr mir denn : : verkaufen? Ich biete euch 15 Gold- : : dollar Pro Stück... <>Message: \c[1]\n[1]:\c[0] : : Wir haben \v[93] Stück bei uns... : : ich glaube, wir verkaufen... <>Input Number: (Digits=2) Var[xxx4: Item - Gewollt] <>If Var[xxx4: Item - Gewollt] 0(<>) <>If Var[xxx4: Item - Gewollt] V[xxx1] (<=) <>Chng Item Count:(Kleiner Heiltrank) V[xxx4] (Rem) <>Change Var: Var[xxx4: Item - Gewollt] (*)- 15 <>Change Money: $V[xxx4] (Add) <>Change Switch: Var[xxxx: Geldzähler läuft] Switch ON <>Message: \c[1]Kaufmann:\c[0] : : Alles klar. Hier sind eure \v[94] : : Golddollar... <> :Else Case <>Message: \c[1]\n[1]:\c[0] : : So viele haben wir garnicht dabei... :End Case <> :Else Case <>Message: \c[1]Kaufmann:\c[0] : : Wenn ihr nichts verkaufen wollt, : : könntet ihr das beim nächsten Mal : : etwas früher sagen, okay? :End Case <> |
Im deutschem Maker (V1.10c) |
<>Nachr: \c[1]Kaufmann:\c[0] : : Okay... wie viele wollt ihr mir denn : : verkaufen? Ich biete euch 15 Gold- : : dollar Pro Stück... <>Nachr: \c[1]\n[1]:\c[0] : : Wir haben \v[93] Stück bei uns... : : ich glaube, wir verkaufen... <>Nummer eingeben:#2-> V[xxx4: Item - Gewollt] <>Bedingung: Varbl[xxx4: Item - Gewollt]-0 andr <>Bedingung: Varbl[xxx4: Item - Gewollt]-V[xxx1] < <>+/- Item: Kleiner Heiltrank -> V[xxx4] verm <>Var. ändern: [xxx4: Item - Gewollt] *, 15 <>Geld ändern: Geld V[xxx4] erhö. <>Schalter ändern: [xxxx: Geldzähler läuft]-[AN] <>Nachr: \c[1]Kaufmann:\c[0] : : Alles klar. Hier sind eure \v[94] : : Golddollar... <> :Ansonsten <>Nachr: \c[1]\n[1]:\c[0] : : So viele haben wir garnicht dabei... :End-Fall <> :Ansonsten <>Nachr: \c[1]Kaufmann:\c[0] : : Wenn ihr nichts verkaufen wollt, : : könntet ihr das beim nächsten Mal : : etwas früher sagen, okay? :End-Fall <> |
Ganz gleich, welches Item gehandelt wird, der Code ist immer der Selbe. Der einzige Unterschied liegt zum Einen im An-/Verkaufspreis (15 bzw. 25 Geldeinheiten im Beispiel) und dem Gegenstand, der dem Heldeninventar hinzugefügt bzw. entfernt wird. Verwendet grundsätzlich immer die selben Variablen beim An- und Verkauf (sie sind in den Code-Beispielen mit xxx1 bis xxx4 gekennzeichnet)