@vnejs/docs 0.2.64 → 0.2.66

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (261) hide show
  1. package/README.md +35 -35
  2. package/architecture/backends.md +18 -0
  3. package/architecture/build.md +37 -0
  4. package/architecture/bundles.md +20 -0
  5. package/architecture/cli.md +25 -0
  6. package/architecture/compatibility.md +22 -0
  7. package/architecture/configs.md +19 -0
  8. package/architecture/contracts.md +30 -0
  9. package/architecture/dependencies.md +55 -0
  10. package/architecture/editor.md +7 -0
  11. package/architecture/games.md +38 -0
  12. package/architecture/helpers.md +14 -0
  13. package/architecture/model.md +43 -0
  14. package/architecture/modules.md +87 -0
  15. package/architecture/packages.md +43 -0
  16. package/architecture/plugins.md +36 -0
  17. package/architecture/uis.md +23 -0
  18. package/changelog/0.2.18.md +7 -0
  19. package/changelog/0.2.19.md +14 -0
  20. package/changelog/0.2.20.md +10 -0
  21. package/changelog/0.2.21.md +5 -0
  22. package/changelog/0.2.22.md +11 -0
  23. package/changelog/0.2.23.md +4 -0
  24. package/changelog/0.2.25.md +6 -0
  25. package/changelog/0.2.26.md +12 -0
  26. package/changelog/0.2.29.md +10 -0
  27. package/changelog/0.2.31.md +5 -0
  28. package/changelog/0.2.32.md +3 -0
  29. package/changelog/0.2.33.md +5 -0
  30. package/changelog/0.2.34.md +8 -0
  31. package/changelog/0.2.35.md +33 -0
  32. package/changelog/0.2.36.md +10 -0
  33. package/changelog/0.2.38.md +19 -0
  34. package/changelog/0.2.39.md +16 -0
  35. package/changelog/0.2.40.md +9 -0
  36. package/changelog/0.2.42.md +3 -0
  37. package/changelog/0.2.43.md +10 -0
  38. package/changelog/0.2.46.md +3 -0
  39. package/changelog/0.2.47.md +25 -0
  40. package/changelog/0.2.49.md +3 -0
  41. package/changelog/0.2.50.md +6 -0
  42. package/changelog/0.2.51.md +6 -0
  43. package/changelog/0.2.52.md +5 -0
  44. package/changelog/0.2.53.md +12 -0
  45. package/changelog/0.2.55.md +19 -0
  46. package/changelog/0.2.56.md +11 -0
  47. package/changelog/0.2.57.md +7 -0
  48. package/changelog/0.2.58.md +8 -0
  49. package/changelog/0.2.59.md +6 -0
  50. package/changelog/0.2.60.md +5 -0
  51. package/changelog/0.2.61.md +11 -0
  52. package/changelog/0.2.62.md +8 -0
  53. package/changelog/0.2.63.md +4 -0
  54. package/changelog/0.2.64.md +4 -0
  55. package/changelog/0.2.65.md +3 -0
  56. package/changelog/0.2.66.md +5 -0
  57. package/changelog/README.md +43 -0
  58. package/manifest.json +66 -5
  59. package/package.json +6 -4
  60. package/plugins/ai/ai.md +29 -29
  61. package/plugins/ai/checkers.md +26 -26
  62. package/plugins/audio/ambient.md +20 -20
  63. package/plugins/audio/audio.md +40 -40
  64. package/plugins/audio/music.md +20 -20
  65. package/plugins/audio/sound.md +20 -20
  66. package/plugins/audio/voice.md +23 -23
  67. package/plugins/canvas/bg.md +44 -44
  68. package/plugins/canvas/bg.speak.md +34 -34
  69. package/plugins/canvas/fill.md +33 -33
  70. package/plugins/canvas/layer.md +35 -35
  71. package/plugins/canvas/sprite.md +46 -46
  72. package/plugins/canvas/sprite.speak.md +33 -33
  73. package/plugins/canvas/text.md +37 -37
  74. package/plugins/canvas/video.md +37 -37
  75. package/plugins/canvas.layers/bl.md +33 -33
  76. package/plugins/canvas.layers/fl.md +33 -33
  77. package/plugins/canvas.layers/ml.md +33 -33
  78. package/plugins/canvas.layers/ul.md +32 -32
  79. package/plugins/canvas.props/animation.md +25 -25
  80. package/plugins/canvas.props/clip.md +22 -22
  81. package/plugins/canvas.props/filters.md +20 -20
  82. package/plugins/canvas.props/mask.md +23 -23
  83. package/plugins/canvas.props/scale.md +20 -20
  84. package/plugins/common/grid.md +23 -23
  85. package/plugins/common/turn.md +18 -18
  86. package/plugins/controls/controls.md +31 -31
  87. package/plugins/controls/cursor.md +54 -54
  88. package/plugins/controls/gamepad.md +56 -56
  89. package/plugins/controls/keyboard.md +17 -17
  90. package/plugins/core/components.md +28 -28
  91. package/plugins/core/interact.md +26 -26
  92. package/plugins/core/logs.md +28 -28
  93. package/plugins/core/media.md +38 -38
  94. package/plugins/core/memory.md +28 -28
  95. package/plugins/core/platforms.md +19 -19
  96. package/plugins/core/scenario.md +48 -48
  97. package/plugins/core/settings.md +24 -24
  98. package/plugins/core/stack.md +39 -39
  99. package/plugins/core/state.md +30 -30
  100. package/plugins/core/storage.md +56 -56
  101. package/plugins/core/system.md +37 -37
  102. package/plugins/core/vendors.md +19 -19
  103. package/plugins/entities/entities.md +16 -16
  104. package/plugins/entities/wallet.md +27 -27
  105. package/plugins/font/montserrat.md +16 -16
  106. package/plugins/game/checkers.md +38 -38
  107. package/plugins/platform/android.md +17 -17
  108. package/plugins/platform/electron.md +21 -21
  109. package/plugins/platform/metric.md +23 -23
  110. package/plugins/rpg/damage.md +22 -22
  111. package/plugins/rpg/hit.md +24 -24
  112. package/plugins/rpg/skills.md +26 -26
  113. package/plugins/save/auto.md +26 -26
  114. package/plugins/save/continue.md +23 -23
  115. package/plugins/save/quick.md +24 -24
  116. package/plugins/save/save.md +37 -37
  117. package/plugins/scales/health.md +17 -17
  118. package/plugins/scales/mana.md +17 -17
  119. package/plugins/scales/scales.md +31 -31
  120. package/plugins/scenario/autoread.md +36 -36
  121. package/plugins/scenario/choose.md +74 -65
  122. package/plugins/scenario/fastforward.md +46 -46
  123. package/plugins/scenario/history.md +41 -41
  124. package/plugins/scenario/pause.md +27 -27
  125. package/plugins/scenario/point_and_click.md +51 -51
  126. package/plugins/scenario/qte.md +54 -54
  127. package/plugins/scenario/random.md +17 -17
  128. package/plugins/settings/filter.md +19 -19
  129. package/plugins/settings/potato.md +22 -22
  130. package/plugins/settings/ratio.md +19 -19
  131. package/plugins/settings/textsize.md +19 -19
  132. package/plugins/settings/volume.md +21 -21
  133. package/plugins/text/inject.md +22 -22
  134. package/plugins/text/locs.md +36 -36
  135. package/plugins/text/meet.md +19 -19
  136. package/plugins/text/smooth.md +33 -33
  137. package/plugins/text/text.md +76 -69
  138. package/plugins/text/wall.md +20 -20
  139. package/plugins/time/date.md +22 -22
  140. package/plugins/time/time.md +23 -23
  141. package/plugins/vars/counters.md +28 -28
  142. package/plugins/vars/flags.md +24 -24
  143. package/plugins/vars/vars.md +29 -29
  144. package/plugins/views/achievement.md +44 -44
  145. package/plugins/views/comment.md +31 -31
  146. package/plugins/views/controls.hints.md +34 -34
  147. package/plugins/views/cursor.md +19 -19
  148. package/plugins/views/fps.md +33 -33
  149. package/plugins/views/gamepad.debug.md +32 -32
  150. package/plugins/views/settings.md +39 -39
  151. package/plugins/views/video.md +37 -37
  152. package/plugins/views.scenario/choose.md +41 -41
  153. package/plugins/views.scenario/interface.controls.md +31 -31
  154. package/plugins/views.scenario/interface.fastforward.md +29 -29
  155. package/plugins/views.scenario/interface.md +74 -74
  156. package/plugins/views.scenario/point_and_click.md +39 -39
  157. package/plugins/views.scenario/qte.md +51 -51
  158. package/plugins/views.screens/checkers.md +35 -35
  159. package/plugins/views.screens/confirm.md +35 -35
  160. package/plugins/views.screens/credits.md +31 -31
  161. package/plugins/views.screens/disclaimer.md +42 -42
  162. package/plugins/views.screens/eula.md +37 -37
  163. package/plugins/views.screens/gallery.full.md +41 -41
  164. package/plugins/views.screens/gallery.md +75 -75
  165. package/plugins/views.screens/gamemenu.md +41 -41
  166. package/plugins/views.screens/history.md +39 -39
  167. package/plugins/views.screens/intro.md +32 -32
  168. package/plugins/views.screens/loading.md +30 -30
  169. package/plugins/views.screens/mainmenu.md +49 -49
  170. package/plugins/views.screens/mainmenu.socials.md +25 -25
  171. package/plugins/views.screens/save.md +66 -66
  172. package/plugins/views.screens/settings.defaults.md +37 -37
  173. package/plugins/views.screens/settings.md +40 -40
  174. package/scenario.catalog/README.md +13 -13
  175. package/scenario.catalog/index.md +35 -35
  176. package/scenario.catalog/stubs/achievement.md +4 -4
  177. package/scenario.catalog/stubs/audio.ambient.md +4 -4
  178. package/scenario.catalog/stubs/audio.music.md +4 -4
  179. package/scenario.catalog/stubs/audio.sound.md +4 -4
  180. package/scenario.catalog/stubs/audio.voice.md +4 -4
  181. package/scenario.catalog/stubs/bl.animation.md +5 -5
  182. package/scenario.catalog/stubs/bl.bg.md +5 -5
  183. package/scenario.catalog/stubs/bl.clip.md +5 -5
  184. package/scenario.catalog/stubs/bl.fill.md +5 -5
  185. package/scenario.catalog/stubs/bl.filter.md +5 -5
  186. package/scenario.catalog/stubs/bl.mask.md +5 -5
  187. package/scenario.catalog/stubs/bl.scale.md +5 -5
  188. package/scenario.catalog/stubs/bl.sprite.md +5 -5
  189. package/scenario.catalog/stubs/bl.text.md +5 -5
  190. package/scenario.catalog/stubs/bl.video.md +5 -5
  191. package/scenario.catalog/stubs/choose.block.md +7 -7
  192. package/scenario.catalog/stubs/choose.md +4 -4
  193. package/scenario.catalog/stubs/choose.option.md +7 -7
  194. package/scenario.catalog/stubs/comment.md +5 -5
  195. package/scenario.catalog/stubs/counter.md +5 -5
  196. package/scenario.catalog/stubs/credits.md +4 -4
  197. package/scenario.catalog/stubs/date.md +4 -4
  198. package/scenario.catalog/stubs/disclaimer.md +5 -5
  199. package/scenario.catalog/stubs/fl.animation.md +5 -5
  200. package/scenario.catalog/stubs/fl.bg.md +5 -5
  201. package/scenario.catalog/stubs/fl.clip.md +5 -5
  202. package/scenario.catalog/stubs/fl.fill.md +5 -5
  203. package/scenario.catalog/stubs/fl.filter.md +5 -5
  204. package/scenario.catalog/stubs/fl.mask.md +5 -5
  205. package/scenario.catalog/stubs/fl.scale.md +5 -5
  206. package/scenario.catalog/stubs/fl.sprite.md +5 -5
  207. package/scenario.catalog/stubs/fl.text.md +5 -5
  208. package/scenario.catalog/stubs/fl.video.md +5 -5
  209. package/scenario.catalog/stubs/flag.md +13 -13
  210. package/scenario.catalog/stubs/interface.md +4 -4
  211. package/scenario.catalog/stubs/intro.md +4 -4
  212. package/scenario.catalog/stubs/mainmenu.md +4 -4
  213. package/scenario.catalog/stubs/ml.animation.md +5 -5
  214. package/scenario.catalog/stubs/ml.bg.md +5 -5
  215. package/scenario.catalog/stubs/ml.clip.md +5 -5
  216. package/scenario.catalog/stubs/ml.fill.md +5 -5
  217. package/scenario.catalog/stubs/ml.filter.md +5 -5
  218. package/scenario.catalog/stubs/ml.mask.md +5 -5
  219. package/scenario.catalog/stubs/ml.scale.md +5 -5
  220. package/scenario.catalog/stubs/ml.sprite.md +5 -5
  221. package/scenario.catalog/stubs/ml.text.md +5 -5
  222. package/scenario.catalog/stubs/ml.video.md +5 -5
  223. package/scenario.catalog/stubs/other.md +6 -6
  224. package/scenario.catalog/stubs/pause.md +5 -5
  225. package/scenario.catalog/stubs/point-and-click.block.md +4 -4
  226. package/scenario.catalog/stubs/point-and-click.md +4 -4
  227. package/scenario.catalog/stubs/point-and-click.option.md +4 -4
  228. package/scenario.catalog/stubs/qte.md +4 -4
  229. package/scenario.catalog/stubs/random.md +4 -4
  230. package/scenario.catalog/stubs/random.option.md +4 -4
  231. package/scenario.catalog/stubs/save.auto.md +4 -4
  232. package/scenario.catalog/stubs/save.md +5 -5
  233. package/scenario.catalog/stubs/scenario.md +4 -4
  234. package/scenario.catalog/stubs/settings.defaults.md +4 -4
  235. package/scenario.catalog/stubs/stack.md +4 -4
  236. package/scenario.catalog/stubs/text.meet.md +4 -4
  237. package/scenario.catalog/stubs/text.wall.md +4 -4
  238. package/scenario.catalog/stubs/time.md +4 -4
  239. package/scenario.catalog/stubs/ul.animation.md +5 -5
  240. package/scenario.catalog/stubs/ul.bg.md +5 -5
  241. package/scenario.catalog/stubs/ul.clip.md +5 -5
  242. package/scenario.catalog/stubs/ul.fill.md +5 -5
  243. package/scenario.catalog/stubs/ul.filter.md +5 -5
  244. package/scenario.catalog/stubs/ul.mask.md +5 -5
  245. package/scenario.catalog/stubs/ul.scale.md +5 -5
  246. package/scenario.catalog/stubs/ul.sprite.md +5 -5
  247. package/scenario.catalog/stubs/ul.text.md +5 -5
  248. package/scenario.catalog/stubs/video.md +4 -4
  249. package/scenario.catalog/stubs/wallet.md +4 -4
  250. package/scenario.guide/README.md +38 -38
  251. package/scenario.guide/audio.md +11 -11
  252. package/scenario.guide/canvas.md +23 -23
  253. package/scenario.guide/choose.md +28 -28
  254. package/scenario.guide/dialogue.md +23 -23
  255. package/scenario.guide/flow.md +21 -21
  256. package/scenario.guide/point-and-click.md +12 -12
  257. package/scenario.guide/qte-random.md +20 -20
  258. package/scenario.guide/vars.md +19 -19
  259. package/scenario.guide/views.md +20 -20
  260. package/CHANGELOG.md +0 -383
  261. package/architecture.md +0 -566
