|
|
|
The History of Lavaplanet Game
|
|
Zu den meisten Spielen gehört eine kleine Geschichte
darüber, wie und warum es entstanden ist. So ist es
auch bei Lavaplanet. Entstanden ist dieses Spiel aus
der Fragestellung im Flashforum, wie man mit einem Mausklick
eine beschleunigte Bewegung mit Flash erzeugen kann.
Dabei sollte sich der Movieclip bei gedrückter Maustaste
nach oben bewegen, bei losgelassener Maustaste sollte
sich dieser nach unten bewegen. Das erforderliche Actionscript
für einen MC mit dem Instanznamen 'iflieger' ist hier
aufgelistet:
|
|
|
var speed=0;
var speeddelta=0.3;
iflieger.onMouseDown = function()
{
this.onEnterFrame = function()
{
speed += speeddelta;
_root.iflieger._y -= speed;
};
}
iflieger.onMouseUp = function()
{
this.onEnterFrame = function()
{
speed -= speeddelta;
_root.iflieger._y -= speed;
};
}
|
|
|
Nachdem diese Bewegung relativ einfach zu realisieren ist, fehlte nun noch eine Steuerung nach links
und nach rechts. Diese sollte über die Tastatur erfolgen. Als Steuerungstasten wurden die Pfeiltasten gewählt:
|
|
|
onClipEvent (load)
{
speedhor=0;
speedhordelta=0.2;
}
onClipEvent (enterFrame)
{
if( Key.isDown(Key.RIGHT) && (_root.onground==0))
{
speedhor+=speedhordelta;
}
else if( Key.isDown(Key.LEFT) && (_root.onground==0) )
{
speedhor-=speedhordelta;
}
_root.iflieger._x+=speedhor;
_root.ispeedver.text="V: " + _root.speed;
_root.ispeedhor.text="H: " + speedhor;
if(_root.iground.hitTest(_root.iflieger._x, _root.iflieger._y,true))
{
if( (_root.speed<-4) || (speedhor<-0.8) || (speedhor>0.8))
{
_root.istatus.text="Crash";
}
speedhor=0;
_root.speed=0;
_root.onground=1;
}
else
{
_root.istatus.text="";
_root.onground=0;
}
}
|
|
|
Gleichzeitig wird mit diesem Actionscript mittels hittest() geprüft, ob sich der MC auf
dem Boden befindet oder in der "Luft" schwebt. In zwei Textfeldern werden dann noch die horizontale und
die vertikale Geschwindigkeit angezeigt. Dies ist notwendig, damit man den Flieger auch mit
einer akzeptablen Geschwindigkeit landen kann, denn ist dieser größer als 0.8, bedeutet das,
dass der Flieger crasht!
Das Ergebnis bis dahin ist hier zu sehen:
|
|
|
Nachdem nun die Steuerung einigermaßen funktioniert, mußte die Animation optisch etwas aufgepeppt
werden. Dazu war es zunächst mal notwendig den Lander auch wie ein Landeraumfahrzeug aussehen zu lassen.
Zusätzlich sollten die Steuerdüsen beim Drücken der Steuertasten auch sichtbar sein. Die Steuerung
nach links und rechts sollte allerdings nur dann funktionieren, wenn der Lander vom Boden abgehoben hatte.
Das mußte natürlich auch für die Anzeige der Steuerdüsen gelten
|
|
|
Aufbau einer Flugstrecke und einer Kollisionserkennung des Landers mit dem
aufgebauten Labyrinth.
|
|
|
Ein zweiter Landeplatz als Ziel.
Optische Verbesserung des Landers.
Verbesserte Kollissionserkennung.
Programmierung und Anzeige einer mit der im Toleranzbereich liegenden Landegeschwindigkeit.
|
|
|
"Patentierte" analoge Anzeige der Bewegungsrichtung und der Größe der Geschindigkeit mit nur einem Zeiger.
Digitale Darstellung der Horizontal- und Vertikalgeschwindigkeit.
Optische Gestalltung der Meßinstrumente.
|
|
|
Integration der Flugzeit in die Meßinstrumente.
|
|
|
Erst hier wurde die Idee geboren, zur optischen Gestaltung Basaltsteine zu integrieren,
da sie die einfachste Möglichkeit eine Tiefe in die Oberfläche zu integrieren.
Erst dadurch entstand der Name Lavaplanet und die Idee dieses und weitere Spiele
auf der noch freien Domain Lavaplanet ins Internet zu stellen.
|
|
|
Im Laufe der folgenden Woche entstanden 9 weitere Level, die zunächst unabhängig voneinander liefen.
Um eine Gesamtzeit zu erhalten wurden diese dann hintereinandergeschaltet mit der Weitergabe der
bis dahin erzielten Gesamtzeiten der einzelnen Level.
Weiter wurden die Anzeigeinstrumente optisch verbessert, so dass eine bessere Ablesbarkeit erricht wurde.
Der Hintergrund hinter den Basaltblöcken wurde entfernt und eine Kollissionserkung nur mit den Basaltblöcken
integriert.
Und nun viel Spaß mit Lavaplanet!
|
|
|
Copyright © 2004 und Design by www.jdsolutions.de
|
|
|