тела
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
function Тела(физмир)
|
||||
function Тела(события, физика, физмир)
|
||||
{
|
||||
this.создать = function()
|
||||
{
|
||||
@@ -11,6 +11,7 @@ function Тела(физмир)
|
||||
this.задано = {};
|
||||
this.тела = {};
|
||||
this.имена = {};
|
||||
события.подписать(this);
|
||||
};
|
||||
|
||||
this.именаЧастей = function(за)
|
||||
@@ -44,7 +45,30 @@ function Тела(физмир)
|
||||
this.пересоздатьТело(имя);
|
||||
};
|
||||
|
||||
this.пересоздатьТело = function(имя) {
|
||||
this.обработатьСобытие = function(событие)
|
||||
{
|
||||
let префикс = "физика/";
|
||||
if (событие.startsWith(префикс))
|
||||
{
|
||||
let физ = событие.substring(префикс.length);
|
||||
this.пересоздатьТелаФизики(физ);
|
||||
}
|
||||
};
|
||||
|
||||
this.пересоздатьТелаФизики = function(физ)
|
||||
{
|
||||
for (let имя in this.задано)
|
||||
{
|
||||
let заданнаяФизика = this.задано[имя]["физика"];
|
||||
if (заданнаяФизика && заданнаяФизика == физ)
|
||||
{
|
||||
this.пересоздатьТело(имя);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
this.пересоздатьТело = function(имя)
|
||||
{
|
||||
// Удаляем старое тело.
|
||||
if (имя in this.тела)
|
||||
{
|
||||
@@ -62,19 +86,15 @@ function Тела(физмир)
|
||||
пр[1] = пр[1] + пр[3] / 2.0;
|
||||
// Параметры тела.
|
||||
var параметры = {};
|
||||
/*
|
||||
* НАДО использовать из ключа физика
|
||||
*
|
||||
Object.assign(параметры, ум.физика);
|
||||
for (var путь in за)
|
||||
if (за.физика)
|
||||
{
|
||||
if (путь.startsWith("физика"))
|
||||
let заф = физика.задано[за.физика];
|
||||
for (let параметр in заф)
|
||||
{
|
||||
var свойство = путь.slice(7);
|
||||
мир.задатьПолныйКлюч(параметры, свойство, за[путь]);
|
||||
мир.задатьПолныйКлюч(параметры, параметр, заф[параметр]);
|
||||
}
|
||||
}
|
||||
*/
|
||||
/**/console.debug("ИГР Тела.пересоздатьТ имя/параметры", имя, параметры);
|
||||
|
||||
var тело = null;
|
||||
// Создаём новое составное тело.
|
||||
|
||||
@@ -15,7 +15,7 @@ function Игра()
|
||||
мир.виды = new Виды(мир.события);
|
||||
мир.изображения = new Изображения(мир.события, мир.виды, корень),
|
||||
мир.физика = new Физика(мир.события);
|
||||
мир.тела = new Тела(мир.физдвижок.world);
|
||||
мир.тела = new Тела(мир.события, мир.физика, мир.физдвижок.world);
|
||||
мир.слежение = new Слежение(мир.изображения, мир.тела);
|
||||
мир.объекты = new Объекты(мир.состояние);
|
||||
this.ключники = [
|
||||
|
||||
Reference in New Issue
Block a user