@@ -1,65 +1,65 @@
1
1
  # plugins/scenario/fastforward/
2
2
 
3
- Пакет: `@vnejs/plugins.scenario.fastforward` · namespace: `FASTFORWARD`
3
+ Package: `@vnejs/plugins.scenario.fastforward` · namespace: `FASTFORWARD`
4
4
 
5
- Включает режим ускоренного просмотра с автокликом и проверкой уже просмотренных сцен.
5
+ Fast-forward mode with auto-click and checks for already-viewed scenes.
6
6
 
7
- ## События
7
+ ## Events
8
8
 
9
- Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.scenario.fastforward`.
9
+ Handler payloads and results are typed through module augmentation of the contract (`VneEventPayloadMap` / `VneEventResultMap`). The types live in `@vnejs/contracts.scenario.fastforward`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | ------------ | ---------------------------- | ------------------------------------------------------------------------------------------------------------------- |
13
- | `STOP` | `vne:fastforward:stop` | Остановить воспроизведение. |
14
- | `START` | `vne:fastforward:start` | Начать процесс. |
15
- | `TOGGLE` | `vne:fastforward:toggle` | Событие `TOGGLE` namespace плагина. |
16
- | `EMIT` | `vne:fastforward:emit` | Инициировать действие или цикл. |
17
- | `EMIT_CHECK` | `vne:fastforward:emit_check` | Инициировать действие или цикл. |
18
- | `CHECK` | `vne:fastforward:check` | Проверить состояние или наличие ресурса. |
19
- | `CHANGED` | `vne:fastforward:changed` | Зафиксировать изменение состояния. |
20
- | `VISIT_ADD` | `vne:fastforward:visit_add` | Записать визит: `shared.fastforwardStorage` + стейт и `STORAGE.SET`. Payload: `key`, `group`, поля `SCENARIO.EXEC`. |
21
- | `CLEAR` | `vne:fastforward:clear` | Очистить накопленное состояние. |
11
+ | Key | String | Meaning |
12
+ | ------------ | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
13
+ | `STOP` | `vne:fastforward:stop` | Stop playback. |
14
+ | `START` | `vne:fastforward:start` | Start the process. |
15
+ | `TOGGLE` | `vne:fastforward:toggle` | Plugin namespace `TOGGLE` event. |
16
+ | `EMIT` | `vne:fastforward:emit` | Trigger an action or loop. |
17
+ | `EMIT_CHECK` | `vne:fastforward:emit_check` | Trigger an action or loop. |
18
+ | `CHECK` | `vne:fastforward:check` | Check state or resource presence. |
19
+ | `CHANGED` | `vne:fastforward:changed` | Record a state change. |
20
+ | `VISIT_ADD` | `vne:fastforward:visit_add` | Record a visit: `shared.fastforwardStorage` + state and `STORAGE.SET`. Payload: `key`, `group`, `SCENARIO.EXEC` fields. |
21
+ | `CLEAR` | `vne:fastforward:clear` | Clear accumulated state. |
22
22
 
23
- ## Константы
23
+ ## Constants
24
24
 
25
- | Ключ | Смысл |
26
- | -------- | ------------------------------------------------------ |
27
- | `SOURCE` | `"fastforward"` — ключ в SourcesSet соседних плагинов. |
25
+ | Key | Meaning |
26
+ | -------- | --------------------------------------------------------- |
27
+ | `SOURCE` | `"fastforward"` — key in neighboring plugins’ SourcesSet. |
28
28
 
29
- ## Параметры
29
+ ## Parameters
30
30
 
31
- | Ключ | Тип | Смысл |
32
- | ----------------------- | --------- | -------------------------------------------- |
33
- | `DEFAULT_CHECK_VISITED` | `boolean` | Значение по умолчанию: true. |
34
- | `DEFAULT_DELAY` | `number` | Значение по умолчанию: 50. |
35
- | `DEFAULT_ENABLED` | `boolean` | Значение по умолчанию для включения функции. |
31
+ | Key | Type | Meaning |
32
+ | ----------------------- | --------- | -------------------------------------- |
33
+ | `DEFAULT_CHECK_VISITED` | `boolean` | Default: true. |
34
+ | `DEFAULT_DELAY` | `number` | Default: 50. |
35
+ | `DEFAULT_ENABLED` | `boolean` | Default for whether the feature is on. |
36
36
 
37
- ## Настройки
37
+ ## Settings
38
38
 
39
- | Ключ | Тип | Смысл |
40
- | ------------------------------------------------- | --------- | -------------------------------------------------------------- |
41
- | `CHECK_VISITED` (`vne:fastforward:check_visited`) | `string` | Настройка `vne:fastforward:check_visited` в `shared.settings`. |
42
- | `DELAY` (`vne:fastforward:delay`) | `number` | Настройка `vne:fastforward:delay` в `shared.settings`. |
43
- | `ENABLED` (`vne:fastforward:enabled`) | `boolean` | Включить или выключить функцию. |
39
+ | Key | Type | Meaning |
40
+ | ------------------------------------------------- | --------- | ------------------------------------------------------------- |
41
+ | `CHECK_VISITED` (`vne:fastforward:check_visited`) | `string` | Setting `vne:fastforward:check_visited` in `shared.settings`. |
42
+ | `DELAY` (`vne:fastforward:delay`) | `number` | Setting `vne:fastforward:delay` in `shared.settings`. |
43
+ | `ENABLED` (`vne:fastforward:enabled`) | `boolean` | Turn the feature on or off. |
44
44
 
45
45
  ## Shared
46
46
 
47
- | Поле | Тип | Смысл |
48
- | -------------------- | ------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
49
- | `isFastforwardOn` | `boolean` | Режим прокрутки включён. В `init` модуля `fastforward` сбрасывается через `setValue(false)`; дальше — `START` / `STOP` / `TOGGLE`. |
50
- | `fastforwardStorage` | `Set<string>` | Хеши уже просмотренных строк; наполняется из `STORAGE` в `init` модуля `fastforward.storage`. |
47
+ | Field | Type | Meaning |
48
+ | -------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------- |
49
+ | `isFastforwardOn` | `boolean` | Fast-forward mode on. In `fastforward` module `init` reset via `setValue(false)`; then `START` / `STOP` / `TOGGLE`. |
50
+ | `fastforwardStorage` | `Set<string>` | Hashes of lines already viewed; filled from `STORAGE` in `fastforward.storage` `init`. |
51
51
 
52
- ## Модули
52
+ ## Modules
53
53
 
54
- | Модуль | Зона ответственности |
55
- | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
56
- | `fastforward` | `STOP`, `START`, `CHECK`, `TOGGLE`; `SETTINGS.INIT` DELAY/ENABLED в `setup`; в `init` — `setValue(false)`. |
57
- | `fastforward.emit` | Цикл `EMIT` / `EMIT_CHECK`: `CHECK` → `INTERACT.EMIT`; провал `CHECK` → `STOP`. |
58
- | `fastforward.scenario` | `SCENARIO.EXEC` → hash стейта `fastforward.visits` и `VISIT_ADD`. |
59
- | `fastforward.visits` | `SETTINGS.INIT` CHECK_VISITED в `setup`; `VISIT_ADD` пишет в `shared.fastforwardStorage` и снимок стейта. `CHECK` читает Set. |
60
- | `fastforward.storage` | `VISIT_ADD` → `STORAGE.SET` с `module` = `this.name`. `GET_ALL` / `RM_ALL` / `CLEAR`. `group` = label, `key` = hash; при init hash берётся из хвоста ключа. На диске: `fastforward.storage/{label}.json`. |
54
+ | Module | Role |
55
+ | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
56
+ | `fastforward` | `STOP`, `START`, `CHECK`, `TOGGLE`; `SETTINGS.INIT` DELAY/ENABLED in `setup`; in `init` — `setValue(false)`. |
57
+ | `fastforward.emit` | `EMIT` / `EMIT_CHECK` loop: `CHECK` → `INTERACT.EMIT`; failed `CHECK` → `STOP`. |
58
+ | `fastforward.scenario` | `SCENARIO.EXEC` → hash `fastforward.visits` state and `VISIT_ADD`. |
59
+ | `fastforward.visits` | `SETTINGS.INIT` CHECK_VISITED in `setup`; `VISIT_ADD` writes `shared.fastforwardStorage` and state snapshot. `CHECK` reads the Set. |
60
+ | `fastforward.storage` | `VISIT_ADD` → `STORAGE.SET` with `module` = `this.name`. `GET_ALL` / `RM_ALL` / `CLEAR`. `group` = label, `key` = hash; on init hash from key tail. On disk: `fastforward.storage/{label}.json`. |
61
61
 
62
- ## Близкие плагины
62
+ ## Related plugins
63
63
 
64
64
  ### plugins/core/
65
65
 
@@ -69,6 +69,6 @@ Payloads и результаты хендлеров типизированы ч
69
69
  - [state.md](../core/state.md) — `STATE`: EVENTS.CLEAR, EVENTS.SET
70
70
  - [storage.md](../core/storage.md) — `STORAGE`: EVENTS.GET_ALL, EVENTS.SET, EVENTS.RM_ALL
71
71
 
72
- ### Остальные
72
+ ### Other
73
73
 
74
- - [choose.md](./choose.md) — `CHOOSE`: связка через `compatibility/scenario.choose/scenario.fastforward` (`OPTION_BEFORE` → `FASTFORWARD.CHECK`)
74
+ - [choose.md](./choose.md) — `CHOOSE`: linked via `compatibility/scenario.choose/scenario.fastforward` (`OPTION_BEFORE` → `FASTFORWARD.CHECK`)
@@ -1,67 +1,67 @@
1
1
  # plugins/scenario/history/
2
2
 
3
- Пакет: `@vnejs/plugins.scenario.history` · namespace: `HISTORY`
3
+ Package: `@vnejs/plugins.scenario.history` · namespace: `HISTORY`
4
4
 
5
- Журнал снапшотов состояния. `BACK` возвращает на последнюю запись. Экран журнала — [views.screens/history.md](../views.screens/history.md) (`HISTORY_VIEW`), в `bundles/vn.base`. Этот плагин — в `bundles/vn.skeleton`.
5
+ Log of state snapshots. `BACK` returns to the last entry. Log screen — [views.screens/history.md](../views.screens/history.md) (`HISTORY_VIEW`), in `bundles/vn.base`. This plugin is in `bundles/vn.skeleton`.
6
6
 
7
- ## События
7
+ ## Events
8
8
 
9
- Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.scenario.history`.
9
+ Handler payloads and results are typed through module augmentation of the contract (`VneEventPayloadMap` / `VneEventResultMap`). The types live in `@vnejs/contracts.scenario.history`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | ------------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
13
- | `GET` | `vne:history:get` | Снапшот по `uid` (`MEMORY.GET`). Payload: `{ uid? }`. |
14
- | `SET` | `vne:history:set` | Записать снапшот в `MEMORY` модуля `history.memory`. Payload: `{ uid?, value? }`. |
15
- | `ADD` | `vne:history:add` | Снять snapshot `STATE` и добавить запись. Payload: реплика (`label`/`text`/`args`/`speaker`…) или `{ locKey }`. Пока `shared.isHistoryLoadInProcess` — игнорируется. |
16
- | `LOAD` | `vne:history:load` | Загрузить снапшот в `STATE` и перейти на `state.scenario.label` (`SCENARIO.LABEL_GET`). Payload: `{ uid? }`. На время загрузки ставит `shared.isHistoryLoadInProcess`. |
17
- | `BACK` | `vne:history:back` | `LOAD` последней записи. Пока `shared.isHistoryLoadInProcess` и на пустом журнале ничего не делает. |
18
- | `KEYS` | `vne:history:keys` | Ключи модуля `history.memory` в `MEMORY`. |
19
- | `KEYS_UPDATE` | `vne:history:keys_update` | Прогреть ключи: `GET` по каждому `uid` в стейте журнала. |
11
+ | Key | String | Meaning |
12
+ | ------------- | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
13
+ | `GET` | `vne:history:get` | Snapshot by `uid` (`MEMORY.GET`). Payload: `{ uid? }`. |
14
+ | `SET` | `vne:history:set` | Write snapshot to `MEMORY` of module `history.memory`. Payload: `{ uid?, value? }`. |
15
+ | `ADD` | `vne:history:add` | Snapshot `STATE` and add entry. Payload: reply (`label`/`text`/`args`/`speaker`…) or `{ locKey }`. Ignored while `shared.isHistoryLoadInProcess`. |
16
+ | `LOAD` | `vne:history:load` | Load snapshot into `STATE` and go to `state.scenario.label` (`SCENARIO.LABEL_GET`). Payload: `{ uid? }`. Sets `shared.isHistoryLoadInProcess` while loading. |
17
+ | `BACK` | `vne:history:back` | `LOAD` last entry. Does nothing while `shared.isHistoryLoadInProcess` or when log is empty. |
18
+ | `KEYS` | `vne:history:keys` | Keys of module `history.memory` in `MEMORY`. |
19
+ | `KEYS_UPDATE` | `vne:history:keys_update` | Warm keys: `GET` each `uid` in log state. |
20
20
 
