Ну во-первых была проведена работа на сундуками и ключами, теперь добавлены графические изображения ключей, а также решено что самый дешевый ключ - ржавый. Более дорогой металлический, затем золотой, кристаллический и магический. Но будет еще один очень редкий ключ.
Затем наших художником была нарисована новая панель при открытии сундука, также изменилось и поведение геймплея, теперь можно будет забрать все вещи скопом.
В основном велась работа над ошибками и поиском багов, найдены проблемы с инвентарем (вернее с ее переполнением).
Итак встречайте новый дизайн геймплея, пока не совсем еще готов (не нарисованы новые кнопки ), но в целом довольно не обычный. Предыдущий можно посмотреть тут.
Таймер и кнопка конец хода перекачивала на верх, как и полоски жизни/энергии/AP.
Появилась кнопка отключения лога (чтобы был виден только чат), а кнопки переключатели силу голоса - теперь статичные - нажал и включился режим. А для отправки сообщения нужно просто нажать Enter.
Собственно к чему слова если есть рисунок:
Задачка:
Есть n объектов, которые нужно рандомно разбросать по карте, но - одни объекты должны появляться чаще, а другие реже. Иными словами это как сделать заданное неравномерное распределение :)
Решим что для всех n объектов есть некий коэффициент частоты:
double kk[8]={1,1,0.5,2,2,0.3,0.9};
Причем сами цифры (их абсолютная величина) - не играет роли, нам важна их относительная величина (относительно к другим).
Подсчитаем общий вес: double k_s = sum_double(kk,8);
Он равен = 7.7 :) Хорошее число между прочим получилось.
Вообще сейчас все силы брошены на заявки и турнирную арену, и есть куча предложений, весьма интересных. Но пока сделаем паузу, а т.к. наш арт-директор (будем называть его так :) подкинул нам новые концепты, то реализуем новую объект в лабиринтах - ловушку с газом.
Вчера был изменено управление геймплеем. Теперь практические любое действие в лабиринте делается в один клик, в качестве подсказок используются различной формы курсоры.
Например, для того чтобы идти - достаточно один раз нажать на тот квадрат, на котором курсор превратится в след. Для атаки - нажать на противника, причем для ближней курсор будет отображаться мечом только при возможности атаки (расстояние менее 1 клетки), то для дальней (артиллерии) курсор примет форму мишени, если есть возможность атаки стрелой (не закрывает стеной и прочее).
У нас благодаря нашему дизайнеру, который день и ночь улучшает игру, появилось новое игровое меню. Хотя старое меню назвать меню было сложно - простые квадраты без рисунков.
А теперь довольно симпатично. Само меню сделано на Flash, кнопками, у которых на Over вставлена другая картинка(с рамкой). Из плюсов - можно легко добавлять и изменять пункты меню, добавлять анимацию и прочее.
Добавили в инвентарь, новый вид подсказки, в виде фигурной рамки.
Возник вопрос как определить ширину текста в Flash, поискал в инете - ничего нету (либо плохо искал).
Потому нашел свой вариант. Для TextField'а (который ясен пень динамичный, либо вообще установлена переменная для отображения) - назначаем имя (instance name) например hint.
Скриптом устанавливаем у него свойство hint.autoSize = true, а затем считываем размер его hint._width.
И все.
На выходе получаем вот такое:
Что-бы разнообразить игру, добавили кровь. При уроне противника – на экран выливается кровь :)
При проигрывание события put_strike, срабатывает функция add_blood
Сама по себе функция простая и ничего сложного не содержит. Размер пятна - зависит от урона, а также накапливается в луже. От одного удара – будет одного размера, при таком-же ударе – может стать больше.
Пока внедрял на клиенте ограничения на стрельбу, наткнулся на кучу багов и мелких ошибок, причем тянулись они друг-за-другом.
Например, есть ограничение, что нельзя стрелять по невидимому противнику, невидимость противника сейчас на клиенте определяется чуть по другому, чем на сервере (на сервере используется алгоритм кругового обзора с прямыми лучами, а на клиенте упрощенный пока вариант – до цели меньше чем 4 клетки), была ошибка при движении невидимых противников – они все-же двигались.
Во время новогодней недели мы планировали сделать очень многое, но оказалось совсем наоборот - всем лень и некогда.
Оливье, шампанское - вот чем все заняты.
Из сделанного: