ru:guide:improv

Различия

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

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

ru:guide:improv [2017/06/19 19:01]
Alexander Yakovlev
ru:guide:improv [2021/01/24 10:42]
Строка 1: Строка 1:
-====== Использование Improv ====== 
-  
-**Improv** ([[https://github.com/sequitur/improv|исходный код]], [[http://improv.readthedocs.io/|документация]]) — это мощный движок процедурной генерации от Бруно Диаса. 
  
-Вопросы того, зачем вам нужен Improv и как его использовать лежат немного за гранью этого документа, но здесь описаны важные детали того, как использовать его с Salet. 
- 
-С ноября 2016го Improv позволяет использовать свой ГСЧ (генератор случайных чисел). Если вы соедините его с ГСЧ Salet (удобно предоставленного как ''salet.rnd''), он будет возвращать один и тот же текст каждый раз, когда игрок загрузит сохранённую игру. Но если вы не сделаете этого, то текст при каждой загрузке будет различаться. 
- 
-Короче, вот минимальный код: 
- 
-<code> 
-Improv = new ImprovEngine(data, { 
-  rng: () -> 
-    return salet.rnd.randf() 
-}) 
-</code> 
- 
-и реальный пример: 
- 
-<code> 
-require('babel-polyfill') 
-require('salet') 
-ImprovEngine = require('improv') 
-Improv = {} 
- 
-$.holdReady( true ) 
-$.getJSON('game/procgen/'+i18n.lang+'.json', (data) -> 
-  Improv = new ImprovEngine(data, { 
-    rng: () -> 
-      return salet.rnd.randf() 
-    filters: [ 
-      ImprovEngine.filters.mismatchFilter() 
-    ] 
-    reincorporate: false 
-  }) 
- 
-  $.holdReady( false ) 
-) 
-</code> 
- 
-где: 
- 
-  * ''babel-polyfill'' нужен для совместимости браузеров. Improv написан на ES6, он не работает в старых браузерах сам по себе. 
-  * Кусок кода с ''holdReady'' загружает данные процедурной генерации при помощи запроса AJAX и запрещает игре начинаться, пока этот запрос не будет выполнен. 
- 
-а остальное объяснено в документации Improv. 
  • ru/guide/improv.txt
  • Последнее изменение: 2021/01/24 10:42
  • (внешнее изменение)