|
|
@@ -94,16 +94,18 @@ |
|
|
|
мир.столкновениеВещи.collideCallback = function(a, вещь) { |
|
|
|
var кк = мир.колобок.body.touching; |
|
|
|
var кв = вещь.body.touching; |
|
|
|
|
|
|
|
if (!мир.передвигаемыеВещи) |
|
|
|
{ |
|
|
|
мир.передвигаемыеВещи = { }; |
|
|
|
} |
|
|
|
мир.передвигаемыеВещи[вещь.name] = new Date(); |
|
|
|
|
|
|
|
if (кк.down && кв.up && мир.колобок.прыжок) |
|
|
|
{ |
|
|
|
мир.колобок.вещь = вещь.name; |
|
|
|
мир.уведомить("колобок прыгнул на вещь"); |
|
|
|
} |
|
|
|
// Передвижение вещей. |
|
|
|
if (кк.down && (кк.left || кк.right) && (кв.left || кв.right)) |
|
|
|
{ |
|
|
|
мир.колобок.датаПередвиженияВещи = new Date(); |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
var столкновениеВраги = мир.сцена.physics.add.collider(мир.колобок, мир.враги); |
|
|
@@ -236,23 +238,6 @@ |
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
ОстановитьПередвижениеВещей = мир => |
|
|
|
{ |
|
|
|
var вещи = мир.вещи.getChildren(); |
|
|
|
for (var н in вещи) |
|
|
|
{ |
|
|
|
var вещь = вещи[н]; |
|
|
|
if (вещь.body.touching.down) |
|
|
|
{ |
|
|
|
вещь.body.stop(); |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
НачатьМиганиеКолобка = мир => |
|
|
|
{ |
|
|
|
var конец = new Date(); |
|
|
@@ -344,29 +329,29 @@ |
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
ОпределитьПередвижениеВещей = мир => |
|
|
|
ОстановитьСкользящиеВещи = мир => |
|
|
|
{ |
|
|
|
if (!мир.колобок.датаПередвиженияВещи) |
|
|
|
if (!мир.передвигаемыеВещи) |
|
|
|
{ |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
var было = мир.колобок.передвижениеВещи != null ? мир.колобок.передвижениеВещи : false; |
|
|
|
var стало = new Date() - мир.колобок.датаПередвиженияВещи < 10; |
|
|
|
if (было != стало) |
|
|
|
var сейчас = new Date(); |
|
|
|
for (var имя in мир.передвигаемыеВещи) |
|
|
|
{ |
|
|
|
мир.колобок.передвижениеВещи = стало; |
|
|
|
if (стало) |
|
|
|
var было = мир.передвигаемыеВещи[имя]; |
|
|
|
var узел = мир.узелСцены(имя); |
|
|
|
if (узел && (сейчас - было > 20)) |
|
|
|
{ |
|
|
|
console.debug("колобок начал передвижение вещи"); |
|
|
|
мир.уведомить("колобок начал передвижение вещи"); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
console.debug("колобок закончил передвижение вещи"); |
|
|
|
мир.уведомить("колобок закончил передвижение вещи"); |
|
|
|
узел.body.stop(); |
|
|
|
delete мир.передвигаемыеВещи[имя]; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if (!Object.keys(мир.передвигаемыеВещи).length) |
|
|
|
{ |
|
|
|
мир.передвигаемыеВещи = null; |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
@@ -391,8 +376,7 @@ |
|
|
|
анимировать колобка |
|
|
|
определить окончание прыжка колобка |
|
|
|
мигать колобка |
|
|
|
определить передвижение вещей |
|
|
|
# остановить передвижение вещей |
|
|
|
остановить скользящие вещи |
|
|
|
колобок начал прыжок |
|
|
|
воспроизвести звук прыжка |
|
|
|
вывести начало прыжка в консоль |
|
|
|