Во Flash cc as3 я хотел бы знать, как решить проблему, с которой я столкнулся, проблема в том, что я делаю игру с перетаскиванием. Когда вы перетаскиваете объект, он движется, когда вы бросаете его, сила тяжести притягивает его к земле. Но мне нужно знать, как заставить объект не останавливаться в воздухе, а слегка двигаться по оси X, а затем приземляться, а не если вы бросите его изо всех сил, он остановится в воздухе и приземлится вместо того, чтобы изящно приземлиться ...
Вот мой код
var drag:Number = 1;
gotoAndStop(1, "Minigame-Block");
Block1.addEventListener(MouseEvent.MOUSE_DOWN, fl_ClickToDrag_4);
function fl_ClickToDrag_4(event:MouseEvent):void
{
Block1.startDrag()
gravity = 0
}
stage.addEventListener(MouseEvent.MOUSE_UP, fl_ReleaseToDrop_4);
function fl_ReleaseToDrop_4(event:MouseEvent):void
{
Block1.stopDrag();
gravity = 0.9
}
{
var gravity = 0.9;
var floor = 711.95;
Block1.y = floor;
Block1.speedY = 0;
Block1.impulsion = 10;
stage.addEventListener(Event.ENTER_FRAME, enterframe);
function enterframe(e:Event) {
Block1.speedY += gravity;
Block1.y += Block1.speedY;
if(Block1.y > floor) {
Block1.speedY = 0;
Block1.y = floor
}
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, space);
function space(e:KeyboardEvent) {
if(e.keyCode == Keyboard.SPACE) {
Block1.speedY = -Block1.impulsion
}
}
}