![]() ![]() |
Anzeige abnormer Zustände |
Zu Beginn solltet ihr euch Gedanken darüber machen, an welchen abnormen Zuständen eure Heldentruppe außerhalb der Kämpfe leiden soll. Dann könnt ihr euch Gedanken über die zu verwendende CharSet-Grafik machen, die ihr eventuell selbst noch erschaffen müsst. Für unsere Zwecke soll diese [Beispielgrafik] dienen. Falls ihr euch selbst künstlerisch betätigen wollt, solltet ihr die Grafik [template_charset.png] verwenden.
Zu beginn muss von jedem der Helden, die sich in der Heldentruppe befinden, der abnorme Zustand gespeichert werden, was heißt, dass maximal vier Variablen zum Einsatz kommen. Diese sollten direkt nacheinander folgen, damit sich aus Gründen der Einfachheit diese mittels Zähler einfacher ansteuern lassen. Die abnormen Zustände selbst sollen lediglich mittels Zahlenschlüssel erfasst werden, über die ihr euch im Vorfeld Gedanken machen solltet.
![]() |
In unserem Beispiel soll folgender Zahlenschlüssel für folgende abnorme
Zustände dienen:
|
||||||||
![]() |
Da ihr vielleicht noch einen eigenen Shop oder ein eigenes SKS erstellen
wollt/werdet, bietet es sich an, ein "Common Event/Häufig benötigtes
Ereignis" anzulegen. Es soll lediglich dafür dienen, die abnormen Zustände,
an denen die Hauptcharakter der Heldentruppe leiden, aufzuheben und eine
entsprechende ID (wie oben aufgeführt) in eine Variable zu schreiben, auf
die später dann zugegriffen werden kann. Das Anlegen des Ereignisses geschieht in der Datenbank auf der Registerkarte "Common Event/Häufig benötigtes Ereignis", wo ihr dem Ereignis den Namen "Conditions Remove" gebt. Lasst es auf "Call/Aufruf" stehen (Wichtig) |
||||||||
![]() |
Nun soll eine neue, freie Variable den Namen "Zustände No." erhalten, in die
dann die Nummer der nachfolgenden Variable gespeichert wird. Beispiel: Wenn die Variable "Zustände No." die Variablennummer 84 hat, so soll sie den Wert 85 speichern. Benennt auch gleich die vier nachfolgenden Variablen mit "Zustand Held 1", "Zustand Held 2", "Zustand Held 3" und "Zustand Held 4". Sie sollen noch keine Werte in sich aufnehmen (Wichtig) (Wenn ihr bereits das eigene Inventar gebastelt habt, verwendet ihr einfach die dort verwendete Variable "Zustände No.") |
||||||||
![]() |
Direkt danach soll eine Bedingung folgen, die
abfragt, ob der erste in der Datenbank angelegte Held sich im Team befindet
(in unserem Beispiel wird dieser Held "Alex" sein). Einen Nein-Fall brauchen
wir hier nicht. |
||||||||
![]() |
Es folgt gleich eine weitere Bedingung. Diese soll nun abfragen, ob Alex am
abnormen Zustand "Tod" (der oberste in der Liste abnormer
Zustände) leidet. Einen Nein-Fall brauchen wir hier. |
||||||||
![]() |
Im Ja-Fall der Bedingung soll nun der abnorme
Zustand "Tod" aufgehoben werden. Ist dies erledigt, soll nun die Variable,
deren Nummer von "Zustände No." übergeben wird, die Zahl 1 speichern. |
||||||||
![]() |
Im Nein-Fall der Bedingung wiederholt ihr vom
Schema her die vorangegangenen violetten Punkte für jeden weiteren abnormen
Zustand, an dem Alex jemals leiden könnte. |
||||||||
![]() |
Direkt über dem letzten End-Fall der Bedingung (in der Regel die
drittletzte Zeile des Maker-Codes, in die ihr klicken könnt), muss nun eine
Variablenfunktion noch angelegt werden, die den Wert der Variable "Zustände
No" um 1 steigert. |
||||||||
![]() |
Habt ihr für "Alex" sämtliche Zustände angelegt (in unserem Beispiel werden es zwei sein), wiederholt ihr die vorangegangenen fünf Punkte für jeden weiteren Helden, den ihr in der Datenbank angelegt habt. |
Conditions Remove | ||||||||||||||||||||||||||||
[Variable [Zustände No]][<-- [Wert
setzen][yyy1] [Bedingung][Held][Alex][Heldzustand [Tot]]
|
Ersetzt yyy1 durch die Nummer der Variable, die direkt nach der Variable "Zustände No." folgt
Im englischem Maker |
<>Change Var: Var[Zustände No]
(Set)-yyy1 <>If Alex is in the party <>If Alex==>Tot is Condition <>Condition: (Alex's Tot (Rem) <>Change Var: [Var[Zustände No]] (Set)-1 <> :Else Case <>If Alex==>Vergiftet is Condition <>Condition: (Alex's Vergiftet (Rem) <>Change Var: [Var[Zustände No]] (Set)-2 <> :End Case <> :End Case <>Change Var: Var[Zustände No] (+)-1 <> :End Case <>If Annie is in the party <>If Annie==>Tot is Condition <>Condition: (Annie's Tot (Rem) <>Change Var: [Var[Zustände No]] (Set)-1 <> :Else Case <>If Annie==>Vergiftet is Condition <>Condition: (Annie's Vergiftet (Rem) <>Change Var: [Var[Zustände No]] (Set)-2 <> :End Case <> :End Case <>Change Var: Var[xxx1: Zustände No] (+)-1 <> :End Case <> |
Im deutschem Maker (V1.10c) |
<>Var ändern: [Zustände No]Wert,
yyy1 <>Bedingung: Alex ist in Patrie <>Bedingung: Alex-Tot (Zustand) <>Zustand: Alex Gefallen Abbuch <>Var ändern:[V[Zustände No]]Wert, 1 <> :Ansonsten <>Bedingung: Alex-Vergiftet (Zustand) <>Zustand: Alex Vergiftet Abbruch <>Var ändern:[V[Zustände No]]Wert, 2 <> :End Fall <> :End Fall <>Var ändern: [Zustände No]+, 1 <> :End Fall <>Bedingung: Annie ist in Patrie <>Bedingung: Annie-Tot (Zustand) <>Zustand: Annie Gefallen Abbuch <>Var ändern:[V[Zustände No]]Wert, 1 <> :Ansonsten <>Bedingung: Annie-Vergiftet (Zustand) <>Zustand: Annie Vergiftet Abbruch <>Var ändern:[V[Zustände No]]Wert, 2 <> :End Fall <> :End Fall <>Var ändern: [Zustände No]+, 1 <> :End Fall <> |
Wenn die Heldentruppe keinerlei Heilung erfuhr und das Inventar verließ, soll sie wieder an ihren abnormen Zuständen leiden, an denen sie schon zuvor gelitten haben.
![]() |
Aufgrund der selben Gedanken wie bei den "Vorüberlegungen IIa" kommt
auch hier wieder ein "Common Event/Häufig benötigtes Ereignis" zum Einsatz,
dem ihr den Namen "Conditions - Add" gebt. Auch dieses lasst ihr wieder auf
"Call/Aufruf" stehen. |
![]() |
Alles beginnt mit einer Bedingung, die abfragt, ob in der Variable, die
ihr "Zustand - Held 1" genannt habt, der Wert "1" steht. |
![]() |
Im Ja-Fall soll der Held, dessen ID aus der Variable "Held #1" gelesen
werden muss (!), den abnormen Zustand "Tot" erleiden. |
![]() |
Im Nein-Fall verfahrt ihr nach obigem Schema für eine 2 und die
nachfolgenden Zahlenwerte, denen ihr abnorme Zustände zugewiesen habt. |
![]() |
Wiederholt die drei vorangegangenen Punkte für die Variablen "Zustand -
Held 2" (der Held #2 zuzuordnen ist), "Zustand - Held 3" (Held #3) und
"Zustand - Held 4" (Held #4). |
![]() |
Ganz zum Schluss werden noch sämtliche Zustandsvariablen auf 0 gesetzt. |
Conditions - Add | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[Bedingung][Variable][Zustand - Held
1][1] [gleich]]
|
Im englischem Maker |
<>If Var(Zustand - Held 1) 1 <>Condition: (V[Held #1]) Tot (Add) <> :Else Case <>If Var(Zustand - Held 1) 2 <>Condition: (V[Held #1]) Vergiftet (Add) <> :End Case <> :End Case <> <>If Var(Zustand - Held 2) 1 <>Condition: (V[Held #2]) Tot (Add) <> :Else Case <>If Var(Zustand - Held 2) 2 <>Condition: (V[Held #2]) Vergiftet (Add) <> :End Case <> :End Case <> <>If Var(Zustand - Held 3) 1 <>Condition: (V[Held #3]) Tot (Add) <> :Else Case <>If Var(Zustand - Held 3) 2 <>Condition: (V[Held #31]) Vergiftet (Add) <> :End Case <> :End Case <> <>If Var(Zustand - Held 4) 1 <>Condition: (V[Held #4]) Tot (Add) <> :Else Case <>If Var(Zustand - Held 4) 2 <>Condition: (V[Held #4]) Vergiftet (Add) <> :End Case <> :End Case <>Change Var: [(Zustand - Held 1) to (Zustand - Held 4)] (Set)-0 <> |
Im deutschem Maker (V1.10c) |
<>Bedingung: Varb[Zustand - Held
1]-1 <>Zustand: V[Held #1]->TotZustand <> :Ansonsten <>Bedingung: Varb[Zustand - Held 1]-2 <>Zustand: V[Held #1]->VergiftetZustand <> :End Fall <> :End Fall <> <>Bedingung: Varb[Zustand - Held 2]-1 <>Zustand: V[Held #2]->TotZustand <> :Ansonsten <>Bedingung: Varb[Zustand - Held 2]-2 <>Zustand: V[Held #2]->VergiftetZustand <> :End Fall <> :End Fall <> <>Bedingung: Varb[Zustand - Held 3]-1 <>Zustand: V[Held #3]->TotZustand <> :Ansonsten <>Bedingung: Varb[Zustand - Held 3]-2 <>Zustand: V[Held #3]->VergiftetZustand <> :End Fall <> :End Fall <> <>Bedingung: Varb[Zustand - Held 4]-1 <>Zustand: V[Held #4]->TotZustand <> :Ansonsten <>Bedingung: Varb[Zustand - Held 4]-2 <>Zustand: V[Held #4]->VergiftetZustand <> :End Fall <> :End Fall <>Var ändern: [(Zustand - Held 1)*(Zustand - Held 4)]Wert, 0 <> |
Ihr habt nun "Common Events/Häufig benötigte Ereignisse" angelegt, doch noch tun diese nicht das geringste. Können sie auch gar nicht, da ihr sie ja auf "Call/Aufruf" habt stehen lassen. Und diesen "Call/Aufruf" legen wir jetzt an. Sind zwei Ereigniskommandos, die ihr auf eurer Karte für den Einstieg in euer Inventar (wenn ihr einen auf Maps basierenden Shop oder ein SKS habt, sind es dort die entsprechenden Maps).
![]() |
Beide Ereigniskommandos legt ihr direkt über der Bedingung an, die
abfragt, ob sich Alex im Team befindet. Das Ereigniskommando selbst soll aus
den Common Events/Häufig benötigten Ereignissen das aufrufen, das ihr "Conditions
Remove" genannt habt. |
![]() |
Das zweite Ereigniskommand, das ihr an der Stelle anlegt, bevor (!) die Variablen "Held #1 bis Held #4" auf 0 gesetzt werden, soll aus den Common Events/Häufig benötigten Ereignissen das aufrufen, das ihr "Conditions - Add" genannt habt. |
Ersetzt yyy1 durch die Nummer der Variable, die direkt nach der Variable "Zustände No." folgt
Die Änderungen, die zum bereits vorhandenem Code des Ereignisses auf der
Karte "Inventory In/Out" hinzu kamen, sind fett hervorgehoben.
* Tragt hier anstelle von xxx1 die wirkliche Nummer der Variable von Hand
ein, die ihr "Held #1" genannt habt.
Inventar-Teleport-Ereignis | ||||||||||||||||||||||||||||||||||
[Ereignisseite 1][Automatisch] [Bedingung][Schalter][Im Inventar][AUS]
|
Im englischem Maker |
<>If Switch [Im
Inventar] is OFF <>Call Weather Effect: None/Off <>Change Switch: Var[Geldzähler läuft] Switch ON <>Change Var: Var[Held-Variable-Nr] (Set)-xxx1 <>Call Event: Conditions Remove <>If Alex is in the Party <>Change Var: [Var[Held-Variable-No]] (Set)-1 <>Change Var: Var[Held-Variable-Nr] (+)-1 <>Change Hero's Party: (Alex) (Rem) <> :End Case <>If Annie is in the Party <>Change Var: [Var[Held-Variable-No]] (Set)-1 <>Change Var: Var[Held-Variable-Nr] (+)-2 <>Change Hero's Party: (Annie) (Rem) <> :End Case <>Change Hero's Party: (Cursor) (Add) <>Change Switch: Var[Im Inventar] Switch ON <>Teleport: Inventory main (___,___) <> :Else Calse <>Change Hero's Party: (Cursor) (Rem) <>If Var(Held #1) 0 (<>) <>Change Hero's Party: (V[Held #1]) (Add) <> :End Case <>If Var(Held #2) 0 (<>) <>Change Hero's Party: (V[Held #2]) (Add) <> :End Case <>If Var(Held #3) 0 (<>) <>Change Hero's Party: (V[Held #3]) (Add) <> :End Case <>If Var(Held #4) 0 (<>) <>Change Hero's Party: (V[Held #4]) (Add) <> :End Case <>Call Event: Conditions - Add <>Change Var: [(Held ä1) to (Held #4)] (Set)-0 <>Change Switch: Var[Im Inventar] Switch OFF <>Goto Memorized Place: V[Karten-ID] (V[Held PixelX], V[Held PixelY]) <> :End Case <> |
Im deutschem Maker (V1.10c) |
<>Bedingung:Schalter[Im Inventar]- AUS <>Wettereffekt aufruf: Kein <>Schalter ändern:[Geldzähler läuft]-[AN] <>Var. ändern:[Held-Variable-Nr]Wert, xxx1 <>Ereignis aufrufen: Conditions Remove <>Bedingung:Alex ist in Partie <>Var. ändern:[V[Held-Variable-No]]Wert, 1 <>Var. ändern:[Held-Variable-Nr]+, 1 <>Heldenpartie ändern:Alex ->- <> :End-Fall <>Bedingung:Annie ist in Partie <>Var. ändern:[V[Held-Variable-No]]Wert, 2 <>Var. ändern:[Held-Variable-Nr]+, 1 <>Heldenpartie ändern:Annie ->- <> :End-Fall <>Heldenpartie ändern:Cursor->+ <>Schalter ändern:[Im Inventar]-[AN] <>Teleport: Inventory main (___,___) <> :Ansonsten <>Heldenpartie ändern:Cursor->- <>Bedingung:Varbl[Held #1]-0andr <>Heldenpartie ändern:V[Held #1]->+ <> :End-Fall <>Bedingung:Varbl[Held #2]-0andr <>Heldenpartie ändern:V[Held #2]->+ <> :End-Fall <>Bedingung:Varbl[Held #3]-0andr <>Heldenpartie ändern:V[Held #3]->+ <> :End-Fall <>Bedingung:Varbl[Held #4]-0andr <>Heldenpartie ändern:V[Held #4]->+ <> :End-Fall <>Ereignis aufrufen: Conditions - Add <>Var. ändern: [(Held #1)*(Held #4)] Wert, 0 <>Schalter ändern: [Im Inventar]-[AUS] <>Teleport z. gem. Pos: V[Karten-ID] (V[Held PixelX], V[Held PixelY]) <> :End-Fall <> |
...an die Heldeninfokarte muss von Hand vorgenommen werden, damit für jeden Helden auch der entsprechende abnorme Zustand, an dem dieser leidet, angezeigt werden kann. Es soll ja nicht so sein, dass bei einem eurer Helden ein abnormer Zustand angezeigt wird, an dem dieser überhaupt nicht leidet. Doch wie wird das angestellt, dass bei jedem Helden auch der abnorme Zustand angezeigt wird, an dem dieser leidet?
![]() |
Begebt euch auf die Karte, auf der die Heldenauswahl stattfindet. Hier
habt ihr zuvor vier Ereignisse angelegt, welche die maximal vier
Hauptcharaktere darstellen, die sich in der Heldentruppe befinden, wenn ins
Inventar gewechselt wurde. Jedes dieser vier Ereignisse fragt auf jeder
Ereignisseite ein und die selbe Variable "Held #X" ab, wobei X für Zahlen
zwischen 1 und 4 steht. Je nach dem, welche Ereignisseite aktiv ist, ist dieser dargestellte Hauptcharakter Mitglied der Heldentruppe. |
![]() |
Da jedes Ereignis die selbe Variable "Held #X" abfragt, wird hier auch
jeweils die zur Variable "Held #X" passende Variable "Zustand Held X"
abgefragt und in eine neue, freie Variable gespeichert, die immer die
selbe ist. Hintergrund ist der, dass wir hier nur eine einzige Karte für die Darstellung der Heldeninfo haben und von Daher eine "globale" Variable erforderlich ist. Diese neue, "globale" Variable nennen wir "Abnormer Zustand". Dies sollte ziemlich am Anfang jeder Ereignisseite der vier "Heldenauswahl-Ereignisse" stehen. |
Heldauswahl-Ereignis |
[Ereignisseite 1][Variable [Held #1]
>= [1] [Variable [Abnormer Zustand]] [<-- [Wert setzen [Variable [Zustand Held 1] Wert] [Variable [Gewählter Held]] [<-- [Wert setzen][1]] [Teleportieren nach][Inventar - Heldeninfo] |
[Ereignisseite 2][Variable [Held #1]
>= [2] [Variable [Abnormer Zustand]] [<-- [Wert setzen [Variable [Zustand Held 1] Wert] [Variable [Gewählter Held]] [<-- [Wert setzen][2]] [Teleportieren nach][Inventar - Heldeninfo] |
Im englischem Maker |
<>Change Var: Var[Gewählter Held] (Set)- 1 <>Change Var: Var[Abnormer Zustand] (Set)- Var[Zustand Held 1] <>Teleport: aaaa: Inventar - Heldeninfo (___,___) <> |
<>Change Var: Var[Gewählter Held] (Set)- 2 <>Change Var: Var[Abnormer Zustand] (Set)- Var[Zustand Held 1] <>Teleport: aaaa: Inventar - Heldeninfo (___,___) <> |
Im deutschem Maker (V1.10c) |
<>Var. ändern:[Gewählter
Held] Wert, 1 <>Var. ändern:[Abnormer Zustand]Wert, Var[Zustand Held 1]Wert <>Teleport: aaaa: Inventar - Heldeninfo (___,___) <> |
<>Change Var: Var[Gewählter Held] (Set)- 2 <>Var. ändern:[Abnormer Zustand]Wert, Var[Zustand Held 1]Wert <>Teleport: aaaa: Inventar - Heldeninfo (___,___) <> |
Mit der Darstellung ist es recht simpel, da hier lediglich Ereignisseiten
aktiv werden müssen, wenn in der Variable "Abnormer Zustand" ein bestimmter Wert
steht. Die Verfahrensweise ist fast die Selbe wie bei der Heldenauswahl, bei der
je nach Variablenwert ein entsprechender Held angezeigt wurde. Dann ist je nach
abnormem Zustand noch die passende Darstellungsgrafik zu wählen, Makercode wird
hierfür nicht benötigt. Lediglich die oben genannte [Beispielgrafik]
oder eine von euch für diesen Zweck angelegte kommt hier zum Einsatz.
Tipp: Ihr könnt auf der Heldeninfo-Karte auch mehrere Ereignisse
verwenden, um die abnormen Zustände anzuzeigen.
Heldauswahl-Ereignis |
[Ereignisseite 1][Variable [Abnormer Zustand] >= [1] |
[Ereignisseite 2][Variable [Abnormer Zustand] >= [2] |