From d44c96e777a3d898313cd374f88d651b79506a45 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: Tue, 5 Oct 2021 14:44:10 +0300
Subject: [PATCH] =?UTF-8?q?=D0=B4=D0=BE=D0=BA=D1=83=D0=BC=D0=B5=D0=BD?=
=?UTF-8?q?=D1=82=D0=B0=D1=86=D0=B8=D1=8F=20=D0=BE=D0=B1=D1=8A=D0=B5=D0=BA?=
=?UTF-8?q?=D1=82=D0=BE=D0=B2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
3.5/игра/180.Объекты.js | 48 ++++++++++---
doc/ru/bodies.html | 4 +-
doc/ru/images.html | 4 +-
doc/ru/item.template | 4 +-
doc/ru/keys.html | 5 +-
doc/ru/keys.md | 2 +
doc/ru/objects.html | 111 +++++++++++++++++++++++++++++
doc/ru/objects.md | 19 +++++
doc/ru/title.html | 4 +-
doc/ru/tracking.html | 4 +-
10 files changed, 184 insertions(+), 21 deletions(-)
create mode 100644 doc/ru/objects.html
create mode 100644 doc/ru/objects.md
diff --git a/3.5/игра/180.Объекты.js b/3.5/игра/180.Объекты.js
index 50882d0..546482a 100644
--- a/3.5/игра/180.Объекты.js
+++ b/3.5/игра/180.Объекты.js
@@ -13,10 +13,10 @@ function Объекты(события, состояние)
{
let имяИзо = `объекты-${имя}`;
let за = this.задано[имя];
- let пр = this.умолчание.пр;
+ let пр = this.пр(имя);
var описание = {
- ширина: за["пр.2"] ? за["пр.2"] : пр[2],
- высота: за["пр.3"] ? за["пр.3"] : пр[3],
+ ширина: пр[2],
+ высота: пр[3],
вид: {},
};
for (var ключ in за)
@@ -36,6 +36,21 @@ function Объекты(события, состояние)
});
};
+ this.обновитьСлежение = function(имя)
+ {
+ let имяС = `объекты-${имя}`;
+ let пр = this.пр(имя);
+ состояние.разобрать({
+ слежение: {
+ [имяС]: {
+ изображение: имяС,
+ тело: имяС,
+ смещение: [-пр[2] / 2, -пр[3] / 2],
+ },
+ },
+ });
+ };
+
this.обработатьКлюч = function(ключ, путь, значение)
{
if (путь[0] != "объекты")
@@ -55,6 +70,7 @@ function Объекты(события, состояние)
if (пр)
{
this.пересоздатьТело(имя);
+ this.обновитьСлежение(имя);
}
this.обновитьИзображение(имя);
};
@@ -62,20 +78,34 @@ function Объекты(события, состояние)
this.пересоздатьТело = function(имя)
{
let имяТела = `объекты-${имя}`;
- let за = this.задано[имя];
- let пр = this.умолчание.пр;
+ let пр = this.пр(имя);
состояние.разобрать({
тела: {
[имяТела]: {
- x: за["пр.0"] ? за["пр.0"] : пр[0],
- y: за["пр.1"] ? за["пр.1"] : пр[1],
- ширина: за["пр.2"] ? за["пр.2"] : пр[2],
- высота: за["пр.3"] ? за["пр.3"] : пр[3],
+ x: пр[0],
+ y: пр[1],
+ ширина: пр[2],
+ высота: пр[3],
+ физика: {
+ isStatic: false,
+ },
},
},
});
};
+ this.пр = function(имя)
+ {
+ let за = this.задано[имя];
+ let пр = this.умолчание.пр;
+ return [
+ за["пр.0"] ? за["пр.0"] : пр[0],
+ за["пр.1"] ? за["пр.1"] : пр[1],
+ за["пр.2"] ? за["пр.2"] : пр[2],
+ за["пр.3"] ? за["пр.3"] : пр[3],
+ ];
+ };
+
// Конструктор.
this.создать();
};
diff --git a/doc/ru/bodies.html b/doc/ru/bodies.html
index 35194bb..03fab74 100644
--- a/doc/ru/bodies.html
+++ b/doc/ru/bodies.html
@@ -78,12 +78,12 @@
}
- Документация МУРОМа
+ Документация МУРОМа-3.5
diff --git a/doc/ru/images.html b/doc/ru/images.html
index 1b931a9..c63729d 100644
--- a/doc/ru/images.html
+++ b/doc/ru/images.html
@@ -78,12 +78,12 @@
}
- Документация МУРОМа
+ Документация МУРОМа-3.5
diff --git a/doc/ru/item.template b/doc/ru/item.template
index 452af00..12e9971 100644
--- a/doc/ru/item.template
+++ b/doc/ru/item.template
@@ -78,12 +78,12 @@
}
- Документация МУРОМа
+ Документация МУРОМа-3.5
diff --git a/doc/ru/keys.html b/doc/ru/keys.html
index 87dc859..b15d0c9 100644
--- a/doc/ru/keys.html
+++ b/doc/ru/keys.html
@@ -78,12 +78,12 @@
}
- Документация МУРОМа
+ Документация МУРОМа-3.5
@@ -99,6 +99,7 @@
- заголовок
- изображения
+- объекты
- слежение
- тела
diff --git a/doc/ru/keys.md b/doc/ru/keys.md
index 1742e98..a91f1d2 100644
--- a/doc/ru/keys.md
+++ b/doc/ru/keys.md
@@ -9,10 +9,12 @@ Lang: ru
1. [заголовок][title]
1. [изображения][images]
+1. [объекты][objects]
1. [слежение][tracking]
1. [тела][bodies]
[bodies]: bodies.html
[images]: images.html
+[objects]: objects.html
[title]: title.html
[tracking]: tracking.html
diff --git a/doc/ru/objects.html b/doc/ru/objects.html
new file mode 100644
index 0000000..bc79ebb
--- /dev/null
+++ b/doc/ru/objects.html
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+ Документация МУРОМа-3.5
+
+
+
+
+
+
+объекты
+
+
+
+
+
Добавление одного или нескольких объектов, которые представляют собой комбинацию изображения, тела и их синхронизацию через слежение.
+
+
Пример № 1. Отображение двух падающих на платформу пауков.
+
+
+
+
+
+
+
+
diff --git a/doc/ru/objects.md b/doc/ru/objects.md
new file mode 100644
index 0000000..de992d6
--- /dev/null
+++ b/doc/ru/objects.md
@@ -0,0 +1,19 @@
+Title: объекты
+Date: 2021-10-05 00:00
+Category: Страница
+Slug: objects
+Lang: ru
+
+Добавление одного или нескольких объектов, которые представляют собой комбинацию [изображения][images], [тела][bodies] и их синхронизацию через [слежение][tracking].
+
+
+
+Пример № 1. Отображение двух падающих на платформу пауков.
+
+
+
+
+
+[bodies]: bodies.html
+[images]: images.html
+[tracking]: tracking.html
diff --git a/doc/ru/title.html b/doc/ru/title.html
index 1ca950e..e6c2f70 100644
--- a/doc/ru/title.html
+++ b/doc/ru/title.html
@@ -78,12 +78,12 @@
}
- Документация МУРОМа
+ Документация МУРОМа-3.5
diff --git a/doc/ru/tracking.html b/doc/ru/tracking.html
index ff3dc31..de7b32e 100644
--- a/doc/ru/tracking.html
+++ b/doc/ru/tracking.html
@@ -78,12 +78,12 @@
}
- Документация МУРОМа
+ Документация МУРОМа-3.5