поправить анимации колобка
This commit is contained in:
@@ -37,24 +37,8 @@
|
||||
мир.колобок = мир.сцена.physics.add.sprite(100, 500, "колобок");
|
||||
мир.колобок.depth = 10;
|
||||
мир.колобок.body.setSize(50);
|
||||
мир.колобок.setBounceY(0.1);
|
||||
|
||||
мир.сцена.anims.create({
|
||||
key: "неподвижен",
|
||||
frames: [{ key: "колобок", frame: 0 }],
|
||||
frameRate: 20,
|
||||
})
|
||||
мир.сцена.anims.create({
|
||||
key: "движение",
|
||||
frames: мир.сцена.anims.generateFrameNumbers("колобок", { start: 23, end: 1 }),
|
||||
frameRate: 20,
|
||||
repeat: -1,
|
||||
})
|
||||
мир.сцена.anims.create({
|
||||
key: "прыжок",
|
||||
frames: [{ key: "колобок", frame: 24 }],
|
||||
frameRate: 20,
|
||||
})
|
||||
// портит логику анимации.
|
||||
//мир.колобок.setBounceY(0.1);
|
||||
|
||||
// Следить за колобком камерой.
|
||||
const камера = мир.сцена.cameras.main;
|
||||
@@ -65,6 +49,31 @@
|
||||
// // // //
|
||||
|
||||
|
||||
СоздатьАнимацииКолобка = мир =>
|
||||
{
|
||||
var анимации = мир.сцена.anims;
|
||||
анимации.create({
|
||||
key: "колобок-неподвижен",
|
||||
frames: [{ key: "колобок", frame: 0 }],
|
||||
frameRate: 20,
|
||||
})
|
||||
анимации.create({
|
||||
key: "колобок-движение",
|
||||
frames: мир.сцена.anims.generateFrameNumbers("колобок", { start: 23, end: 1 }),
|
||||
frameRate: 20,
|
||||
repeat: -1,
|
||||
})
|
||||
анимации.create({
|
||||
key: "колобок-прыжок",
|
||||
frames: [{ key: "колобок", frame: 24 }],
|
||||
frameRate: 20,
|
||||
})
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
ОпределятьСтолкновениеКолобкаИВраговСГруппамиСущностей = мир =>
|
||||
{
|
||||
мир.сцена.physics.add.collider(мир.колобок, мир.каркас);
|
||||
@@ -97,7 +106,6 @@
|
||||
if (!мир.управление)
|
||||
{
|
||||
мир.колобок.setVelocityX(0);
|
||||
мир.колобок.anims.play("неподвижен");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -105,13 +113,11 @@
|
||||
if (мир.управление.направление == -1)
|
||||
{
|
||||
x = -200;
|
||||
мир.колобок.anims.play("движение");
|
||||
мир.колобок.flipX = true;
|
||||
}
|
||||
else if (мир.управление.направление == 1)
|
||||
{
|
||||
x = 200;
|
||||
мир.колобок.anims.play("движение");
|
||||
мир.колобок.flipX = false;
|
||||
}
|
||||
мир.колобок.setVelocityX(x);
|
||||
@@ -119,7 +125,30 @@
|
||||
if (мир.управление.прыжок && мир.колобок.body.touching.down)
|
||||
{
|
||||
мир.колобок.setVelocityY(-570);
|
||||
мир.колобок.anims.play("прыжок");
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// // // //
|
||||
|
||||
|
||||
АнимироватьКолобка = мир => {
|
||||
var есть = "";
|
||||
if (мир.колобок.anims.currentAnim)
|
||||
{
|
||||
есть = мир.колобок.anims.currentAnim.key;
|
||||
}
|
||||
|
||||
var надо = "колобок-неподвижен";
|
||||
if (!мир.колобок.body.touching.down) {
|
||||
надо = "колобок-прыжок";
|
||||
} else if (мир.колобок.body.velocity.x != 0) {
|
||||
надо = "колобок-движение";
|
||||
}
|
||||
|
||||
if (есть != надо) {
|
||||
мир.колобок.anims.play(надо);
|
||||
мир.уведомить("изменили анимацию колобка");
|
||||
}
|
||||
};
|
||||
|
||||
@@ -166,11 +195,15 @@
|
||||
создать сцену
|
||||
создать группы сущностей
|
||||
создать колобка
|
||||
создать анимации колобка
|
||||
определять столкновение колобка и врагов с группами сущностей
|
||||
изменили управление
|
||||
переместить колобка
|
||||
остановить врагов
|
||||
столкновение с врагом
|
||||
отключить столкновение с платформами
|
||||
обновить сцену
|
||||
анимировать колобка
|
||||
изменили анимацию колобка
|
||||
остановить врагов
|
||||
`);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user