Форум программистов, компьютерный форум, киберфорум
Наши страницы
ActionScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Ivan76russ
0 / 0 / 2
Регистрация: 30.09.2015
Сообщений: 24
1

При движении заносит объект

09.01.2018, 17:56. Просмотров 862. Ответов 5
Метки нет (Все метки)

ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
var Y = mouseY-object.y;
var X = mouseX-object.x;
var rot = Math.atan2(Y, X);
var grad = rot*180/Math.PI;
object.rotation = grad;
var radians:Number = object.rotation*Math.PI/180;
var vectorX:Number = Math.cos(radians);
var vectorY:Number = Math.sin(radians);
var speed:Number = 0.09;
this.addEventListener(Event.ENTER_FRAME, frameHandler);
function frameHandler(event:Event):void {
object.x += speed*vectorX;
object.y += speed*vectorY; } }
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.01.2018, 17:56
Ответы с готовыми решениями:

Тормозит при движении мышки
Уважаемые люди, прошу помочь. Решил сделать сайт на основе некого шаблона,...

Как устранить подёргивание при движении.
В чём может быть причина этого недоразумения?

Менять координату при движении мыши
Я до этого работал только в AS2 и там при движении мыши по оси Х координата...

Как избежать смены 3d вида при движении объектов?
если применить к объекту rotationX,Y,Z - и потом изменять его координаты - то...

Drag and drop при движении мышкой за пределами сцены
Подскажите как достичь такого же эффекта перетаскивания как на данном примере...

5
TanaTiX
Модератор
2796 / 1650 / 168
Регистрация: 19.02.2011
Сообщений: 6,005
Завершенные тесты: 2
09.01.2018, 18:00 2
А в чем вопрос?
0
Ivan76russ
0 / 0 / 2
Регистрация: 30.09.2015
Сообщений: 24
09.01.2018, 18:07  [ТС] 3
Как сделать что бы не заносило? И все было круто) Управляемо так сказать
0
TanaTiX
Модератор
2796 / 1650 / 168
Регистрация: 19.02.2011
Сообщений: 6,005
Завершенные тесты: 2
09.01.2018, 20:58 4
Лучший ответ Сообщение было отмечено Ivan76russ как решение

Решение

Думаю, примерно так. Код не причесывал.
ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import flash.events.Event;
 
 
var speed: Number = 1.0;
this.addEventListener(Event.ENTER_FRAME, frameHandler);
function frameHandler(event: Event): void {
    var Y = mouseY - object.y;
    var X = mouseX - object.x;
    var rot = Math.atan2(Y, X);
    var grad = rot * 180 / Math.PI;
    object.rotation = grad;
    var radians: Number = object.rotation * Math.PI / 180;
    var vectorX: Number = Math.cos(radians);
    var vectorY: Number = Math.sin(radians);
    object.x += speed * vectorX;
    object.y += speed * vectorY;
}
1
Ivan76russ
0 / 0 / 2
Регистрация: 30.09.2015
Сообщений: 24
10.01.2018, 01:23  [ТС] 5
Спасибо =),но с врагами такое не работает,вот сейчас это:
ActionScript 3
1
2
3
4
5
6
7
8
9
stage.addEventListener(Event.ENTER_FRAME, moveEnemy);
function moveEnemy(e:Event){
var xmov = (object.x-enemy.x)/100;
var ymov = (object.y-enemy.y)/100;
var angle = Math.atan2(ymov,xmov)*180/Math.PI;
enemy.x += xmov + 3;
enemy.y += ymov + 3;
enemy.rotation = angle; 
}
0
TanaTiX
Модератор
2796 / 1650 / 168
Регистрация: 19.02.2011
Сообщений: 6,005
Завершенные тесты: 2
12.01.2018, 01:53 6
Цитата Сообщение от Ivan76russ Посмотреть сообщение
с врагами такое не работает
все работает
ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import flash.events.Event;
 
 
var speed: Number = 1.0;
this.addEventListener(Event.ENTER_FRAME, frameHandler);
function frameHandler(event: Event): void {
    var Y = object.y - enemy.y;
    var X = object.x - enemy.x;
    var rot = Math.atan2(Y, X);
    var grad = rot * 180 / Math.PI;
    object.rotation = grad;
    var radians: Number = object.rotation * Math.PI / 180;
    var vectorX: Number = Math.cos(radians);
    var vectorY: Number = Math.sin(radians);
    enemy.x += speed * vectorX;
    enemy.y += speed * vectorY;
}
0
12.01.2018, 01:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.01.2018, 01:53

Зафиксировать объект при создании баннера-растяжки
Уважаемые друзья, пожалуйста, помогите решить проблему. Создан резиновый...

При передвижении мыши объект перестает двигаться
Здравствуйте, ситуация такая: у меня лента, выходящая за пределы экрана справа...

Alternativa3d не отображается объект при добавлении через обработчик
В конструкторе Main() последняя строка (закоментрована) добавляет на сцену...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru