Englische Version















Mit den Compound Parts werden z.B. Automaten gemacht.
Der Zweck der Compound Parts ist es, dass man ihnen verschiedene zusätzliche Teile hinzufügen kann. Zur Auswahl stehen unter anderem Buttons, die einen Event auslösen, wenn sie gedrückt werden, Texte, Animationen.
Alle Compound Objekte werden initiiert, indem man den Befehl NEW: COMP benutzt und mit dem Befehl PAT: die entsprechenden extra Teile hinzufügt. Bei dem Erstellen des Objekts wird NEW: COMP als part 0 benannt, so dass man bei den zusätzlichen Teilen mit 1 beginnen sollte.
Die Teile eines Compound Objektes müssen nicht die selbe Sprite-Datei benutzten. Sie sind simple Objekte, also haben Attribute, Verhalten, etc.
Teile werden mit dem Befehl PAT: KILL entfernt.
DULL Teile

Als erstes erkläre ich hier die Verwendung von DULL Teilen.
DULL Teile werden verwendet um bestimmte Flächen auf einem Objekt zu erzeugen, die andauend animiert sein können.

Die Sprite-Datei ist komplett von der Medizin-Maschine übernommen.
Ich hatte es erst mit eigenen Bildern versucht, aber nachdem ich mich 2 Tage damit abgequällt hatte und der Agent immer noch nicht ging, gab ich es auf.
Komischerweise hat es mit der Medizin-Maschine Sprite-Datei sofot geklappt. Weiß immer noch nicht wieso.

Unten folgt die cos-Datei mit den Erklärungen. Ich habe nur neue Befehle erläutert. Die anderen findet ihr schon bei dem Honigtopf Tutorial
Wenn man sich das Tutorial durchliest ist es am besten, die Sprite-Datei offen zu haben, damit man immer gucken kann, welches Bild jetzt gemeint ist und welche Animationen stattfinden. Es ist dann viel leichter alles zu verstehen (geht mir zumindest so).

inst
new: comp 2 21 20403 "medm" 23 0 5000
pat: dull 1 "medm" 1 57 71 0
pat: dull 2 "medm" 4 0 35 0
pat: dull 3 "medm" 10 9 38 0
attr 199
clac 0
elas 0
fric 100
perm 60
accg 5
setv va00 game "CreatorX"
setv va01 game "CreatorY"
doif va00 eq 0 and va01 eq 0
    setv va00 5687
    setv va01 3670
endi
mvsf va00 va01

scrp 2 21 20403 1
part 1
anim [0 1 255]
clac 1
endm

scrp 2 21 20403 2
part 2
anim [0 1 2 3 4 5 4 3 2 1 255]
clac 2
endm

scrp 2 21 20403 0
part 3
anim [0 1 2 3 4 5 6 7 8 9 10 9 8 7 6 5 4 3 2 1 255]
clac 3
endm

scrp 2 21 20403 3
part 1
pose 0
part 2
pose 0
part 3
pose 0
clac 0
endm

rscr
enum 2 21 20403
kill targ
next
scrx 2 21 20403 1
scrx 2 21 20403 2
scrx 2 21 20403 0
scrx 2 21 20403 3

new: comp 2 21 20403 "medm" 23 0 5000
Der Agent wird installiert. Wie oben schon erwähnt ist er nun kein simpler Agent mehr (simp), sondern ein Commpound Part. Also steht nach dem new Befehl comp. Als nächstes folgen wieder die Family- Genus- und Skriptnummer, die Sprite-Datei und Anzahl der Bilder, beginnendes Bild sowie Ebene.

pat: dull 1 "medm" 1 57 71 0
Nun folgt das erste DULL Teil. Es ist der rote Knopf, mit dem man eigentlich Medizinflaschen ausgibt.
Um DULL Teile dem Agenten hinzuzufügen sind folgende Angaben wichtig:
pat: DULL, DULL-Nummer, Sprite-Datei, beginnendes Bild, x-Koordinate auf dem Agent, y-Koordinate auf dem Agent, Eben in Bezug auf den Agenten.
Unser erstes DULL Teil nutzt also die Bilder ab 1 beginnend (2. Bild in der Sprite-Datei), hat die Koordinaten (57, 71) und die Eben 0 in Bezug zum Agenten.
Das mit der Ebene in Bezug zum Agenten hab ich noch nicht ganz raus. Ich geb immer 0 an und es funktioniert.

pat: dull 2 "medm" 4 0 35 0
Dieses DULL Teil ist der Balken, der angibt, wieviel Energie der Medizinmaschine noch zur Verfügung steht und es hat die gleichen Bedingungen wie DULL Teil Nummer 1.
Hier nutzt es die Bilder der Sprite-Datei ab Nummer 4 und hat die Koordinaten (0, 35).

pat: dull 3 "medm" 10 9 38 0
Dieses DULL Teil ist die Fläche, in der die Medizinflaschen ausgegeben werden und es hat die gleichen Bedingungen wie DULL Teil Nummer 1.
Hier nutzt es die Bilder der Sprite-Datei ab Nummer 10 und hat die Koordinaten (9, 38).

clac 0
Dieser Befehl bewirkt, dass beim nächsten Draufklicken auf den Agenten mit der Maus ein Activate 1 Event ausgeführt wird. Man kann festlegen, was bei diesem Event stattfinden soll, indem man scrp family, genus, skriptnummer, 1 bearbeitet (mehr dazu siehe unten, da dieser Befehl erklärt wird).

scrp 2 21 20403 1
Dies ist also besagter Activate 1 Event. Er wird bei diesem Agenten aufgerufen, wenn man das erste Mal auf den Agenten klickt.

part 1
Mit part Nummer sagt man, welches Teil man benutzen will. In unserem Fall ist dies das erste DULL Teil (der rote Knopf).

anim [0 1 255]
Mit dem Befehl anim wird ein Teil animiert. In der rechteckigen Klammer gibt man an, welche Bilder nacheinander angezeigt werden sollen.
Animiert man Teile, ist Bild 0 immer das Bild in der Sprite-Datei, dass man bei dem Befehl pat: DULL als beginnendes Bild angegeben hat.
Mit 255 startet man eine Endlosschleife. Der anim Befehl wird immer wieder ausgeführt.
Hier am konkreten Fall sieht das so aus, dass 0 das zweite Bild in der Sprite-Datei ist (Knopf aus) und 1 das dritte (Knopf an). Guckt euch die Sprite-Datei an, dann wißt ihr was ich meine. Beide Bilder werden immer wieder wiederholt, so dass der Knopf dauernd blinkt.
Ich habe die anderen anim Befehle nicht erklärt, da diese Erklärung reichen müßte, damit ihr auch die anderen versteht. Eine andere Hilfe ist es sich den Agenten im Spiel anzuschauen, was er nach welchem Klick macht.

clac 1
Dieser Befehl bewirkt, dass nach erneutem Klicken auf den Agenten wird der Activate 2 Event ausgeführt.


Zusammenfassung Activate 1 Event:
Der rote Knopf wird ausgewählt und in einer Endlosschleife animiert. Man bewirkt durch den Befehl clac 1, dass bei erneutem Klick ein anderes Event aufgerufen wird. Würde man clac 1 weglassen, würde immer nur der rote Knopf animiert werden und die anderen Teile würden unbenutzt bleiben.


scrp 2 21 20403 2
Dies ist der Activate 2 Event.

part 2
Das DULL Teil mit der Nummer 2 (die Energieanzeige) wird ausgewählt.

clac 2
Nach erneutem Klicken auf den Agenten wird der Deactivate Event ausgeführt.


Zusammenfassung Activate 2 Event:
Die Energieanzeige wird ausgewählt und in einer Endlosschleife animiert. Durch den Befehl clac 2 wird bewirkt, dass bei erneutem Klicken ein anderes Event aufgerufen wird.


