![]() ![]() |
Das Inventar des AKS |
Bevor ihr mit der Erstellung des Makercodes für die Itemauswahl beginnt, solltet ihr euch der Erstellung von Grafiken widmen, welche die Darstellung der einzelnen Items übernehmen. Angezeigt werden soll ein kleines Symbol für den Gegenstand, sein Effekt in kürzester Form wie auch die Menge, die sich im Inventar befindet. In unserem Beispiel soll ein Bereich von 4 Chips Breite und 2 Chips Höhe genügen (entspricht 64 x 32 Pixel). Für unser Beispiel sollen die Grafiken des Pakets [aks_items.zip] dienen.
Das Ereignis, das wir hier erstellen werden, wird ein einziges Item darstellen - in unserem Beispiel den kleinen Heiltrank. Mehr wird hierbei nicht passieren, um den Code übersichtlich zu halten.
![]() |
Legt zuerst in der Datenbank ein neues Common Event/Häufig benötigtes
Ereignis an, das ihr "Kl. Heiltrank" nennt. Es soll lediglich durch eine
Aufruf/Call starten. |
||||
![]() |
Als erstes soll in eine neue, freie Variable - nennt sie "Item-Menge" -
die Anzahl der kleinen Heiltränke im Inventar gespeichert werden. |
||||
![]() |
Direkt danach soll eine Bedingung mit Nein-Fall prüfen, ob der Wert der
Variable "Item-Menge" genau dem Wert 1 entspricht.
|
||||
![]() |
Wiederholt sämtliche vorangegangenen Punkte für alle weiteren Items, die ihr anlegen wollt. In unserem Beispiel kämen noch die Items "Großer Heiltrank" (Gr. Heiltrank), "Magietrank" (Magietrank) und "Regenerationstrank" (Regeneration hinzu mit den entsprechenden Ereignisnamen in den Klammern dahinter (wichtig für später). |
Kl.Heiltrank-Ereignis | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[Variable [Item-Menge]][<-- [Wert setzen][Item [Kleiner
Heiltrank][Anzahl Besitz]] [Bedingung][Variable][Item-Menge][gleich][1]
|
Im englischem Maker |
<>Change Var: Var[Item-Menge] (set)-
Kleiner Heiltrank Hold Amount <>If Var (Item-Menge) 1 <>Show Picture: ID:17-kl_heiltrank_1-(208,16) <> :Else Case <>If Var (Item-Menge) 2 <>Show Picture: ID:17-kl_heiltrank_2-(208,16) <> :Else Case <>If Var (Item-Menge) 3 <>Show Picture: ID:17-kl_heiltrank_3-(208,16) <> :Else Case <>If Var (Item-Menge) 4 <>Show Picture: ID:17-kl_heiltrank_4-(208,16) <> :Else Case <>If Var (Item-Menge) 5 <>Show Picture: ID:17-kl_heiltrank_5-(208,16) <> :Else Case <>If Var (Item-Menge) 6 <>Show Picture: ID:17-kl_heiltrank_6-(208,16) <> :Else Case <>If Var (Item-Menge) 7 <>Show Picture: ID:17-kl_heiltrank_7-(208,16) <> :Else Case <>If Var (Item-Menge) 8 <>Show Picture: ID:17-kl_heiltrank_8-(208,16) <> :Else Case <>If Var (Item-Menge) 9 <>Show Picture: ID:17-kl_heiltrank_9-(208,16) <> :Else Case <>If Var (Item-Menge) 9(>) <>Show Picture: ID:17-kl_heiltrank_A-(208,16) <> :End Case <> :End Case <> :End Case <> :End Case <> :End Case <> :End Case <> :End Case <> :End Case <> :End Case <> :End Case <> |
Im deutschem Maker (V1.10c) |
<>Var. ändern:[Item-Menge]Wert, Kleiner
HeiltrankAusgerüs <>Bedingung:Varbl[Item-Menge]- 1 <>Bild anzeigen: 17, kl_heiltrank_1, (208,16) <> :Ansonsten <>Bedingung:Varbl[Item-Menge]- 2 <>Bild anzeigen: 17, kl_heiltrank_2, (208,16) <> :Ansonsten <>Bedingung:Varbl[Item-Menge]- 3 <>Bild anzeigen: 17, kl_heiltrank_3, (208,16) <> :Ansonsten <>Bedingung:Varbl[Item-Menge]- 4 <>Bild anzeigen: 17, kl_heiltrank_4, (208,16) <> :Ansonsten <>Bedingung:Varbl[Item-Menge]- 5 <>Bild anzeigen: 17, kl_heiltrank_5, (208,16) <> :Ansonsten <>Bedingung:Varbl[Item-Menge]- 6 <>Bild anzeigen: 17, kl_heiltrank_6, (208,16) <> :Ansonsten <>Bedingung:Varbl[Item-Menge]- 7 <>Bild anzeigen: 17, kl_heiltrank_7, (208,16) <> :Ansonsten <>Bedingung:Varbl[Item-Menge]- 8 <>Bild anzeigen: 17, kl_heiltrank_8, (208,16) <> :Ansonsten <>Bedingung:Varbl[Item-Menge]- 9 <>Bild anzeigen: 17, kl_heiltrank_9, (208,16) <> :Ansonsten <>Bedingung:Varbl[Item-Menge]- 9 > <>Bild anzeigen: 17, kl_heiltrank_A, (208,16) <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> |
Nun, da wir für jedes Item ein entsprechendes Ereignis haben, das sich um die Darstellung kümmert, ist nun ein Zwischenereignis nötig, das jedes einzelne der Item-Ereignis ansteuert, wenn es im AKS-Inventar ausgewählt wurde.
![]() |
Legt hierfür in der Datenbank ein neues Ereignis an, das ihr "ItemDisplay"
nennt. Auch dieses Ereignis soll durch Call/Aufruf gestartet werden. |
||||||||||||||||
![]() |
Zuerst legt ihr eine Endlosschleife an. |
||||||||||||||||
![]() |
In dieser Endlosschleife soll erst ein Label mit der Nummer 1 gesetzt
werden und direkt danach eine Bedingung prüfen, ob der Wert der
Variable "SelectedItem" genau dem Wert "0" entspricht.
|
||||||||||||||||
![]() |
Nun müssen noch die Tasteneingaben abgefangen werden, die Items
ansteuern, über die der Hauptchara nicht verfügt. Hier soll nun entsprechend
der Tasteneingabe entweder ein Item weiter oder ein Item zurück gesprungen
werden. Den Anfang macht eine Bedingung, die prüft, ob der Wert der Variable "PressedButton" kleiner oder gleich dem Wert 2 ist (Cursor runter oder links wurde gedrückt). Ihr braucht hier einen Nein-Fall.
|
ItemDisplay-Ereignis | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[Schleife Beginn]
|
Im englischem Maker |
<>Loop <>Label 1# <>If Var (SelectedItem) 0 <>Change Var: Var[Item-Menge] (Set)- Kleiner Heiltrank Hold Amount <>If Var (Item-Menge) 0 (<>) <>Call Event: Kl. Heiltrank <>Break <> :End Case <> :Else Case <>If Var (SelectedItem) 1 <>Change Var: Var[Item-Menge] (Set)- Großer Heiltrank Hold Amount <>If Var (Item-Menge) 0 (<>) <>Call Event: Gr. Heiltrank <>Break <> :End Case <> :Else Case <>If Var (SelectedItem) 2 <>Change Var: Var[Item-Menge] (Set)- Magietrank Hold Amount <>If Var (Item-Menge) 0 (<>) <>Call Event: Magietrank <>Break <> :End Case <> :Else Case <>If Var (SelectedItem) 3 <>Change Var: Var[Item-Menge] (Set)- Regenerationstrank Hold Amount <>If Var (Item-Menge) 0 (<>) <>Call Event: Regeneration <>Break <> :End Case <> :Else Case <>If Var (SelectedItem) -1 <>Change Var: Var[SelectedItem] (Set)- 3 <>Goto Label 1# <> :Else Case <>If Var (SelectedITem) 4 <>Change Var: Var[SelectedItem] (Set)- 0 <>Goto Label 1# <> :End Case <> :End Case <> :End Case <> :End Case <> :End Case <> :End Case <>If Var (PressedButton) 2 (<=) <>Change Var: Var[SelectedItem] (-)- 1 <> :Else Case <>If Var (PressedButton) 4 (<=) <>Change Var: Var[SelectedItem] (+)- 1 <> :End Case <> :End Case <> :End Loop <> |
Im deutschem Maker (V1.10c) |
<>Schleife <> -> Label:1Nr <>Bedingung:Varbl.[SelectedItem]-0 <>Var. ändern:[Item-Menge]Wert, Kleiner HeiltrankAusgerüs <>Bedingung: Varbl[Item-Menge]-0andr <>Ereignis aufrufen: Kl. Heiltrank <>Schleife stoppen <> :End-Fall <> :Ansonsten <>Bedingung:Varbl.[SelectedItem]-1 <>Var. ändern:[Item-Menge]Wert, Großer HeiltrankAusgerüs <>Bedingung: Varbl[Item-Menge]-0andr <>Ereignis aufrufen: Gr. Heiltrank <>Schleife stoppen <> :End-Fall <> :Ansonsten <>Bedingung:Varbl.[SelectedItem]-2 <>Var. ändern:[Item-Menge]Wert, MagietrankAusgerüs <>Bedingung: Varbl[Item-Menge]-0andr <>Ereignis aufrufen: Magietrank <>Schleife stoppen <> :End-Fall <> :Ansonsten <>Bedingung:Varbl.[SelectedItem]-3 <>Var. ändern:[Item-Menge]Wert, RegenerationstrankAusgerüs <>Bedingung: Varbl[Item-Menge]-0andr <>Ereignis aufrufen: Regeneration <>Schleife stoppen <> :End-Fall <> :Ansonsten <>Bedingung:Varbl.[SelectedItem]- -1 <>Var. ändern[SelectedItem]Wert, 3 <>Gehe zu Label: 1Nr <> :Ansonsten: <>Bedingung:Varbl.[SelectedItem]- 4 <>Var. ändern[SelectedItem]Wert, 0 <>Gehe zu Label: 1Nr <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <>Bedingung:Varbl.[PressedButton]- 2< <>Var. ändern:[SelectedItem]-, 1 <> :Ansonsten <>Bedingung:Varbl.[PressedButton]- 4< <>Var. ändern:[SelectedItem]+, 1 <> :End-Fall <> :End-Fall <> :Schleifenende <> |
Die Navigation durch das AKS-Inventar soll nur dann möglich sein, wenn der
Hauptchara auch irgendwelche Items mit sich herumschleppt, die sich auch
benutzen lassen. Auch sollen die verwendbaren Gegenstände auch benutzbar sein
und die Möglichkeit bestehen, ohne den Gebrauch eines Gegenstandes das Inventar
verlassen zu können. Folgende Steuerungsoptionen sollen möglich sein:
Ein Item zurück (durch Drücken der Cursortasten "runter" und "links", was den
Werten 1 und 2 entspricht)
Ein Item vorwärts (durch Drücken der Cursortasten "hoch" und "rechts", was den
Werten 3 und 4 entspricht)
Ein Item benutzen (durch Drücken der ENTER-Taste, was dem Wert 5 entspricht)
Abbruch der Item-Auswahl (durch Drücken der Taste ESC, was dem Wert 6
entspricht).
Auch soll immer das Item angezeigt werden, das der Reihe nach durch Drücken der
Cursortasten angesteuert wird. Bei Verlassen der Item-Auswahl soll das Bild des
aktuell gewählten Items vom Bildschirm verschwinden.
Wenn der Hauptchara keine Items hat, soll ein simpler Soundeffekt des Abbruchs
darauf hinweisen.
All diese Dinge werden nachfolgend angelegt (mit Ausnahme des Item-Gebrauchs,
der im Unterkapitel danach abgehandelt wird).
![]() |
Legt zuerst ein neues Common Event/Häufig benötigtes Ereignis an, das
ihr "ItemUse" nennt. Es soll durch "Call/Aufruf" startbar sein. Legt hier
noch keinen Makercode an. |
||||||||||||||||||||||
![]() |
Begebt euch dann in das Common Event/Häufig benötigte Ereignis, das ihr
"Menupoint:ITEM" genannt habt. Hier wird die eigentliche Navigation im
AKS-Inventar angelegt. Den Grundstein dafür legt ihr, indem ihr den Wert der Variable "SelectedItem" auf 0 setzt. |
||||||||||||||||||||||
![]() |
Als nächstes soll die Variable "Item-Menge" die Summe der Anzahl
sämtlicher Items in sich aufnehmen, die über das AKS-Menü verwendbar sein
sollen. In unserem Beispiel also die Anzahl "Kleiner Heiltränke", "Großer
Heiltränke", "Magietränke" und "Regenerationstränke". |
||||||||||||||||||||||
![]() |
Direkt danach soll eine Bedingung mit Nein-Fall prüfen, ob der Wert der
Variable "Item-Menge" genau 0 ist.
|
Menupoint:ITEM-Ereignis | ||||||||||||||||||||||||||||||||||||||||||||||
[Variable [SelectedITem]][<-- [Wert setzen][0] [Variable [Item-Menge]][<-- [Wert setzen][Item [Kleiner Heiltrank] haben]] [Variable [Item-Menge]][<-- [+][Item [Großer Heiltrank] haben]] [Variable [Item-Menge]][<-- [+]Item [Magietrank] haben]] [Variable [Item-Menge]][<-- [+]Item [Regenerationstrank] haben]] [Bedingung][Variable][Item-Menge][gleich][0]
|
Im englischem Maker |
<>Change Var: Var[SelectedItems] (Set)- 0 <>Change Var: Var[Item-Menge] (Set)- Kleiner Heiltrank Hold Amount <>Change Var: Var[Item-Menge] (+)- Großer Heiltrank Hold Amount <>Change Var: Var[Item-Menge] (+)- Magietrank Hold Amount <>Change Var: Var[Item-Menge] (+)- Regenerationstrank Hold Amount <>If Var (Item-Menge) 0 <>Play SE: Cansel1 <> :Else Case <>Call Event: Item-Display <>Loop <>Enter Password: Var[PressedButton] <>If Var (PressedButton) 2 (<=) <>Change Var: Var[SelectedItem] (-)- 1 <>Call Event: Item-Display <> :Else Case <>If Var (PressedButton) 4 (<=) <>Change Var: Var[SelectedItem] (+)- 1 <>Call Event: Item-Display <> :Else Case <>If Var (PressedButton) 5 <>Call Event: Item-Use <>Erase Picture: ID: 17 <>Break <> :Else Case <>If Var (PressedButton) 6 <>Erase Picture: ID: 17 <>Break <> :End Case <> :End Case <> :End Case <> :End Case <> :End Loop <> :End Case <> |
Im deutschem Maker (V1.10c) |
<>Var. ändern:[SelectedItem]Wert, 0 <>Var. ändern:[Item-Menge]Wert, Kleiner HeiltrankAusgerüs <>Var. ändern:[Item-Menge]+, Großer HeiltrankAusgerüs <>Var. ändern:[Item-Menge]+, MagietrankAusgerüs <>Var. ändern:[Item-Menge]+, RegenerationstrankAusgerüs <>Bedingung:Varbl[Item-Menge]-0 <>Soundeffekt: Cansel1 <> :Ansonsten <>Ereignis aufrufen: Item-Display <>Schleife <>Tasten abfragen:[PressedButton] <>Bedingung:Varbl[PressedButton]- 2< <>Var. ändern:[SelectedItem]-, 1 <>Ereignis aufrufen: Item-Display <> :Ansonsten <>Bedingung:Varbl[PressedButton]- 4> <>Var. ändern:[SelectedItem]+, 1 <>Ereignis aufrufen: Item-Display <> :Ansonsten <>Bedingung:Varbl[PressedButton]- 5 <>Ereignis aufrufen: Item-Use <>Bild löschen: 17 <>Schleife stoppen <> :Ansonsten <>Bedingung:Varbl[PressedButton]- 6 <>Bild löschen: 17 <>Schleife stoppen <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <> :Schleifenende <> :End-Fall <> |
Zum Abschluss dieses Kapitels geht es noch darum, den Gebrauch von Items zu
ermöglichen. In unserem Beispiel haben wir uns auf vier Items beschränkt: Einen
kleinen Heiltrank, einen großen Heiltrank, einen Magietrank und einen
Regenerationstrank. Sie sollen den Hauptchara heilen bzw. seine Magiekraft
wiederherstellen.
Die Items können aber auch vielfältige Eigenschaften haben. Beispielsweise
können Fertigkeiten in Form von Schriftrollen im Inventar liegen und etwas von
der Magiekraft kosten, wenn sie eingesetzt werden sollen. Ihr habt hier viele
Möglichkeiten. In unserem Beispiel werden wir uns jedoch darauf beschränken,
heilende Gegenstände im Inventar benutzbar zu machen. Am Beispiel des kleinen
Heiltranks soll dies nun verdeutlicht werden.
![]() |
Begebt euch in das Common Event/Häufig benötigte Ereignis, das ihr "Item-Use"
genannt habt. Beginnt hier, indem ihr eine Bedingung nebst Nein-Fall anlegt, die prüft, ob der Wert der Variable "SelectedItem" genau dem Wert 0 entspricht (es geht in unserem Beispiel nun um den kleinen Heiltrank.
|
||||
![]() |
Scrollt nun an das Ende des angelegten Makercodes. Hier soll nun zum Abschluss das Common Event/Häufig benötigte Ereignis aufgerufen werden, das ihr "Startaufstellung" genannt habt. |
Item-Use-Ereignis | ||||||||||||||||||||||||||||||||||
[Bedingung][Variable][SelectedItem][gleich][0]
|
Im englischem Maker |
<>If Var (SelectedItem) 0 <>Change HP: Alex's HP 10 (Add) <>Chng Item Count: (Kleiner Heiltrank) 1 (Rem) <>Show Battle Animation: Heilmagie A-Hero (W) <> :Else Case <>If Var (SelectedItem) 1 <>Change HP: Alex's HP 20 (Add) <>Chng Item Count: (Großer Heiltrank) 1 (Rem) <>Show Battle Animation: Heilmagie B-Hero (W) <> :Else Case <>If Var (SelectedItem) 2 <>Change HP: Alex's MP 5 (Add) <>Chng Item Count: (Magietrank) 1 (Rem) <>Show Battle Animation: Zustandsheilung A-Hero (W) <> :Else Case <>If Var (SelectedItem) 3 <>Change HP: Alex's HP 999 (Add) <>Change HP: Alex's MP 999 (Add) <>Chng Item Count: (Regenerationstrank) 1 (Rem) <>Show Battle Animation: Wiederg. Dämon A-Hero (W) <> :End Case <> :End Case <> :End Case <> :End Case <>Call Event: Startaufstellung <> |
Im deutschem Maker (V1.10c) |
<>Bedingung:Varbl[SelectedItem]-0 <>LP ändern:AlexLP um 10 erhöhen <>+/- Item: Kleiner Heiltrank -> 1 verm. <>Kampfanimation: Heilmagie A, Held (W) <> :Ansonsten <>Bedingung:Varbl[SelectedItem]-1 <>LP ändern:AlexLP um 20 erhöhen <>+/- Item: Großer Heiltrank -> 1 verm. <>Kampfanimation: Heilmagie B, Held (W) <> :Ansonsten <>Bedingung:Varbl[SelectedItem]-2 <>MP ändern:AlexMP um 5 erhöhen <>+/- Item: Magietrank -> 1 verm. <>Kampfanimation: Zustandsheilung A, Held (W) <> :Ansonsten <>Bedingung:Varbl[SelectedItem]-3 <>LP ändern:AlexLP um 999 erhöhen <>MP ändern:AlexMP um 999 erhöhen <>+/- Item: Regenerationstrank -> 1 verm. <>Kampfanimation: Wiederg. Dämon A, Held (W) <> :End-Fall <> :End-Fall <> :End-Fall <> :End-Fall <>Ereignis aufrufen: Startaufstellung <> |
In eurem AKS habt ihr nun die Möglichkeit geschaffen, dass euer Hauptcharakter Items aus seinem Inventar auswählen und verwenden kann. Auch lässt sich das Inventar nach Belieben erweitern, je nach dem, was ihr euren Hauptcharakter ins Inventar packen lasst. Falls euch die Grafiken aus dem am Anfang genanntem Paket [aks_items.zip] nicht zusagen, könnt ihr auch eigene Grafiken verwenden. Ihr müsst nur ein wenig probieren, bis ihr die für euch idealen Koordinaten für die Grafikdarstellung habt.