Создаем флеш игру. Часть 1 - Управление героем
Любой геймер, который днями и ночами проводит время за освоением и прохождением новой видеоигры или же небольшой флеш игры, мечтает о том, чтобы когда-нибудь самому попробовать себя в роли разработчика игр. Если вы тоже заинтересованы вопросами о том, как создаются флеш игры, и готовы постигать азы по разработке флеш анимации, то следующее руководство – это именно то, что вам нужно. Несколько частей этого руководства помогут вам освоиться в мире разработки флеш игр и раскроют секреты и некоторые хитрости, помогающие новичку легко и быстро начать создавать свои собственные онлайн флеш игры.
Итак, часть первая расскажет о том, как создать героя для flash игры, и как заставить его выполнять те или иные задачи в придуманном вами игровом пространстве. Создание флеш игр, и игрового персонажа в частности, требует много усилий, поэтому не спешите освоить все и сразу, следуйте поэтапно, чтобы постепенно узнавать об управлении вводом, элементарной физике, обработке коллизий и других нюансах.
Создание героя для флеш игры определяется, в первую очередь, его будущим предназначением в вашей флеш игре и жанром, который вы выберете для мини игры. К примеру, вы решили создать некоего персонажа, напоминающего собой полюбившегося многим геймерам героя из знаменитой flash игры Ball Revamped. С чего начинается создание героя?
Создаем героя для флеш игры.
Собственно, с создания героя все начинается. Вы должны определиться, какой герой вам нужен. Определитесь с его формами и внешним видом. Если следуете игре Ball Revamped, то ваш персонаж будет напоминать Болла – это такой энергичный красный кружок с меньшим желтым кругом внутри. В нашем уроке мы возьмем за основу волейбольный мяч.
С формой определились. Потом продумайте схему взаимодействия героя с геймером, то есть, как игрок будет управлять персонажем во флеш игре. Стандартная и привычная схема – передвижение героя в игре по нажатию игроком определенных клавиш. Жмите левую клавишу, если хотите, чтобы герой флеш игры двигался влево, и правую – чтобы перемещался вправо. Для этой цели пропишите первый код для вашего героя:
— управление
Действует это примерно так – функция обработчика события кадра предусматривает проверку нажатия геймером клавиши, а затем декрементирует или же инкрементирует x или y позицию, чтобы она соответствовала нажатой клавише. Чтобы проверить, все ли правильно прописали, выберите Flash и жмите на стрелки контроля над героем, затем жмите Reset, чтобы сбросить последствия вашей проверки.
Скорость героя.
Все герои флеш игр двигаются с определенной скоростью, в зависимости от сюжета и геймплея. Чтобы менять скорость героя как вам угодно, нужно для начала создать и вписать переменную скорости под названием “power”. Правильно вписав нужный код переменной скорости, вы сможете при желании, от уровня к уровню, к примеру, менять скорость вашего героя, изменяя только значения в коде переменной. Вот как выглядит код переменной функции скорости:
— управление
Чем выше значение полученной переменной “power”, тем быстрее ваш герой будет двигаться по игровому пространству.
Ускорения героя.
Предыдущая переменная позволяет герою двигаться по уровню то быстрее, то медленнее, но всегда с одинаковой скоростью. Если вам необходимо, чтобы герой стартовал в игре с одной скоростью, а затем постепенно увеличивал ее, то нужно создать процесс ускорения. Для начала задайте начальную скорость для старта героя.
— управление
Уменьшаете значение power – к примеру, было 3, а стало 0.2. Таким образом значение power прибавляется к начальной скорости. Будьте осторожны, не задавайте слишком высокие значения, а то герой будет двигаться чуть ли не со скоростью света по игре, а игрок не будет успевать контролировать его движения. Изначально значения yspeed и xspeed инициализированы как 0, и чтобы герой двигался, меняйте эти показатели. Если все сделаете правильно, персонаж будет постепенно ускорять свои движения, в зависимости от того, как сильно и часто вы будете нажимать на клавиши.
Сила трения.
Если не задать в игре трение, то ваш герой будет подобен «вечному» двигателю – будет двигаться постоянно, вне зависимости от того, жмет ли игрок на клавиши. Ниже дан код, позволяющий герою замедляться, если геймер не нажимает клавиши.
— управление
Значение коэффициента трения должно быть всегда меньше 1, и чем выше это значение в пределах от нуля от единицы, тем медленнее герой будет тормозить, постепенно сбавляя свою скорость, после того, как игрок перестанет жать на клавишу.
Сила гравитации.
Часто во флеш играх используется коэффициент силы гравитации, позволяющий персонажам падать во время онлайн игры. Следующий код вам поможет добиться этого:
— управление
Сила тяги.
Наличие силы гравитации подразумевает и наличие силы тяги. Если персонаж по задумке должен подниматься вверх, то нужно прописать следующее:
— управление
Коэффициент тяги под названием «thrust» (тоже всегда меньше чем 1) способствует перемещению вверх, придавая этому процесс реалистичный эффект.
Делаем ветер.
Почувствуйте себя Создателем в полной мере, по крайней мере, в рамках флеш игры, создав анимацию и эффект ветра. Если нужно, чтобы герой прокладывал свой путь во время ветреной погоды, то сделайте так:
— управление
Направление ветра определяет и направление скорости, и сторону движения героя. Положительно ветер воздействует на движение в правую сторону и отрицательно – в левую. Найдите нужное вам сочетание реальной и игровой физики, меняя все переменные.
Учим героя поворотам.
Если нужно, чтобы герой крутился по или против часовой стрелки, задайте направление. Скажем, вращение по часовой стрелке будет происходить при движении в правую сторону, против часовой стрелки – в левую сторону.
— управление
Таким образом просто приравнялись значения переменных rotation и xspeed нашего героя.
Теперь ваш герой умеет практически все и готов преодолевать любые препятствия на своем пути. А о том, как создавать преграды герою, вы узнаете из следующей части руководства по созданию флеш игры.
Другие части статьи «Создаем флеш игру»:
Создаем флеш игру — Часть 2
Создаем флеш игру — Часть 3
Создаем флеш игру — Часть 4
Создаем флеш игру — Часть 5
Итак, часть первая расскажет о том, как создать героя для flash игры, и как заставить его выполнять те или иные задачи в придуманном вами игровом пространстве. Создание флеш игр, и игрового персонажа в частности, требует много усилий, поэтому не спешите освоить все и сразу, следуйте поэтапно, чтобы постепенно узнавать об управлении вводом, элементарной физике, обработке коллизий и других нюансах.
Создание героя для флеш игры определяется, в первую очередь, его будущим предназначением в вашей флеш игре и жанром, который вы выберете для мини игры. К примеру, вы решили создать некоего персонажа, напоминающего собой полюбившегося многим геймерам героя из знаменитой flash игры Ball Revamped. С чего начинается создание героя?
Создаем героя для флеш игры.
Собственно, с создания героя все начинается. Вы должны определиться, какой герой вам нужен. Определитесь с его формами и внешним видом. Если следуете игре Ball Revamped, то ваш персонаж будет напоминать Болла – это такой энергичный красный кружок с меньшим желтым кругом внутри. В нашем уроке мы возьмем за основу волейбольный мяч.
С формой определились. Потом продумайте схему взаимодействия героя с геймером, то есть, как игрок будет управлять персонажем во флеш игре. Стандартная и привычная схема – передвижение героя в игре по нажатию игроком определенных клавиш. Жмите левую клавишу, если хотите, чтобы герой флеш игры двигался влево, и правую – чтобы перемещался вправо. Для этой цели пропишите первый код для вашего героя:
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
_x--;
}
if (Key.isDown(Key.RIGHT)) {
_x++;
if (Key.isDown(Key.UP)) {
_y--;
if (Key.isDown(Key.DOWN)) {
_y++;
}
— управлениеДействует это примерно так – функция обработчика события кадра предусматривает проверку нажатия геймером клавиши, а затем декрементирует или же инкрементирует x или y позицию, чтобы она соответствовала нажатой клавише. Чтобы проверить, все ли правильно прописали, выберите Flash и жмите на стрелки контроля над героем, затем жмите Reset, чтобы сбросить последствия вашей проверки.
Скорость героя.
Все герои флеш игр двигаются с определенной скоростью, в зависимости от сюжета и геймплея. Чтобы менять скорость героя как вам угодно, нужно для начала создать и вписать переменную скорости под названием “power”. Правильно вписав нужный код переменной скорости, вы сможете при желании, от уровня к уровню, к примеру, менять скорость вашего героя, изменяя только значения в коде переменной. Вот как выглядит код переменной функции скорости:
onClipEvent (load) {
power = 3;
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
_x -= power;
}
if (Key.isDown(Key.RIGHT)) {
_x += power;
}
if (Key.isDown(Key.UP)) {
_y -= power;
}
if (Key.isDown(Key.DOWN)) {
_y += power;
}
}
— управлениеЧем выше значение полученной переменной “power”, тем быстрее ваш герой будет двигаться по игровому пространству.
Ускорения героя.
Предыдущая переменная позволяет герою двигаться по уровню то быстрее, то медленнее, но всегда с одинаковой скоростью. Если вам необходимо, чтобы герой стартовал в игре с одной скоростью, а затем постепенно увеличивал ее, то нужно создать процесс ускорения. Для начала задайте начальную скорость для старта героя.
onClipEvent (load) {
power = 0.2;
yspeed = 0;
xspeed = 0;
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
xspeed -= power;
}
if (Key.isDown(Key.RIGHT)) {
xspeed += power;
}
if (Key.isDown(Key.UP)) {
yspeed -= power;
}
if (Key.isDown(Key.DOWN)) {
yspeed += power;
}
_y += yspeed;
_x += xspeed;
}
— управлениеУменьшаете значение power – к примеру, было 3, а стало 0.2. Таким образом значение power прибавляется к начальной скорости. Будьте осторожны, не задавайте слишком высокие значения, а то герой будет двигаться чуть ли не со скоростью света по игре, а игрок не будет успевать контролировать его движения. Изначально значения yspeed и xspeed инициализированы как 0, и чтобы герой двигался, меняйте эти показатели. Если все сделаете правильно, персонаж будет постепенно ускорять свои движения, в зависимости от того, как сильно и часто вы будете нажимать на клавиши.
Сила трения.
Если не задать в игре трение, то ваш герой будет подобен «вечному» двигателю – будет двигаться постоянно, вне зависимости от того, жмет ли игрок на клавиши. Ниже дан код, позволяющий герою замедляться, если геймер не нажимает клавиши.
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
xspeed -= power;
}
if (Key.isDown(Key.RIGHT)) {
xspeed += power;
}
if (Key.isDown(Key.UP)) {
yspeed -= power;
}
if (Key.isDown(Key.DOWN)) {
yspeed += power;
}
xspeed *= friction;
yspeed *= friction;
_y += yspeed;
_x += xspeed;
}
— управлениеЗначение коэффициента трения должно быть всегда меньше 1, и чем выше это значение в пределах от нуля от единицы, тем медленнее герой будет тормозить, постепенно сбавляя свою скорость, после того, как игрок перестанет жать на клавишу.
Сила гравитации.
Часто во флеш играх используется коэффициент силы гравитации, позволяющий персонажам падать во время онлайн игры. Следующий код вам поможет добиться этого:
onClipEvent (load) {
power = 0.3;
yspeed = 0;
xspeed = 0;
friction = 0.95;
gravity = 0.1
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
xspeed -= power;
}
if (Key.isDown(Key.RIGHT)) {
xspeed += power;
}
if (Key.isDown(Key.UP)) {
yspeed -= power;
}
if (Key.isDown(Key.DOWN)) {
yspeed += power;
}
xspeed *= friction;
yspeed += gravity;
_y += yspeed;
_x += xspeed;
}
— управлениеСила тяги.
Наличие силы гравитации подразумевает и наличие силы тяги. Если персонаж по задумке должен подниматься вверх, то нужно прописать следующее:
onClipEvent (load) {
power = 0.3;
yspeed = 0;
xspeed = 0;
friction = 0.95;
gravity = 0.1;
thrust = 0.75;
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
xspeed -= power;
}
if (Key.isDown(Key.RIGHT)) {
xspeed += power;
}
if (Key.isDown(Key.UP)) {
yspeed -= power*thrust;
}
if (Key.isDown(Key.DOWN)) {
yspeed += power*thrust;
}
xspeed *= friction;
yspeed += gravity;
_y += yspeed;
_x += xspeed;
}
— управлениеКоэффициент тяги под названием «thrust» (тоже всегда меньше чем 1) способствует перемещению вверх, придавая этому процесс реалистичный эффект.
Делаем ветер.
Почувствуйте себя Создателем в полной мере, по крайней мере, в рамках флеш игры, создав анимацию и эффект ветра. Если нужно, чтобы герой прокладывал свой путь во время ветреной погоды, то сделайте так:
onClipEvent (load) {
power = 0.3;
yspeed = 0;
xspeed = 0;
friction = 0.95;
gravity = 0.1;
thrust = 0.75;
wind = 0.09;
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
xspeed -= power;
}
if (Key.isDown(Key.RIGHT)) {
xspeed += power;
}
if (Key.isDown(Key.UP)) {
yspeed -= power*thrust;
}
if (Key.isDown(Key.DOWN)) {
yspeed += power*thrust;
}
xspeed += wind;
xspeed *= friction;
yspeed += gravity;
_y += yspeed;
_x += xspeed;
}
— управлениеНаправление ветра определяет и направление скорости, и сторону движения героя. Положительно ветер воздействует на движение в правую сторону и отрицательно – в левую. Найдите нужное вам сочетание реальной и игровой физики, меняя все переменные.
Учим героя поворотам.
Если нужно, чтобы герой крутился по или против часовой стрелки, задайте направление. Скажем, вращение по часовой стрелке будет происходить при движении в правую сторону, против часовой стрелки – в левую сторону.
onClipEvent (load) {
power = 0.65;
yspeed = 0;
xspeed = 0;
friction = 0.99;
gravity = 0.1;
thrust = 0.75;
wind = 0.05;
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
xspeed -= power;
}
if (Key.isDown(Key.RIGHT)) {
xspeed += power;
}
if (Key.isDown(Key.UP)) {
yspeed -= power*thrust;
}
if (Key.isDown(Key.DOWN)) {
yspeed += power*thrust;
}
xspeed += wind;
xspeed *= friction;
yspeed += gravity;
_y += yspeed;
_x += xspeed;
_rotation += xspeed;
}
— управлениеТаким образом просто приравнялись значения переменных rotation и xspeed нашего героя.
Теперь ваш герой умеет практически все и готов преодолевать любые препятствия на своем пути. А о том, как создавать преграды герою, вы узнаете из следующей части руководства по созданию флеш игры.
Другие части статьи «Создаем флеш игру»:
Создаем флеш игру — Часть 2
Создаем флеш игру — Часть 3
Создаем флеш игру — Часть 4
Создаем флеш игру — Часть 5





Комментарии (21)
RSS свернуть / развернутьValboy
GoldPlayer
GoldPlayer
Valboy
Valboy
GoldPlayer
Valboy
Valboy
Для создания игр понадобятся знания в области AS (ActionScript). Попробуйте поискать в интеренете книги, так чтоб понять, с чего начать. А еще также надо будет изучить как правильно анимировать персонажа, для примера можете скачать книгу по анимации.
GoldPlayer
Valboy
GoldPlayer
Valboy
GoldPlayer
Valboy
Valboy
Valboy
GoldPlayer
GoldPlayer
Valboy
Valboy
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.