Вторник, 19 Марта 2024, 07:39

Приветствую Вас Гость

Меню сайта
Категории каталога
Создание игр [354]
Статьи об общих понятиях связанных с созданием игр.
Программирование [82]
Гайды по программированию на разных ЯП.
Движки и Гейммейкеры [144]
Статьи о программах для создания игр, уроки и описания.
Софт [39]
Различные программы, в том числе в помощь игроделам.
2D-графика [14]
Уроки по рисованию, растр, пиксель-арт, создание спрайтов и пр.
3D-графика [16]
Уроки по моделированию, ландшафт, модели, текстурирование и пр.
Моддинг игр [5]
Модификация компьютерных игр, создание дополнений, перевод, хакинг.
Игры [160]
Статьи об играх, в том числе и сделанных на гейммейкерах.
Разное [128]
Статьи, которые не вошли в определённые разделы.
Наш опрос
Какие жанры компьютерных игр вы предпочитаете?
Всего ответов: 2043
Главная » Статьи » Создание игр

Платформер-экшен в Scirra Construct для начинающих (часть 5)
Тема для обсуждения.
В прошлой части мы дали ГГ возможность подбирать патроны, а теперь продолжаем.

Давайте сейчас сделаем так чтобы камера следила за ГГ. Для этого кликаем по ГГ, слева в свойствах ищем вкладку Groups (группы) и в под вкладке Attributes (атрибуты) ставим галочку напротив Center view on me (центрировать взгляд на мне):



Теперь при запуске игры мы увидим что камера следит за ГГ, но как видите когда ГГ уходит вправо, то текст «Осталось 30 патронов» остаётся на месте:



А нам нужно чтобы он всё время был в углу экрана. Исправляем. Нужно создать новый слой, для этого кликаем по Leyers (слои) в правом нижнем углу, и жмём по зелёной стрелке с направлением вверх:



Появится новый слой (Leyer 3):



Кликаем по нему, и слева появятся свойства этого слоя:



Здесь в поле Scroll X Rate вместо 100 пишем 0. И в поле Scroll Y Rate тоже пишем 0:



Теперь нам нужно поместить на этот слой Text (текст который отображает кол-во патронов). Для этого жмём правой кнопкой мыши по тексту и выбираем Cut (вырезать):



Текст исчезнет. Проследите что вы находитесь на только что созданном слое. Жмите правую кнопку мыши по любому свободному месту и выберите Paste (вставить):



И кликните в любом месте. Текст появится. Поместите его в левый верхний угол уровня. Запустите игру и проверьте. Теперь всё нормально. Теперь давайте сделаем так чтобы ГГ не мог бы уходить за пределы уровня. Для этого нужно добавить спрайт любого цвета (я залил красным) и в свойствах этого спрайта во вкладке Groups в под вкладке Attributes ставим галочку напротив Solid (твёрдый):



Сквозь твёрдые объекты ГГ не может пройти, размещаем спрайт в самом начале и в самом конце уровня:



Теперь в игре ГГ не сможет выйти за пределы уровня.
Давайте сделаем эффект "искр" из дула когда ГГ стреляет. Для этого добовляем спрайт "искр", у нас он будет состоять из двух кадров:



При добавлении спрайта в редакторе изображений возьмите инструмент Rectangle select (это обычное прямоугольное выделение):



Выделите второй кадр (правый):



И нажмите клавишу Delete(удалить). Та часть которую мы выделили удалится:



Теперь возьмите инструмент Wand tool:



Кликните по розовому фону (он выделится) и нажмите Delete. Фон удалится. Теперь нажмите на Crop:



Центр (красная точка) установите тут:



Закройте редактор. Назовите этот спрайт iskr.Теперь настраиваем размеры спрайта:



Сейчас нам нужно добавить второй кадр анимации, для этого кликаем по только что добавленному спрайту и внизу в правом углу кликаем по Animator, видим это:



В поле где находится первый кадр жмём правую кнопку мыши и выбираем Add frame (добавить кадр):



Откроется редактор изображений с первым кадром, чтобы перейти к редактированию второго кадра, кликаем по второму тут:



Как видите он пустой. Жмём открыть и выбираем тотже спрайт "искр":



Но теперь выделяем и удаляем левый кадр. В результате:



Центр ставим тамже:



Закрываем редактор, и теперь у нас в анимации два кадра:



Скорость анимации пускай будет 7:



Теперь нам нужно сделать этот спрайт невидимым, для этого кликаем по спрайту "искры" и слева в свойствах ставим галочку напротив Invisible on start (невидимый при старте):



