ОбновитьСписокТемМаджонга = мир => { темы = {}; for (var указатель in мир.модули.модули) { var м = мир.модули.модули[указатель]; var файлы = Object.keys(м.структура).sort(); // Проверяем наличие не менее 43 файлов (42 текстуры и 1 фишка). if (файлы.length < 43) { continue; } // Проверяем наличие 42 изображений. естьТекстура = (файл) => { return рисовательПоддерживаетИзображениеСИменемФайла(файл); }; if (файлы.filter(естьТекстура).length < 42) { continue; } // Проверяем наличие хотя бы одного файла `*.gltf`. естьФишка = (файл) => { return файл.endsWith(".gltf"); }; if (!файлы.filter(естьФишка).length) { continue; } темы[указатель] = { "📁": файлы, }; } мир.реестрМаджонга["🀄"] = темы; console.debug("темы:", темы); }; // // // // ОбновитьСписокРаскладокМаджонга = мир => { раскладки = {}; for (var указатель in мир.модули.модули) { var м = мир.модули.модули[указатель]; var файлы = Object.keys(м.структура).sort(); var лишьРаскладки = true; for (var н in файлы) { var файл = файлы[н]; if (!файл.endsWith(".layout")) { лишьРаскладки = false; break; } } if (лишьРаскладки) { раскладки[указатель] = { "📁": файлы, }; } } мир.реестрМаджонга["📍"] = раскладки; console.debug("раскладки:", раскладки); }; // // // // ОбновитьРеестрМаджонга = мир => { мир.уведомить("надо обновить реестр маджонга"); }; // // // // ПодготовитьРеестрМаджонга = мир => { мир.реестрМаджонга = { "📍": {}, "🀄": {}, }; };