Всем привет!Сегодня я расскажу как сделать прыжок в Game Maker. Начнем? Сначала делаем объект нашего персонажа...
Добавляем событие "создание".Добавляем действие Set the Gravity , и в окне direction пишем 270,а в окне gravity - 1 .
Теперь создаем новый объект,это у нас будет стена и делай нашу стену твёрдой. Снова возвращаемся в наш объект.Добавляем событие "Столкновение" и выбираем нашу стенку.Добавляем в действия скрипт:
Код
vspeed = 0;
Далее мы делаем прыжок. Создаем новое событие "Клавиатура" и выбираем на какую клавишу у нас будет прыжок.Добавляем в действия Test Expression .Пишем в окно скрипт:
Код
place_free(x,y+1)
Ставим галочку на No(Нет).Добавляем скобки,и в скобки добавляем ещё один скрипт:
Код
vspeed = -12;
Готово!Прыжок сделан. Осталось создать комнату и расставить объекты. Скачать пример:Тык!
Сообщение отредактировал BlackSeriousFive - Пятница, 22 Марта 2013, 22:04
BlackSeriousFive, ваааау...^__^ Ты действительно считаешь, что это кому-то нужно?! Сделал бы запрыгивание на платформу сквозь неё, ещё б можно было счесть за урок. Steel Standoff - 2D аркада. Мои статьи
Снова возвращаемся в наш объект.Добавляем событие "Столкновение" и выбираем нашу стенку.Добавляем в действия скрипт: Код vspeed = 0;
Этого мало! Нужно добавить эту ф-цию (Хотя она немного тяжеловата для понимания.
Код
if place_free(x,y+vspeed)=false{vspeed=0 move_contact_solid(270,2)}
Дальше...
Цитата (BlackSeriousFive)
Создаем новое событие "Клавиатура" и выбираем на какую клавишу у нас будет прыжок.Добавляем в действия Test Expression .Пишем в окно скрипт: Код place_free(x,y+1)
И... Опять не угадал Лучше написать это:
Код
if not place_free(x,y+1) { vspeed = -16 }
В том, что написано выше программа смотрит, есть ли свободное место над игроком, и если есть, то игрок прыгнет. И эта ф-ция делается одним "скриптом", а не двумя, как у тебя. И самое главное - ты забыл поставить в объекте стены, в окошечке "Solid" (Твердость, твердый) - это очень важно, ведь если этого не будет, то игрок начнет проскальзывать сквозь пол. Помог - плюс в репу!
Ты действительно считаешь, что это кому-то нужно?! Сделал бы запрыгивание на платформу сквозь неё, ещё б можно было счесть за урок.
да. уроков про прыжок и про то как реализовать остальные фичи платформеров, можно найти не мало. но не все об этом знают.
почему бы не прикрепить в верху раздела тему с рассмотрением всех деталей того, как на гамаке сделать платформер?
туда можно было бы поместить такие уроки: - перемещения персонажа - учёт стен - учёт лестниц - добавим подвижных монстров - прыжки - добавим возможность стрелять ... ну может ещё что-нибудь, что часто бывает нужно. все правила форумной игры Дуэль Программистов
Бесполезный урок... Щас всё на коде делаю. Всё что я сказал может показаться обидно , но это только кажется так, ибо мнение моё и оно может поменяться.