Блог пользователя creator

Реализация сбора рапаппилы

Начал реализацию сбора рапаппилы, самое просто - завел объект:

#define MAZE_OBJ_RAPAPPILA 0x25
#define MAZE_OBJ_RAPAPPILA_V 0x26

MAZE_OBJ_RAPAPPILA_V - это объект - "выкорчеванная рапаппила", дырка в земле.

А в Flash, соответственно сделал прорисовку этих объектов.
Также в флэшке сделал кнопку сбор рапаппилы, которая появляется если герой стоит на клетке с рапаппилой.
Кнопка становится неактивная если у героя нет с собой сумки.

Сбор рапаппилы

рапаппила - минерал в лабиринтах зыбиРассуждая на тему экономики в игре я перебрал множество вариантов, вариант ежечасного набора кода для устройства на работу - не вариант :)
Придумал вот что - мини квесты сбор полу-минерила/полу-мха рапаппилы. (Вообще сам минерал был придуман мной во время написания поста в не в очень трезвом состоянии - легенда о фрукте)

Карта


Делаю глобальную "мировую" карту. Рисую в Flash, вообще конечно идею/графику мне подкинул Илля Варгатий , за что ему большое спасибо (жаль что контакт прервался).

Интерфейс

Вернулся из отпуска. К сожалению, на отдыхе вообще не думал по поводу проекта :)
Зато набрался сил и придумал новый интерфейс, вернее просто придумал интерфейс так как старого вроде и не было.

Теперь после логина главный экран - будет мировая карта с указателем позиций игрока. Игроки стратуют в городе Датор, и выходить за его пределы с получением первого уровня.
При перемещение по пустой территории есть вероятность нападения на игрока враждебных существ. Вероятность нападения зависит от типа территории - на устойчивых процент меньше, на зыбких - почти равен 100%.

Работа над ошибками

В чем минус эволюционной разработки?

Эволюционная разработка - работа над проектом волнами, когда один блок заменяется другим. Для более быстрой проверки работоспособности создаются заглушки или код на первое время

Минус в том, что могут появляется ошибки(глюки) на стыке двух модулей, т.е. по отдельности они нормально работают, а вот их объединили - и не работают оба.

В моем случае - появился глюк при исполнении команды retreat. Команда выполнялась в случае гибели персонажа или его победы в лабиринте (выполнения условий).

Загружаемые персонажи

Завершил работу над пре-загрузкой тех.персонажей, в том числе и ветеранов для арены.
Для создания персонажей использую ту же функцию, что для регистрации пользователей registerUser.

Изменения кода checkActiveDemands() -

void checkActiveDemands()
{
time_t now=time(0);
for(vector<int>::iterator i=activeDemands.begin();i<activeDemands.end();i++)
{
TMazeDemand *md = &mazeDemands[*i];
if (!md->close && md->type == TP_ARENA_CITY)
if (now-md->atime >= TIME_FOR_WAIT_DEMAND)
{

Рисую и пристыковываю

Герой с топором
Начал прорисовывать, но эта аццкая работа :)

Для удобства сделал тестовую флэшку, которая демонстрирует загружая части объекта, как я уже описывал ранее.

Флэшка test_engine.fla - можно скачать, как в принципе и axe.fla.

Составная загрузка

Наконец-то дошли руки и до этого :)
Реализация оказалось тоже довльно простой, для начала пришлось чуть переписать функицю удаленной загрузки loadclipfromserver, добавив ему параметр root, не путать с _root. И маленькая правочка вместо:
var mc:MovieClip = _root.createEmptyMovieClip(nameclip, -1); стало var mc:MovieClip = root.createEmptyMovieClip(nameclip, -1);
и все :)
Загрузка конечно стало не просто вызов функции, а сначала создание основного клипа:

Новое

Начал внедрять новые стены в лабиринте - которые состоят не из одного куба - а прорисованы по-разному.
Тут же понял, что мой код содержит кучу ошибок, которые пришлось исправлять налету (сейчас код исправлен) и есть живой пример рисования псевдографикой а-ля DOS (кодировка CP866)

В flash нарисовал такие вот стены:
набросок новых стен для лабиринтов

Думаю

Все думаю насчет героя и аммуниции, спросил совета на форуме www.flasher.ru и вроде бы его получил :)
Что не может не радовать, т.к. получил ответ на оба варианта моих задумок:
1) грузить разными клипами и объединять их в один
2) скрывать на клипе все сейчас не нужное(например в оружии меч, если выбран топор и тому подобного множество вещей)

RSS-материал