S
t
a
r
t
Tagebuch
Tagebuch
egg-O-shOOter herunterladen
Herunterladen
Wie funktioniert egg-O-shOOter ?
Einblick
Häufig gestellte Fragen
Fragen?
egg-O-shOOter Futter
Futter
Links
Verweise
I
m
p
r
e
s
s
u
m
Click here for the english version.

In dieser Rubrik könnt ihr die Umgestaltung des egg-O-shOOters nach euren eigenen Vorstellungen erlernen.
<<<     Zeitsteuerung     >>>

Treffer- und Bereichs-Ereignisse habt ihr jetzt kennengelernt, was noch fehlt ist die Zeitsteuerung. Setzten könnt ihr diesen Ablauf mit den Variablen ObjectSecMin/Max. Wird ein Objekt aktiviert, wird ein Zeitwert zwischen ObjectSecMin und ObjectSecMax ausgewürfelt und die Zeit beginnt zu ticken. Nach Ablauf der ausgewürfelten Zeit tritt das entsprechende Ereignis ein (gekennzeichnet mit dem Buchstaben 'T' für 'Time'). Somit können wir unserer Fliege z.B. alle zweieinhalb Sekunden eine Richtungsänderung befehlen. Dazu benötigen wir zwei Fliegen, die abwechselnd aktiviert bzw. deaktiviert werden.
Beachtet bei den folgenden Zeilen die Variablen ObjectX/YMin/Max von Fliege 1. Zu Beginn des Spieles soll die Fliege auf dem Herd sitzen, weswegen wir ObjectXMin/Max und ObjectYMin/Max entsprechend gesetzt haben. Nach 2.5Sekunden wird Fliege 2 mit den Koordinaten von Fliege 1 aktiviert (ObjectKoordPre=1). Nach weiteren 2.5 Sekunden soll nun Fliege 1 an den Koordinaten von Fliege 2 erscheinen. Damit die Werte von ObjectXMin/Max und ObjectYMin/Max nicht neu initialisiert werden, muss, wie ich euch bereits einige Seiten zuvor erklärt habe, das Gleichheitszeichen durch den Unterstrich '_' ersetzt werden.

#1#
ObjectNumber=1       #1#Fliege Nr.1 / Fly No. 1
ObjectFront=1
ObjectStartActive=1
ObjectTexture=11/70,12/30
ObjectF=T2
ObjectD=-1
ObjectSecMin=2.5
ObjectSecMax=2.5
ObjectConnect=-1
ObjectKoordPre=a2
ObjectHitDirection=1
ObjectXMin_-100
ObjectXMax_-100
ObjectYMin_-160
ObjectYMax_-160
ObjectDMin=20
ObjectDMax=20
ObjectAMin=0
ObjectAMax=0
ObjectVXMin=80
ObjectVXMax=100
ObjectVYMin=50
ObjectVYMax=100
ObjectVRotMin=0
ObjectVRotMax=0
ObjectRotAxis=3
ObjectVGrowMin=0
ObjectVGrowMax=0
ObjectGravMin=0
ObjectGravMax=0
ObjectMoveXMin=-800
ObjectMoveXMax=+800
ObjectMoveYMin=-200
ObjectMoveYMax=+220
ObjectMoveAMin=-360
ObjectMoveAMax=+360
ObjectMoveRMin=1
ObjectMoveRMax=1000
ObjectMoveType=3
ObjectType=1
ObjectBenefitMin=*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0
ObjectBenefitMax=*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0
ObjectMirror=0
ObjectMovePointing=1
ObjectHitSound=
ObjectAppearSound=
ObjectHitTextEnglish=
ObjectHitTextGerman=

#1#
ObjectNumber=2       #1#Fliege Nr. 2 / Fly No. 2
ObjectFront=1
ObjectStartActive=0
ObjectTexture=11/70,12/30
ObjectF=T1
ObjectD=-1
ObjectSecMin=2.5
ObjectSecMax=2.5
ObjectConnect=-1
ObjectKoordPre=1
ObjectHitDirection=1
ObjectXMin_0
ObjectXMax_0
ObjectYMin_0
ObjectYMax_0
ObjectDMin=20
ObjectDMax=20
ObjectAMin=0
ObjectAMax=0
ObjectVXMin=80
ObjectVXMax=100
ObjectVYMin=50
ObjectVYMax=100
ObjectVRotMin=0
ObjectVRotMax=0
ObjectRotAxis=3
ObjectVGrowMin=0
ObjectVGrowMax=0
ObjectGravMin=0
ObjectGravMax=0
ObjectMoveXMin=-800
ObjectMoveXMax=+800
ObjectMoveYMin=-200
ObjectMoveYMax=+220
ObjectMoveAMin=-360
ObjectMoveAMax=+360
ObjectMoveRMin=1
ObjectMoveRMax=1000
ObjectMoveType=3
ObjectType=1
ObjectBenefitMin=*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0
ObjectBenefitMax=*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0,*0
ObjectMirror=0
ObjectMovePointing=1
ObjectHitSound=
ObjectAppearSound=
ObjectHitTextEnglish=
ObjectHitTextGerman=

Ihr habt das oben angegebene Beispiel gestartet?
Screenshot egg-O-shOOter

Hoppala - was ist denn da passiert? Die Fliege hat sich nach der angegebenen Zeit verdoppelt, aber nach 5 Sekunden ist keine weitere Fliege aufgetaucht!
Im Gegensatz zum Bereichs-Ereignis wird das Objekt, welches das Zeit-Ereignis ausgelöst hat nicht automatisch deaktiviert. Die Zeitvariable wird stattdessen auf den Wert -1 gesetzt, was bedeutet, dass keine weiteren Zeit-Ereignisse von diesem Objekt ausgelöst werden können. Daher erscheint nach 5 Sekunden nicht noch eine Fliege. Ein weiterer Grund, dass keine dritte Fliege auftaucht ist der, dass Fliege Nummer1 die Fliege Nummer 2 nur aktivieren kann, wenn diese nicht bereits aktiv ist! Deswegen muss Fliege Nummer 2 zuvor deaktiviert sein, was durch ObjectStartActive=0 ja schon richtig eingerichtet war.
Um unser Beispiel wie gewüscht ablaufen zu lassen, müssen wir also noch dafür sorgen, dass Fliege Nummer 1 DEaktiviert wird, wenn diese das Zeit-Ereignis ausgelöst hat und dass Fliege Nummer 2 DEaktiviert wird, wenn diese das Ereignis verusacht hat. Setzt also ObjectD=T1 bei Fliege Nummer 1 und ObjectD=T2 bei Fliege Nummer 2.

<<<Zurück zu Bereichs-Ereignisse          Weiter zu Verbundene Objekte>>>