@@ -29,6 +29,7 @@ | |||||
<script src="игра/140.Тела.js"></script> | <script src="игра/140.Тела.js"></script> | ||||
<script src="игра/160.Слежение.js"></script> | <script src="игра/160.Слежение.js"></script> | ||||
<script src="игра/180.Объекты.js"></script> | <script src="игра/180.Объекты.js"></script> | ||||
<script src="игра/200.Вид.js"></script> | |||||
<script src="игра/700.Игра.js"></script> | <script src="игра/700.Игра.js"></script> | ||||
<script> | <script> | ||||
var игра = new Игра(); | var игра = new Игра(); | ||||
@@ -1,4 +1,4 @@ | |||||
function Тела(события, физмир) | |||||
function Тела(физмир) | |||||
{ | { | ||||
this.создать = function() | this.создать = function() | ||||
{ | { | ||||
@@ -16,7 +16,6 @@ function Тела(события, физмир) | |||||
this.задано = {}; | this.задано = {}; | ||||
this.тела = {}; | this.тела = {}; | ||||
this.имена = {}; | this.имена = {}; | ||||
события.подписать(this); | |||||
}; | }; | ||||
this.именаЧастей = function(за) | this.именаЧастей = function(за) | ||||
@@ -1,4 +1,4 @@ | |||||
function Слежение(события, изображения, тела) | |||||
function Слежение(изображения, тела) | |||||
{ | { | ||||
this.создать = function() | this.создать = function() | ||||
{ | { | ||||
@@ -8,7 +8,6 @@ function Слежение(события, изображения, тела) | |||||
предел: 0, | предел: 0, | ||||
}; | }; | ||||
this.задано = {}; | this.задано = {}; | ||||
события.подписать(this); | |||||
}; | }; | ||||
this.обновить = function() | this.обновить = function() | ||||
@@ -1,4 +1,4 @@ | |||||
function Объекты(события, состояние) | |||||
function Объекты(состояние) | |||||
{ | { | ||||
this.создать = function() | this.создать = function() | ||||
{ | { | ||||
@@ -6,7 +6,6 @@ function Объекты(события, состояние) | |||||
пр: [0, 0, 40, 20], | пр: [0, 0, 40, 20], | ||||
}; | }; | ||||
this.задано = {}; | this.задано = {}; | ||||
события.подписать(this); | |||||
}; | }; | ||||
this.обновитьИзображение = function(имя) | this.обновитьИзображение = function(имя) | ||||
@@ -0,0 +1,28 @@ | |||||
function Вид(события) | |||||
{ | |||||
this.создать = function() | |||||
{ | |||||
this.задано = {}; | |||||
}; | |||||
this.обработатьКлюч = function(ключ, путь, значение) | |||||
{ | |||||
if (путь[0] != "вид") | |||||
{ | |||||
return; | |||||
} | |||||
let имя = путь[1]; | |||||
let свойство = путь.slice(2).join("."); | |||||
if (!this.задано[имя]) | |||||
{ | |||||
this.задано[имя] = {}; | |||||
} | |||||
this.задано[имя][свойство] = значение; | |||||
события.уведомить(`обновили вид/${имя}`); | |||||
}; | |||||
// Конструктор. | |||||
this.создать(); | |||||
}; |
@@ -8,15 +8,17 @@ function Игра() | |||||
мир.состояние.обработчик = (к, п, з) => { this.обработатьКлюч(к, п, з) }; | мир.состояние.обработчик = (к, п, з) => { this.обработатьКлюч(к, п, з) }; | ||||
мир.физика = new Физика(); | мир.физика = new Физика(); | ||||
мир.изображения = new Изображения(корень), | мир.изображения = new Изображения(корень), | ||||
мир.тела = new Тела(мир.события, мир.физика.движок.world); | |||||
мир.слежение = new Слежение(мир.события, мир.изображения, мир.тела); | |||||
мир.объекты = new Объекты(мир.события, мир.состояние); | |||||
мир.тела = new Тела(мир.физика.движок.world); | |||||
мир.слежение = new Слежение(мир.изображения, мир.тела); | |||||
мир.объекты = new Объекты(мир.состояние); | |||||
мир.вид = new Вид(мир.события); | |||||
this.ключники = [ | this.ключники = [ | ||||
new Заголовок(), | new Заголовок(), | ||||
мир.изображения, | мир.изображения, | ||||
мир.тела, | мир.тела, | ||||
мир.слежение, | мир.слежение, | ||||
мир.объекты, | мир.объекты, | ||||
мир.вид, | |||||
]; | ]; | ||||
var z64 = мир.параметрыЗапуска()["z64"]; | var z64 = мир.параметрыЗапуска()["z64"]; | ||||