![]() ![]() |
Position der Kämpfer |
Eigentlich gibt es nur zwei Arten von Gegnern, die ihr in einem Sideview-Kampfsystem anlegen könnt:
![]() |
Gegner, deren Erscheinung durch Char-Sets bestimmt wird: Hierfür kann jedes (!) CharSet dienen, womit also eure Heldentruppe gegen jeden kämpfen kann, dem sie auf ihrer Reise begegnen können. Auch der Fall eines Gegners lässt sich ohne größere Probleme; am Einfachsten macht ihr das mit Hilfe einer Kampfanimation, wobei die Grafik [enemy_death.png], die dem E-Book beigefügt ist, für diesen Zweck ausrechen sollte. |
![]() |
Gegner, deren Erscheinung durch Pictures dargestellt wird Auch hier sieht es nicht ganz so schwer aus, wie es den Anschein hat. Worauf ihr achten solltet ist, dass ihr nur für die wirklich großen Gegner, beispielsweise Drachen, Riesen und sonstige großen Gegner Pictures zur Gegner-Darstellung verwendet, damit ein gewisser Grad an "Realität" erhalten bleibt. |
Sie sollen lediglich ihre eigene Darstellung übernehmen, also den "lebendigen" und "toten" Zustand sowie den Übergang von Leben zum Tod. Das "Leben" soll das Charset [monster1.png] übernehmen, während für "das Sterben" die Kampfanimation [enemy_death.png] zuständig sein soll. Auch braucht jeder CharSet-Gegner zwei Ereignisseiten, eine für den Zustand "Lebend" und eine für den Zustand "Tot".
![]() |
In unserem Beispiel legen wir drei Ereignisse an einer zufällig
gewählten Position (linker Bereich des Bildes) in derartigen Abständen an,
dass sie sich nicht ganz oder teilweise überdecken (Wichtig, da ja jeder
Gegner klar zu sehen sein soll). Gebt den Ereignissen entsprechende Namen
wie "Gegner 1", "Gegner 2" und "Gegner 3". |
![]() |
Es muss klar sein, dass die zweite Ereignisseite nichts darstellen darf,
also der transparente Chip des für die Map gewählten ChipSets zu wählen ist. |
![]() |
Auf der ersten Ereignisseite eines jeden CharSet-Gegners soll nun eine
Bedingung abfragen, ob eine neue, freie Variable einen Wert hat, der kleiner
oder gleich "0" ist. Nennt
diese Variable "HP - Gegner 1", für den ersten, "HP - Gegner 2" für den
zweiten und "HP - Gegner 3" für den dritten Gegner. Ein Nein-Fall ist nicht
nötig. |
![]() |
Direkt danach, im Ja-Fall der Bedingung, soll eine Kampfanimation
abgespielt werden, die aus den Sterbewolken der Kampfanimationsgrafik [enemy_death.png]
besteht. So soll das Sterben des Gegners dargestellt werden. Wichtig ist
hierbei, dass nicht gewartet wird, bis die Kamfanimation fertig ist, damit
ein fließender Übergang zwischen "Sterben" und "Tod" des Gegners
gewährleistet ist. Handelt es sich um einen Picture-Gegner, so soll das Picture zuerst ein rötliches Farbschema bekommen, sich dann in Nichts auflösen und letztlich gelöscht werden. Das Färben und Ausblenden geschieht mittels Bildbewegung. |
![]() |
Direkt nach der Kampfanimation soll ein neuer, freier Schalter auf AN
gestellt werden. Gebt ihm den Namen "Gegner 1 - Tot" für den ersten, "Gegner
2 - Tot" für den zweiten und "Gegner 3 - Tot" für den dritten Gegner. |
![]() |
Wechselt auf die zweite Ereignisseite. Diese soll genau dann aktiv
werden, wenn der Schalter "Gegner 1 - Tot" aktiv ist, wenn es sich um den
Gegner 1 handelt. Bei Gegner 2 und Gegner 3 verfahrt ihr entsprechend. |
Gegner-1-Ereignis | ||||
[Ereignisseite 1][ENTER-Taste] [Bedingung][Variable][HP - Gegner 1][kleiner oder gleich][0]
|
||||
[Ereignisseite 2][ENTER-Taste][Schalter [Gegner 1 - Tot]] |
Im englischem Maker |
<>If Var(xxx1: HP - Gegner 1) 0
(<=) <>Show Battle Animation: EnemyDeath-Gegner-1-Ereignis <>Change Switch: Var[yyy1: Gegner 1 - Tot] Switch ON <>Note: Bei Picture-Gegnern noch folgenden Code (als Kommentar hier genannt) : : Move Picture: ID: 1(60,100), 0.1sec(W) <-- Setzt das Picture auf einen Rot-Ton : : Wait: 0.1sec : : Move Picture: ID: 1(60,100), 1.0sec(W) <-- Steigert die Transparenz auf 100% : : Wait: 0.1sec : : Erase Picture: ID: 1 :End Case <> |
<> |
Im deutschem Maker (V1.10c) |
<>Bedingung:Varbl[xxx1:HP - Gegner
1]-0 <= <>Kampfanimation: EnemyDeath, Gegner-1-Ereignis <>Schalter ändern:[yyy1: Gegner 1 - Tot]-[AN] <>Notiz: Bei Picture-Gegnern noch folgenden Code (Als Kommentar hier genannt) : : Bild bewegen: 1, (60,100), 0.1Sek(W) <-- Setzt das Picture auf einen Rot-Ton : : Warten: 0.1S. : : Bild bewegen: 1, (60,100), 0.1Sek(W) <-- Steigert die Transparenz auf 100% : : Warten: 0.1S. : : Bild löschen: 1 :End-Fall <> |
<> |
Gegner, die aus Pictures bestehen, sind ein wenig komplizierter anzulegen, als dies bei CharSet-Gegnern der Fall ist. Alles, was ich dafür braucht, ist das Bild eines Gegners als Picture. In unserem Beispiel soll [Dieser Beispielgegner] dazu dienen.
![]() |
Hierfür brauchen wir ein neues Ereignis, das ihr am Besten in der linken
oberen Ecke der Map anlegt. In unserem Beispiel werden wir das Ereignis
"Steuerung" nennen. Die erste Ereignisseite soll "automatisch
starten". |
![]() |
Mit einer "Show Picture/Bild anzeigen"-Funktion soll nun unser [Beispielgegner]
angezeigt werden. Gebt ihm die Pic-Number bzw. Bildnummer 1, reduziert die
Bildgröße (Magnification) auf 90% und wählt bei unserem Beispielgegner die
Koordinaten "X = 60" und "Y = 100". Er wird also hinter den drei zuvor
angelegten Gegnern positioniert sein. Auch soll die transparente Farbe der
Gegnergrafik auch als solche behandelt werden (Wichtig). |
![]() |
Direkt danach soll ein neuer, freier Schalter, dem ihr den Namen "SKS-Start
- Done" gebt, auf AN gestellt werden. |
![]() |
Eine zweite Ereignisseite ist erforderlich, die dann aktiv wird, wenn
der Schalter "SKS-Start - Done" auf AN steht. Mehr soll vorerst nicht
passieren. |
![]() |
Legt noch ein neues Ereignis an, dem ihr einen eindeutigen Namen gebt (in unserem Beispiel "Gegner #4"). Lasst jedoch sämtliche Ereignis-Seiten von "Gegner #4" leer. |
Steuerung |
[Ereignisseite 1][Automatisch] [Picture zeigen][Bildnummer][Beispielgegner][X = 60][Y = 100][Transparent] [Schalter [SKS-Start - Done]][<-- [AN] |
[Ereignisseite 2][Automatisch][Schalter [SKS-Start - Done]] |
Im englischem Maker |
<>Show Picture:
ID:1-Beispielgegner-(60,100) <>Change Switch: Var[yyy2: SKS-Start - Done] Switch ON |
<> |
Im deutschem Maker (V1.10c) |
<>Bild anzeigen: 1, Beispielgegner,
(60,100) <>Schalter ändern:[yyy2: SKS-Start - Done]-[AN] |
<> |
Damit die Gegner nicht gleich im ersten Kampf komplett sterben (noch hat ihre Variable "HP - Gegner X" den Wert 0). Daran muss sich noch etwas ändern, bevor der eigentliche Kampf losgeht.
![]() |
Dafür verwenden wir einfach das Ereignis, das zuvor für die
"Picture-Gegner" angelegt wurde. Falls ihr keine Picture-Gegner verwendet,
müsst ihr ein neues anlegen (nennt es "Steuerung"), dessen erste
Ereignisseite automatisch startet. |
![]() |
Legt, falls noch nicht geschehen, eine "Change Switch/Schalterzustand
ändern"-Funktion, mit der ein Schalter, den ihr "SKS-Start - Done" nennt,
auf AN gestellt wird. Ebenso sollen die Schalter "Gegner 1 - Tot" bis
"Gegner 4 - Tot" auf AUS gestellt werden. |
![]() |
Legt (falls euer Ereignis noch aus einer Ereignisseite besteht, eine
neue an, die automatisch genau dann startet, wenn der Schalter "SKS-Start -
Done" auf AN steht. |
![]() |
Zurück auf der ersten Ereignisseite legt ihr über dem Schalter eine
Variablenfunktion an. Diese soll den Wert der Variable "HP - Gegner 1" auf
einen beliebigen Wert (in unserem Beispiel 50" setzen. Verfahrt ebenso mit den bereits festgelegten Variablen "HP - Gegner 2" und "HP - Gegner 3". Legt auch eine neue Variable "HP - Gegner 4" (Der Picture-Gegner unseres Beispiels) an, in die ein weiterer, beliebiger Wert geschrieben werden soll (in unserem Beispiel 100) |
![]() |
Verfahrt nach selbigem Schema mit vier weiteren Variablen, die ihr "MP -
Gegner 1", "MP - Gegner 2", "MP - Gegner 3" (die in unserem Beispiel jeweils
den Wert 0 haben) und "MP - Gegner 4" (hat in unserem Beispiel den Wert 20). |
![]() |
Auch die Angriffskraft der Gegner sollte nicht vergessen werden. Vier
weitere Variablen, die ihr "Attack - Gegner #1" und so weiter nennt, müssen
angelegt werden, von denen die ersten drei den Wert "15" und die letzte den
Wert "10" aufnehmen soll. |
![]() |
Macht das gleiche für weitere vier Variablen, die ihr "Defense - Gegner 1"
und so weiter benennt, von denen die ersten drei in unserem Beispiel den
Wert "12" und die letzte den Wert "30" speichern soll.
|
![]() |
Zum Abschluss braucht ihr noch vier letzte Variablen, die ihr "Mind - Gegner 1" und so weiter nennt. Von ihnen sollen in unserem Beispiel die ersten drei den Wert "10" und die letzte den Wert "20" haben. |
Neuerungen sind fett hervorgehoben
Steuerung-Ereignis |
[Ereignisseite 1][Automatisch] [Picture zeigen][Bildnummer][Beispielgegner][X = 60][Y = 100][Transparent] [Schalter [Gegner 1 - Tot]][<-- [AUS]] [Schalter [Gegner 2 - Tot]][<-- [AUS]] [Schalter [Gegner 3 - Tot]][<-- [AUS]] [Schalter [Gegner 4 - Tot]][<-- [AUS]] [Variable [HP - Gegner 1]][<-- [Wert setzen][50]] [Variable [HP - Gegner 2]][<-- [Wert setzen][50]] [Variable [HP - Gegner 3]][<-- [Wert setzen][50]] [Variable [HP - Gegner 4]][<-- [Wert setzen][100]] [Variable [MP - Gegner 1]][<-- [Wert setzen][0]] [Variable [MP - Gegner 2]][<-- [Wert setzen][0]] [Variable [MP - Gegner 3]][<-- [Wert setzen][0]] [Variable [MP - Gegner 4]][<-- [Wert setzen][20]] [Variable [Defense - Gegner 1]][<-- [Wert setzen][12]] [Variable [Defense - Gegner 2]][<-- [Wert setzen][12]] [Variable [Defense - Gegner 3]][<-- [Wert setzen][12]] [Variable [Defense - Gegner 4]][<-- [Wert setzen][30]] [Variable [Mind - Gegner 1]][<-- [Wert setzen][10]] [Variable [Mind - Gegner 2]][<-- [Wert setzen][10]] [Variable [Mind - Gegner 3]][<-- [Wert setzen][10]] [Variable [Mind - Gegner 4]][<-- [Wert setzen][20]] [Variable [Attack - Gegner 1]][<-- [Wert setzen][15]] [Variable [Attack - Gegner 2]][<-- [Wert setzen][15]] [Variable [Attack - Gegner 3]][<-- [Wert setzen][15]] [Variable [Attack - Gegner 4]][<-- [Wert setzen][10]] [Schalter [SKS-Start - Done]][<-- [AN] |
[Ereignisseite 2][Automatisch][Schalter [SKS-Start - Done]] |
Im englischem Maker |
<>Show Picture:
ID:1-Beispielgegner-(60,100) <>Change Switch: Var[Gegner 1 - Tot] Switch OFF <>Change Switch: Var[Gegner 2 - Tot] Switch OFF <>Change Switch: Var[Gegner 3 - Tot] Switch OFF <>Change Switch: Var[Gegner 4 - Tot] Switch OFF <>Change Var: Var[xxx1: HP - Gegner 1] (Set)-50 <>Change Var: Var[xxx2: HP - Gegner 2] (Set)-50 <>Change Var: Var[xxx3: HP - Gegner 3] (Set)-50 <>Change Var: Var[xxx4: HP - Gegner 4] (Set)-100 <>Change Var: Var[xxx5: MP - Gegner 1] (Set)-0 <>Change Var: Var[xxx6: MP - Gegner 2] (Set)-0 <>Change Var: Var[xxx7: MP - Gegner 3] (Set)-0 <>Change Var: Var[xxx8: MP - Gegner 4] (Set)-20 <>Change Var: Var[xxx9: Defense - Gegner 1] (Set)-12 <>Change Var: Var[xx10: Defense - Gegner 2] (Set)-12 <>Change Var: Var[xx11: Defense - Gegner 3] (Set)-12 <>Change Var: Var[xx12: Defense - Gegner 4] (Set)-30 <>Change Var: Var[xx13: Mind - Gegner 1] (Set)-10 <>Change Var: Var[xx14: Mind - Gegner 2] (Set)-10 <>Change Var: Var[xx15: Mind - Gegner 3] (Set)-10 <>Change Var: Var[xx16: Mind - Gegner 4] (Set)-20 <>Change Var: Var[xx17: Attack - Gegner 1] (Set)-15 <>Change Var: Var[xx18: Attack - Gegner 2] (Set)-15 <>Change Var: Var[xx19: Attack - Gegner 3] (Set)-15 <>Change Var: Var[xx20: Attack - Gegner 4] (Set)-10 <>Change Switch: Var[yyy2: SKS-Start - Done] Switch ON |
<> |
Im deutschem Maker (V1.10c) |
<>Bild anzeigen: 1, Beispielgegner,
(60,100) <>Schalter ändern:[Gegner 1 - Tot]-[Aus] <>Schalter ändern:[Gegner 2 - Tot]-[Aus] <>Schalter ändern:[Gegner 3 - Tot]-[Aus] <>Schalter ändern:[Gegner 4 - Tot]-[Aus] <>Var. ändern: [xxx1: HP - Gegner 1] Wert, 50 <>Var. ändern: [xxx2: HP - Gegner 2] Wert, 50 <>Var. ändern: [xxx3: HP - Gegner 3] Wert, 50 <>Var. ändern: [xxx4: HP - Gegner 4] Wert, 100 <>Var. ändern: [xxx5: MP - Gegner 1] Wert, 0 <>Var. ändern: [xxx6: MP - Gegner 2] Wert, 0 <>Var. ändern: [xxx7: MP - Gegner 3] Wert, 0 <>Var. ändern: [xxx8: MP - Gegner 4] Wert, 20 <>Var. ändern: [xxx9: Defense - Gegner 1] Wert, 12 <>Var. ändern: [xx10: Defense - Gegner 2] Wert, 12 <>Var. ändern: [xx11: Defense - Gegner 3] Wert, 12 <>Var. ändern: [xx12: Defense - Gegner 4] Wert, 30 <>Var. ändern: [xx13: Mind - Gegner 1] Wert, 10 <>Var. ändern: [xx14: Mind - Gegner 2] Wert, 10 <>Var. ändern: [xx15: Mind - Gegner 3] Wert, 10 <>Var. ändern: [xx16: Mind - Gegner 4] Wert, 20 <>Var. ändern: [xx17: Attack - Gegner 1] Wert, 15 <>Var. ändern: [xx18: Attack - Gegner 2] Wert, 15 <>Var. ändern: [xx19: Attack - Gegner 3] Wert, 15 <>Var. ändern: [xx20: Attack - Gegner 4] Wert, 10 <>Schalter ändern:[yyy2: SKS-Start - Done]-[AN] |
<> |
... machen wir an dieser Stelle auch gleich mit. Diese werden in Variablen benötigt, wenn es um den Einsatz der Gegnerattribute und der damit verbundenen Schadensberechnung geht. Losgehen soll es direkt über dem Schalter "SKS-Start - Done"...
![]() |
Zunächst greifen wir die Variable "Hero-Variable-No" aus dem Kapitel
"Einstieg und Verlassen des SKS" wieder auf. Sie soll als Wert die Nummer
der Variable aufnehmen, die ihr "Held #1" genannt habt. |
||||||||
![]() |
Direkt danach brauchen wir eine weitere Variable, die ihr "Hero-Attrib-Pointer"
nennt. Sie soll als Startwert die Nummer der Variable haben, die ihr von der
Nummer her folgt (in unserem Beispiel wäre diese nach der Variable folgende
die mit der Nummer 159). Benennt die 12 danach folgenden Variablen "Attack -
Held #1", "Defense - Held #1" und "Mind - Held #1" und so weiter bis "Mind -
Held #4" |
||||||||
![]() |
Direkt danach brauchen wir eine Endlosschleife, in der eine neue, noch
unbenannte Variable den Namen "Temp-Hero-ID" bekommt. Sie soll den Wert der
Variable aufnehmen, deren Nummer von der Variable "Hero-Variable-No"
übergeben wird. |
||||||||
![]() |
Nun soll eine Bedingung abfragen, ob der Wert der Variable "Temp-Hero-ID"
dem Wert "1" entspricht. Hier brauchen wir einen Nein-Fall.
|
||||||||
![]() |
Nach dem End-Fall der ersten Bedingung - noch innerhalb der
Endlosschleife - soll der Wert der Variable "Hero-Variable-No" um 1 erhöht
werden. |
||||||||
![]() |
Zum Abschluss soll noch eine Bedingung abfragen, ob der Wert der Variable "Hero-Variable-No" dem Wert der Variablennummer von "Held #4" + 1 entspricht (in unserem Beispiel hat die Variable "Held #4" die Nummer 34. Also soll die Bedingung abfragen, ob der Wert der Variable "Hero-Variable-No" dem Wert 35 entspricht). Im Ja-Fall soll ein Schleifenausbruch erfolgen, einen Nein-Fall brauchen wir hierbei nicht. |
Was neu hinzugekommen ist, wurde fett hervorgehoben
Steuerung-Ereignis | ||||||||||||||||||||
[Ereignisseite 1][Automatisch] [Picture zeigen][Bildnummer][Beispielgegner][X = 60][Y = 100][Transparent] [Variable [HP - Gegner 1]][<-- [Wert setzen][50]] [Variable [HP - Gegner 2]][<-- [Wert setzen][50]] [Variable [HP - Gegner 3]][<-- [Wert setzen][50]] [Variable [HP - Gegner 4]][<-- [Wert setzen][100]] [Variable [MP - Gegner 1]][<-- [Wert setzen][0]] [Variable [MP - Gegner 2]][<-- [Wert setzen][0]] [Variable [MP - Gegner 3]][<-- [Wert setzen][0]] [Variable [MP - Gegner 4]][<-- [Wert setzen][20]] [Variable [Defense - Gegner 1]][<-- [Wert setzen][12]] [Variable [Defense - Gegner 2]][<-- [Wert setzen][12]] [Variable [Defense - Gegner 3]][<-- [Wert setzen][12]] [Variable [Defense - Gegner 4]][<-- [Wert setzen][30]] [Variable [Mind - Gegner 1]][<-- [Wert setzen][10]] [Variable [Mind - Gegner 2]][<-- [Wert setzen][10]] [Variable [Mind - Gegner 3]][<-- [Wert setzen][10]] [Variable [Mind - Gegner 4]][<-- [Wert setzen][20]] [Variable [Attack - Gegner 1]][<-- [Wert setzen][15]] [Variable [Attack - Gegner 2]][<-- [Wert setzen][15]] [Variable [Attack - Gegner 3]][<-- [Wert setzen][15]] [Variable [Attack - Gegner 4]][<-- [Wert setzen][10]] [Variable [Hero-Variable-No]][<-- [Wert setzen][31]] [Variable [Hero-Attrib-Pointer]][<-- [Wert setzen][159]] [Schleife Beginn]
[Schalter [SKS-Start - Done]][<-- [AN] |
||||||||||||||||||||
[Ereignisseite 2][Automatisch][Schalter [SKS-Start - Done]] |
Was neu hinzugekommen ist, wurde fett hervorgehoben
Im englischem Maker |
<>Show Picture:
ID:1-Beispielgegner-(60,100) <>Change Var: Var[xxx1: HP - Gegner 1] (Set)-50 <>Change Var: Var[xxx2: HP - Gegner 2] (Set)-50 <>Change Var: Var[xxx3: HP - Gegner 3] (Set)-50 <>Change Var: Var[xxx4: HP - Gegner 4] (Set)-100 <>Change Var: Var[xxx5: MP - Gegner 1] (Set)-0 <>Change Var: Var[xxx6: MP - Gegner 2] (Set)-0 <>Change Var: Var[xxx7: MP - Gegner 3] (Set)-0 <>Change Var: Var[xxx8: MP - Gegner 4] (Set)-20 <>Change Var: Var[xxx9: Defense - Gegner 1] (Set)-12 <>Change Var: Var[xx10: Defense - Gegner 2] (Set)-12 <>Change Var: Var[xx11: Defense - Gegner 3] (Set)-12 <>Change Var: Var[xx12: Defense - Gegner 4] (Set)-30 <>Change Var: Var[xx13: Mind - Gegner 1] (Set)-10 <>Change Var: Var[xx14: Mind - Gegner 2] (Set)-10 <>Change Var: Var[xx15: Mind - Gegner 3] (Set)-10 <>Change Var: Var[xx16: Mind - Gegner 4] (Set)-20 <>Change Var: Var[xx17: Attack - Gegner 1] (Set)-15 <>Change Var: Var[xx18: Attack - Gegner 2] (Set)-15 <>Change Var: Var[xx19: Attack - Gegner 3] (Set)-15 <>Change Var: Var[xx20: Attack - Gegner 4] (Set)-10 <>Change Var: Var[aaab: Hero-Variable-No] (Set)- 31 <>Change Var: Var[jjj1: Hero-Attrib-Pointer] (Set)- 159 <>Loop <>Change Var: Var[jjj2: Temp-Hero-ID] (Set)- Var[Var[aaab]] <>If Var(jjj2: Temp-Hero-ID) 1 <>Change Var: [Var[jjj1]] (Set)-Alex's Attack <>Change Var: Var[jjj1: Hero-Attrib-Pointer] (+)- 1 <>Change Var: [Var[jjj1]] (Set)-Alex's Defence <>Change Var: Var[jjj1: Hero-Attrib-Pointer] (+)- 1 <>Change Var: [Var[jjj1]] (Set)-Alex's Mind <>Change Var: Var[jjj1: Hero-Attrib-Pointer] (+)- 1 <> :Else Case <>If Var(jjj2: Temp-Hero-ID) 2 <>Change Var: [Var[jjj1]] (Set)-Annie's Attack <>Change Var: Var[jjj1: Hero-Attrib-Pointer] (+)- 1 <>Change Var: [Var[jjj1]] (Set)-Annie's Defence <>Change Var: Var[jjj1: Hero-Attrib-Pointer] (+)- 1 <>Change Var: [Var[jjj1]] (Set)-Annie's Mind <>Change Var: Var[jjj1: Hero-Attrib-Pointer] (+)- 1 <> :End Case <> :End Case <>Change Var: Var[aaab: Hero-Variable-No] (+)- 1 <>If Var(aaab: Hero-Variable-No) 35 <>Break <> :End Case <> :End Loop <>Change Switch: Var[yyy2: SKS-Start - Done] Switch ON |
Im deutschem Maker (V1.10c) |
<>Bild anzeigen: 1, Beispielgegner,
(60,100) <>Var. ändern: [xxx1: HP - Gegner 1] Wert, 50 <>Var. ändern: [xxx2: HP - Gegner 2] Wert, 50 <>Var. ändern: [xxx3: HP - Gegner 3] Wert, 50 <>Var. ändern: [xxx4: HP - Gegner 4] Wert, 100 <>Var. ändern: [xxx5: MP - Gegner 1] Wert, 0 <>Var. ändern: [xxx6: MP - Gegner 2] Wert, 0 <>Var. ändern: [xxx7: MP - Gegner 3] Wert, 0 <>Var. ändern: [xxx8: MP - Gegner 4] Wert, 20 <>Var. ändern: [xxx9: Defense - Gegner 1] Wert, 12 <>Var. ändern: [xx10: Defense - Gegner 2] Wert, 12 <>Var. ändern: [xx11: Defense - Gegner 3] Wert, 12 <>Var. ändern: [xx12: Defense - Gegner 4] Wert, 30 <>Var. ändern: [xx13: Mind - Gegner 1] Wert, 10 <>Var. ändern: [xx14: Mind - Gegner 2] Wert, 10 <>Var. ändern: [xx15: Mind - Gegner 3] Wert, 10 <>Var. ändern: [xx16: Mind - Gegner 4] Wert, 20 <>Var. ändern: [xx17: Attack - Gegner 1] Wert, 15 <>Var. ändern: [xx18: Attack - Gegner 2] Wert, 15 <>Var. ändern: [xx19: Attack - Gegner 3] Wert, 15 <>Var. ändern: [xx20: Attack - Gegner 4] Wert, 10 <>Var. ändern: [aaab: Hero-Variable-No]Wert, 31 <>Var. ändern: [jjj1: Hero-Attrib-Pointer]Wert, 159 <>Schleife <>Var. ändern:[jjj2: Temp-Hero-ID]Wert, Var[V[aaab]]Inh. <>Bedingung:Varbl[jjj2: Temp-Hero-ID]- 1 <>Var. ändern:[V[jjj1]]Wert, Alex Angriff <>Var. ändern:[jjj1: Hero-Attrib-Pointer]+, 1 <>Var. ändern:[V[jjj1]]Wert, Alex Vertd. <>Var. ändern:[jjj1: Hero-Attrib-Pointer]+, 1 <>Var. ändern:[V[jjj1]]Wert, Alex IQ <>Var. ändern:[jjj1: Hero-Attrib-Pointer]+, 1 <> :Ansonsten <>Bedingung:Varbl[jjj2: Temp-Hero-ID]- 2 <>Var. ändern:[V[jjj1]]Wert, Annie Angriff <>Var. ändern:[jjj1: Hero-Attrib-Pointer]+, 1 <>Var. ändern:[V[jjj1]]Wert, Annie Vertd. <>Var. ändern:[jjj1: Hero-Attrib-Pointer]+, 1 <>Var. ändern:[V[jjj1]]Wert, Annie IQ <>Var. ändern:[jjj1: Hero-Attrib-Pointer]+, 1 <> :End-Fall <> :End-Fall <> Var. ändern:[aaab: Hero-Variable-No]+, 1 <>Bedingung:Varbl[aaab:Hero-Variable-No]-35 <>Schleife stoppen <> :End-Fall <> :Schleifenende <>Schalter ändern:[yyy2: SKS-Start - Done]-[AN] |
Die sollte in CharSets dargestellt werden, wenn ihr nicht grafisch begabt seid und zu den einzelnen Pictures noch Animationen für Schwertschläge und dergleichen machen kännt. Hier braucht ihr euch lediglich daran zurückzuerinnern, was ihr im Kapitel [Einstieg und Verlassen des SKS] gemacht habt und euch da nur an vier Variablen zu erinnern, in die ihr die Helden-IDs gespeichert habt. Ebenfalls braucht ihr eine Pose für den Zustand, dass die einzelnen Helden bewusstlos am Boden liegen. Hierfür soll in unserem Beispiel die Grafik [dead_heros.png] dienen, die "Alex" und "Annie" bewusstlos am Boden liegend zeigt. Dann geht es eigentlich nur noch darum, vier Helden-Ereignisse im rechtem Bereich des Kampfsystem-Bildes zu platzieren...
![]() |
Im Vorfeld solltet ihr wissen, wo ihr die Variablen findet, die ihr im
Kapitel [Einstieg und Verlassen des SKS]
angelegt habt. In ihnen liegt die jeweilige Nummer des Helden an einer
gewissen Rangfolge der Heldentruppe. |
![]() |
Erstellt auf der rechten Seite ein neues Ereignis, das ihr "Held #1"
nennt. |
![]() |
Die erste Ereignisseite soll genau dann aktiv werden, wenn die zuvor
beim Kapitel [Einstieg und
Verlassen des SKS] verwendete Variable "Held #1" den Wert 1 hat. Als Darstellungsgrafik soll das CharSet dienen, das dem Helden entspricht, dem ihr die Heldennummer 1 zugewiesen habt. (In unserem Beispiel ist der Held mit der Nummer 1 "Alex") |
![]() |
Erstellt eine neue Ereignisseite, die genau dann aktiv wirt, wenn die
selbe Variable "Held #1" den Wert 1 hat. Zusätzlich bestimmt ihr noch, dass
ein neuer, freier Schalter, den ihr "Held 1 - Tot" nennt, auf AN sein muss,
ehe die Ereignisseite wirklich aktiv wird. Als Darstellungsgrafik soll hier aus [dead_heros.png] der am Boden liegende Alex verwendet werden. |
![]() |
Wiederholt dieses Schema für die Heldennummer 2, 3 und so weiter, bis
ihr jeden der Helden, die sich jemals im Team befinden können, auf diese
Weise angelegt habt. |
![]() |
Das ganze Ereignis, um das es hier geht, müsst ihr noch im Bezug auf die Variablen "Held #2", "Held #3" und "Held #4" machen. Verwendet hier entsprechend neue Schalter, die ihr "Held 2 - Tot", "Held 3 - Tot" und "Held 4 - Tot" nennt. |
Held #1 |
[Ereignisseite 1][ENTER-Taste][Variable
[Held #1]>=[1]] /* * Hier wird von den Charsets das Bild eines normal aussehenden * Alex gezeigt */ |
[Ereignisseite
2][ENTER-Taste][Variable [Held #1]>=[1]][Schalter [Held 1 - Tot]] /* * Hier wird von den Charsets das Bild eines bewusstlos am Boden liegendem * Alex gezeigt */ |
[Ereignisseite
3][ENTER-Taste][Variable [Held #1]>=[2]] /* * Hier wird von den Charsets das Bild einer normal aussehenden * Annie gezeigt */ |
[Ereignisseite
4][ENTER-Taste][Variable [Held #1]>=[2]][Schalter [Held 1 - Tot]] /* * Hier wird von den Charsets das Bild einer bewusstlos am Boden liegendem * Annie gezeigt */ |
Nun geht es noch darum, ohne irgendwelche Verzögerungen die Helden, die bereits bewusstlos (tot) sind, auch als solche im SKS anzeigen zu lassen (Ihr erinnert euch: Sie sind bewusstlos, wenn der Schalter "Held X - Tot" auf AN steht; X steht für die Nummer des Helden im SKS). Erinnert euch noch etwas weiter an das Kapitel [Einstieg und Verlassen des SKS] zurück. Dort wurden zwei "Common Events/Häufig benötigte Ereignisse" angelegt, die den Helden ihre abnormen Zustände abnehmen und Nummern in Variablen schreiben und am Ende aus diesen Nummern den Helden die abnormen Zustände wieder zuweisen.
![]() |
Zuerst widmen wir uns dem "Common Event/Häufig benötigtem Ereignis", das
ihr "Conditions Remove" genannt habt
|
||||
![]() |
Zuletzt widmen wir uns noch dem "Common Event/Häufig benötigtem Ereignis",
das ihr "Conditions - Add" genannt habt. Hier passiert eigentlich
das zuvor gemachte, nur umgekehrt
|
Auf eine MML-Darstellung wird aufgrund der Einfachheit der Ereiterung der beiden genannten Ereignisse verzichtet und gleich zu den Codebeispielen übergegangen:
Ersetzt yyy1 durch die Nummer der Variable, die direkt nach der Variable
"Zustände No." folgt
Die Erweiterungen sind fett hervorgehoben
Im englischem Maker |
<>Change Var: Var[xxx1: Zustände No]
(Set)-yyy1 <>If Alex is in the party <>If Alex==>Tot is Condition <>Condition: (Alex's Tot (Rem) <>Change Var: [Var[xxx1]] (Set)-1 <> :Else Case <>If Alex==>Vergiftet is Condition <>Condition: (Alex's Vergiftet (Rem) <>Change Var: [Var[xxx1]] (Set)-2 <> :End Case <> :End Case <>Change Var: Var[xxx1: 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[xxx1]] (Set)-1 <> :Else Case <>If Annie==>Vergiftet is Condition <>Condition: (Annie's Vergiftet (Rem) <>Change Var: [Var[xxx1]] (Set)-2 <> :End Case <> :End Case <>Change Var: Var[xxx1: Zustände No] (+)-1 <> :End Case <>If var(xxxa: Zustand - Held 1) 1 <>Change Switch: Var[aaa1: Held 1 - Tot] Switch ON <> :End Case <>If var(xxxb: Zustand - Held 2) 1 <>Change Switch: Var[aaa2: Held 2 - Tot] Switch ON <> :End Case <>If var(xxxc: Zustand - Held 3) 1 <>Change Switch: Var[aaa3: Held 3 - Tot] Switch ON <> :End Case <>If var(xxxd: Zustand - Held 4) 1 <>Change Switch: Var[aaa4: Held 4 - Tot] Switch ON <> :End Case <> |
Im deutschem Maker (V1.10c) |
<>Var ändern: [xxx1: Zustände No]Wert,
yyy1 <>Bedingung: Alex ist in Patrie <>Bedingung: Alex-Tot (Zustand) <>Zustand: Alex Gefallen Abbuch <>Var ändern:[V[xxx1]]Wert, 1 <> :Ansonsten <>Bedingung: Alex-Vergiftet (Zustand) <>Zustand: Alex Vergiftet Abbruch <>Var ändern:[V[xxx1]]Wert, 2 <> :End Fall <> :End Fall <>Var ändern: [xxx1: Zustände No]+, 1 <> :End Fall <>Bedingung: Annie ist in Patrie <>Bedingung: Annie-Tot (Zustand) <>Zustand: Annie Gefallen Abbuch <>Var ändern:[V[xxx1]]Wert, 1 <> :Ansonsten <>Bedingung: Annie-Vergiftet (Zustand) <>Zustand: Annie Vergiftet Abbruch <>Var ändern:[V[xxx1]]Wert, 2 <> :End Fall <> :End Fall <>Var ändern: [xxx1: Zustände No]+, 1 <> :End Fall <>Bedingung: Varb[xxxa: Zustand - Held 1) 1 <>Schalter ändern: [aaa1: Held 1 - Tot]-[AN] <> :End-Fall <>Bedingung: Varb[xxxb: Zustand - Held 2) 1 <>Schalter ändern: [aaa2: Held 2 - Tot]-[AN] <> :End-Fall <>Bedingung: Varb[xxxc: Zustand - Held 3) 1 <>Schalter ändern: [aaa3: Held 3 - Tot]-[AN] <> :End-Fall <>Bedingung: Varb[xxxd: Zustand - Held 4) 1 <>Schalter ändern: [aaa4: Held 4 - Tot]-[AN] <> :End-Fall |
Die Erweiterungen sind fett hervorgehoben
Im englischem Maker |
<>If Switch(aaa1: Held 1 - Tot) is ON <>Change Var: Var[xxxa: Zustand - Held 1] (Set)-1 <> :End Case <>If Switch(aaa2: Held 2 - Tot) is ON <>Change Var: Var[xxxb: Zustand - Held 2] (Set)-1 <> :End Case <>If Switch(aaa3: Held 3 - Tot) is ON <>Change Var: Var[xxxc: Zustand - Held 3] (Set)-1 <> :End Case <>If Switch(aaa4: Held 4 - Tot) is ON <>Change Var: Var[xxxd: Zustand - Held 4] (Set)-1 <> :End Case <>If Var(xxxa: Zustand - Held 1) 1 <>Condition: (V[Held #1]) Tot (Add) <> :Else Case <>If Var(xxxa: Zustand - Held 1) 2 <>Condition: (V[Held #1]) Vergiftet (Add) <> :End Case <> :End Case <> <>If Var(xxxb: Zustand - Held 2) 1 <>Condition: (V[Held #2]) Tot (Add) <> :Else Case <>If Var(xxxb: Zustand - Held 2) 2 <>Condition: (V[Held #2]) Vergiftet (Add) <> :End Case <> :End Case <> <>If Var(xxxc: Zustand - Held 3) 1 <>Condition: (V[Held #3]) Tot (Add) <> :Else Case <>If Var(xxxc: Zustand - Held 3) 2 <>Condition: (V[Held #31]) Vergiftet (Add) <> :End Case <> :End Case <> <>If Var(xxxd: Zustand - Held 4) 1 <>Condition: (V[Held #4]) Tot (Add) <> :Else Case <>If Var(xxxd: 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:Schalter[aaa1: Held 1 -
Tot]- AN <>Var. ändern: [xxxa: Zustand - Held 1]Wert, 1 <> :End-Fall <>Bedingung:Schalter[aaa2: Held 2 - Tot]- AN <>Var. ändern: [xxxb: Zustand - Held 2]Wert, 1 <> :End-Fall <>Bedingung:Schalter[aaa3: Held 3 - Tot]- AN <>Var. ändern: [xxxc: Zustand - Held 3]Wert, 1 <> :End-Fall <>Bedingung:Schalter[aaa4: Held 4 - Tot]- AN <>Var. ändern: [xxxd: Zustand - Held 4]Wert, 1 <> :End-Fall <>Bedingung: Varb[xxxa: Zustand - Held 1]-1 <>Zustand: V[Held #1]->TotZustand <> :Ansonsten <>Bedingung: Varb[xxxa: Zustand - Held 1]-2 <>Zustand: V[Held #1]->VergiftetZustand <> :End Fall <> :End Fall <> <>Bedingung: Varb[xxxb: Zustand - Held 2]-1 <>Zustand: V[Held #2]->TotZustand <> :Ansonsten <>Bedingung: Varb[xxxb: Zustand - Held 2]-2 <>Zustand: V[Held #2]->VergiftetZustand <> :End Fall <> :End Fall <> <>Bedingung: Varb[xxxc: Zustand - Held 3]-1 <>Zustand: V[Held #3]->TotZustand <> :Ansonsten <>Bedingung: Varb[xxxc: Zustand - Held 3]-2 <>Zustand: V[Held #3]->VergiftetZustand <> :End Fall <> :End Fall <> <>Bedingung: Varb[xxxc: Zustand - Held 4]-1 <>Zustand: V[Held #4]->TotZustand <> :Ansonsten <>Bedingung: Varb[xxxc: 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 auf eurer Kampfsystemkarte die Gegner und Helden platziert, die gegeneinander kämpfen werden. Dabei habt ihr (wenn ihr nach unserem gesamtem Beispiel vorgegangen seid) drei CharSet-Gegner, einen Picture-Gegner und 4 CharSet-Helden angelegt.