@@ -12,11 +12,17 @@ | |||||
Matter.Events.on(мир.физика.движок, "collisionActive", function(событие) { | Matter.Events.on(мир.физика.движок, "collisionActive", function(событие) { | ||||
var пары = событие.pairs; | var пары = событие.pairs; | ||||
var вывод = ""; | |||||
for (var номер in пары) | for (var номер in пары) | ||||
{ | { | ||||
var пара = пары[номер]; | var пара = пары[номер]; | ||||
var имя1 = мир.объекты.имена[пара.bodyA.id]; | |||||
var имя2 = мир.объекты.имена[пара.bodyB.id]; | |||||
вывод += `${имя1} x ${имя2}, `; | |||||
//console.debug("столкновение объектов", пара.bodyA.id, пара.bodyB.id); | //console.debug("столкновение объектов", пара.bodyA.id, пара.bodyB.id); | ||||
} | } | ||||
document.getElementById("отладка").innerHTML = вывод; | |||||
}); | }); | ||||
@@ -10,6 +10,7 @@ | |||||
}, | }, | ||||
задано: {}, | задано: {}, | ||||
тела: {}, | тела: {}, | ||||
имена: {}, | |||||
элементы: {}, | элементы: {}, | ||||
свойстваТела: ["x", "y", "ширина", "высота", "физика"], | свойстваТела: ["x", "y", "ширина", "высота", "физика"], | ||||
}; | }; | ||||
@@ -69,6 +70,7 @@ | |||||
{ | { | ||||
var тело = мир.объекты.тела[имя]; | var тело = мир.объекты.тела[имя]; | ||||
Matter.Composite.remove(мир.физика.движок.world, тело); | Matter.Composite.remove(мир.физика.движок.world, тело); | ||||
delete мир.объекты.имена[тело.id]; | |||||
} | } | ||||
// Пересоздать физическое тело. | // Пересоздать физическое тело. | ||||
var за = мир.объекты.задано[имя]; | var за = мир.объекты.задано[имя]; | ||||
@@ -95,6 +97,7 @@ | |||||
var тело = Matter.Bodies.rectangle(x, y, ширина, высота, физика); | var тело = Matter.Bodies.rectangle(x, y, ширина, высота, физика); | ||||
Matter.Composite.add(мир.физика.движок.world, тело); | Matter.Composite.add(мир.физика.движок.world, тело); | ||||
мир.объекты.тела[имя] = тело; | мир.объекты.тела[имя] = тело; | ||||
мир.объекты.имена[тело.id] = имя; | |||||
}; | }; | ||||
@@ -117,7 +117,6 @@ console.debug("в прыжке"); | |||||
var нетДвижения = (Math.abs(мир.игрок.тело.velocity.y) < мир.игрок.прыжок.скоростьОтсутствия); | var нетДвижения = (Math.abs(мир.игрок.тело.velocity.y) < мир.игрок.прыжок.скоростьОтсутствия); | ||||
var клавиша = мир.игрок.задано["клавиши.2"]; | var клавиша = мир.игрок.задано["клавиши.2"]; | ||||
var вверх = (мир.ввод.клавиши[клавиша] == true); | var вверх = (мир.ввод.клавиши[клавиша] == true); | ||||
document.getElementById("отладка").innerHTML = `!статус/вверх/нетДвижения: '${!мир.игрок.прыжок.статус}'/'${вверх}'/'${нетДвижения}'`; | |||||
if ( | if ( | ||||
мир.игрок.прыжок.статус == 0 && | мир.игрок.прыжок.статус == 0 && | ||||
вверх && | вверх && | ||||
@@ -289,7 +289,7 @@ | |||||
ширина: 70, | ширина: 70, | ||||
высота: 120, | высота: 120, | ||||
вид: { | вид: { | ||||
//background: "url(р/вещи/самовар.png) no-repeat scroll 0% 0% / contain", | |||||
background: "url(р/вещи/самовар.png) no-repeat scroll 0% 0% / contain", | |||||
}, | }, | ||||
физика: { | физика: { | ||||
isStatic: false, | isStatic: false, | ||||