21
- Флаг загрузки — `shared.isHistoryLoadInProcess` (ставит модуль `history.load`; в `postinject` — `false`).
21
+ Load flag — `shared.isHistoryLoadInProcess` (set by module `history.load`; `false` in `postinject`).
22
22
 
23
- ## Константы
23
+ ## Constants
24
24
 
25
- | Ключ | Смысл |
26
- | -------------- | ---------------------------------------------------------------------------------------------------------------------- |
27
- | `LOGS_ACTIONS` | Метки для логов: `ADD` (`add`), `LOAD_START` (`load start`), `LOAD_DELETED` (`load deleted`), `LOAD_END` (`load end`). |
25
+ | Key | Meaning |
26
+ | -------------- | ----------------------------------------------------------------------------------------------------------------- |
27
+ | `LOGS_ACTIONS` | Log labels: `ADD` (`add`), `LOAD_START` (`load start`), `LOAD_DELETED` (`load deleted`), `LOAD_END` (`load end`). |
28
28
 
29
- ## Параметры
29
+ ## Parameters
30
30
 
31
- | Ключ | Тип | Смысл |
32
- | ------------ | -------- | -------------------------------------------- |
33
- | `MAX_LENGTH` | `number` | Максимум записей. Значение по умолчанию: 50. |
31
+ | Key | Type | Meaning |
32
+ | ------------ | -------- | ------------------------- |
33
+ | `MAX_LENGTH` | `number` | Max entries. Default: 50. |
34
34
 
35
- ## Настройки
35
+ ## Settings
36
36
 
37
- Нет.
37
+ None.
38
38
 
39
- ## Модули
39
+ ## Modules
40
40
 
41
- | Модуль | Зона ответственности |
42
- | ---------------- | -------------------------------------------------------------------------------------------------------------------------- |
43
- | `history` | ADD, KEYS_UPDATE. Стейт `{ history }`. |
44
- | `history.back` | BACK. Последняя запись — `globalState.history`. Пока `shared.isHistoryLoadInProcess` и на пустом журнале ничего не делает. |
45
- | `history.load` | LOAD. На время загрузки ставит `shared.isHistoryLoadInProcess`. |
46
- | `history.memory` | `MEMORY.REG` в `setup` (`module: this.name`); GET, SET, KEYS. |
41
+ | Module | Role |
42
+ | ---------------- | ------------------------------------------------------------------------------------------------------------------ |
43
+ | `history` | ADD, KEYS_UPDATE. State `{ history }`. |
44
+ | `history.back` | BACK. Last entry — `globalState.history`. Does nothing while `shared.isHistoryLoadInProcess` or when log is empty. |
45
+ | `history.load` | LOAD. Sets `shared.isHistoryLoadInProcess` while loading. |
46
+ | `history.memory` | `MEMORY.REG` in `setup` (`module: this.name`); GET, SET, KEYS. |
47
47
 
