From f86402986da0c86f1f2b41e9ff112dc946bfef74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B8=D1=85=D0=B0=D0=B8=D0=BB=20=D0=9A=D0=B0=D0=BF?= =?UTF-8?q?=D0=B5=D0=BB=D1=8C=D0=BA=D0=BE?= Date: Fri, 8 Oct 2021 16:26:35 +0300 Subject: [PATCH] =?UTF-8?q?=D1=82=D0=B5=D0=BB=D0=B0=20=D0=B1=D0=B5=D0=B7?= =?UTF-8?q?=20=D1=84=D0=B8=D0=B7=D0=B8=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 4.0/игра/100.Изображения.js | 1 - 4.0/игра/140.Тела.js | 36 +++++++++++++--------- 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/4.0/игра/100.Изображения.js b/4.0/игра/100.Изображения.js index 8289367..be615c6 100644 --- a/4.0/игра/100.Изображения.js +++ b/4.0/игра/100.Изображения.js @@ -59,7 +59,6 @@ function Изображения(события, виды, корень) var эл = this.элементы[имя]; var угол = за.угол ? за.угол : ум.угол; -/**/console.debug("ИГР Изображения.обновитьУ имя/угол", имя, угол); var transform = `rotate(${угол}deg) `; let вид = за["вид"]; diff --git a/4.0/игра/140.Тела.js b/4.0/игра/140.Тела.js index 54460e2..f05b50f 100644 --- a/4.0/игра/140.Тела.js +++ b/4.0/игра/140.Тела.js @@ -3,14 +3,9 @@ function Тела(физмир) this.создать = function() { this.умолчание = { - x: 0, - y: 0, - ширина: 40, - высота: 20, + пр: [0, 0, 40, 20], + части: [], часть: false, - физика: { - isStatic: true, - }, }; this.задано = {}; @@ -61,15 +56,15 @@ function Тела(физмир) var за = this.задано[имя]; var ум = this.умолчание; - var x = (за.x != null) ? за.x : ум.x; - var y = (за.y != null) ? за.y : ум.y; - var ширина = за.ширина ? за.ширина : ум.ширина; - var высота = за.высота ? за.высота : ум.высота; + let пр = this.пр(имя); // Переводим x,y из левого верхнего угла в центр. - x = x + ширина / 2.0; - y = y + высота / 2.0; + пр[0] = пр[0] + пр[2] / 2.0; + пр[1] = пр[1] + пр[3] / 2.0; // Параметры тела. var параметры = {}; + /* + * НАДО использовать из ключа физика + * Object.assign(параметры, ум.физика); for (var путь in за) { @@ -79,6 +74,7 @@ function Тела(физмир) мир.задатьПолныйКлюч(параметры, свойство, за[путь]); } } + */ var тело = null; // Создаём новое составное тело. @@ -91,7 +87,7 @@ function Тела(физмир) // Вполне может быть частью другого составного тела. else { - тело = Matter.Bodies.rectangle(x, y, ширина, высота, параметры); + тело = Matter.Bodies.rectangle(пр[0], пр[1], пр[2], пр[3], параметры); } this.тела[имя] = тело; this.имена[тело.id] = имя; @@ -104,6 +100,18 @@ function Тела(физмир) } }; + this.пр = function(имя) + { + let за = this.задано[имя]; + let пр = this.умолчание.пр; + return [ + за["пр.0"] ? за["пр.0"] : пр[0], + за["пр.1"] ? за["пр.1"] : пр[1], + за["пр.2"] ? за["пр.2"] : пр[2], + за["пр.3"] ? за["пр.3"] : пр[3], + ]; + }; + this.телаЧастей = function(имена) { var тела = [];