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

воскресенье, 6 апреля 2014 г.

Admiral HEX (Недели 9-10)

Кнопки
После некоторой борьбы с кнопками в cocos2dx все-таки решил написать свою реализацию. Это позволит сделать нормальную систему приоритетов для тача. Да и в отличии то встроенных понимает что картинки для кнопки могут быть scaled. Также из за необходимости строго выставлять приоритет.

Меню
Больше поработал на меню, для которого какраз кнопки и понадобились
 

Сохранение состояния
Наконец-то добрался до места где мне будет необходимо хранение информации после перезапуска игры. Для этих нужд решил сделать простой key-value через pugixml. В процессе оказалось что cocos2dx не умеет делать путь до файла для каждой платформы - хоть они и предоставляют примеры на сайте как это можно сделать - странно что этого нет внутри самого cocos2dx. Сам же простенький класс для работы с key-value можно найти на github.


Звуки / Музыка
Добавил больше звуковых эффектов на разные действия, а также добавил рандомизированную музыку в бои.
Также появилась вкладка с настройками в которой теперь можно отдельно выключить музыки либо эффекты.


Нужно наверное также будет еще добавить возможность слушать свою музыку.

ColorPicker
Спустя столько времени наконец-то сделал чтобы оба игроки не могли выбрать одинаковый цвет. А также сохранение последнего выбранного цвета в каждой вкладке.

VsAI
Все никак не могу определиться как же должен выглядеть выбор противника - были идеи slider'a чтобы центральный элемент и был выбранным противником, либо даже просто кнопки которые и начинают игру против него, но слайдер нужно для начала еще и реализовать, а будет ли оно понятно конечно не известно.


P.S. Diablo 3 RoS is too much fun...

воскресенье, 9 марта 2014 г.

Admiral HEX (Недели 7-8)

К сожалению первую неделю свободного времени после работы не оставалось, так что много чего не успел.

Пауза
Наконец-то добавил экран паузы, теперь она также автоматически ставится при сворачивании игры и позволяет выйти на главное меню и начать бой заново (останется тотже противник (определенный ai либо игрок), но карта расположение изменятся)

Экран Победы
Экран победы пока просто переиспользуется экран паузы без возможности сделать "resume".





Цвета
Добавил новых цветов игроков кроме красного и зеленого. Также теперь перед началом игры можно выбрать цвет своей армии.



Библиотека
Вынес часто используемый код из нескольких проектов в отдельный репозиторий на github c разделением на чистый c++ и какие-то полезные вещи для cocos2dx.

Музыка

Добавил обертку для CocosDenshion, также теперь при изменении текущей музыки старый трек затихает, а новые постепенно увеличивает свою громкость. Неожиданно много это заняло времени так как я сделал эффект через наследника CCActionInterval, и не занал способа запустить Action не на спрайты сцены. Как оказалось это можно сделать напрямую через ActionManager - CCDirector::sharedDirector()->getActionManager()->addAction


Основое Меню
Начал работу над эффектом во время нажатия на кнопку в меню. Меню разделяется на 2 половины которые разъезжаются в противоположные стороны позволяя выбрать цвет игрока, противника, и тд.

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

Admiral HEX (Недели 5-6)

Автоматическое перемещение войск
Теперь можно указать точку в которую войска будут постепенно переходить
Тут получилась мудреная система отрядов которые знают свою конечную точку и постепенно переходят туда - при этом отряды могут содерать любое число войск. Если напасть на ячейку в момент того как на ней находится отряд идущий дальше - он получит по себе урон если стационарные войска сектора были побеждены. 
Также несколько армий может находится одновременно в одном секторе и продолжить свой путь в разных направлениях.

Изменил принцип выделения секторов
Теперь нельзя выделять сектора на которых нет армий что позволяет проще увидеть где же реально находятся войска
Также теперь можно выделять сами отряды - что позволяет выделить их и не потерять выделение при перемещении в следующий сектор
Сектора с генераторами же выделяются не зависимо от числа войск находящихся на них - что позволяет выделить их зарание и отправить как только там появятся войска


Улучшил алгоритм нахождения пути
Теперь предпочитаются уже захваченые територии, а также в расчете стоимости учитывается количество армии противника через которую придется пройти
Это небходимо для того чтобы не тратить войска при том что они были отправлены и идут к цели автоматически
Предпочитать уже захваченые - позволяет армиям соединяться и занимать менье пространства

ИИ
Добавил новых ИИ - больше про это напишу на след. неделе

Чистка
Раньше для захвата сектора нужно было оставлять там 1, но без этого экран выглядит намного чище и в этом небыло большого смысла так что теперь проходя через сектор - он сразу захватывается.
Это также привело в изменении логики сражений - если нападающие проиграли в ничью - то сектор остается за защищающимися, а не становится ничейным как это было раньше.
А также оставило только числа кратные 5 (столько генерируется за тик)

GUI
Начал создавать основное меню - пока как минимум для возможности выбрать vs ai или против реального игрока