48
- Стейт журнала — у модуля `history` (`globalState.history`). Снапшоты в `MEMORY` лежат под именем модуля `history.memory`.
48
+ Log state belongs to module `history` (`globalState.history`). Snapshots in `MEMORY` use module name `history.memory`.
49
49
 
50
50
  ## Compatibility
51
51
 
52
52
  ### `compatibility/text/scenario.history/`
53
53
 
54
- Пакет: `@vnejs/compatibility.text-with-scenario.history`
54
+ Package: `@vnejs/compatibility.text-with-scenario.history`
55
55
 
56
- На `TEXT.EMIT_NEXT` эмитит `HISTORY.ADD` с `{ label, text, args, speaker, speakerInfo }`. Маркеры `{…}` из текста снимаются. Подключается в `bundles/vn.skeleton`.
56
+ On `TEXT.EMIT_NEXT` emits `HISTORY.ADD` with `{ label, text, args, speaker, speakerInfo }`. `text` — scenario line as-is, including `{…}` markers: that is the localization key. Wired in `bundles/vn.skeleton`.
57
57
 
58
58
  ### `compatibility/scenario.choose/scenario.history/`
59
59
 
60
- Пакет: `@vnejs/compatibility.scenario.choose-with-scenario.history`
60
+ Package: `@vnejs/compatibility.scenario.choose-with-scenario.history`
61
61
 
