Browse Source

-div

master
parent
commit
03465f9866
1 changed files with 35 additions and 20 deletions
  1. +35
    -20
      00130.платформы.js

+ 35
- 20
00130.платформы.js View File

@@ -9,26 +9,19 @@
}, },
задано: {}, задано: {},
тела: {}, тела: {},
div: {},
transform: {},
обновить: function() {
for (var имя in мир.платформы.тела)
{
var тело = мир.платформы.тела[имя];
if (тело.isSleeping)
{
continue;
}
var div = мир.платформы.div[имя];
let x = тело.position.x - div.offsetWidth / 2;
let y = тело.position.y - div.offsetHeight / 2;
let угол = тело.angle;
div.style.transform = `translate(${x}px, ${y}px) rotate(${угол}rad)`;
}
},
элементы: {},
свойстваТела: ["x", "y", "ширина", "высота"],
обновить: обновитьПлатформы,
/*
задатьФизику: задатьФизикуПлатформы,
задатьDiv: задатьDivПлатформы,
*/
}; };




// // // //


мир.ключники.push(function(ключ, путь, значение){ мир.ключники.push(function(ключ, путь, значение){
if (!ключ.startsWith("платформы")) if (!ключ.startsWith("платформы"))
{ {
@@ -74,7 +67,7 @@ console.debug("создать тело", тело);
мир.платформы.тела[имя] = тело; мир.платформы.тела[имя] = тело;


// Создать div. // Создать div.
if (!(имя in мир.платформы.div))
if (!(имя in мир.платформы.элементы))
{ {
var элемент = document.createElement("div"); var элемент = document.createElement("div");
элемент.style.position = "absolute"; элемент.style.position = "absolute";
@@ -84,12 +77,12 @@ console.debug("создать тело", тело);
элемент.style.height = `${высота}px`; элемент.style.height = `${высота}px`;
элемент.style.transformOrigin = `center`; элемент.style.transformOrigin = `center`;
document.body.appendChild(элемент); document.body.appendChild(элемент);
мир.платформы.div[имя] = элемент;
мир.платформы.элементы[имя] = элемент;


} }


// Обновить div. // Обновить div.
var элемент = мир.платформы.div[имя];
var элемент = мир.платформы.элементы[имя];
if (свойство == "ширина") if (свойство == "ширина")
{ {
элемент.style.width = `${ширина}px`; элемент.style.width = `${ширина}px`;
@@ -104,3 +97,25 @@ console.debug("создать тело", тело);
} }


}); });


// // // //


function обновитьПлатформы()
{
for (var имя in мир.платформы.тела)
{
var тело = мир.платформы.тела[имя];
if (тело.isSleeping)
{
continue;
}
var элемент = мир.платформы.элементы[имя];
let x = тело.position.x - элемент.offsetWidth / 2;
let y = тело.position.y - элемент.offsetHeight / 2;
let угол = тело.angle;
элемент.style.transform = `translate(${x}px, ${y}px) rotate(${угол}rad)`;
}
};


Loading…
Cancel
Save