[personal profile] blocknote
 Если вы хотите связать два массива в твайн сугаркуб 2, вы можете использовать один из следующих способов:
  • Создать новый массив, который будет содержать пары значений из двух массивов. Например, вы можете написать:
<<set $monthDays to []>> <<for _i to 0; _i lt $monthNames.length; _i++>>   <<set $monthDays.push([$monthNames[_i], $daysInMonth[_i]])>> <</for>> 

Тогда вы сможете обращаться к элементам нового массива по индексу и получать название месяца и количество дней в нем. Например, если вы хотите отобразить информацию о феврале, вы можете написать:

<<print $monthDays[1][0] + " имеет " + $monthDays[1][1] + " дней">> 
  • Использовать ассоциативный массив, который будет использовать названия месяцев в качестве ключей и количество дней в качестве значений. Например, вы можете написать:
<<set $monthDays to {}>> <<for _i to 0; _i lt $monthNames.length; _i++>>   <<set $monthDays[$monthNames[_i]] to $daysInMonth[_i]>> <</for>> 

Тогда вы сможете обращаться к элементам ассоциативного массива по ключу и получать количество дней в месяце. Например, если вы хотите отобразить информацию о марте, вы можете написать:

<<print "Март имеет " + $monthDays["Март"] + " дней">> 

Вы можете узнать больше о работе с массивами и ассоциативными массивами в твайн сугаркуб 2 в этой статье или этом вопросе.

Надеюсь, это поможет вам решить вашу задачу. Если у вас есть еще вопросы, я буду рад ответить на них. 
 


======================================================
Извините за путаницу. На самом деле, в Twine/SugarCube 2 нет встроенного метода zip для объединения двух массивов в пары. Вместо этого, вы можете воспользоваться циклом for для создания нового массива, содержащего пары элементов из исходных массивов. Вот пример, как это можно сделать:
twine
<<set $monthNames to ["Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"]>>
<<set $daysInMonth to [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]>>
<<set $monthData to []>>
<<for _i to 0; _i lt $monthNames.length; _i++>>
    <<set _pair to {name: $monthNames[_i], days: $daysInMonth[_i]}>>
    <<set $monthData.push(_pair)>>
<</for>>
 
В этом примере, мы используем цикл for, чтобы создать новый массив $monthData, содержащий пары элементов из массивов $monthNames и $daysInMonth. Каждая пара представлена объектом, содержащим название месяца и количество дней в этом месяце.
(will be screened)
(will be screened)
(will be screened)
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

blocknote

September 2025

S M T W T F S
 123456
78910111213
14151617181920
21222324 252627
282930    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Powered by Dreamwidth Studios