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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 27.06.2005, 14:09
eXaile вне форума Посмотреть профиль Отправить личное сообщение для eXaile Найти все сообщения от eXaile
  № 1  
Ответить с цитированием
eXaile
 
Аватар для eXaile

Регистрация: Jun 2005
Сообщений: 6
Отправить сообщение для eXaile с помощью ICQ
По умолчанию вопрос по реализации платформера

Вообщем мне недавно в голову пришла идея реализовать платформер (2D игра с видом сбоку, лод раннер короче =)) Попытался сделать - не получилось, выяснилось что не обладаю достаточными навыками, при попытки сделать обыкновенное движение влево/вправо при нажатии кнопки на клавиатуре столкнулся с проблемой: вообщем объект перемещается вправо/влево, но в моем случае объект - человек, то бишь должен двигать ногами, так вот, при нажатии влево/вправо он один раз полностью проигрывал анимацию движения ногами и все, или при зажатии кнопки анимация все время начиналась с начала, получалось как бы дрыганье ногами =) Я делал, чтобы при нажатии кнопки проигрывалась анимация в мувиклипе (вначале она стояла на stop'e)... Вот... Теперь сам вопрос: как можно правильно реализовать чтобы при нажатие кнопки оъект (человек) бежал влево/вправо нормально проигрывая анимацию бега

Старый 27.06.2005, 17:02
TERRORist вне форума Посмотреть профиль Отправить личное сообщение для TERRORist Найти все сообщения от TERRORist
  № 2  
Ответить с цитированием
TERRORist
 
Аватар для TERRORist

блогер
Регистрация: Jun 2005
Адрес: RU
Сообщений: 1,540
Записей в блоге: 12
Цитата:
Сообщение от eXaile
Вообщем мне недавно в голову пришла идея реализовать платформер (2D игра с видом сбоку, лод раннер короче =)) Попытался сделать - не получилось, выяснилось что не обладаю достаточными навыками, при попытки сделать обыкновенное движение влево/вправо при нажатии кнопки на клавиатуре столкнулся с проблемой: вообщем объект перемещается вправо/влево, но в моем случае объект - человек, то бишь должен двигать ногами, так вот, при нажатии влево/вправо он один раз полностью проигрывал анимацию движения ногами и все, или при зажатии кнопки анимация все время начиналась с начала, получалось как бы дрыганье ногами =) Я делал, чтобы при нажатии кнопки проигрывалась анимация в мувиклипе (вначале она стояла на stop'e)... Вот... Теперь сам вопрос: как можно правильно реализовать чтобы при нажатие кнопки оъект (человек) бежал влево/вправо нормально проигрывая анимацию бега
Поставь в каждом кадре

if(!Key.isDown(Key.LEFT) && !Key.isDown(Key.RIGHT)){
gotoAndStop(1)}

Старый 27.06.2005, 20:19
Буньков Максим вне форума Посмотреть профиль Отправить личное сообщение для Буньков Максим Посетить домашнюю страницу Буньков Максим Найти все сообщения от Буньков Максим
  № 3  
Ответить с цитированием
Буньков Максим
[+1 02.06.2006]
[+1.4 01.04.2006]
[+1 01.07.2006]
 
Аватар для Буньков Максим

Регистрация: Feb 2003
Адрес: Екатеринбург
Сообщений: 848
Отправить сообщение для Буньков Максим с помощью ICQ
Ну если по умному сделать, то это один клип... на определеннх кадрах у тебя он бегает влево потом в право вверх вниз, разделяет их gotoAndPlay и на метку что проигрывается. В главном же мовике надо скан клавишь поставить см пост выше, и еще один листенер на отжатие, а потом основываясь какая событелка произошла, с того кадра лодерунера и запускать, или переводить на 1... ну в общем подумай не трудно это... больше маяты чем думанья.
__________________
С уважением, Maksi.

Старый 27.06.2005, 20:27
eXaile вне форума Посмотреть профиль Отправить личное сообщение для eXaile Найти все сообщения от eXaile
  № 4  
Ответить с цитированием
eXaile
 
Аватар для eXaile

Регистрация: Jun 2005
Сообщений: 6
Отправить сообщение для eXaile с помощью ICQ
2TERRORist: у меня не в этом проблема, у меня проблема в том , что при зажатии кнопки влево анимация все время проигрывается с второго кадра клипа, там где стоит начало анимации движения ногами
2Буньков Максим: че т я немного непонял твою фразу =)) Во-первых я непомню что есть листнер, во - вторых какой скан клавиш? Да и еще вопрос: как сделать реагирование на платфору? ну, что если он стоит на платформе которая посередине экрана и потом сходит с нее он падает вниз... Вообщем когда ты бываешь в асе? А то вопросами нафих завалю этот топик =))

Старый 27.06.2005, 20:45
Буньков Максим вне форума Посмотреть профиль Отправить личное сообщение для Буньков Максим Посетить домашнюю страницу Буньков Максим Найти все сообщения от Буньков Максим
  № 5  
Ответить с цитированием
Буньков Максим
[+1 02.06.2006]
[+1.4 01.04.2006]
[+1 01.07.2006]
 
Аватар для Буньков Максим