Переходим в события. Помните точку из которой вылетают пули - «point»? К этой точке нам нужно привязать "искры", т.е нам нужно сделать так чтобы всегда спрайт «искры» был привязан к ГГ в точке «point». Условие Always (всегда) у нас уже есть по этому создавать его ненадо. Жмём по New action (новое действие) в условии Всегда:



Выбираем объект "искры", дальше выбираем Set position to another object (установить позицию на другом объекте). В следующем окне в графе Object выбираем тот объект на котором должен находится спрайт "искры", т.е на ГГ. В графе Image point name... пишем имя точки в ковычках т.е "point":



Жмём финиш. Результат:



Теперь создаём новое событие. Выбираем объект Мышь и клавиатура, дальше Key is down? (клавиша зажата?), дальше выбираем клавишу "M", жмём финиш. Теперь напротив этого условия жмём Новое действие и выбираем объект "искры", дальше выбираем Set visible (установить видимость):



Дальше в графе Visibility выбираем Visible (видимый), жмём финиш, результат:



Копируем это событие. Кликаем правой кнопкой по скопированному событию «Key M is down» и выбираем Invert condition (инвертировать), а в действии измените Visible (видимый) на Invisible (невидимый):



Мы сделали так: если клавиша "M" зажата то спрайт "искры" видимый, а если клавиша "M" не зажата то спрайт "искры" невидимый. При запуске игры мы видим что всё работает нормально, за исключением того что если ГГ смотрит влево то искры отображаются неправильно, исправляем. Помните мы делали событие "если клавиша A зажата то ГГ устанавливаем угол на 180 градусов" и "если клавиша D зажата то ГГ устанавливаем угол на 0 градусов"? Так вот, нам нужно сделать тоже самое и с объектом "искры". Но не нужно создавать эти события ещё раз, ведь они уже есть. Напротив события «Key A is down» создаём действие:



Выбираем объект "искры", дальше выбираем Set angle (установить угол) и в графе Angle пишем 180, жмём финиш. Теперь напротив события "Key D is down" создаём действие, выбираем объект "искры", дальше выбираем Set angle и в графе Angle пишем 0, жмём финиш. Результат:



Теперь всё отображается нормально, но когда пули заканчиваются ГГ не стреляет, а "искры" всё равно отоброжаются, испровляем. Создаём новое событие, выбираем System, дальше выбираем Compare global variable, дальше в графе Comparison выбираем Greater than (больше чем), а в графе Compare to пишем 0:



Теперь события "клав.M зажата" и "клав.M не зажата" нужно поместить под только что созданное событие, т.е сделать их под событиями:



Мы сделали так чтобы "искры" были видимыми только если переменная "puli" больше 0. Теперь создаём ещё одно событие выбираем System, дальше Compare global variable, дальше в графе Comparison выбираем Less or equal (меньше или равно), а в графе Compare to оставляем 0:



Теперь к этому событию создаём действие, выбираем "искры", дальше Set visible (установить видимость) и в графе Visibility выберите Invisible (невидимый). Результат:



Мы сделали так, что если переменная "puli" меньше или равна 0, то "искры" невидимы. Вот исходник того что получилось на данном этапе.

Продолжение тут.
Категория: Создание игр | Добавил: dilovar50 (01 Декабря 2012) | Автор: Давлятов Диловар
Просмотров: 7831 | Комментарии: 2 | Рейтинг: 4.3/6 |
Теги: Урок, создаем игру, экшен, без программирования, платформер, скирра, начинающим, констракт, Scirra Construct, Статья
Дополнительные опции:
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:

Игровые объявления и предложения:
Если вас заинтересовал материал «Платформер-экшен в Scirra Construct для начинающих (часть 5)», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела. Предлагаются такие схожие материалы: Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.

Всего комментариев: 2
+0-
2 tankas007   (13 Января 2013 14:37) [Материал]
tankas007Нормально!) happy вроде всё понял)

+0-
1 Acokap   (26 Декабря 2012 21:11) [Материал]
Acokapcool Ну материал норм

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск по сайту
10 случ. движков
  • GameBryo
  • Kodu
  • Marauroa Engine
  • Zombie Engine
  • Tuesday JS
  • LuxRender
  • O.H.R.RPG.C.E
  • Core
  • EDuke32
  • MyRPG Master
  • Друзья сайта
    Игровой форум GFAQ.ru Перевод консольных игр
    Все права сохранены. GcUp.ru © 2008-2024 Рейтинг