62
- На `CHOOSE.OPTION_BEFORE` эмитит `HISTORY.ADD` с `{ locKey: "choice" }`. Перевод строки — ключ `choice` в `history.json` экрана. Подключается в `bundles/vn.skeleton`.
62
+ On `CHOOSE.OPTION_BEFORE` emits `HISTORY.ADD` with `{ locKey: "choice" }`. Line translation — key `choice` in the screen `history.json`. Wired in `bundles/vn.skeleton`.
63
63
 
64
- ## Близкие плагины
64
+ ## Related plugins
65
65
 
66
66
  ### plugins/core/
67
67
 
@@ -70,8 +70,8 @@ Payloads и результаты хендлеров типизированы ч
70
70
  - [scenario.md](../core/scenario.md) — `SCENARIO`: EVENTS.LABEL_GET
71
71
  - [state.md](../core/state.md) — `STATE`: EVENTS.SET, EVENTS.CLEAR, EVENTS.GET, EVENTS.LOAD
72
72
 
73
- ### Остальные
73
+ ### Other
74
74
 
75
- - [text.md](../text/text.md) — `TEXT`: `EMIT_NEXT` → `ADD` (compatibility выше)
76
- - [choose.md](./choose.md) — `CHOOSE`: `OPTION_BEFORE` → `ADD` (compatibility выше)
77
- - [views.screens/history.md](../views.screens/history.md) — `HISTORY_VIEW`: экран журнала (`SHOW` / `HIDE`); читает `GET` / `KEYS` / `LOAD`
75
+ - [text.md](../text/text.md) — `TEXT`: `EMIT_NEXT` → `ADD` (compatibility above)
76
+ - [choose.md](./choose.md) — `CHOOSE`: `OPTION_BEFORE` → `ADD` (compatibility above)
77
+ - [views.screens/history.md](../views.screens/history.md) — `HISTORY_VIEW`: log screen (`SHOW` / `HIDE`); reads `GET` / `KEYS` / `LOAD`
@@ -1,43 +1,43 @@
1
1
  # plugins/scenario/pause/
2
2
 
3
- Пакет: `@vnejs/plugins.scenario.pause` · namespace: `PAUSE`
3
+ Package: `@vnejs/plugins.scenario.pause` · namespace: `PAUSE`
4
4
 
5
- Ставит сценарий на паузу до клика игрока или на заданное время через exec-команду.
5
+ Pause the scenario until the player clicks or for a given time via an exec command.
6
6
 
7
- ## События
7
+ ## Events
8
8
 
