2016-10-20 12 views
0

Я разработчик игры под названием «бросок» (игра доступна только как бета для бета-тестеров). Игра создается с использованием ActionScript 2.0 во Flash 8.Перетащите, легко бросьте в ActionScript 2.0

Вопрос в том, может ли кто-нибудь помочь мне с метанием кода. Что я имею в виду? Я имею в виду, что если вы перетаскиваете moviklip под названием «Ball», он просто следует за мышью, пока вы не уроните ее.

Довольно простой код:

on(press) { 
    if (_root.ThrowZone.hitTest(this)) { 
     startDrag(this); 
    } 
} 

on(release) { 
    if (_root.ThrowZone.hitTest(this)) { 
     stopDrag(); 
    } 
} 

У меня есть простой код тяжести установлен, но я скорее не показывать, так как это не «что» нужно. Я хочу, чтобы он выбрал «Бал», когда вы отпустите movieclip, я имею в виду, что он пойдет прямо с разной скоростью в зависимости от того, насколько быстро вы переместили его до того, как вы его выпустили. Я также хочу, чтобы он медленно и медленно как он встает. Я пробовал немного нарисовать свой код Gravity, меняя его и меняя его, реверсивный экстрасенс, но тогда он будет идти вверх по тому же пути, не удивительно, как вы его бросаете.

Если вам действительно нужно протестировать игру, чтобы увидеть, как она работает, скажите мне в комментарии, и я положу ссылку на нее в теме.

+0

Вместо использования AS2, почему бы вам не использовать AS3? AS3 больше подходит для разработки игр, чем AS2 –

+0

Так как сейчас у меня нет тестовой среды AS2, я могу только предположить, что вы должны вместо этого перетаскивать метательный объект, перетаскивать прозрачный целевой объект и перемещать объект бросания в направлении целевой объект на каждом enterframe. Как только щелчок будет отпущен, используйте оставшееся расстояние между ними, чтобы вычислить конечную скорость. –

ответ

0

Я бы пошел вот так. На вашей стадии (корень):

_global.$stage = this; 
var isDragging = false; 
var dragTarget = null; 
$stage.onEnterFrame = function() {  
    if(isDragging){ 
     $stage.dragTarget._x = $stage._xmouse; 
     $stage.dragTarget._y = $stage._ymouse; 
    }  
} 

Тогда на бал:

on(press) { 
    $stage.isDragging = true; 
    $stage.dragTarget = this; 
} 

on(release) { 
    $stage.isDragging = false; 
}