diff --git a/0000 b/0000 index ea24c14..0334c48 100644 --- a/0000 +++ b/0000 @@ -1,5 +1,5 @@ МАОН -0.4.3 +0.4.4 https://git.opengamestudio.org/MAOH/MAOH x /🎬.js diff --git a/🏁.js b/🏁.js index 56bcc07..06e07d0 100644 --- a/🏁.js +++ b/🏁.js @@ -1,11 +1,33 @@ const РАССТОЯНИЕ = 40; const КОЭФФИЦИЕНТ_ВЫСОТЫ = 1.5; - -var ТЕМА = "";//"https://git.opengamestudio.org/MAOH/TEMA_M1K/raw/branch/master/0000"; -var ФИШКА = "";//"/TileHigh.gltf"; -var РАСКЛАДКИ = "";//"https://git.opengamestudio.org/MAOH/PACK_M1/raw/branch/master/0000"; -var РАСКЛАДКА = "";//"/X_shaped.layout"; + +// ?? // ?? + + + ОтладитьСменуНастроекПриНажатии = мир => + { + if (мир.позицияНажатияВРисователе.x < 0.9) + { + return; + } + var н = 0; + var нн = 1; + // Переключаем тему и раскладку. + if (мир.настройкиМаджонга["🀄/📦"] == мир.реестрМаджонга["🀄"][0]["📦"]) + { + н = 1; + нн = 0; + } + мир.настройкиМаджонга = { + "🀄/📦": мир.реестрМаджонга["🀄"][н]["📦"], + "🀄/📁": мир.реестрМаджонга["🀄"][н]["📁"][42], + "📍/📦": мир.реестрМаджонга["📍"][нн]["📦"], + "📍/📁": мир.реестрМаджонга["📍"][нн]["📁"][0], + } + мир.уведомить("изменили настройки маджонга"); + }; + // // // // @@ -59,13 +81,12 @@ var РАСКЛАДКА = "";//"/X_shaped.layout"; ПодготовитьсяКСозданиюФишек = мир => { - РАСКЛАДКИ = мир.реестрМаджонга["📍"][0]["📦"]; - РАСКЛАДКА = мир.реестрМаджонга["📍"][0]["📁"][0]; - - var м = мир.модули.модульПоУказателю(РАСКЛАДКИ); - var содержимое = м.содержимое[РАСКЛАДКА]; + var настройки = мир.настройкиМаджонга; + + var м = мир.модули.модульПоУказателю(настройки["📍/📦"]); + var содержимое = м.содержимое[настройки["📍/📁"]]; var позиции = разобратьРаскладкуKMahjongg(содержимое); - + var фишки = []; var группа = 0; for (var номер in позиции) @@ -86,7 +107,7 @@ var РАСКЛАДКА = "";//"/X_shaped.layout"; }; мир.фишкиМаджонга = фишки; - мир.модельФишкиСцены = мир.полигональныеСетки[ТЕМА][ФИШКА]; + мир.модельФишкиСцены = мир.полигональныеСетки[настройки["🀄/📦"]][настройки["🀄/📁"]]; мир.сцена.add(мир.сценаМаджонга); }; @@ -94,28 +115,14 @@ var РАСКЛАДКА = "";//"/X_shaped.layout"; // // // // -СоздатьПримерСцены = мир => -{ - мир.сцена.background = new THREE.Color(0xFFFFFF); - мир.камера.position.y = РАССТОЯНИЕ * КОЭФФИЦИЕНТ_ВЫСОТЫ; - мир.камера.position.z = РАССТОЯНИЕ; - мир.камера.lookAt(new THREE.Vector3(0, 0, 0)); - - мир.свет = new THREE.DirectionalLight(0xFFFFFF, 1); - мир.свет.position.set(-0.5, 1, 0.5).normalize(); - мир.сцена.add(мир.свет); -}; - - -// // // // - - СоздатьМатериалыФишек = мир => { + var настройки = мир.настройкиМаджонга; + мир.материалыФишекСцены = []; мир.выбранныеМатериалыФишекСцены = []; - var текстуры = мир.текстуры[ТЕМА]; + var текстуры = мир.текстуры[настройки["🀄/📦"]]; for (var имя in текстуры) { var текстура = текстуры[имя]; @@ -137,25 +144,24 @@ var РАСКЛАДКА = "";//"/X_shaped.layout"; ПодготовитьсяКЗагрузкеРесурсов = мир => { - // Выбираем первую тему и первую фишку из доступных. - ТЕМА = мир.реестрМаджонга["🀄"][0]["📦"]; - ФИШКА = мир.реестрМаджонга["🀄"][0]["📁"][42]; - + var настройки = мир.настройкиМаджонга; + мир.полигональныеСетки = { - [ТЕМА]: { - [ФИШКА]: null, + [настройки["🀄/📦"]]: { + [настройки["🀄/📁"]]: null, }, }; мир.текстуры = { - [ТЕМА]: { }, + [настройки["🀄/📦"]]: { }, }; - var м = мир.модули.модульПоУказателю(ТЕМА); + var м = мир.модули.модульПоУказателю(настройки["🀄/📦"]); var файлы = Object.keys(м.структура).sort(); - for (var номер in файлы) + var колво = 42; + for (var номер = 0; номер < колво; ++номер) { var файл = файлы[номер]; - мир.текстуры[ТЕМА][файл] = null; + мир.текстуры[настройки["🀄/📦"]][файл] = null; } }; @@ -163,6 +169,58 @@ var РАСКЛАДКА = "";//"/X_shaped.layout"; // // // // +ЗагрузитьМодулиРесурсов = мир => +{ + var настройки = мир.настройкиМаджонга; + var указатели = [ + настройки["🀄/📦"], + настройки["📍/📦"], + ]; + var сообщение = "Загрузка модулей ресурсов ⚬ 加载资源模块 ⚬ Loading resource modules"; + console.debug(сообщение, указатели); + мир.модули.использовали.подписатьРаз(function() { + мир.уведомить("загрузили модули ресурсов"); + }); + мир.модули.использовать(указатели); +}; + + +// // // // + + +ЗадатьНастройкиМаджонга = мир => +{ + // Выбираем первую тему, фишку, раскладку из доступных. + мир.настройкиМаджонга = { + "🀄/📦": мир.реестрМаджонга["🀄"][0]["📦"], + "🀄/📁": мир.реестрМаджонга["🀄"][0]["📁"][42], + "📍/📦": мир.реестрМаджонга["📍"][0]["📦"], + "📍/📁": мир.реестрМаджонга["📍"][0]["📁"][0], + } + + мир.уведомить("изменили настройки маджонга"); +}; + + +// // // // + + +СоздатьПримерСцены = мир => +{ + мир.сцена.background = new THREE.Color(0xFFFFFF); + мир.камера.position.y = РАССТОЯНИЕ * КОЭФФИЦИЕНТ_ВЫСОТЫ; + мир.камера.position.z = РАССТОЯНИЕ; + мир.камера.lookAt(new THREE.Vector3(0, 0, 0)); + + мир.свет = new THREE.DirectionalLight(0xFFFFFF, 1); + мир.свет.position.set(-0.5, 1, 0.5).normalize(); + мир.сцена.add(мир.свет); +}; + + +// // // // + + ПлавноУбратьСтраницуЗагрузкиИСкрытьКрутилку = мир => { плавноСкрытьИУдалить("экран-загрузки", { "задержка": 0.4 }); diff --git a/🏁.череда b/🏁.череда index 5d3d14b..de773e3 100644 --- a/🏁.череда +++ b/🏁.череда @@ -1,20 +1,24 @@ надо окончить загрузку приложения плавно убрать страницу загрузки и скрыть крутилку + создать пример сцены + задать настройки маджонга + +изменили настройки маджонга + загрузить модули ресурсов +загрузили модули ресурсов подготовиться к загрузке ресурсов загрузить полигональные сетки загрузили полигональные сетки загрузить текстуры загрузили текстуры создать материалы фишек - создать пример сцены - подготовить механику маджонга - подготовить сцену маджонга подготовиться к созданию фишек создать фишки в сцене создать индексы фишек маджонга подготовить фишки к выбору нажатие в рисователе + отладить смену настроек при нажатии выбрать узел сцены выбрали узел сцены задать фишку для выбора diff --git a/📦 b/📦 index 8b755e1..625a801 100644 --- a/📦 +++ b/📦 @@ -15,7 +15,8 @@ https://git.opengamestudio.org/MAOH/MOPMA/raw/branch/master/0000 https://git.opengamestudio.org/MAOH/PEEMA/raw/branch/master/0000 https://git.opengamestudio.org/MAOH/TEMA_M1K/raw/branch/master/0000 -https://git.opengamestudio.org/MAOH/TEMA_OT/raw/branch/master/0000 - https://git.opengamestudio.org/MAOH/PACK_M1/raw/branch/master/0000 + +# Убрать после отладки +https://git.opengamestudio.org/MAOH/TEMA_OT/raw/branch/master/0000 https://git.opengamestudio.org/MAOH/PACK_OT/raw/branch/master/0000 \ No newline at end of file