|
|
@@ -15,6 +15,8 @@ |
|
|
|
frameHeight: 94, |
|
|
|
} |
|
|
|
); |
|
|
|
мир.сцена.load.audio("прыжок", "ресурсы/звуки/331381__qubodup__public-domain-jump-sound.wav"); |
|
|
|
мир.сцена.load.audio("повреждение", "ресурсы/звуки/437650__dersuperanton__getting-hit-damage-scream.wav"); |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
@@ -32,6 +34,13 @@ |
|
|
|
// Следить за колобком камерой. |
|
|
|
const камера = мир.сцена.cameras.main; |
|
|
|
камера.startFollow(мир.колобок, false, 0.1, 0.1); |
|
|
|
|
|
|
|
мир.состояниеКолобка = { |
|
|
|
мигать: false, |
|
|
|
мигание: { }, |
|
|
|
прыгучесть: -570, |
|
|
|
коэффициентПрыгучести: 1, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
@@ -66,7 +75,7 @@ |
|
|
|
НастроитьСтолкновениеКолобка = мир => |
|
|
|
{ |
|
|
|
мир.сцена.physics.add.collider(мир.колобок, мир.каркас); |
|
|
|
мир.сцена.physics.add.collider(мир.колобок, мир.вещи); |
|
|
|
мир.столкновениеВещи = мир.сцена.physics.add.collider(мир.колобок, мир.вещи); |
|
|
|
мир.столкновениеПлатформы = мир.сцена.physics.add.collider(мир.колобок, мир.платформы); |
|
|
|
|
|
|
|
var столкновениеВраги = мир.сцена.physics.add.collider(мир.колобок, мир.враги); |
|
|
@@ -103,7 +112,9 @@ |
|
|
|
|
|
|
|
if (мир.управление.прыжок && мир.колобок.body.touching.down) |
|
|
|
{ |
|
|
|
мир.колобок.setVelocityY(-570); |
|
|
|
var скорость = мир.состояниеКолобка.прыгучесть * мир.состояниеКолобка.коэффициентПрыгучести; |
|
|
|
мир.колобок.setVelocityY(скорость); |
|
|
|
мир.сцена.sound.play("прыжок"); |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
@@ -111,7 +122,8 @@ |
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
АнимироватьКолобка = мир => { |
|
|
|
АнимироватьКолобка = мир => |
|
|
|
{ |
|
|
|
var есть = ""; |
|
|
|
if (мир.колобок.anims.currentAnim) |
|
|
|
{ |
|
|
@@ -139,29 +151,115 @@ |
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
ОтключитьСтолкновениеСПлатформами = мир => { |
|
|
|
ОтключитьСтолкновениеСПлатформамиИВещами = мир => |
|
|
|
{ |
|
|
|
мир.столкновениеПлатформы.active = false; |
|
|
|
мир.столкновениеВещи.active = false; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
ВключитьСтолкновениеСПлатформами = мир => { |
|
|
|
ВключитьСтолкновениеСПлатформамиИВещами = мир => |
|
|
|
{ |
|
|
|
мир.столкновениеПлатформы.active = true; |
|
|
|
мир.столкновениеВещи.active = true; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
ОстановитьПередвижениеВещей = мир => { |
|
|
|
ОстановитьПередвижениеВещей = мир => |
|
|
|
{ |
|
|
|
var вещи = мир.вещи.getChildren(); |
|
|
|
for (var н in вещи) |
|
|
|
{ |
|
|
|
var вещь = вещи[н]; |
|
|
|
вещь.body.stop(); |
|
|
|
if (вещь.body.touching.down) |
|
|
|
{ |
|
|
|
вещь.body.stop(); |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
НачатьМиганиеКолобка = мир => |
|
|
|
{ |
|
|
|
var конец = new Date(); |
|
|
|
конец.setSeconds(конец.getSeconds() + 8); |
|
|
|
мир.состояниеКолобка.мигание.окончание = конец; |
|
|
|
|
|
|
|
var звук = мир.сцена.sound.get("повреждение"); |
|
|
|
if (!звук || !звук.isPlaying) |
|
|
|
{ |
|
|
|
мир.сцена.sound.play("повреждение"); |
|
|
|
} |
|
|
|
|
|
|
|
if (мир.состояниеКолобка.мигать) |
|
|
|
{ |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
мир.состояниеКолобка.мигать = true; |
|
|
|
мир.состояниеКолобка.мигание = { |
|
|
|
шаг: 0.1, |
|
|
|
цель: 0, |
|
|
|
}; |
|
|
|
|
|
|
|
мир.уведомить("начали мигать колобка"); |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
МигатьКолобка = мир => |
|
|
|
{ |
|
|
|
if (!мир.состояниеКолобка.мигать) |
|
|
|
{ |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
var м = мир.состояниеКолобка.мигание; |
|
|
|
var сейчас = new Date(); |
|
|
|
|
|
|
|
if (м.окончание - сейчас < 0) |
|
|
|
{ |
|
|
|
мир.состояниеКолобка.мигать = false; |
|
|
|
мир.колобок.alpha = 1; |
|
|
|
мир.уведомить("закончили мигать колобка"); |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
var к = (м.цель == 1) ? 1 : -1; |
|
|
|
мир.колобок.alpha += к * м.шаг; |
|
|
|
if ((мир.колобок.alpha <= 0) || (мир.колобок.alpha >= 1)) |
|
|
|
{ |
|
|
|
м.цель = к * -1; |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
УменьшитьПрыгучестьКолобка = мир => |
|
|
|
{ |
|
|
|
мир.состояниеКолобка.коэффициентПрыгучести = 0.6; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// // // // |
|
|
|
|
|
|
|
|
|
|
|
ВосстановитьПрыгучестьКолобка = мир => |
|
|
|
{ |
|
|
|
мир.состояниеКолобка.коэффициентПрыгучести = 1; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
@@ -179,13 +277,18 @@ |
|
|
|
создать колобка |
|
|
|
создать анимации колобка |
|
|
|
настроить столкновение колобка |
|
|
|
изменили управление |
|
|
|
переместить колобка |
|
|
|
столкновение с врагом |
|
|
|
отключить столкновение с платформами |
|
|
|
начать мигание колобка |
|
|
|
обновить сцену |
|
|
|
переместить колобка |
|
|
|
анимировать колобка |
|
|
|
изменили анимацию колобка |
|
|
|
мигать колобка |
|
|
|
остановить передвижение вещей |
|
|
|
начали мигать колобка |
|
|
|
отключить столкновение с платформами и вещами |
|
|
|
уменьшить прыгучесть колобка |
|
|
|
закончили мигать колобка |
|
|
|
включить столкновение с платформами и вещами |
|
|
|
восстановить прыгучесть колобка |
|
|
|
`); |
|
|
|
|