
Код AS3:
package
{
import flash.display.*;
public class Main extends Sprite
{
public function Main():void
{
addChild(new Body());
}
}
}
/////////////
import flash.display.*;
import flash.events.*;
class Body extends Sprite
{
public var vX:Number = 0;
public var vY:Number = 0;
private var pX:Number;
private var pY:Number;
private var damp:Number = 0.9;
private var dragging:Boolean = false;
public function Body()
{
graphics.beginFill(0x008000);
graphics.drawCircle(0, 0, 40);
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
buttonMode = true;
}
private function addedToStage(e:Event):void
{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
addEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
stage.addEventListener(MouseEvent.MOUSE_UP, mouseUp);
addEventListener(Event.ENTER_FRAME, enterFrame);
}
private function enterFrame(e:Event):void
{
if (dragging)
{
vX = stage.mouseX - pX;
vY = stage.mouseY - pY;
pX = stage.mouseX;
pY = stage.mouseY;
}
else
{
vX *= damp;
vY *= damp;
}
x += vX;
y += vY;
}
private function mouseDown(e:MouseEvent):void
{
dragging = true;
pX = stage.mouseX;
pY = stage.mouseY;
}
private function mouseUp(e:MouseEvent):void
{
dragging = false;
}
}