Browse Source

сенсор игрока рабтает

master
parent
commit
21a892188c
4 changed files with 39 additions and 25 deletions
  1. +4
    -0
      160.объекты.js
  2. +0
    -1
      400.столкновения.js
  3. +14
    -3
      667.ручноетело.js
  4. +21
    -21
      800.пример.json.js

+ 4
- 0
160.объекты.js View File

@@ -50,6 +50,10 @@
{
var тело = мир.объекты.тела[имя];
var элемент = мир.объекты.элементы[имя];
if (!тело || !элемент)
{
continue;
}
var засинхрили = мир.синхронизироватьЭлементТело(элемент, тело);

// Учесть значения transform из JSON-JS.


+ 0
- 1
400.столкновения.js View File

@@ -55,7 +55,6 @@
var пара = пары[номер];
var п1 = мир.объекты.имена[пара.bodyA.id];
var п2 = мир.объекты.имена[пара.bodyB.id];
if (
!((имя1 == п1) && (имя2 == п2)) &&
!((имя1 == п2) && (имя2 == п1))


+ 14
- 3
667.ручноетело.js View File

@@ -30,7 +30,6 @@ function РучноеТело(события) {

// 1.
this.тело1 = Matter.Bodies.rectangle(125, 300, 40, 40, { isSensor: true });
//Matter.Composite.add(мир.физика.движок.world, this.тело1);

this.элемент1 = document.createElement("div");
document.getElementById("корень").appendChild(this.элемент1);
@@ -43,8 +42,7 @@ function РучноеТело(события) {
this.элемент1.style.setProperty("z-index", "100");

// 2.
this.тело2 = Matter.Bodies.rectangle(55, 300, 40, 40, {});
//Matter.Composite.add(мир.физика.движок.world, this.тело2);
this.тело2 = Matter.Bodies.rectangle(55, 300, 40, 40, { inertia: Infinity });

this.элемент2 = document.createElement("div");
document.getElementById("корень").appendChild(this.элемент2);
@@ -56,12 +54,25 @@ function РучноеТело(события) {
this.элемент2.style.setProperty("background", "url(р/отладка/основа.jpg)");
this.элемент2.style.setProperty("z-index", "100");

/*
Matter.Composite.add(мир.физика.движок.world, this.тело1);
Matter.Composite.add(мир.физика.движок.world, this.тело2);
мир.объекты.тела["рт"] = this.тело2;
this.тело = this.тело2;
*/

// Compound.
this.тело = Matter.Body.create({
parts: [this.тело1, this.тело2],
inertia: Infinity,
});
Matter.Composite.add(мир.физика.движок.world, this.тело);
мир.объекты.тела["рт"] = this.тело;

мир.объекты.тела["рт1"] = this.тело1;
мир.объекты.имена[this.тело1.id] = "рт1";
мир.объекты.тела["рт2"] = this.тело2;
мир.объекты.имена[this.тело2.id] = "рт2";
};

this.обновить = function()


+ 21
- 21
800.пример.json.js View File

@@ -115,48 +115,36 @@
inertia: Infinity,
},
},
/*
проверка: {
x: 1270,
y: 350,
высота: 40,
ширина: 40,
вид: {
background: "url(р/отладка/основа.jpg)",
},
физика: {
isStatic: false,
inertia: Infinity,
},
},
*/
},
игрок: {
объект: "кирпич",
объект: "рт",
//объект: "кирпич",
скорость: [5, 12.5],
клавиши: ["ArrowLeft", "ArrowRight", "ArrowUp"],
},
/*
слежение: {
/*
колобок: {
объект: "кирпич",
изображение: "колобок",
смещение: [-35, -60],
скорость: 1,
},
*/
камера: {
объект: "кирпич",
объект: "рт",
//объект: "кирпич",
скорость: 0.1,
},
},
маскиПрыжков: {
игрок: {
объект: "кирпич",
объект: "рт",
//объект: "кирпич",
скорость: -1,
маски: [1, 1|2],
},
},
*/
звуки: {
прыжокИгрока: {
события: ["игрок начал прыжок"],
@@ -459,7 +447,7 @@ function ПодкидываниеСтрелы() {

function ОтладкаСобытий() {
this.обработатьСобытие = function(событие) {
if (событие == "игрокПаук1")
if (событие.startsWith("игрокПаук"))
{
console.debug("событие", событие);
}
@@ -497,6 +485,18 @@ console.debug("событие", событие);
объекты: ["кирпич", "паук1"],
событие: "игрокПаук1",
},
проверкаСенсораИгрокаРТ: {
объекты: ["рт", "паук1"],
событие: "игрокПаукРТ",
},
проверкаСенсораИгрокаРТ1: {
объекты: ["рт1", "паук1"],
событие: "игрокПаукРТ1",
},
проверкаСенсораИгрокаРТ2: {
объекты: ["рт2", "паук1"],
событие: "игрокПаукРТ2",
},
},
движение: {
паук1: {


Loading…
Cancel
Save