9
- Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.scenario.pause`.
9
+ Handler payloads and results are typed through module augmentation of the contract (`VneEventPayloadMap` / `VneEventResultMap`). The types live in `@vnejs/contracts.scenario.pause`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | ------- | ----------------- | ---------------------------------------------------------------------------------------------- |
13
- | `EMIT` | `vne:pause:emit` | Если `shared.pauseDisableSources` пуст — `START` с `{ time? }`. Иначе ничего. |
14
- | `START` | `vne:pause:start` | Ждать клик (`INTERACT.PUSH`, ключ `pause`) или `time` мс, пока не `END`. Payload: `{ time? }`. |
15
- | `END` | `vne:pause:end` | Снять таймер, `INTERACT.POP`, завершить ожидание `START`. |
11
+ | Key | String | Meaning |
12
+ | ------- | ----------------- | --------------------------------------------------------------------------------------------- |
13
+ | `EMIT` | `vne:pause:emit` | When `shared.pauseDisableSources` is empty — `START` with `{ time? }`. Else nothing. |
14
+ | `START` | `vne:pause:start` | Wait for click (`INTERACT.PUSH`, key `pause`) or `time` ms until `END`. Payload: `{ time? }`. |
15
+ | `END` | `vne:pause:end` | Clear timer, `INTERACT.POP`, finish `START` wait. |
16
16
 
17
- ## Константы
17
+ ## Constants
18
18
 
19
- | Ключ | Смысл |
20
- | -------------- | ---------------------------------------------------------------------------------------- |
21
- | `LOGS_ACTIONS` | Метки для логов: `EMIT` (`emit`), `START` (`start`), `END` (`end`). `EMIT` пишет `time`. |
19
+ | Key | Meaning |
20
+ | -------------- | ---------------------------------------------------------------------------------- |
21
+ | `LOGS_ACTIONS` | Log labels: `EMIT` (`emit`), `START` (`start`), `END` (`end`). `EMIT` logs `time`. |
22
22
 
23
- ## Параметры
23
+ ## Parameters
24
24
 
25
- Нет.
25
+ None.
26
26
 
27
- ## Настройки
27
+ ## Settings
28
28
 
29
- Нет.
29
+ None.
30
30
 
31
- ## Модули
31
+ ## Modules
32
32
 
33
- | Модуль | Зона ответственности |
34
- | ---------------- | --------------------------------------------------------------------------------------- |
35
- | `pause` | `START` ждёт `END`: клик (`INTERACT`) или таймер `time`. |
36
- | `pause.emit` | В `postinject` — `shared.pauseDisableSources`. `EMIT` → `START`, если набор пуст. |
37
- | `pause.logs` | Логи `EMIT` / `START` / `END` через `EVENTS.LOGS.EMIT`. `EMIT` пишет `time`. |
38
- | `pause.scenario` | `LINE_EXEC_REG` для `$ pause` в `init`. Парсит `time`, эмитит `EMIT`, затем `emit SCENARIO.NEXT`. |
33
+ | Module | Role |
34
+ | ---------------- | ---------------------------------------------------------------------------------------------- |
35
+ | `pause` | `START` waits for `END`: click (`INTERACT`) or timer `time`. |
36
+ | `pause.emit` | In `postinject` — `shared.pauseDisableSources`. `EMIT` → `START` when set is empty. |
37
+ | `pause.logs` | Log `EMIT` / `START` / `END` via `EVENTS.LOGS.EMIT`. `EMIT` logs `time`. |
38
+ | `pause.scenario` | `LINE_EXEC_REG` for `$ pause` in `init`. Parse `time`, emit `EMIT`, then `emit SCENARIO.NEXT`. |
39
39
 
40
- ## Близкие плагины
40
+ ## Related plugins
41
41
 
42
42
  ### plugins/core/
43
43
 
@@ -45,6 +45,6 @@ Payloads и результаты хендлеров типизированы ч
45
45
  - [logs.md](../core/logs.md) — `LOGS`: `EVENTS.LOGS.EMIT` (`action`, …), `CONST.LOGS.FILTER_FROM_RESULT_OPTIONS`
46
46
  - [scenario.md](../core/scenario.md) — `SCENARIO`: EVENTS.NEXT, EVENTS.LINE_EXEC_REG
47
47
 
48
- ### Остальные
48
+ ### Other
49
49
 
50
- — нет
50
+ — None
@@ -1,18 +1,18 @@
1
1
  # plugins/scenario/point_and_click/
2
2
 
3
- Пакет: `@vnejs/plugins.scenario.point_and_click` · namespace: `POINT_AND_CLICK`
3
+ Package: `@vnejs/plugins.scenario.point_and_click` · namespace: `POINT_AND_CLICK`
4
4
 
5
- Обрабатывает сценарные команды `% point-and-click` / `$ point-and-click`, собирает hotspot-опции, хранит состояние в `globalState.point_and_click` и переводит сценарий к выбранной ветке. UI не рендерит — за отображение отвечает [views.scenario/point_and_click.md](../views.scenario/point_and_click.md).
5
+ Handles scenario commands `% point-and-click` / `$ point-and-click`, collects hotspot options, stores state in `globalState.point_and_click`, and moves the scenario to the picked branch. Does not render UI — see [views.scenario/point_and_click.md](../views.scenario/point_and_click.md).
6
6
 
7
- ## Сценарные команды
7
+ ## Scenario commands
8
8
 
9
- | Синтаксис | Смысл |
10
- | ------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
11
- | `% point-and-click` | Открыть point-and-click: собрать `% point-and-click.option`, emit `EMIT`. Если все опции `hided` (или список пуст) — `SKIP` и переход за блок. |
12
- | `% point-and-click.option {icon} {iconHover} x y` | Hotspot; при проходе мимо невыбранного — skip тела по indent. Опционально args `imgWidth` / `imgHeight` (px canvas). |
13
- | `$ point-and-click repeat` | Вернуться к ближайшему `% point-and-click` **выше** текущей строки в том же label и `emit SCENARIO.NEXT`. |
9
+ | Syntax | Meaning |
10
+ | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
11
+ | `% point-and-click` | Open point-and-click: collect `% point-and-click.option`, emit `EMIT`. When all options are `hided` (or list empty) — `SKIP` and exit the block. |
12
+ | `% point-and-click.option {icon} {iconHover} x y` | Hotspot; when passing a non-chosen option — skip body by indent. Optional args `imgWidth` / `imgHeight` (canvas px). |
13
+ | `$ point-and-click repeat` | Return to the nearest `% point-and-click` **above** the current line in the same label and `emit SCENARIO.NEXT`. |
14
14
 
15
- Пример цикла осмотра:
15
+ Example look-around loop:
16
16
 
17
17
  ```vne
18
18
  % point-and-click
@@ -23,68 +23,68 @@
23
23
  $ flag prologue_2_pac_1
24
24
  "…"
25
25
  $ point-and-click repeat
26
- # дальше — когда при повторном входе все option скрыты
26
+ # later — when on re-entry all options are hidden
27
27
  ```
28
28
 
29
- ## События
29
+ ## Events
30
30
 
31
- Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.scenario.point_and_click`.
31
+ Handler payloads and results are typed through module augmentation of the contract (`VneEventPayloadMap` / `VneEventResultMap`). The types live in `@vnejs/contracts.scenario.point_and_click`.
32
32
 
33
- | Ключ | Строка | Смысл |
34
- | -------------- | ---------------------------------- | ---------------------------------------------------------------------------------------------------------- |
35
- | `EMIT` | `vne:point_and_click:emit` | Принять опции и args; если есть видимые — `STATE_UPDATE` и `SHOW`; иначе `SKIP`. |
36
- | `OPTION` | `vne:point_and_click:option` | Выбор hotspot: `HIDE`, `curLine` внутрь опции, сброс state через `STATE_UPDATE`, `emit SCENARIO.NEXT`. |
37
- | `SKIP` | `vne:point_and_click:skip` | Пропустить блок: `curLine` на первую строку после indent-дерева `% point-and-click`, `emit SCENARIO.NEXT`. |
38
- | `SHOW` | `vne:point_and_click:show` | Выбор активен (state готов). Слушает view-плагин. |
39
- | `HIDE` | `vne:point_and_click:hide` | Выбор закрыт. Слушает view-плагин. |
40
- | `EXEC_REG` | `vne:point_and_click:exec_reg` | Зарегистрировать exec-обработчик для подстановки в опции. |
41
- | `EXEC_GET` | `vne:point_and_click:exec_get` | Получить значение через зарегистрированный exec-обработчик (например `hided:` / `disabled:`). |
42
- | `STATE_UPDATE` | `vne:point_and_click:state_update` | Обновить накопленное состояние модуля `point_and_click`. |
33
+ | Key | String | Meaning |
34
+ | -------------- | ---------------------------------- | -------------------------------------------------------------------------------------------------- |
35
+ | `EMIT` | `vne:point_and_click:emit` | Accept options and args; when any are visible — `STATE_UPDATE` and `SHOW`; else `SKIP`. |
36
+ | `OPTION` | `vne:point_and_click:option` | Hotspot pick: `HIDE`, `curLine` into option, reset state via `STATE_UPDATE`, `emit SCENARIO.NEXT`. |
37
+ | `SKIP` | `vne:point_and_click:skip` | Skip block: `curLine` to first line after `% point-and-click` indent tree, `emit SCENARIO.NEXT`. |
38
+ | `SHOW` | `vne:point_and_click:show` | Choice active (state ready). View plugin listens. |
39
+ | `HIDE` | `vne:point_and_click:hide` | Choice closed. View plugin listens. |
40
+ | `EXEC_REG` | `vne:point_and_click:exec_reg` | Register exec handler for substitution in options. |
41
+ | `EXEC_GET` | `vne:point_and_click:exec_get` | Get a value via a registered exec handler (e.g. `hided:` / `disabled:`). |
42
+ | `STATE_UPDATE` | `vne:point_and_click:state_update` | Update accumulated `point_and_click` module state. |
43
43
 
