From b83730c071e44cc6864f52172af32e150c6b9f15 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, 3 Dec 2020 15:18:56 +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 --- 0000 | 2 +- 🎬.js | 63 +++++++++++++++++++++++++++++++++++++++++++++-- 🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° | 5 ++-- 3 files changed, 65 insertions(+), 5 deletions(-) diff --git a/0000 b/0000 index 50a57ff..d4d3075 100644 --- a/0000 +++ b/0000 @@ -1,5 +1,5 @@ Π‘Ρ†Π΅Π½Π° МадТонга -0.1.0 +0.2.0 https://git.opengamestudio.org/MAOH/CEHMA x /🎬.js diff --git a/🎬.js b/🎬.js index 4206f49..26e12b1 100644 --- a/🎬.js +++ b/🎬.js @@ -1,4 +1,63 @@ -Π‘ΠΊΡ€Ρ‹Ρ‚ΡŒΠšΡ€ΡƒΡ‚ΠΈΠ»ΠΊΡƒ = ΠΌΠΈΡ€ => +Π£Π±Ρ€Π°Ρ‚ΡŒΠ‘Ρ‚Π°Ρ€Ρ‹Π΅Π€ΠΈΡˆΠΊΠΈΠ‘Ρ†Π΅Π½Ρ‹ = ΠΌΠΈΡ€ => { - document.getElementById("ΠΊΡ€ΡƒΡ‚ΠΈΠ»ΠΊΠ°").style.display = "none"; + if (ΠΌΠΈΡ€.ΡΡ†Π΅Π½Π°ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.children.length) + { + ΠΌΠΈΡ€.ΡΡ†Π΅Π½Π°ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.remove(ΠΌΠΈΡ€.ΡΡ†Π΅Π½Π°ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.children[0]); + } + var ΠΊΠΎΡ€Π΅Π½ΡŒ = new THREE.Group(); + ΠΌΠΈΡ€.ΡΡ†Π΅Π½Π°ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.add(ΠΊΠΎΡ€Π΅Π½ΡŒ); + ΠΌΠΈΡ€.Ρ„ΠΈΡˆΠΊΠΈΠ‘Ρ†Π΅Π½Ρ‹ = []; +}; + + +// // // // + + +Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠΠΎΠ²Ρ‹Π΅Π€ΠΈΡˆΠΊΠΈΠ‘Ρ†Π΅Π½Ρ‹ = ΠΌΠΈΡ€ => +{ + var Ρ„ΠΈΡˆΠΊΠ° = ΠΌΠΈΡ€.ΠΌΠΎΠ΄Π΅Π»ΡŒΠ€ΠΈΡˆΠΊΠΈΠ‘Ρ†Π΅Π½Ρ‹; + var Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ = Ρ„ΠΈΡˆΠΊΠ°.geometry.boundingBox; + var Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ = [ + (Π³Ρ€Π°Π½ΠΈΡ†Ρ‹.max.x - Π³Ρ€Π°Π½ΠΈΡ†Ρ‹.min.x) / 2, + (Π³Ρ€Π°Π½ΠΈΡ†Ρ‹.max.z - Π³Ρ€Π°Π½ΠΈΡ†Ρ‹.min.z) / 2, + //Π³Ρ€Π°Π½ΠΈΡ†Ρ‹.max.y - Π³Ρ€Π°Π½ΠΈΡ†Ρ‹.min.y, + ]; + var отступ = ΠΌΠΈΡ€.ΠΎΡ‚ΡΡ‚ΡƒΠΏΠœΠ΅ΠΆΠ΄ΡƒΠ€ΠΈΡˆΠΊΠ°ΠΌΠΈΠ‘Ρ†Π΅Π½Ρ‹; + + for (var Π½ΠΎΠΌΠ΅Ρ€ in ΠΌΠΈΡ€.Ρ„ΠΈΡˆΠΊΠΈΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°) + { + // Π£Π·Π΅Π» сцСны. + var Ρ„ΠΌ = ΠΌΠΈΡ€.Ρ„ΠΈΡˆΠΊΠΈΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°[Π½ΠΎΠΌΠ΅Ρ€]; + var Ρ„ = Ρ„ΠΈΡˆΠΊΠ°.clone(); + Ρ„.userData = Π½ΠΎΠΌΠ΅Ρ€; + ΠΌΠΈΡ€.Ρ„ΠΈΡˆΠΊΠΈΠ‘Ρ†Π΅Π½Ρ‹.push(Ρ„); + ΠΌΠΈΡ€.ΡΡ†Π΅Π½Π°ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.add(Ρ„); + // РасполоТСниС. + var ΠΏ = Ρ„ΠΌ["πŸ“"]; + var слой = ΠΏ[0]; + var ряд = ΠΏ[1]; + var столбСц = ΠΏ[2]; + Ρ„.position.x = столбСц * (Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹[0] + отступ); + Ρ„.position.z = ряд * (Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹[1] + отступ); + Ρ„.position.y = слой; + } +}; + + +// // // // + + +Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠ€ΠΈΡˆΠΊΠΈΠ’Π‘Ρ†Π΅Π½Π΅ = ΠΌΠΈΡ€ => +{ + ΠΌΠΈΡ€.ΡƒΠ²Π΅Π΄ΠΎΠΌΠΈΡ‚ΡŒ("Π½Π°Π΄ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„ΠΈΡˆΠΊΠΈ Π² сцСнС"); +}; + + +// // // // + + +ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒΠ‘Ρ†Π΅Π½ΡƒΠœΠ°Π΄ΠΆΠΎΠ½Π³Π° = ΠΌΠΈΡ€ => +{ + ΠΌΠΈΡ€.ΡΡ†Π΅Π½Π°ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π° = new THREE.Group(); + ΠΌΠΈΡ€.ΠΎΡ‚ΡΡ‚ΡƒΠΏΠœΠ΅ΠΆΠ΄ΡƒΠ€ΠΈΡˆΠΊΠ°ΠΌΠΈΠ‘Ρ†Π΅Π½Ρ‹ = 0.02; }; \ No newline at end of file diff --git a/🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° b/🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° index 86fe7f5..b2f88bd 100644 --- a/🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° +++ b/🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° @@ -1,2 +1,3 @@ -Π½Π°Π΄ΠΎ ΠΎΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ прилоТСния - ΡΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΡ€ΡƒΡ‚ΠΈΠ»ΠΊΡƒ \ No newline at end of file +Π½Π°Π΄ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„ΠΈΡˆΠΊΠΈ Π² сцСнС + ΡƒΠ±Ρ€Π°Ρ‚ΡŒ старыС Ρ„ΠΈΡˆΠΊΠΈ сцСны + ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΠΈΡˆΠΊΠΈ сцСны \ No newline at end of file