Это старая версия документа!
Техническая подготовка
Заготовка
Самый простой способ - взять заготовку для игры. Проще всего открыть исходный код какой-нибудь существующей игры, например, демо Salet.
- Установите node.js, если их у вас его нет.
- Сделайте копию проекта через
git clone
куда-нибудь или скачайте архив с кодом. - Выполните
npm install
и подождите, пока не установится каждая зависимость. Не должно занять много времени.
Теперь у вас есть копия репозитория, готовая к запуску. Здесь вы и будете работать над своей игрой.
На что стоит обратить внимание в начале работы:
- Откройте
game/begin.coffee
и измените свойствоsalet.game_id
на что-то другое. UUID будет хорошим выбором. Это должна быть уникальная строка, чтобы сохранения этой игры не мешали сохранениям других (если вы работает над несколькими проектами сразу), см. главу «Сохранения» - Сам Salet и игры на нём пишутся на CoffeeScript. Вам необязательно разбираться в CoffeeScript - просто поиграйте с исходным кодом и посмотрите, какой код на что влияет. В этом руководстве есть конкретные куски кода для копирования и вставки.
- Команда
gulp serve
показывает живой просмотр вашей игры. Вы можете отредактировать файлы, и ваш браузер загрузит новую версию как только вы сохраните изменения.
На этом сама подготовка закончена. Собирать игру из исходников нужно командой:
gulp dist
которая создаст папку dist
с готовой игрой. Команда gulp zip
автоматически упакует её в архив.
И начинайте писать!
Кратко о CoffeeScript
Эта вики использует интерпретатор CoffeeScript, чтобы упростить синтаксис JavaScript. Чтобы лучше понять, как устроен код, вы можете прочитать эти статьи:
Короткий текст обозначается кавычками: "текст"
, но также есть и длинный многострочный текст, который обозначается тройными кавычками: """ текст """
. Внутри многострочного текста вам не надо волноваться об отступах.
Вы не обязаны писать на CoffeeScript (можете выбрать любой язык, который заработает в браузере), но он проще чистого Javascript и все примеры даются на нём.
Кратко о Markdown
Весь текст в Salet пишется в синтаксисе Markdown. Например, ссылки выглядят как [текст ссылки](цель ссылки)
, а заголовки - как # Заголовок
Markdown и отступы
В Markdown пробелы имеют большое значение. Если в начале строки он видит много отступов, то думает, что это — программный код.
Но в CoffeeScript пробелы тоже имеют большое значение. Язык использует пробелы для того, чтобы понять, когда заканчиваются блоки описания объектов и ветвлений.
CoffeeScript позволяет писать текст без отступов, но некоторым людям так очень трудно понять, к какому коду относится текст, потому что отступы всё время "прыгают".
Поэтому Salet автоматически обрезает отступы в тексте до количества отступов в первой строке, поэтому вы можете писать так:
room "prelude", dsc: """ # Капуцин [Читать](./_writer_read) """, writers: read: """ Меня называют капyцином. Я за это, комy следyет, yши обоpвy, а пока что не дает мне покоя слава Жан Жака Рyссо. Почемy он все знал? И как детей пеленать и как девиц замyж выдавать! Я бы тоже хотел так все знать. **(Д. Хармс)** """
В примере выше первый блок текста записан с пробелами так, чтобы визуально быть "внутри" блока кода, а второй блок текста — так, чтобы быть на том же уровне.
Начать игру с нуля
Если вы начинаете игру с нуля, то вы уже знаете, что такое веб-разработка и пакеты NPM. В этом случае вы просто выполняете в консоли:
npm install --save salet
Вы можете также использовать CoffeeScript, SASS, Gulp, или написать всё как вам нравится. Salet также требует подключённых библиотек jQuery и marked - с CDN или локально.