From 7a08280b294db974c4026c9412bdb3a7a4906946 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=93=D0=BB=D0=B0=D0=B2=D1=80=D0=B5=D0=B4=20=7C=20Glavred?= Date: Thu, 8 Oct 2020 16:55:08 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=BE=D1=82=20=D0=93=D0=BB=D0=B0=D0=B2=D1=80?= =?UTF-8?q?=D0=B5=D0=B4=D0=B0=20=D0=93=D0=B8=D1=82=D0=96=D0=A1=20|=20Chang?= =?UTF-8?q?es=20of=20GitJS=20Glavred?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- пуск|run.js | 17 ++++-- пуск|run.череда | 6 +- фишки|tiles.js | 106 +++++++++++++++++++--------------- фишки|tiles.череда | 8 ++- 4 files changed, 82 insertions(+), 55 deletions(-) diff --git a/пуск|run.js b/пуск|run.js index f5066d3..2c36e94 100644 --- a/пуск|run.js +++ b/пуск|run.js @@ -3,6 +3,16 @@ // // // // +ВыбратьРаскладкуX = мир => +{ + мир.выбраннаяРаскладка = "X_shaped"; + мир.уведомить("выбрали раскладку"); +}; + + +// // // // + + ИзменитьРазмерОтрисовщикаThreeJS = мир => { var ширина = window.innerWidth * мир.масштаб; @@ -110,9 +120,9 @@ height: ${размер}%; // // // // -СоздатьФишкиВСцене = мир => +РазобратьРаскладкуKMahjongg = мир => { - мир.уведомить("надо создать фишки в сцене"); + мир.раскладкаKMahjongg.позиции = разобратьРаскладкуKMahjongg(мир.раскладкаKMahjongg.содержимое); }; @@ -139,9 +149,6 @@ height: ${размер}%; мир.свет = new THREE.DirectionalLight(0xffffff, 1); мир.свет.position.set(-0.5, 1, 0.5).normalize(); мир.сцена.add(мир.свет); - - мир.корень = new THREE.Group(); - мир.сцена.add(мир.корень); }; diff --git a/пуск|run.череда b/пуск|run.череда index f8d4355..0ee90ff 100644 --- a/пуск|run.череда +++ b/пуск|run.череда @@ -12,6 +12,10 @@ исправить отслеживание нажатий на IOS запустить отрисовку загрузить ресурсы сцены +загрузили ресурсы сцены + подготовиться к созданию фишек в сцене + выбрать раскладку X + изменили размер окна браузера изменить размер отрисовщика ThreeJS изменили масштаб @@ -20,7 +24,5 @@ выбрали раскладку загрузить выбранную раскладку разобрать раскладку KMahjongg -разобрали раскладку KMahjongg создать фишки в сцене -создали фишки в сцене центрировать сцену \ No newline at end of file diff --git a/фишки|tiles.js b/фишки|tiles.js index 45a7706..3cb7a8d 100644 --- a/фишки|tiles.js +++ b/фишки|tiles.js @@ -357,6 +357,7 @@ console.debug(`ВЫБРАЛИ фишку. номер: '${номер}' группа: '${группа}'`); }; + // // // // @@ -395,40 +396,6 @@ // // // // -УведомитьОСозданииФишекВСцене = мир => -{ - мир.уведомить("создали фишки в сцене"); -}; - - -// // // // - - -ПодготовитьФишкиКВыбору = мир => -{ - мир.номераВыбранныхФишек = []; -}; - - -// // // // - - -СоздатьИндексыФишек = мир => -{ - мир.индексыФишек = {}; - const позиции = мир.раскладкаKMahjongg.позиции; - for (var номер in позиции) - { - var позиция = позиции[номер]; - var индекс = индексПозицииФишки(позиция); - мир.индексыФишек[индекс] = номер; - }; -}; - - -// // // // - - ВывестиНайденнуюФишку = мир => { var номер = мир.номерНайденнойФишки; @@ -460,24 +427,25 @@ // // // // -СоздатьМатериалыВыбранныхФишекОтладочнойТемы = мир => +ПодготовитьФишкиКВыбору = мир => { - мир.материалыВыбранныхФишек = []; - for (var номер in мир.материалыФишек) - { - var материал = мир.материалыФишек[номер].clone(); - материал.color = new THREE.Color(0xff0000); - мир.материалыВыбранныхФишек.push(материал); - } + мир.номераВыбранныхФишек = []; }; // // // // -ПодготовитьПоискФишек = мир => +СоздатьИндексыФишек = мир => { - мир.номераНайденныхФишек = []; + мир.индексыФишек = {}; + const позиции = мир.раскладкаKMahjongg.позиции; + for (var номер in позиции) + { + var позиция = позиции[номер]; + var индекс = индексПозицииФишки(позиция); + мир.индексыФишек[индекс] = номер; + }; }; @@ -560,6 +528,35 @@ // // // // +ПодготовитьКореньФишек = мир => +{ + if (мир.корень && мир.сцена.children.includes(мир.корень)) + { + мир.сцена.remove(мир.корень); + } + мир.корень = new THREE.Group(); + мир.сцена.add(мир.корень); +}; + + +// // // // + + +СоздатьМатериалыВыбранныхФишекОтладочнойТемы = мир => +{ + мир.материалыВыбранныхФишек = []; + for (var номер in мир.материалыФишек) + { + var материал = мир.материалыФишек[номер].clone(); + материал.color = new THREE.Color(0xff0000); + мир.материалыВыбранныхФишек.push(материал); + } +}; + + +// // // // + + СоздатьМатериалыФишекОтладочнойТемы = мир => { мир.материалыФишек = []; @@ -570,4 +567,23 @@ var материал = new THREE.MeshLambertMaterial({map: текстура}); мир.материалыФишек.push(материал); } -}; \ No newline at end of file +}; + + +// // // // + + +СоздатьФишкиВСцене = мир => +{ + мир.уведомить("надо создать фишки в сцене"); +}; + + +// // // // + + +ПодготовитьсяКСозданиюФишекВСцене = мир => +{ + мир.уведомить("надо подготовиться к созданию фишек в сцене"); +}; + diff --git a/фишки|tiles.череда b/фишки|tiles.череда index c189f0b..600c07e 100644 --- a/фишки|tiles.череда +++ b/фишки|tiles.череда @@ -1,12 +1,14 @@ -надо создать фишки в сцене +надо подготовиться к созданию фишек в сцене создать материалы фишек отладочной темы + создать материалы выбранных фишек отладочной темы + +надо создать фишки в сцене + подготовить корень фишек создать узлы фишек создать группы фишек задать материалы фишкам по группам - создать материалы выбранных фишек отладочной темы создать индексы фишек подготовить фишки к выбору - уведомить о создании фишек в сцене включить возможность поиска фишки нажали