44
- ## Константы
44
+ ## Constants
45
45
 
46
- | Ключ | Смысл |
47
- | --------------------- | -------------------------------------------------------------------- |
48
- | `EXEC_ACTIONS.REPEAT` | Литерал `repeat` для `$ point-and-click repeat`. |
49
- | `LOGS_ACTIONS` | Метки для логов: `EMIT`, `OPTION`, `SKIP`, `SHOW`, `HIDE`, `REPEAT`. |
46
+ | Key | Meaning |
47
+ | --------------------- | --------------------------------------------------------------- |
48
+ | `EXEC_ACTIONS.REPEAT` | Literal `repeat` for `$ point-and-click repeat`. |
49
+ | `LOGS_ACTIONS` | Log labels: `EMIT`, `OPTION`, `SKIP`, `SHOW`, `HIDE`, `REPEAT`. |
50
50
 
51
- ## Параметры
51
+ ## Parameters
52
52
 
53
- Нет.
53
+ None.
54
54
 
55
- ## Настройки
55
+ ## Settings
56
56
 
57
- Нет.
57
+ None.
58
58
 
59
- ## Модули
59
+ ## Modules
60
60
 
61
- | Модуль | Зона ответственности |
62
- | --------------------------------- | ---------------------------------------------------------------------------------------- |
63
- | `point_and_click` | State: `STATE_UPDATE`, синхронизация с `STATE.SET` / `STATE.CLEAR` (→ `SHOW` / `HIDE`). |
64
- | `point_and_click.emit` | Обрабатывает `EMIT` (→ `STATE_UPDATE` + `SHOW` или `SKIP`). |
65
- | `point_and_click.option` | Обрабатывает `OPTION`. |
66
- | `point_and_click.skip` | Обрабатывает `SKIP` через `getBlockSkipShift`. |
67
- | `point_and_click.logs` | Логирование `EMIT` / `OPTION` / `SKIP` / `SHOW` / `HIDE`. |
68
- | `point_and_click.exec` | Реестр обработчиков EXEC_REG / EXEC_GET. |
69
- | `point_and_click.scenario` | Регистрация `% point-and-click`: сбор option-строк через `getBlockOptions`, emit `EMIT`. |
70
- | `point_and_click.scenario.option` | Регистрация `% point-and-click.option`: skip невыбранных веток. |
71
- | `point_and_click.scenario.module` | Регистрация `$ point-and-click`: action `repeat`. |
61
+ | Module | Role |
62
+ | --------------------------------- | -------------------------------------------------------------------------------------- |
63
+ | `point_and_click` | State: `STATE_UPDATE`, sync with `STATE.SET` / `STATE.CLEAR` (→ `SHOW` / `HIDE`). |
64
+ | `point_and_click.emit` | Handles `EMIT` (→ `STATE_UPDATE` + `SHOW` or `SKIP`). |
65
+ | `point_and_click.option` | Handles `OPTION`. |
66
+ | `point_and_click.skip` | Handles `SKIP` via `getBlockSkipShift`. |
67
+ | `point_and_click.logs` | Log `EMIT` / `OPTION` / `SKIP` / `SHOW` / `HIDE`. |
68
+ | `point_and_click.exec` | Registry for EXEC_REG / EXEC_GET handlers. |
69
+ | `point_and_click.scenario` | Register `% point-and-click`: collect option lines via `getBlockOptions`, emit `EMIT`. |
70
+ | `point_and_click.scenario.option` | Register `% point-and-click.option`: skip unchosen branches. |
71
+ | `point_and_click.scenario.module` | Register `$ point-and-click`: action `repeat`. |
72
72
 
73
73
  ## Compatibility
74
74
 
75
75
  ### `compatibility/scenario.point_and_click/vars.flags/`
76
76
 
77
- Пакет: `@vnejs/compatibility.scenario.point_and_click-with-vars.flags`
77
+ Package: `@vnejs/compatibility.scenario.point_and_click-with-vars.flags`
78
78
 
79
- В `init` регистрирует handler на `EXEC_REG` для модуля flags → `VARS_FLAGS.EXEC_CHECK`.
79
+ In `init` registers handler on `EXEC_REG` for flags module → `VARS_FLAGS.EXEC_CHECK`.
80
80
 
81
81
  ### `compatibility/scenario.point_and_click/vars.counters/`
82
82
 
83
- Пакет: `@vnejs/compatibility.scenario.point_and_click-with-vars.counters`
83
+ Package: `@vnejs/compatibility.scenario.point_and_click-with-vars.counters`
84
84
 
85
- В `init` регистрирует handler на `EXEC_REG` для модуля counters → `VARS_COUNTERS.EXEC_CHECK`.
85
+ In `init` registers handler on `EXEC_REG` for counters module → `VARS_COUNTERS.EXEC_CHECK`.
86
86
 
87
- ## Близкие плагины
87
+ ## Related plugins
88
88
 
89
89
  ### plugins/core/
90
90
 
@@ -92,7 +92,7 @@ Payloads и результаты хендлеров типизированы ч
92
92
  - [scenario.md](../core/scenario.md) — `SCENARIO`: EVENTS.NEXT, EVENTS.LINE_EXEC_REG, EVENTS.LINES_GET
93
93
  - [state.md](../core/state.md) — `STATE`: EVENTS.SET, EVENTS.CLEAR
94
94
 
95
- ### Остальные
95
+ ### Other
96
96
 
97
- - [scenario/choose.md](./choose.md) — тот же паттерн `repeat` / `SKIP` / `SHOW` / `HIDE` / `STATE_UPDATE` для текстового выбора
98
- - [views.scenario/point_and_click.md](../views.scenario/point_and_click.md) — `POINT_AND_CLICK_VIEW`: UI hotspots
97
+ - [scenario/choose.md](./choose.md) — same `repeat` / `SKIP` / `SHOW` / `HIDE` / `STATE_UPDATE` pattern for text choice
98
+ - [views.scenario/point_and_click.md](../views.scenario/point_and_click.md) — `POINT_AND_CLICK_VIEW`: hotspot UI