Показать страницуИстория страницыСсылки сюдаНаверх Эта страница только для чтения. Вы можете посмотреть её исходный текст, но не можете его изменить. Сообщите администратору, если считаете, что это неправильно. ====== Использование 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') 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 — 127.0.0.1