scrp 2 21 20403 0
Der Deactivate Event. Lasst euch durch den Namen nicht verwirren. Es bedeutet nicht, dass dieses Event den Agenten deaktiviert. Man kann damit alles mögliche machen, es kommt nur darauf an, was in dem Deactivate Event steht.

part 3
Das DULL Teil mit der Nummer 3 (Feld, in dem die Medizinflaschen herauskommen) wird ausgewählt.

clac 3
Nach erneutem Klicken auf den Agenten wird der Hit Event ausgeführt.


Zusammenfassung Deactivate Event:
Das Feld, in dem die Medizinflaschen erscheinen wird ausgewählt und in einer Endlosschleife animiert.


scrp 2 21 20403 3
Der Hit Event

pose 0
Mit diesem Befehl wird das ausgewählte Teil (muss man vorher immer angeben) in die Bildposition 0 zurückversetzt.


Zusammenfassung Hit Event:
Nacheinander werden alle Teile ausgewählt und auf Bilddatei 0 zurückgesetzt. Dies hat den Effekt, dass alle Animationen stoppen und der Agent wieder aussieht wie am Anfang.
Am Ende steht der Befehl clac 0, den wir auch schon in dem Installationsskript gesehen haben. Damit wird beim nächsten Klick auf den Agenten wieder der Activate 1 event ausgeführt und alles beginnt von vorne.


rscr
Nun folgt das Uninstall Skript. Wurde auch schon im Honig-Tutorial erklärt.

Noch wichtig zu wissen ist, dass man immer angeben muss, auf welches Teil des Agenten man sich bezieht (part Nummer) wenn man einen Animationsbefehl benutzt (bei diesem Agenten waren das anim und pose).
Eine Teil zu animieren hat keinen Effekt auf andere Teile.

Mit den Koordinaten von den DULL Teilen hatte ich anfangs etwas Probleme. Am besten ihr benutzt ein Grafikprogramm (ich habe Paint Sho Pro 5 benutzt) und fahrt mit der Maus über das Bild. Bei Paint Shop Pro weren dann unten rechts die Koordinaten angezeigt. Müßte eigentlich auch in jedem anderen Grafikprogramm der Fall sein.
Die Koordianten für das DULL Teil beginnen in der linken oberen Ecke, also dort wird es am Agenten angezeigt.
In der Sprite-Datei sind auch schwarze Bilder in der Größe der Teile. Diese sind bei jedem DULL Teil Bild Nr. 0, denn schwarz wird im Spiel als transparent dargestellt.
Medizin Maschine

Hier ist die Medizin-Maschine, die oben erklärt ist zum Downloaden. Sie gefällt mir noch nicht so ganz, muss noch einiges dran machen, deswegen ist sie noch nicht bei Agenten. Aber damit ihr erstmal was zum besseren Verständnis habt, hab ich sie hier reingestellt.

Download
BUTT Teile

inst
new: comp 2 21 20404 "blbx" 22 0 5000
pat: dull 1 "medm" 1 57 71 0
pat: dull 2 "medm" 4 0 35 0
pat: dull 3 "medm" 10 9 38 0
attr 199
clac 0
elas 0
fric 100
perm 60
accg 5
setv va00 game "CreatorX"
setv va01 game "CreatorY"
doif va00 eq 0 and va01 eq 0
    setv va00 5687
    setv va01 3670
endi
mvsf va00 va01

scrp 2 21 20403 1
part 1
anim [0 1 255]
clac 1
endm

scrp 2 21 20403 2
part 2
anim [0 1 2 3 4 5 4 3 2 1 255]
clac 2
endm

scrp 2 21 20403 0
part 3
anim [0 1 2 3 4 5 6 7 8 9 10 9 8 7 6 5 4 3 2 1 255]
clac 3
endm

scrp 2 21 20403 3
part 1
pose 0
part 2
pose 0
part 3
pose 0
clac 0
endm

rscr
enum 2 21 20403
kill targ
next
scrx 2 21 20403 1
scrx 2 21 20403 2
scrx 2 21 20403 0
scrx 2 21 20403 3

Zum Anfang Letztes Update dieser Seite: 14.09.2003