Пару-тройку дней назад присутствовал при дискуссии goraph и Ajenta насчёт структур данных QSP. Под впечатлением от слов goraph, что ограничения работы с массивами, мешают написать настоящее текстовое RPG, набросал модуль работы с таблицами.
Данный модуль предоставляет следующие возможности:
Текущая версия: 1.3.1 (скачать)
Документация on-line: https://ifiction.ru/h/otg_lib_tables_help.html
Пример работы с таблицей:
GS 'Таб.Создать','Персонажи','Имя, Здоровье, Раса' GS 'Таб.СоздатьИндекс','Персонажи','Имя' GS 'Таб.ДобавитьСтроку','Персонажи','Крокодил',90,'Варвар' GS 'Таб.ДобавитьСтроку','Персонажи','Арабелла',77,'Амазонка' GS 'Таб.ДобавитьСтроку','Персонажи','Адельм',60,'Монах' GS 'Таб.ДобавитьСтроку','Персонажи','Каннибал',75,'Варвар' GS 'Таб.ДобавитьСтроку','Персонажи','Марина',77,'Амазонка' GS 'Таб.Сортировать', 'Персонажи', 'Раса,Здоровье-' GS 'Таб.Установить','Персонажи','Адельм','Здоровье',25 GS 'Таб.Выбрать','Персонажи','Раса','=','Варвар' :перебор_строк_таблицы if func('Таб.Следующая','Персонажи','Герой'): *NL func('Таб.Значение','Персонажи','Номер строки')+'. '+$Герой['Имя']+' ('+Герой['Здоровье']+')' JUMP 'перебор_строк_таблицы' end GS 'Таб.Удалить','Персонажи'
Неактивен
Не удается добавить строку больше 8-и элементов
gs 'Table.NewLine', 'test', 1, 2, 3, 4, 5, 6, 7, 8 - все норм
Добавляешь 9-й элемент - Неверное число аргументов оператора / функции!
Неактивен