Регистрация: Feb 2003
Адрес: Екатеринбург
Сообщений: 848
Отправить сообщение для Буньков Максим с помощью ICQ
Листенер это хрень такая кульная, в общем прослушивает события, и выполняет функции. вобщем тебе надо евенты (события) onKeyDown и onKeyUp в общем один происходит если нажал кнопку и если держишь он помоему выполняется всевремя, в отличии от листенра Mause. ну все там функции пиши при проихождении событий
__________________
С уважением, Maksi.

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

Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
Цитата:
....и еще один листенер на отжатие, а потом основываясь какая событелка произошла,....
....вобщем тебе надо евенты (события) onKeyDown и onKeyUp
Не слишком ли много листенеров ты советуешь? Одного не достаточно? А 'onKeyUp' зачем?
А вообще-то, вместо многих слов, - лучше маленький пример.
Вложения
Тип файла: zip 4eXaile.zip (7.6 Кб, 161 просмотров)
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный.
(S.Wizard)

Старый 28.06.2005, 06:55
Буньков Максим вне форума Посмотреть профиль Отправить личное сообщение для Буньков Максим Посетить домашнюю страницу Буньков Максим Найти все сообщения от Буньков Максим
  № 7  
Ответить с цитированием
Буньков Максим
[+1 02.06.2006]
[+1.4 01.04.2006]
[+1 01.07.2006]
 
Аватар для Буньков Максим

Регистрация: Feb 2003
Адрес: Екатеринбург
Сообщений: 848
Отправить сообщение для Буньков Максим с помощью ICQ
onKeyUp тока для того чтоб зааттачить клип где человечик стоит. Но пожно и без этого обойтись. ну в общем в примере хорошо показано.
И еще в примере.. лучше юзай листенер, это как то все таки профессионалней, а вместо onKeyEnter юзай setInterval всяка меньше проц хавает.
__________________
С уважением, Maksi.

Старый 28.06.2005, 11:14
eXaile вне форума Посмотреть профиль Отправить личное сообщение для eXaile Найти все сообщения от eXaile
  № 8  
Ответить с цитированием
eXaile
 
Аватар для eXaile

Регистрация: Jun 2005
Сообщений: 6
Отправить сообщение для eXaile с помощью ICQ
2sergwizard: thx за пример, но просто тупо копировать мне не хочется, можешь объяснить пару строк оттуда? =)
1) obj={};
obj.onKeyDown = function(){

↑↑↑↑↑↑
Во первых что делают эти 2 строки?

***

2) delete man.onEnterFrame;
}
}
}
Key.addListener(obj)
man.stop();

↑↑↑↑↑↑
И наконец эти строки ^_^

Да, и еще, как можно сделать чтобы при отжимании кнопки он плавно возвращался к начальной стойке, конечно, можно через

бла бла бла
}else{
man.GotoAndStop(1);

но тогда он резко вернется к 1 кадру =( Конечно можно сделать на каждый кадр проверку , кадр ли это <n> и если да то проигрывать анимацию , которую вначале сделал для возварщения из кадра <n> в начальную позицию... но есть ли другие способы? =)

2Буньков Максим: ты лучше про платформы мне объясни =)


Последний раз редактировалось eXaile; 28.06.2005 в 11:46.
Старый 28.06.2005, 14:25
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 9  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,601
Записей в блоге: 17
Ты заявляешь, что хочешь сделать 2d игру.
Ты просишь чтобы тебе обьяснили, как сделать, чтобы он
ходил, и шевелил ношками.
Далее, ты хочешь чтобы он прыгал, падал вниз, забирался на платформы.
И наконец, чтобы он не проходил сквозь ету платформу.
Что тебе осталось? Проверятьрешен ли пазл и поднятие камней/сундуков и прочего.
ВСЁ!!!
Ты хочешь чтобы за тебя всё сделали?
Обясняю на последней строке:
http://www.flasher.ru/forum/showthre...232#post385935

Старый 28.06.2005, 16:34
eXaile вне форума Посмотреть профиль Отправить личное сообщение для eXaile Найти все сообщения от eXaile
  № 10  
Ответить с цитированием
eXaile
 
Аватар для eXaile

Регистрация: Jun 2005
Сообщений: 6
Отправить сообщение для eXaile с помощью ICQ
я пока ничего не хочу делать, я хочу разобраться в скриптах, вопрос про прыжки я не задавал, я не выкладывал сюда исходник со словами "нате сделайте чтобы работало", я просто задаю вопросы по тому, что мне не понятно, я не прошу выкладывать готовые скрипты, просто хочу чтобы мне оъяснили, тебе жалко чтоли ? Заметим: "thx за пример, но просто тупо копировать мне не хочется, можешь объяснить пару строк оттуда?" , если бы я преследовал цель чтобы за меня все сделали я просто взял бы себе этот скрипт и промолчал, мне бы нафих не надо было спрашивать что такое листнер, и уж поверь, если бы после такого всего описания я сделал игру я бы написал что эту игру почти всю делал НЕ Я...

З.Ы. если тебя что то очень сильно седня раздражает не надо вымещать свою злобу на мне, я тебе не кошка тренировочная


Последний раз редактировалось eXaile; 28.06.2005 в 17:20.
Создать новую тему Ответ Часовой пояс GMT +4, время: 11:26.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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