S
t
a
r
t
Diary
Diary
Download egg-O-shOOter
Download
How to create your own egg-O-shOOter ?
Insight
Frequently asked questions
Questions?
egg-O-shOOter Food
Food
Links
Links
I
m
p
r
i
n
t
Klick hier für die deutschsprachige Version.

At this column you can learn to create your own egg-O-shOOter.
<<<     The art of leaving out     >>>

Until now we always used the whole text block of objects to define them. Particularly when defining child objects there are often just a few new variables given. What happens if the text lines defining those insignificant variables are deleted?
Well, the standard values or the coordinates of the parent object are used.
The standard values are:

#1#
ObjectNumber=? An object number has to be given, there is no standard value!
ObjectFront=1
ObjectStartActive=0
ObjectTexture=-1 If no texture is defined and there is no parent object, the here given object will NOT be activated.
ObjectF=-1
ObjectD=-1
ObjectSecMin=-1
ObjectSecMax=-1 No time event is triggered
ObjectConnect=-1 Object is not connected
ObjectKoordPre=-1 No coordinates are assumed
ObjectHitDirection=0
ObjectXMin=0
ObjectXMax=0
ObjectYMin=0
ObjectYMax=0
ObjectDMin=0
ObjectDMax=0 Diameter 0 inhibits the drawing of the object
ObjectAMin=0
ObjectAMax=0
ObjectVXMin=0
ObjectVXMax=0
ObjectVYMin=0
ObjectVYMax=0
ObjectVRotMin=0
ObjectVRotMax=0
ObjectRotAxis=3 Rotation around Z-Axis
ObjectVGrowMin=0
ObjectVGrowMax=0
ObjectGravMin=0
ObjectGravMax=0
ObjectMoveXMin=-300
ObjectMoveXMax=+300
ObjectMoveYMin=-300
ObjectMoveYMax=+300
ObjectMoveAMin=-360
ObjectMoveAMax=+360
ObjectMoveRMin=0
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=0
ObjectHitSound= No sound
ObjectAppearSound= No sound
ObjectHitTextEnglish=
ObjectHitTextGerman=

The simplest way to save text, is to leave the lines with the fitting standard values. Looking at static objects you can leave the lines from ObjektVXMin to ObjectMoveRMax, because no speed or rotation axis is needed. If no time event and no bonuses are needed, those lines can be cut, too.
Let's use the exhaust hood, whereat just the object number, the texture, the layer and the X- and Y-coordinates are needed. Not to forget the activation at game start and a sound while being hit. To define the exhaust hood we need the following lines:

#1#
ObjectNumber=1       #1#Dunstabzugshaube / Exhaust hood
ObjectStartActive=1
ObjectTexture=9
ObjectXMin=-200
ObjectXMax=+200
ObjectYMin=+170
ObjectYMax=+170
ObjectDMin=190
ObjectDMax=190
ObjectHitSound=objecthit005

Looks much better. Static objects can be defined much faster by leaving unnecessary lines.
Moving objects need more lines to be defined, but whenever there are child objects defined, many lines may be left out. Let's define one bouncing egg whereat three flys are coming out of when being hit:
Not used for the egg are the variables ObjectFront, ObjectSecMin/Max, ObjectConnect, ObjectKoordPre, ObjectHitDirection, ObjectAMin/Max (because of the fact that the egg is rotating, it may start at the angle of 0 degrees), ObjectRotAxis, ObjectVGrowMin/Max, ObjectGravMin/Max, ObjectMoveRMin/Max, ObjectMoveType, ObjectType, ObjectBenefitMin/Max, ObjectMirror, ObjectMovePointing, ObjectAppearSound and ObjectHitTextEnglish/German.

#1#
ObjectNumber=2       #1#Ei (Rot) / Egg (Red)
ObjectFront=1
ObjectStartActive=1
ObjectTexture=98
ObjectF=H3,H4,H5
ObjectD=H2
ObjectXMin=-800
ObjectXMax=+800
ObjectYMin=-170
ObjectYMax=+200
ObjectDMin=20
ObjectDMax=20
ObjectVXMin=100
ObjectVXMax=200
ObjectVYMin=100
ObjectVYMax=200
ObjectVRotMin=100
ObjectVRotMax=200
ObjectMoveXMin=-800
ObjectMoveXMax=+800
ObjectMoveYMin=-200
ObjectMoveYMax=+200
ObjectHitSound=objecthit014

Adjust the flys to the direction of moving and assume new speed values. Like before, the flies should be deflected by shots and there should be a sound if a fly was hit. You need the following blocks:

ObjectNumber=3       #1#Fliege Nummer 1 / Fly number 1
ObjectTexture=11/50,12/50
ObjectF=-1
ObjectD=-1
ObjectKoordPre=2
ObjectHitDirection=1
ObjectVXMin=100
ObjectVXMax=200
ObjectVYMin=100
ObjectVYMax=200
ObjectType=1
ObjectMovePointing=1
ObjectHitSound=objecthit033


ObjectNumber=4       #1#Fliege Nummer 2 / Fly number 2
ObjectTexture=11/50,12/50
ObjectF=-1
ObjectD=-1
ObjectKoordPre=2
ObjectHitDirection=1
ObjectVXMin=100
ObjectVXMax=200
ObjectVYMin=100
ObjectVYMax=200
ObjectType=1
ObjectMovePointing=1
ObjectHitSound=objecthit033


ObjectNumber=5       #1#Fliege Nummer 3 / Fly number 3
ObjectTexture=11/50,12/50
ObjectF=-1
ObjectD=-1
ObjectKoordPre=2
ObjectHitDirection=1
ObjectVXMin=100
ObjectVXMax=200
ObjectVYMin=100
ObjectVYMax=200
ObjectType=1
ObjectMovePointing=1
ObjectHitSound=objecthit033

Therewith our five objects are defined by a clearly fewer number of text lines.
Screenshot egg-O-shOOter


<<<Back to 'conditioned branching'          Continue with frontside - backside>>>