падать
This commit is contained in:
@@ -56,7 +56,7 @@
|
|||||||
{
|
{
|
||||||
новое.направление = 1;
|
новое.направление = 1;
|
||||||
}
|
}
|
||||||
if (мир.клавиши.space.isDown)
|
if (мир.клавиши.space.isDown || мир.клавиши.up.isDown)
|
||||||
{
|
{
|
||||||
новое.прыжок = true;
|
новое.прыжок = true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
|
|
||||||
ЗагрузитьРесурсыКолобка= мир =>
|
ЗагрузитьРесурсыКолобка= мир =>
|
||||||
{
|
{
|
||||||
//мир.сцена.load.image("колобок", "ресурсы/колобок/колобок_неподвижен.png");
|
|
||||||
мир.сцена.load.spritesheet(
|
мир.сцена.load.spritesheet(
|
||||||
"колобок",
|
"колобок",
|
||||||
"ресурсы/колобок/колобок.png",
|
"ресурсы/колобок/колобок.png",
|
||||||
@@ -22,10 +21,11 @@
|
|||||||
// // // //
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
СоздатьКаркасИПлатформы = мир =>
|
СоздатьГруппыСущностей = мир =>
|
||||||
{
|
{
|
||||||
мир.каркас = мир.сцена.physics.add.staticGroup();
|
мир.каркас = мир.сцена.physics.add.staticGroup();
|
||||||
мир.платформы = мир.сцена.physics.add.staticGroup();
|
мир.платформы = мир.сцена.physics.add.staticGroup();
|
||||||
|
мир.враги = мир.сцена.add.group();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -34,8 +34,10 @@
|
|||||||
|
|
||||||
СоздатьКолобка = мир =>
|
СоздатьКолобка = мир =>
|
||||||
{
|
{
|
||||||
мир.колобок = мир.сцена.physics.add.sprite(100, 100, "колобок");
|
мир.колобок = мир.сцена.physics.add.sprite(100, 500, "колобок");
|
||||||
мир.колобок.depth = 10;
|
мир.колобок.depth = 10;
|
||||||
|
мир.колобок.body.setSize(50);
|
||||||
|
мир.колобок.setBounceY(0.1);
|
||||||
|
|
||||||
мир.сцена.anims.create({
|
мир.сцена.anims.create({
|
||||||
key: "неподвижен",
|
key: "неподвижен",
|
||||||
@@ -63,10 +65,27 @@
|
|||||||
// // // //
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
СоздатьСтолкновениеКолобкаСКаркасомИПлатформами = мир =>
|
ОпределятьСтолкновениеКолобкаИВраговСГруппамиСущностей = мир =>
|
||||||
{
|
{
|
||||||
мир.сцена.physics.add.collider(мир.колобок, мир.каркас);
|
мир.сцена.physics.add.collider(мир.колобок, мир.каркас);
|
||||||
мир.столкновениеПлатформы = мир.сцена.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("столкновение с врагом");
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -105,6 +124,35 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ОтключитьСтолкновениеСПлатформами = мир => {
|
||||||
|
мир.столкновениеПлатформы.active = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ВключитьСтолкновениеСПлатформами = мир => {
|
||||||
|
мир.столкновениеПлатформы.active = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ОстановитьВрагов = мир => {
|
||||||
|
var враги = мир.враги.getChildren();
|
||||||
|
for (var н in враги)
|
||||||
|
{
|
||||||
|
var враг = враги[н];
|
||||||
|
враг.body.stop();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
* Последовательность
|
* Последовательность
|
||||||
@@ -116,10 +164,13 @@
|
|||||||
загрузить ресурсы сцены
|
загрузить ресурсы сцены
|
||||||
загрузить ресурсы колобка
|
загрузить ресурсы колобка
|
||||||
создать сцену
|
создать сцену
|
||||||
создать каркас и платформы
|
создать группы сущностей
|
||||||
создать колобка
|
создать колобка
|
||||||
создать столкновение колобка с каркасом и платформами
|
определять столкновение колобка и врагов с группами сущностей
|
||||||
изменили управление
|
изменили управление
|
||||||
переместить колобка
|
переместить колобка
|
||||||
|
остановить врагов
|
||||||
|
столкновение с врагом
|
||||||
|
отключить столкновение с платформами
|
||||||
`);
|
`);
|
||||||
|
|
||||||
|
|||||||
@@ -85,24 +85,24 @@
|
|||||||
ширина: 65,
|
ширина: 65,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
x: 665,
|
x: 666,
|
||||||
y: 340,
|
y: 340,
|
||||||
ширина: 1,
|
ширина: 3,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
x: 770,
|
x: 771,
|
||||||
y: 340,
|
y: 340,
|
||||||
ширина: 1,
|
ширина: 3,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
x: 860,
|
x: 862,
|
||||||
y: 340,
|
y: 340,
|
||||||
ширина: 1,
|
ширина: 3,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
x: 1005,
|
x: 995,
|
||||||
y: 355,
|
y: 350, // НАДО 345, чтобы не допрыгиать без помощи кота.
|
||||||
ширина: 1,
|
ширина: 4,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
x: 620,
|
x: 620,
|
||||||
@@ -130,7 +130,7 @@
|
|||||||
var часть = п[номер];
|
var часть = п[номер];
|
||||||
var элемент = мир.платформы.create(часть.x, часть.y, "основа").setOrigin(0, 0);
|
var элемент = мир.платформы.create(часть.x, часть.y, "основа").setOrigin(0, 0);
|
||||||
элемент.setScale(часть.ширина, 1).refreshBody();
|
элемент.setScale(часть.ширина, 1).refreshBody();
|
||||||
//элемент.setVisible(false);
|
элемент.setVisible(false);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -148,6 +148,25 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
СоздатьВрагов = мир => {
|
||||||
|
|
||||||
|
console.debug("создать врагов");
|
||||||
|
/*
|
||||||
|
var враг = мир.сцена.physics.add.sprite(150, 100, "основа");
|
||||||
|
//мир.враги.add(враг);
|
||||||
|
|
||||||
|
мир.сцена.physics.add.collider(враг, мир.каркас);
|
||||||
|
мир.сцена.physics.add.collider(враг, мир.платформы);
|
||||||
|
*/
|
||||||
|
|
||||||
|
//var враг = мир.враги.create(100, 100, "основа");//.setOrigin(0, 0);
|
||||||
|
//враг.setScale(часть.ширина, 1).refreshBody();
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
* Последовательность
|
* Последовательность
|
||||||
@@ -163,5 +182,6 @@
|
|||||||
создать полы и стены каркаса
|
создать полы и стены каркаса
|
||||||
создать платформы
|
создать платформы
|
||||||
позволить платформам пропускать прыжки
|
позволить платформам пропускать прыжки
|
||||||
|
создать врагов
|
||||||
`);
|
`);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user