документация объектов

This commit is contained in:
2021-10-05 14:44:10 +03:00
parent 1b49e1e0b3
commit d44c96e777
10 changed files with 184 additions and 21 deletions

View File

@@ -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.создать();
};