|
|
@@ -21,23 +21,12 @@ |
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
СоздатьГруппыСущностей = мир => |
|
|
|
{ |
|
|
|
мир.каркас = мир.сцена.physics.add.staticGroup(); |
|
|
|
мир.платформы = мир.сцена.physics.add.staticGroup(); |
|
|
|
мир.враги = мир.сцена.add.group(); |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
СоздатьКолобка = мир => |
|
|
|
{ |
|
|
|
мир.колобок = мир.сцена.physics.add.sprite(100, 500, "колобок"); |
|
|
|
мир.колобок.depth = 10; |
|
|
|
мир.колобок.body.setSize(50); |
|
|
|
// портит логику анимации. |
|
|
|
// Портит анимацию прыжков! |
|
|
|
//мир.колобок.setBounceY(0.1); |
|
|
|
|
|
|
|
// Следить за колобком камерой. |
|
|
@@ -74,26 +63,15 @@ |
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
ОпределятьСтолкновениеКолобкаИВраговСГруппамиСущностей = мир => |
|
|
|
НастроитьСтолкновениеКолобка = мир => |
|
|
|
{ |
|
|
|
мир.сцена.physics.add.collider(мир.колобок, мир.каркас); |
|
|
|
мир.столкновениеПлатформы = мир.сцена.physics.add.collider(мир.колобок, мир.платформы); |
|
|
|
|
|
|
|
|
|
|
|
мир.сцена.physics.add.collider(мир.враги, мир.каркас); |
|
|
|
мир.сцена.physics.add.collider(мир.враги, мир.платформы); |
|
|
|
|
|
|
|
var враг = мир.сцена.physics.add.sprite(750, 100, "основа"); |
|
|
|
враг.setScale(5, 5).refreshBody(); |
|
|
|
враг.depth = 10; |
|
|
|
мир.враги.add(враг); |
|
|
|
|
|
|
|
|
|
|
|
var столкновениеВраги = мир.сцена.physics.add.collider(мир.колобок, мир.враги); |
|
|
|
столкновениеВраги.overlapOnly = true; |
|
|
|
столкновениеВраги.collideCallback = function(a, b) { |
|
|
|
мир.уведомить("столкновение с врагом"); |
|
|
|
console.debug("столкновение с врагом"); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
@@ -157,7 +135,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
ОтключитьСтолкновениеСПлатформами = мир => { |
|
|
|
мир.столкновениеПлатформы.active = false; |
|
|
|
мир.столкновениеПлатформы.active = false; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
@@ -165,19 +143,19 @@ |
|
|
|
|
|
|
|
|
|
|
|
ВключитьСтолкновениеСПлатформами = мир => { |
|
|
|
мир.столкновениеПлатформы.active = true; |
|
|
|
мир.столкновениеПлатформы.active = true; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
ОстановитьВрагов = мир => { |
|
|
|
var враги = мир.враги.getChildren(); |
|
|
|
for (var н in враги) |
|
|
|
ОстановитьПередвижениеВещей = мир => { |
|
|
|
var вещи = мир.вещи.getChildren(); |
|
|
|
for (var н in вещи) |
|
|
|
{ |
|
|
|
var враг = враги[н]; |
|
|
|
враг.body.stop(); |
|
|
|
var вещь = вещи[н]; |
|
|
|
вещь.body.stop(); |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
@@ -193,10 +171,9 @@ |
|
|
|
загрузить ресурсы сцены |
|
|
|
загрузить ресурсы колобка |
|
|
|
создать сцену |
|
|
|
создать группы сущностей |
|
|
|
создать колобка |
|
|
|
создать анимации колобка |
|
|
|
определять столкновение колобка и врагов с группами сущностей |
|
|
|
настроить столкновение колобка |
|
|
|
изменили управление |
|
|
|
переместить колобка |
|
|
|
столкновение с врагом |
|
|
@@ -204,6 +181,6 @@ |
|
|
|
обновить сцену |
|
|
|
анимировать колобка |
|
|
|
изменили анимацию колобка |
|
|
|
остановить врагов |
|
|
|
остановить передвижение вещей |
|
|
|
`); |
|
|
|
|