|
|
@@ -6,9 +6,32 @@ function Сцена(состояние, события, тела) |
|
|
|
скорость: [1, 1], |
|
|
|
}; |
|
|
|
this.задано = {}; |
|
|
|
this.сцены = null; |
|
|
|
события.подписать(this); |
|
|
|
}; |
|
|
|
|
|
|
|
this.загрузитьОглавление = function(адрес) |
|
|
|
{ |
|
|
|
var тут = this; |
|
|
|
var запрос = new XMLHttpRequest(); |
|
|
|
запрос.onreadystatechange = function() |
|
|
|
{ |
|
|
|
if (this.readyState == 4) |
|
|
|
{ |
|
|
|
if (this.status == 200) |
|
|
|
{ |
|
|
|
тут.разобратьОглавление(this.responseText); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
console.error("Не удалось загрузить оглавление сцен:", this.status); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
запрос.open("GET", адрес); |
|
|
|
запрос.send(); |
|
|
|
}; |
|
|
|
|
|
|
|
this.обновить = function() |
|
|
|
{ |
|
|
|
this.переместитьИгрока(); |
|
|
@@ -23,6 +46,10 @@ function Сцена(состояние, события, тела) |
|
|
|
|
|
|
|
var свойство = путь.slice(1).join("."); |
|
|
|
this.задано[свойство] = значение; |
|
|
|
if (свойство == "оглавление") |
|
|
|
{ |
|
|
|
this.загрузитьОглавление(значение); |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
this.обработатьНажатиеМышиУказатьИНажать = function(x, y, указатель) |
|
|
@@ -104,6 +131,12 @@ function Сцена(состояние, события, тела) |
|
|
|
Matter.Body.setVelocity(телоИгрока, { x: скоростьX * направление, y: 0 }); |
|
|
|
}; |
|
|
|
|
|
|
|
this.разобратьОглавление = function(содержимое) |
|
|
|
{ |
|
|
|
let код = "this.сцены = " + содержимое; |
|
|
|
eval(код); |
|
|
|
}; |
|
|
|
|
|
|
|
// Конструктор. |
|
|
|
this.создать(); |
|
|
|
}; |