Показаны сообщения с ярлыком Layer. Показать все сообщения
Показаны сообщения с ярлыком Layer. Показать все сообщения

вторник, 24 января 2012 г.

Layers.script v.1.1 RC + видео его работы

Автор: Серёжа


Спешу сообщить, что моя работа тоже не стоит на месте =) Вот, кстати, видео по работе слоёв:


Помните, я говорил, сколько ещё надо сделать в скрипте по перемещению слоёв? Вот этим я и занимался несколько дней. Для нашей игры это действительно важно, контроль над "камерой"  нужен полный, плюс ещё головоломки классные получатся.
Напоминаю, остановился я на том, что у меня начали нормально ездить спрайты (Entity). Решил, что этого мало и неудобно, надо туда ещё регионы прикрутить.
Регионы (Regions), в отличие от Entity, состоят из n-го количества точек, не имеют своего однозначного .X и .Y, не умеют просто так перемещаться. Ловятся при помощи "Scene.GetNode()". Это то, что можно почерпнуть из манов.
Однако есть то, что в манах не описано (да и нигде на форумах). Существует, отказывается 3 типа Node:
  • Entity. Самый простой, просто картинка и не более. В Scene Edit обозначется жёлтым пакманом. С ним проблем нет.
  • Region. Простой пример есть на каждой сцене - это floor. Представляет собой набор точек, ограничивает движение actor. Может быть создать только на Main layer.
  • Entity, который region. Обозначается зелёным пакманом. Очень интересная штука. Представляет из себя пустой Entity (this.Type == entity), который ссылается на регион (this.Region)

суббота, 20 августа 2011 г.

Закончен скрипт перемещения слоёв!

Автор: Серёжа

Всё-таки нашёл время и довёл скрипт совсем до ума!
Что изменилось:
  • Нет привязки к глобальной переменной в game.loop
  • Методов стало 2 - для "эксклюзивного" скролла (движется только наш слой) и для асинхронного, когда выполнение всех команд продолжается
  • Передвигаются не только Entity, а так же регионы (region).
  • Небольшая оптимизация, всё стало двигаться чуточку плавнее.
Что ещё можно было бы сделать:
  • Перемещение регионов вместе со слоём, сейчас они просто перескакивают
  • Исправление алгоритма: сейчас время, указываемое в функции не соответствует действительности =(
  •  Контроль активности регионов во время перемещения (активны или нет)...
  • ...следовательно, сделать функцию перегружаемой (не факт, что это вообще возможно) .
Небольшой readme к скрипту и сам скрипт под катом.

воскресенье, 14 августа 2011 г.

Итоги прошедшей недели

Автор: Серёжа

По результатам прошедшей недели было накодировано и даже успешно скомпилировано:
  • Апдейт layer.script (самопальный метод Scroll для объекта layer). Планируется ещё один небольшой апдейт, добавление функции ScrollAsync(). 
  • Апдейт главного меню. Теперь оно готово чуть менее, чем полностью, но с кодом там остались воистину капли.
  •  Апдейт подменю. Осталось допилить меню сохранения и прийти к консенсусу по поводу меню загрузки. Остальное - кликается, щёлкается, затемняется, переключается и т.д.!
  • Сделано и успешно интегрировано в игру аж 3 (!!!) диалога выхода и оной.
  • Создана первая сцена (ЮХУУУ!!!) . Естественно, она пока на стадии пред-пред-альфа, но начало положено :)
  • Ещё работа над персонажем. 

воскресенье, 31 июля 2011 г.

"Поползновение" слоёв, часть 2

Автор: Серёжа

  Так пока и не получилось распараллелить выполнение команд, зато получилось "причесать" сам скрипт, теперь  слой приезжает точно туда, куда его просили, а не "куда-то сюда" =) Помимо этого, разные слои теперь едут одинаковое время. Вот, собственно, скрипт:

суббота, 30 июля 2011 г.

"Поползновение" слоёв

Автор: Серёжа

  Итак, вчера провёл весь день, упорно вспоминая геометрию с 5 по 11 классы. Несмотря на то, что я этот предмет любил, многие формулы благополучно стёрлись из моей памяти за ненадобностью. Вкратце, подводя итоги вчерашнего мозгового и программного штурмов, я написал-таки скрипт, который двигает СЛОЙ. Именно слой, а не слои, потому что выполняет команды по очереди, т.е. сначала передвигает первый, потом второй и т.д., вместе никак это сделать не получилось. Ладно, ближе к коду:


пятница, 29 июля 2011 г.

Кодинг. Начало.

Автор: Серёжа
 
Итак, для начала немного про движок. Хорош он тем, что в нём:
  • Прописаны основные функции для игр жанра point-and-click (типа, GoTo(x,y) для персонажа)
  • Простенький скриптовый язык, похожий издалека на javascript
  • На официальном форуме сидят люди, готовые помочь =)
Что плохо:
  • Создатель игры (прости, Мнемоник!) рассчитывал, видимо, что в играх подобного жанра надо только ходить, брать и вставлять. Шаг влево, шаг вправо делается с очень большим трудом из-за ограниченности движка. Например, написание любой головоломки становится не менее увлекательной головоломкой для самого программиста.
  • Большая нагрузка на художника. Каждый "фьюк" надо рисовать отдельно, заново. Зато прекрасная практика для Мариночки =)
  Ну чтож, материал для меня какой-то готов, проект создан, надо сделать первую сцену. Только это не будет совсем уж "сценой", потому что на самом деле это - меню. По задумке, при нажатии на некоторые книпки сцена должна переезжать вправо (т.е. камера передвигаться влево), где и будут нужные нам объекты. При переезде камеры для создания эффекта объёмности надо, что бы разные слои двигались с разной скоростью. Слоёв 3: