-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgui.rpy
More file actions
489 lines (351 loc) · 22.1 KB
/
Copy pathgui.rpy
File metadata and controls
489 lines (351 loc) · 22.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
################################################################################
## Инициализация
################################################################################
## Оператор init offset повышает приоритет инициализации в этом файле над
## другими файлами, из-за чего инициализация здесь запускается первее.
init offset = -2
## Вызываю gui.init, чтобы сбросить стили, чувствительные к стандартным
## значениям, и задать высоту и ширину окна игры.
init python:
gui.init(1280, 720)
## Включить проверку на недопустимые или нестабильные свойства в экранах или
## преобразованиях
define config.check_conflicting_properties = True
################################################################################
## Конфигурируемые Переменные GUI
################################################################################
## Цвета #######################################################################
##
## Цвета текста в интерфейсе.
## Акцентный цвет используется в заголовках и подчёркнутых текстах.
define gui.accent_color = '#00cc99'
## Цвет, используемый в текстовой кнопке, когда она не выбрана и не наведена.
define gui.idle_color = '#888888'
## Small_color используется в маленьком тексте, который должен быть ярче/
## темнее, для того, чтобы выделяться.
define gui.idle_small_color = '#aaaaaa'
## Цвет, используемых в кнопках и панелях, когда они наведены.
define gui.hover_color = '#66e0c1'
## Цвет, используемый текстовой кнопкой, когда она выбрана, но не наведена.
## Кнопка может быть выбрана, если это текущий экран или текущее значение
## настройки.
define gui.selected_color = '#ffffff'
## Цвет, используемый текстовой кнопкой, когда она не может быть выбрана.
define gui.insensitive_color = '#8888887f'
## Цвета, используемые для частей панелей, которые не заполняются. Они
## используются не напрямую, а только при воссоздании файлов изображений.
define gui.muted_color = '#00513d'
define gui.hover_muted_color = '#007a5b'
## Цвета, используемые в тексте диалогов и выборов.
define gui.text_color = '#ffffff'
define gui.interface_text_color = '#ffffff'
## Шрифты и их размеры #########################################################
## Шрифт, используемый внутриигровым текстом.
define gui.text_font = "DejaVuSans.ttf"
## Шрифт, используемый именами персонажей.
define gui.name_text_font = "DejaVuSans.ttf"
## Шрифт, используемый текстом вне игры.
define gui.interface_text_font = "DejaVuSans.ttf"
## Размер нормального текста диалога.
define gui.text_size = 22
## Размер имён персонажей.
define gui.name_text_size = 30
## Размер текста в пользовательском интерфейсе.
define gui.interface_text_size = 22
## Размер заголовков в пользовательском интерфейсе.
define gui.label_text_size = 24
## Размер текста на экране уведомлений.
define gui.notify_text_size = 16
## Размер заголовка игры.
define gui.title_text_size = 50
## Главное и игровое меню. #####################################################
## Изображения, используемые в главном и игровом меню.
define gui.main_menu_background = "gui/main_menu.png"
define gui.game_menu_background = "gui/game_menu.png"
## Диалог ######################################################################
##
## Эти переменные контролируют, как диалог появляется на отдельной строчке.
## Высота текстового окна, содержащего диалог.
define gui.textbox_height = 185
## Местоположение текстового окна по вертикали экрана. 0.0 — верх, 0.5 — центр
## и 1.0 — низ.
define gui.textbox_yalign = 1.0
## Местоположение имени говорящего персонажа по отношению к текстовому окну.
## Это могут быть целые значения в пикселях слева и сверху от начала окна или
## процентное отношение, например, 0.5 для центрирования.
define gui.name_xpos = 240
define gui.name_ypos = 0
## Горизонтальное выравнивание имени персонажа. Это может быть 0.0 для
## левоориентированного, 0.5 для центрированного и 1.0 для правоориентированного
## выравнивания.
define gui.name_xalign = 0.0
## Ширина, высота и границы окна, содержащего имя персонажа или None, для
## автоматической размерки.
define gui.namebox_width = None
define gui.namebox_height = None
## Границы окна, содержащего имя персонажа слева, сверху, справа и снизу по
## порядку.
define gui.namebox_borders = Borders(5, 5, 5, 5)
## Если True, фон текстового окна будет моститься (расширяться по эффекту
## плитки). Если False, фон текстового окна будет фиксированным.
define gui.namebox_tile = False
## Размещение диалога по отношению к текстовому окну. Это могут быть целые
## значения в пикселях слева и сверху от текстового окна или процентное
## отношение, например, 0.5 для центрирования.
define gui.dialogue_xpos = 268
define gui.dialogue_ypos = 50
## Максимальная ширина текста диалога в пикселях.
define gui.dialogue_width = 744
## Горизонтальное выравнивание текста диалога. Это может быть 0.0 для
## левоориентированного, 0.5 для центрированного и 1.0 для правоориентированного
## выравнивания.
define gui.dialogue_text_xalign = 0.0
## Кнопки ######################################################################
##
## Эти переменные, вместе с файлами изображений в gui/button, контролируют
## аспекты того, как отображаются кнопки.
## Ширина и высота кнопки в пикселях. Если None, Ren'Py самостоятельно
## рассчитает размер.
define gui.button_width = None
define gui.button_height = None
## Границы каждой стороны кнопки в порядке слева, сверху, справа, снизу.
define gui.button_borders = Borders(4, 4, 4, 4)
## Если True, фон изображения будет моститься. Если False, фон изображения
## будет линейно масштабирован.
define gui.button_tile = False
## Шрифт, используемый кнопкой.
define gui.button_text_font = gui.interface_text_font
## Размер текста, используемый кнопкой.
define gui.button_text_size = gui.interface_text_size
## Цвет текста в кнопке в различных состояниях.
define gui.button_text_idle_color = gui.idle_color
define gui.button_text_hover_color = gui.hover_color
define gui.button_text_selected_color = gui.selected_color
define gui.button_text_insensitive_color = gui.insensitive_color
## Горизонтальное выравнивание текста в кнопке. (0.0 — лево, 0.5 — по центру,
## 1.0 — право).
define gui.button_text_xalign = 0.0
## Эти переменные переписывают настройки различных видов кнопок. Пожалуйста,
## посмотрите документацию по gui для просмотра всех вариаций кнопок и для чего
## каждая из них нужна.
##
## Эти настройки используются стандартным интерфейсом:
define gui.radio_button_borders = Borders(18, 4, 4, 4)
define gui.check_button_borders = Borders(18, 4, 4, 4)
define gui.confirm_button_text_xalign = 0.5
define gui.page_button_borders = Borders(10, 4, 10, 4)
define gui.quick_button_borders = Borders(10, 4, 10, 0)
define gui.quick_button_text_size = 14
define gui.quick_button_text_idle_color = gui.idle_small_color
define gui.quick_button_text_selected_color = gui.accent_color
## Вы также можете добавить собственные настройки, добавляя правильно
## именованные переменные. Например, вы можете раскомментировать следующую
## строчку, чтобы установить ширину кнопок навигации.
# define gui.navigation_button_width = 250
## Кнопки Выбора ###############################################################
##
## Кнопки выбора используются во внутриигровых меню.
define gui.choice_button_width = 790
define gui.choice_button_height = None
define gui.choice_button_tile = False
define gui.choice_button_borders = Borders(100, 5, 100, 5)
define gui.choice_button_text_font = gui.text_font
define gui.choice_button_text_size = gui.text_size
define gui.choice_button_text_xalign = 0.5
define gui.choice_button_text_idle_color = '#888888'
define gui.choice_button_text_hover_color = "#ffffff"
define gui.choice_button_text_insensitive_color = '#8888887f'
## Кнопки Слотов ###############################################################
##
## Кнопка слотов — особый вид кнопки. Она содержит миниатюру и текст,
## описывающий слот сохранения. Слот сохранения использует файлы из gui/button,
## как и другие виды кнопок.
## Кнопка слота сохранения.
define gui.slot_button_width = 276
define gui.slot_button_height = 206
define gui.slot_button_borders = Borders(10, 10, 10, 10)
define gui.slot_button_text_size = 14
define gui.slot_button_text_xalign = 0.5
define gui.slot_button_text_idle_color = gui.idle_small_color
define gui.slot_button_text_selected_idle_color = gui.selected_color
define gui.slot_button_text_selected_hover_color = gui.hover_color
## Ширина и высота миниатюры, используемой слотом сохранения.
define config.thumbnail_width = 256
define config.thumbnail_height = 144
## Количество колонок и рядов в таблице слотов.
define gui.file_slot_cols = 3
define gui.file_slot_rows = 2
## Позиционирование и Интервалы ################################################
##
## Эти переменные контролируют позиционирование и интервалы различных элементов
## пользовательского интерфейса.
## Местоположение левого края навигационных кнопок по отношению к левому краю
## экрана.
define gui.navigation_xpos = 40
## Вертикальная позиция индикатора пропуска.
define gui.skip_ypos = 10
## Вертикальная позиция экрана уведомлений.
define gui.notify_ypos = 45
## Интервал между выборами в меню.
define gui.choice_spacing = 22
## Кнопки в секции навигации главного и игрового меню.
define gui.navigation_spacing = 4
## Контролирует интервал между настройками.
define gui.pref_spacing = 10
## Контролирует интервал между кнопками настройки.
define gui.pref_button_spacing = 0
## Интервал между кнопками страниц.
define gui.page_spacing = 0
## Интервал между слотами.
define gui.slot_spacing = 10
## Позиция текста главного меню.
define gui.main_menu_text_xalign = 1.0
## Рамки #######################################################################
##
## Эти переменные контролируют вид рамок, содержащих компоненты
## пользовательского интерфейса, когда наложения или окна не представлены.
## Генерируем рамки.
define gui.frame_borders = Borders(4, 4, 4, 4)
## Рамки, используемые в частях экрана подтверждения.
define gui.confirm_frame_borders = Borders(40, 40, 40, 40)
## Рамки, используемые в частях экрана пропуска.
define gui.skip_frame_borders = Borders(16, 5, 50, 5)
## Рамки, используемые в частях экрана уведомлений.
define gui.notify_frame_borders = Borders(16, 5, 40, 5)
## Должны ли фоны рамок моститься?
define gui.frame_tile = False
## Панели, Полосы прокрутки и Ползунки #########################################
##
## Эти настройки контролируют вид и размер панелей, полос прокрутки и ползунков.
##
## Стандартный GUI использует только ползунки и вертикальные полосы прокрутки.
## Все остальные полосы используются только в новосозданных экранах.
## Высота горизонтальных панелей, полос прокрутки и ползунков. Ширина
## вертикальных панелей, полос прокрутки и ползунков.
define gui.bar_size = 25
define gui.scrollbar_size = 12
define gui.slider_size = 25
## True, если изображения панелей должны моститься. False, если они должны быть
## линейно масштабированы.
define gui.bar_tile = False
define gui.scrollbar_tile = False
define gui.slider_tile = False
## Горизонтальные границы.
define gui.bar_borders = Borders(4, 4, 4, 4)
define gui.scrollbar_borders = Borders(4, 4, 4, 4)
define gui.slider_borders = Borders(4, 4, 4, 4)
## Вертикальные границы.
define gui.vbar_borders = Borders(4, 4, 4, 4)
define gui.vscrollbar_borders = Borders(4, 4, 4, 4)
define gui.vslider_borders = Borders(4, 4, 4, 4)
## What to do with unscrollable scrollbars in the game menu. "hide" hides them,
## while None shows them.
define gui.unscrollable = "hide"
## История #####################################################################
##
## Экран истории показывает диалог, который игрок уже прошёл.
## Количество диалоговых блоков истории, которые Ren'Py будет хранить.
define config.history_length = 250
## Высота доступных записей на экране истории, или None, чтобы задать высоту в
## зависимости от производительности.
define gui.history_height = 140
## Дополнительное пространство добавляемое между записями экрана истории.
define gui.history_spacing = 0
## Местоположение, ширина и выравнивание заголовка, показывающего имя
## говорящего персонажа.
define gui.history_name_xpos = 155
define gui.history_name_ypos = 0
define gui.history_name_width = 155
define gui.history_name_xalign = 1.0
## Местоположение, ширина и выравнивание диалогового текста.
define gui.history_text_xpos = 170
define gui.history_text_ypos = 2
define gui.history_text_width = 740
define gui.history_text_xalign = 0.0
## Режим NVL ###################################################################
##
## Экран режима NVL показывает диалог NVL персонажей.
## Границы фона окна NVL.
define gui.nvl_borders = Borders(0, 10, 0, 20)
## Максимальное число показываемых строк в режиме NVL. Когда количество строчек
## начинает превышать это значение, старые строчки очищаются.
define gui.nvl_list_length = 6
## Высота доступных строчек в режиме NVL. Установите на None, чтобы строчки
## динамически регулировали свою высоту.
define gui.nvl_height = 115
## Интервал между строчками в режиме NVL, если gui.nvl_height имеет значение
## None, а также между строчками и меню режима NVL.
define gui.nvl_spacing = 10
## Местоположение, ширина и выравнивание заголовка, показывающего имя
## говорящего персонажа.
define gui.nvl_name_xpos = 430
define gui.nvl_name_ypos = 0
define gui.nvl_name_width = 150
define gui.nvl_name_xalign = 1.0
## Местоположение, ширина и выравнивание диалогового текста.
define gui.nvl_text_xpos = 450
define gui.nvl_text_ypos = 8
define gui.nvl_text_width = 590
define gui.nvl_text_xalign = 0.0
## Местоположение, ширина и выравнивание текста nvl_thought (текст от лица
## персонажа nvl_narrator).
define gui.nvl_thought_xpos = 240
define gui.nvl_thought_ypos = 0
define gui.nvl_thought_width = 780
define gui.nvl_thought_xalign = 0.0
## Местоположение кнопок меню NVL.
define gui.nvl_button_xpos = 450
define gui.nvl_button_xalign = 0.0
## Локализация #################################################################
## Эта настройка контролирует доступ к разрыву линий. Стандартная настройка
## подходит для большинства языков. Список доступных значений можно найти на
## https://www.renpy.org/doc/html/style_properties.html#style-property-language
define gui.language = "unicode"
################################################################################
## Мобильные устройства
################################################################################
init python:
## Этот параметр увеличивает размер быстрых кнопок, чтобы сделать их
## доступнее для нажатия на планшетах и телефонах.
@gui.variant
def touch():
gui.quick_button_borders = Borders(40, 14, 40, 0)
## Это изменяет размеры и интервалы различных элементов GUI, чтобы
## убедиться, что они будут лучше видны на телефонах.
@gui.variant
def small():
## Размеры шрифтов.
gui.text_size = 30
gui.name_text_size = 36
gui.notify_text_size = 25
gui.interface_text_size = 30
gui.button_text_size = 30
gui.label_text_size = 34
## Регулирует местоположение текстового окна.
gui.textbox_height = 240
gui.name_xpos = 80
gui.dialogue_xpos = 90
gui.dialogue_width = 1100
## Изменяет размеры и интервалы различных объектов.
gui.slider_size = 36
gui.choice_button_width = 1240
gui.choice_button_text_size = 30
gui.navigation_spacing = 20
gui.pref_button_spacing = 10
gui.history_height = 190
gui.history_text_width = 690
gui.quick_button_text_size = 20
## Местоположение кнопок слотов.
gui.file_slot_cols = 2
gui.file_slot_rows = 2
## Режим NVL.
gui.nvl_height = 170
gui.nvl_name_width = 305
gui.nvl_name_xpos = 325
gui.nvl_text_width = 915
gui.nvl_text_xpos = 345
gui.nvl_text_ypos = 5
gui.nvl_thought_width = 1240
gui.nvl_thought_xpos = 20
gui.nvl_button_width = 1240
gui.nvl_button_xpos = 20