Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
ru:guide:porting [2016/09/19 10:37]
Alexander Yakovlev создано
ru:guide:porting [2018/04/26 14:33]
Alexander Yakovlev CoffeeScript не обязателен
Строка 14: Строка 14:
   - **ВАЖНО** Salet использует класс ''%%room%%'' в то время как Raconteur оперирует над классом ''%%situation%%''   - **ВАЖНО** Salet использует класс ''%%room%%'' в то время как Raconteur оперирует над классом ''%%situation%%''
   - **ВАЖНО** Salet использует свойство ''%%dsc%%'' вместо ''%%content%%''   - **ВАЖНО** Salet использует свойство ''%%dsc%%'' вместо ''%%content%%''
-  - **ВАЖНО** Salet не использует глобальных переменных в ядре. Вам надо явным образом передавать объект ''%%salet%%'' как параметр при создании комнаты. 
   - (совет) Вы можете использовать ''%%elements.js%%'' из Raconteur, но обычно нет нужды городить зависимости ради одной-двух функций. Просто пишите ''%%(content,ref) -> "<a href='_writer_#{ref}' class='once'>#{content}</a>"%%'' вместо ''%%(content,ref) -> a(content).once().writer(ref)%%''. Использование то же самое.   - (совет) Вы можете использовать ''%%elements.js%%'' из Raconteur, но обычно нет нужды городить зависимости ради одной-двух функций. Просто пишите ''%%(content,ref) -> "<a href='_writer_#{ref}' class='once'>#{content}</a>"%%'' вместо ''%%(content,ref) -> a(content).once().writer(ref)%%''. Использование то же самое.
   - Вам может понадобиться проверить свои функции ''%%before%%'' и ''%%after%%'' и переключить их на ''%%enter%%'' и ''%%exit%%''. Это зависит от желаемого поведения.   - Вам может понадобиться проверить свои функции ''%%before%%'' и ''%%after%%'' и переключить их на ''%%enter%%'' и ''%%exit%%''. Это зависит от желаемого поведения.
-  - ''%%Gulpfile%%'' теперь переписан на CoffeeScript. Возможно, вы захотите его отредактировать для своих целей. 
   - Вы можете разбить свою игру на несколько файлов, что не отразится на коде. Ищите ''%%concat%%'' в ''%%Gulpfile.coffee%%''   - Вы можете разбить свою игру на несколько файлов, что не отразится на коде. Ищите ''%%concat%%'' в ''%%Gulpfile.coffee%%''
   - Также см. раздел "изменения по сравнению Undum" ниже.   - Также см. раздел "изменения по сравнению Undum" ниже.
Строка 26: Строка 24:
   - Также Salet использует фреймворк Bootstrap (v4)   - Также Salet использует фреймворк Bootstrap (v4)
   - Salet по умолчанию прячет блок "tools" вместе с качествами персонажа. Они не показываются игроку.   - Salet по умолчанию прячет блок "tools" вместе с качествами персонажа. Они не показываются игроку.
-  - **ВАЖНО** Salet ожидает, что вы будете загружать jQuery и компилятор Markdown как клиентские библиотеки Javascript с хостинга CDN. Raconteur просто склеивает всё в один большой комок. (jQuery вставляется **дважды**)+  - **ВАЖНО** Salet ожидает, что вы будете загружать jQuery и компилятор Markdown как клиентские библиотеки Javascript. Raconteur просто склеивает всё в один большой комок. (jQuery вставляется **дважды**)
  
 ===== Undum ===== ===== Undum =====
  
-Изменения от Undum слишком велики, чтобы портировать игры как есть, но я замечу самые большие нововведения.+Нововведений по сравнению с Undum слишком много, чтобы портировать игры как есть, но я замечу самые большие изменения. (Нововведения не перечислены.)
  
-  - Вы пишете игру на CoffeeScript, а не Javascript. 
   - HTML API убрано.   - HTML API убрано.
   - ''%%animateQuality%%'' убрано. В Salet нет готовых прогресс-линеек.   - ''%%animateQuality%%'' убрано. В Salet нет готовых прогресс-линеек.
-  - Качества не показываются игроку.+  - Качества не показываются игроку автоматически. Вы сами задаёте, что показывать и как это выглядит.
   - Мобильное меню и вся функциональность при изменении размера окна браузера отданы в CSS.   - Мобильное меню и вся функциональность при изменении размера окна браузера отданы в CSS.
   - Функция ''%%enter%%'' переименована в ''%%entering%%''. Функция ''%%enter%%'' также вызывается при входе в ситуацию (теперь - комнату), но сейчас вы можете легко её переписать, не угрожая логике игры.   - Функция ''%%enter%%'' переименована в ''%%entering%%''. Функция ''%%enter%%'' также вызывается при входе в ситуацию (теперь - комнату), но сейчас вы можете легко её переписать, не угрожая логике игры.
Строка 41: Строка 38:
   - ''%%optionText%%'' может быть HTML, а не обычным текстом.   - ''%%optionText%%'' может быть HTML, а не обычным текстом.
   - Вы можете поймать функцию ''%%processClick%%'' и использовать её для настройки интерфейса игры.   - Вы можете поймать функцию ''%%processClick%%'' и использовать её для настройки интерфейса игры.
 +    - Поправка: вы можете переопределить любую функцию интерфейса. Эффекты показа или скрытия, вывод текста, стирание текста…
   - ''%%optionText%%'' также может быть //функцией.//   - ''%%optionText%%'' также может быть //функцией.//
   - ''%%SimpleSituation%%'' убрана.   - ''%%SimpleSituation%%'' убрана.
   - jQuery (вместе с Markdown) библиотека **НЕ** поставляется вместе с вашей игрой. Игрок скачивает её с CDN (или, скорее всего, уже имеет её в кэше браузера). Это значит, что по умолчанию игры не запустятся без подключения к Интернету. Если хотите сделать игру доступной вне сети, вам придётся положить нужные библиотеки самостоятельно.   - jQuery (вместе с Markdown) библиотека **НЕ** поставляется вместе с вашей игрой. Игрок скачивает её с CDN (или, скорее всего, уже имеет её в кэше браузера). Это значит, что по умолчанию игры не запустятся без подключения к Интернету. Если хотите сделать игру доступной вне сети, вам придётся положить нужные библиотеки самостоятельно.
   - ''%%minChoices%%'' убрана.   - ''%%minChoices%%'' убрана.
-  - Частота ситуаций ещё не написана. (см. #18)+  - Частота ситуаций ещё не написана. (см. [[https://gitlab.com/Oreolek/salet-module/issues/1|задачу 1]])
  
 ===== Dendry ===== ===== Dendry =====
  
-  - Вы пишете игру на CoffeeScript. 
   - По умолчанию нет опции ''%%subtitle%%''. Но ''%%optionText%%'' - это HTML, так что вы можете оформлять её как захотите, см. #17   - По умолчанию нет опции ''%%subtitle%%''. Но ''%%optionText%%'' - это HTML, так что вы можете оформлять её как захотите, см. #17
   - Вместо одного свойства ''%%title%%'' в Salet есть отдельные ''%%optionText%%'', название комнаты и любой заголовок, который вы поставите в текст. Смысл в том, чтобы они могли различаться.   - Вместо одного свойства ''%%title%%'' в Salet есть отдельные ''%%optionText%%'', название комнаты и любой заголовок, который вы поставите в текст. Смысл в том, чтобы они могли различаться.
  • ru/guide/porting.txt
  • Последнее изменение: 2018/04/26 14:33
  • Alexander Yakovlev