понедельник, 24 марта 2014 г.

Love2D + Sublime Text 3 OSX

На выходных решил попробывать написать что-то на lua и love2d, и решил сделать запуск проекта по shortcut, как это например можно сделать в Sublite Text для python просто по нажатию CMD+B

Установка
Сам love2d можно скачать тут: https://love2d.org/
либо по прямой ссылке на текущую версию 0.9.0
После чего перетаскиваем скачанный love.app в Applications

Sublime Text 3 же можно скачать тут: http://www.sublimetext.com/3

Terminal
Для работы с love2d из терминала можно добавить его в .bash_profile

Например так:
open -a TextEdit ~/.bash_profile

если его еще нет - то
touch ~/.bash_profile

и добавляем в конец файла строку
alias love="/Applications/love.app/Contents/MacOS/love"

И после перезапуска терминала, написав
love /path/to/project  // Путь должен содержать в себе файл main.lua
проект будет запущен

Sublime Text
Для того чтобы добавить запуск love2d проектов из sublime text 3 нужно добавить новый вариант сборки:
Tools->Build System->New Build System...
Заменяем то что там есть на 
{
    "shell_cmd": "/Applications/love.app/Contents/MacOS/love \"${project_path}\"",
    "selector": "source.lua"
}
и сохраняем например как love

строка "selector": "source.lua" опциональна, она позволит Sublime Text по разрешению файла определять какую билд систему использовать. В любом случае можно всегда зайти в Tools->Build System и выбрать только что сохраненный вариант сборки.

Теперь если открыть папку содержащую проект (main.lua) в Sublime Text и нажать CMD + B он запустится.

Вместо project_path можно также написать file_path тогда не нужно будет открывать папку, а можно будет собрать проект нажав CMD+B открыв любой файл находящийся в папке с main.lua

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

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

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

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

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





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



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

Музыка

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


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