понедельник, 1 февраля 2010 г.

Mo'Minis Russian Tutorial: Урок 5. Логика forever II

                           Логика - это комод, в котором хранится полезная утварь и очень много ненужной. (Чарлз Колтон)


  Эта цитата предваряет продолжение серии уроков "Логика forever". На протяжении ближайших пяти уроков мы будем исследовать и фильтровать Её величество Логику в том виде, в котором она представлена в Mo'Minis. Сегодня мы обзорно рассмотрим несколько групп Event'ов и поведения. 


"Поехали!" (Юрий Гагарин)

Поведения
  Каждый из нас обязан как-то вести себя в обществе. То есть: соблюдать манеры, быть вежливыми... Этому всему в детстве нас учили родители. Точно также и спрайты надо учить "вести себя" на игровом поле.
  Для этого и предназначена логика. Но ведь в самих спрайтах уже есть логика! Зачем выдумывать что-то новое? Для ответа на вопрос представьте себе, что у вас есть, скажем, штук 100 спрайтов. Они все должны себя вести одинаково. Вот и копируйте события из одного в другой. Замучаетесь :) А если вдруг потребуется изменить 1 (одно) событие? Представьте себе, что вам придётся изменять ВСЕ (!) 100 спрайтов. Это страшно нерационально и действуйет на нервы.
  Так что - использование поведений значительно экономит нервы создателей. Это отличный инструмент! Так что для эффективной работы в Mo'Minis вам надо знать, как он работает.
Создание
  В этом туториале мы  не будем трогать нашу MoFish, так что создавайте новую игру.
  Для создания поведения переместитесь на окошечко "Game Objects"
  Обратите внимание на вкладки вверху. Там их 3: "Sprites", "Capatbilities", "Controllers".
  Каждая из них отвечает за определённый тип объектов. Нам нужна вкладка "Capatbilities". Откройте её и создайте новое поведение (ПКМ -> Add new game object).
  После создания объекта окошечко будет выглядеть так:
  В принципе, имя поведения роли не играет, но если вы хотите назвать его так, кка на скриншоте, то ПКМ -> Rename и вводите новое имя поведения.
Работа
  В целом, работа с поведением аналогична работе со спрайтом. Вы можете легко использовать те же приёмы, что и со спрайтом. Сейчас всё будет показано на практике.
  Вам потребуется скачать комплект для урока (лежит здесь). Распакуйте его и создайте новый спрайт (назвав его, скажем, MoBaby).
   Откройте панель ресурсов спрайта и добавьте туда две анимации. В первую анимацию положите лишь одно изображение Standing, а во вторую анимацию - два изображения Walking. Конечный результат:
  Теперь нужно прикрепить поведение к спрайту. Делается это в панели "Properties".
  Нажимаете "Add capatbility" и выбираете созданное нами поведение.
   Заканчиваем работу со спрайтом. Переходите на вкладку "Capatbilities" (окошечко Game Objects) и нажимайте два раза на созданное нами поведение. Затем переходите на вкладку "Logic"
   Как мы видим, окно логики поведения ничуть не отличается от окна логики спрайта. Скажу по секрету, что и в контроллерах оно не отличается. Всё взамиозаменяемо.
   Нажимайте на Keypad и по аналогии с прошлым уроком создайте событие "Key Down\ => (стрелочка вправо)". Затем в действиях (actions) добавьте себе "Set Speed/30".
    Теперь самое интересное. Вторым действием добавьте "Change animation".
 
   Здесь мы выставляем параметры. Для начала в Reference выставите "Group", затем в  появшемся "Group" - "Type/MoBaby" и Animation "Walking"

  Нажмите OK и затем по аналогии с уроком 4 перекопируйте событие вместе с действиями.

  Можете запускать! При нажатии правой\левой клавиши малыш начнёт двинаться в нужном направлении. Всё просто!

Это всё?
   Нет! Скоро (со следующего урока) я начну обзор всех event'ов и действий конструктора. Впереди долгий путь, но многое уже пройдено! Как говорится, "не прощаюсь" (с)

6 комментариев:

  1. Скоро будет. Пока делаю 6 урок

    ОтветитьУдалить
  2. У меня не чего не выводится комната с героем, только меню и после белый экран.

    ОтветитьУдалить
  3. Хм... а вы сами всё создали? Или пример скачали.
    Лучше обращайтесь по ICQ
    И не пишите в старых темах - их я очень редко проглядываю.

    ОтветитьУдалить
  4. Анонимный
    А ты в руму вставил спраит?

    ОтветитьУдалить