Добрый день, уважаемые форумцы. Я пытаюсь написать свою первую игру и никак не могу придумать, как заставить кружок прыгать. Помогите, пожалуйста. Буду весьма благодарен. Мой код показан ниже. Спасибо за внимание.

Код AS3:
package
{
import flash.display.MovieClip;
import flash.display.Shape;
import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.geom.Point;
public class Main extends MovieClip
{
private var _heroShape:Shape;
private var _heroSpeed:Point = new Point(0, 0);
private var _isLefting:Boolean = false;
private var _isRighting:Boolean = false;
private var _isUping:Boolean = false;
private static const FLOOR:Number = 400;
private static const SPEED_DELTA:Number = 1;
private static const SPEED_DAMPING:Number = 0.9;
private static const SPEED_MAX:Number = 5;
public function Main()
{
drawHero();
drawFloor();
stage.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
}
//-------------------------------------------------------------
//
// Methods
//
//-------------------------------------------------------------
private function drawHero():void
{
_heroShape = new Shape();
_heroShape.graphics.lineStyle(2);
_heroShape.graphics.drawCircle(0, -30, 30);
_heroShape.x = 275;
_heroShape.y = FLOOR;
this.addChild(_heroShape);
}
private function drawFloor():void
{
this.graphics.lineStyle(2);
this.graphics.drawPath(new <int>[ 1, 2 ], new <Number>[ 0, FLOOR, 550, FLOOR ]);
}
//-------------------------------------------------------------
//
// Event handlers
//
//-------------------------------------------------------------
private function enterFrameHandler(event:Event):void
{
_heroShape.x += _heroSpeed.x;
_heroShape.y += _heroSpeed.y;
if (_isLefting == true && Math.abs(_heroSpeed.x) < SPEED_MAX)
{
_heroSpeed.x += -SPEED_DELTA;
if (_heroSpeed.x < -SPEED_MAX)
{
_heroSpeed.x = -SPEED_MAX;
}
}
else if (_isRighting == true)
{
_heroSpeed.x += SPEED_DELTA;
if (_heroSpeed.x > SPEED_MAX)
{
_heroSpeed.x = SPEED_MAX;
}
}
else
{
_heroSpeed.x *= SPEED_DAMPING;
}
}
private function keyDownHandler(event:KeyboardEvent):void
{
switch (event.keyCode)
{
case 37:
{
_isLefting = true;
break;
}
case 39:
{
_isRighting = true;
break;
}
case 38:
{
_isUping = true;
break;
}
}
}
private function keyUpHandler(event:KeyboardEvent):void
{
switch (event.keyCode)
{
case 37:
{
_isLefting = false;
break;
}
case 39:
{
_isRighting = false;
break;
}
case 38:
{
_isUping = false;
break;
}
}
}
}
}