some
This commit is contained in:
59
130.изображения.js
Normal file
59
130.изображения.js
Normal file
@@ -0,0 +1,59 @@
|
||||
function Изображения(корень)
|
||||
{
|
||||
this.создать = function()
|
||||
{
|
||||
this.умолчание = {
|
||||
x: 0,
|
||||
y: 0,
|
||||
ширина: 100,
|
||||
высота: 100,
|
||||
угол: 0,
|
||||
};
|
||||
this.задано = {};
|
||||
this.элементы = {};
|
||||
};
|
||||
|
||||
this.обработатьКлюч = function(ключ, путь, значение)
|
||||
{
|
||||
var имя = путь[1];
|
||||
var свойство = путь.slice(2).join(".");
|
||||
|
||||
if (!this.задано[имя])
|
||||
{
|
||||
this.задано[имя] = {};
|
||||
}
|
||||
this.задано[имя][свойство] = значение;
|
||||
this.обновитьЭлемент(имя);
|
||||
};
|
||||
|
||||
this.создатьИлиПолучитьЭлемент = function(имя)
|
||||
{
|
||||
var эл = this.элементы[имя];
|
||||
if (эл)
|
||||
{
|
||||
return эл;
|
||||
}
|
||||
|
||||
var ум = this.умолчание;
|
||||
эл = document.createElement("div");
|
||||
эл.id = `изображения-${имя}`;
|
||||
эл.style.position = "absolute";
|
||||
эл.style.display = "block";
|
||||
// Свойства по умолчанию.
|
||||
эл.style.width = `${ум.ширина}px`;
|
||||
эл.style.height = `${ум.высота}px`;
|
||||
эл.style.transform = `translate(${ум.x}px, ${ум.y}px) rotate(${ум.угол}rad)`;
|
||||
this.элементы[имя] = эл;
|
||||
корень.appendChild(эл);
|
||||
return эл;
|
||||
};
|
||||
|
||||
this.обновитьЭлемент = function(имя)
|
||||
{
|
||||
var эл = this.создатьИлиПолучитьЭлемент(имя);
|
||||
|
||||
};
|
||||
|
||||
// Конструктор.
|
||||
this.создать();
|
||||
}
|
||||
@@ -1,56 +1,3 @@
|
||||
/*
|
||||
function Объекты(ключники) {
|
||||
this.создать = function() {
|
||||
this.умолчание = {
|
||||
x: 0,
|
||||
y: 0,
|
||||
ширина: 40,
|
||||
высота: 20,
|
||||
физика: {
|
||||
isStatic: true,
|
||||
},
|
||||
};
|
||||
this.задано = {};
|
||||
this.тела: {},
|
||||
this.имена: {},
|
||||
this.элементы: {},
|
||||
this.свойстваТела: ["x", "y", "ширина", "высота", "физика"],
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
this.задано = {};
|
||||
this.аудио = {};
|
||||
var тут = this;
|
||||
ключники.push(function(ключ, путь, значение) {
|
||||
тут.обработатьКлюч(ключ, путь, значение);
|
||||
});
|
||||
};
|
||||
|
||||
this.обработатьКлюч = function(ключ, путь, значение) {
|
||||
if (!путь[0].startsWith("звуки"))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var имя = путь[1];
|
||||
var свойство = путь.slice(2).join(".");
|
||||
|
||||
if (!this.задано[имя])
|
||||
{
|
||||
this.задано[имя] = {};
|
||||
}
|
||||
this.задано[имя][свойство] = значение;
|
||||
};
|
||||
|
||||
// Конструктор.
|
||||
this.создать();
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
мир.объекты = {
|
||||
умолчание: {
|
||||
x: 0,
|
||||
|
||||
14
700.пуск.js
14
700.пуск.js
@@ -2,15 +2,29 @@ function Пуск()
|
||||
{
|
||||
this.запустить = function()
|
||||
{
|
||||
var корень = document.getElementById("корень");
|
||||
мир.изображения = new Изображения(корень);
|
||||
мир.физика.создать();
|
||||
мир.столкновения.создать();
|
||||
мир.звуки = new Звуки(мир.ключники, мир.события);
|
||||
мир.движение = new Движение(мир.ключники);
|
||||
/**/мир.ограничитель = new Ограничитель();
|
||||
/**/мир.рт = new РучноеТело(мир.события);
|
||||
|
||||
this.настроитьОбработкуКлючей();
|
||||
this.обновить();
|
||||
};
|
||||
|
||||
this.настроитьОбработкуКлючей = function()
|
||||
{
|
||||
мир.ключники.push(function(ключ, путь, значение) {
|
||||
if (путь[0] == "изображения1")
|
||||
{
|
||||
мир.изображения.обработатьКлюч(ключ, путь, значение);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
this.обновить = function()
|
||||
{
|
||||
/**/мир.ограничитель.обновить();
|
||||
|
||||
@@ -69,6 +69,7 @@
|
||||
<script src="100.мир.js"></script>
|
||||
<script src="105.заголовок.js"></script>
|
||||
<script src="120.физика.js"></script>
|
||||
<script src="130.изображения.js"></script>
|
||||
<script src="140.изображения.js"></script>
|
||||
<!--
|
||||
<script src="150.тела.js"></script>
|
||||
|
||||
Reference in New Issue
Block a user