Files
mjs/667.ручноетело.js

61 lines
2.3 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

function РучноеТело(события) {
this.создать = function() {
события.подписать(this);
};
this.обработатьСобытие = function(событие) {
if (событие != "игрок начал прыжок")
{
return;
}
события.отписать(this);
this.настроить();
};
this.настроить = function()
{
var физика = {
inertia: Infinity,
};
// 1.
this.тело1 = Matter.Bodies.rectangle(1200, 300, 40, 40, физика);
Matter.Composite.add(мир.физика.движок.world, this.тело1);
this.элемент1 = document.createElement("div");
document.getElementById("корень").appendChild(this.элемент1);
this.элемент1.style.position = "absolute";
this.элемент1.style.display = "block";
this.элемент1.style.transformOrigin = "center";
this.элемент1.style.width = `40px`;
this.элемент1.style.height = `40px`;
this.элемент1.style.setProperty("background", "url(р/отладка/основа.jpg)");
// 2.
this.тело2 = Matter.Bodies.rectangle(1150, 300, 40, 40, физика);
Matter.Composite.add(мир.физика.движок.world, this.тело2);
this.элемент2 = document.createElement("div");
document.getElementById("корень").appendChild(this.элемент2);
this.элемент2.style.position = "absolute";
this.элемент2.style.display = "block";
this.элемент2.style.transformOrigin = "center";
this.элемент2.style.width = `40px`;
this.элемент2.style.height = `40px`;
this.элемент2.style.setProperty("background", "url(р/отладка/основа.jpg)");
};
this.обновить = function()
{
if (!this.тело1)
{
return;
}
мир.синхронизироватьЭлементТело(this.элемент1, this.тело1);
мир.синхронизироватьЭлементТело(this.элемент2, this.тело2);
};
// Конструктор.
this.создать();
}