Browse Source

тела

tags/4.1
parent
commit
aaf8eeecc5
2 changed files with 32 additions and 12 deletions
  1. +31
    -11
      4.0/игра/140.Тела.js
  2. +1
    -1
      4.0/игра/700.Игра.js

+ 31
- 11
4.0/игра/140.Тела.js View File

@@ -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;
// Создаём новое составное тело.


+ 1
- 1
4.0/игра/700.Игра.js View File

@@ -15,7 +15,7 @@ function Игра()
мир.виды = new Виды(мир.события);
мир.изображения = new Изображения(мир.события, мир.виды, корень),
мир.физика = new Физика(мир.события);
мир.тела = new Тела(мир.физдвижок.world);
мир.тела = new Тела(мир.события, мир.физика, мир.физдвижок.world);
мир.слежение = new Слежение(мир.изображения, мир.тела);
мир.объекты = new Объекты(мир.состояние);
this.ключники = [


Loading…
Cancel
Save