@@ -34,15 +34,24 @@ | |||||
{ | { | ||||
var з = за[имя]; | var з = за[имя]; | ||||
var объект = з["объект"]; | var объект = з["объект"]; | ||||
var имяТела = з["тело"]; | |||||
var скорость = з["скорость"]; | var скорость = з["скорость"]; | ||||
var маскаДо = з["маски.0"]; | var маскаДо = з["маски.0"]; | ||||
var маскаПосле = з["маски.1"]; | var маскаПосле = з["маски.1"]; | ||||
if (!объект || (скорость == null) || (маскаДо == null) || (маскаПосле == null)) | |||||
if ((!объект && !имяТела) || (скорость == null) || (маскаДо == null) || (маскаПосле == null)) | |||||
{ | { | ||||
continue; | continue; | ||||
} | } | ||||
var тело = мир.объекты.тела[объект]; | |||||
var тело = null; | |||||
if (объект) | |||||
{ | |||||
тело = мир.объекты.тела[объект]; | |||||
} | |||||
else if (имяТела) | |||||
{ | |||||
тело = мир.тела.тела[имяТела]; | |||||
} | |||||
if (!тело) | if (!тело) | ||||
{ | { | ||||
continue; | continue; | ||||
@@ -44,7 +44,8 @@ | |||||
var ст = за[имя]; | var ст = за[имя]; | ||||
var имя1 = ст["объекты.0"]; | var имя1 = ст["объекты.0"]; | ||||
var имя2 = ст["объекты.1"]; | var имя2 = ст["объекты.1"]; | ||||
if (!имя1 || !имя2 || !ст.событие) | |||||
var имя2тело = ст["тела.0"]; | |||||
if (!имя1 || (!имя2 && !имя2тело) || !ст.событие) | |||||
{ | { | ||||
continue; | continue; | ||||
} | } | ||||
@@ -55,6 +56,11 @@ | |||||
var пара = пары[номер]; | var пара = пары[номер]; | ||||
var п1 = мир.объекты.имена[пара.bodyA.id]; | var п1 = мир.объекты.имена[пара.bodyA.id]; | ||||
var п2 = мир.объекты.имена[пара.bodyB.id]; | var п2 = мир.объекты.имена[пара.bodyB.id]; | ||||
var п2тело = мир.тела.имена[пара.bodyB.id]; | |||||
if (!п2) | |||||
{ | |||||
п2 = п2тело; | |||||
} | |||||
if ( | if ( | ||||
!((имя1 == п1) && (имя2 == п2)) && | !((имя1 == п1) && (имя2 == п2)) && | ||||
!((имя1 == п2) && (имя2 == п1)) | !((имя1 == п2) && (имя2 == п1)) | ||||
@@ -146,6 +146,7 @@ | |||||
}, | }, | ||||
}, | }, | ||||
объекты: { | объекты: { | ||||
/* | |||||
кирпич: { | кирпич: { | ||||
x: 100, | x: 100, | ||||
y: 350, | y: 350, | ||||
@@ -160,6 +161,7 @@ | |||||
inertia: Infinity, | inertia: Infinity, | ||||
}, | }, | ||||
}, | }, | ||||
*/ | |||||
}, | }, | ||||
игрок: { | игрок: { | ||||
//объект: "кирпич", | //объект: "кирпич", | ||||
@@ -197,7 +199,8 @@ | |||||
}, | }, | ||||
маскиПрыжков: { | маскиПрыжков: { | ||||
игрок: { | игрок: { | ||||
объект: "кирпич", | |||||
//объект: "кирпич", | |||||
тело: "игрок", | |||||
скорость: -1, | скорость: -1, | ||||
маски: [1, 1|2], | маски: [1, 1|2], | ||||
}, | }, | ||||
@@ -397,7 +400,8 @@ | |||||
}, | }, | ||||
столкновения: { | столкновения: { | ||||
стрелаНачало: { | стрелаНачало: { | ||||
объекты: ["кирпич", "сенсор"], | |||||
объекты: ["сенсор"], | |||||
тела: ["игрок"], | |||||
событие: "сенсор стрелы", | событие: "сенсор стрелы", | ||||
}, | }, | ||||
стрелаКонец: { | стрелаКонец: { | ||||
@@ -539,7 +543,8 @@ console.debug("событие", событие); | |||||
}, | }, | ||||
столкновения: { | столкновения: { | ||||
игрокПаук1: { | игрокПаук1: { | ||||
объекты: ["кирпич", "паук1"], | |||||
объекты: ["паук1"], | |||||
тела: ["игрок"], | |||||
событие: "игрокПаук1", | событие: "игрокПаук1", | ||||
}, | }, | ||||
/* | /* | ||||