Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Закрытая тема
Старый 18.08.2012, 19:46
Nace вне форума Посмотреть профиль Отправить личное сообщение для Nace Найти все сообщения от Nace
  № 1  
Nace

Регистрация: Oct 2009
Сообщений: 52
Attention Проблемы с stage.addEventListener

Здравствуйте! Я раньше никогда не работал с AS3, только AS2. И для того, чтобы сделать, например передвижение объекта, по зажатой клавише, нужно было создать таймер и использовать оператор:
Цитата:
if(key.isDown(key.DOWN)){
...
А как я понял, это теперь не работает, теперь нужно писать:
Цитата:
stage.addEventListener(keyboardEvent.KEY_DOWN, keyPressed);
function keyPressed(event:keyboard){
Код по нажатию клавиши он перемещаеться
}
Но когда я запускаю, он делает сначало анимацию движения, потом катит его, а когда отпускаешь кнопку сного анимацию. А нужно всё одновременно делать. Помогите пожалуйста!

Старый 18.08.2012, 20:15
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 2  
Krusty

Регистрация: Jul 2007
Сообщений: 393
вместо
Код:
Код по нажатию клавиши он перемещаеться
пишите
Код:
trace(event);
и в среде разработки смотрите, сколько раз срабатывает и когда.

Старый 18.08.2012, 20:22
MINASTIS вне форума Посмотреть профиль Отправить личное сообщение для MINASTIS Посетить домашнюю страницу MINASTIS Найти все сообщения от MINASTIS
  № 3  
MINASTIS
 
Аватар для MINASTIS

Регистрация: Jan 2006
Адрес: Сургут
Сообщений: 897
Отправить сообщение для MINASTIS с помощью Skype™
Цитата:
теперь нужно писать:
Event не keyboard а KeyboardEvent.

А так да. Все правильно. Остальное - непонятная проблема (какая анимация? что катит? что, где одновременно?), если хотите совета, пишите подробней.

Старый 18.08.2012, 20:50
Nace вне форума Посмотреть профиль Отправить личное сообщение для Nace Найти все сообщения от Nace
  № 4  
Nace

Регистрация: Oct 2009
Сообщений: 52
Если вам не сложно, не могли бы вы написать код, который бы перемещал объект по нажатию клавиши? Например объект с именем ball.

Старый 18.08.2012, 21:11
MINASTIS вне форума Посмотреть профиль Отправить личное сообщение для MINASTIS Посетить домашнюю страницу MINASTIS Найти все сообщения от MINASTIS
  № 5  
MINASTIS
 
Аватар для MINASTIS

Регистрация: Jan 2006
Адрес: Сургут
Сообщений: 897
Отправить сообщение для MINASTIS с помощью Skype™
Дополняя ваш код, самое простое.

Код AS3:
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
function keyPressed(event:KeyboardEvent){
obj.x+=2;
}
Изменяя параметр его положение по оси x, плюсуя каждый раз 2, объект двигаем вправо.
На самом деле, если вы заинтересованы в программировании и понимании многих вещей для, например тех же игр, почитайте Колина Мука ActionScript 3. Основы очень вам помогут.

Старый 18.08.2012, 21:30
Nace вне форума Посмотреть профиль Отправить личное сообщение для Nace Найти все сообщения от Nace
  № 6  
Nace

Регистрация: Oct 2009
Сообщений: 52
Вы написали немного не то, что я просил. Я просил показать код, что по нажатию определённой клавиши он движеться, например клавиши Down. И при этом попробуйте дать объекту анимацию движения, так же запускающуюся по нажатию клавиши Down и вы увидите что изначально идёт анимация, потом перемещение объекта и в конце опять анимация!!! Когда попробуете, и если у вас получиться сделать перемещение с анимацие одновременно, то покажите пожалуйста код. Я буду вам очень благодарен!!!

Старый 18.08.2012, 21:38
MINASTIS вне форума Посмотреть профиль Отправить личное сообщение для MINASTIS Посетить домашнюю страницу MINASTIS Найти все сообщения от MINASTIS
  № 7  
MINASTIS
 
Аватар для MINASTIS

Регистрация: Jan 2006
Адрес: Сургут
Сообщений: 897
Отправить сообщение для MINASTIS с помощью Skype™
Если вам нужно готовое решение, вам не сюда.
Пока что проблема не понятна, т.к. нет исходника, а по вашим словам мало что понятно.
Также рядом есть тема с подобной проблемой, там все решилось проверкой нажатия клавиши и видимостью\не видимостью объекта с нужной анимацией. Посмотрите и ее.

Старый 18.08.2012, 21:48
Nace вне форума Посмотреть профиль Отправить личное сообщение для Nace Найти все сообщения от Nace
  № 8  
Nace

Регистрация: Oct 2009
Сообщений: 52
Смотрите. Проблема в том что по зажатию клавиши, объект изначально дёргаеться, а потом только начинает непрерыно перемещаться, то есть работает не как if(Key.isDown()), а как on(keyPress ""). А мне нужно что-нибудь сделать, что бы работало как раз как if(key.isDown())!

Старый 18.08.2012, 22:13
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 9  
Krusty

Регистрация: Jul 2007
Сообщений: 393
То есть анимировался, пока клавишу не отпустили? Я так понимаю, у вас анимация через Event.ENTER_FRAME ?

Старый 18.08.2012, 22:23
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 10  
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
я подозреваю, что поскольку речь идет явно об анимации в кадрах, то при запуске анимации объекта код перестает его видеть (а может наоборот, код со второго кадра и дальше не "виден"), пока анимация не кончится и клип опять не попадет на начальный кадр, где объект виден и снова получает одно смещение, и снова запускается анимация. Такое вот содружество мультиков и программирования.
__________________
Reality.getBounds(this);

Создать новую тему Закрытая тема Часовой пояс GMT +4, время: 14:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
addeventlistener
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 14:29.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.