193 lines
4.3 KiB
JavaScript
193 lines
4.3 KiB
JavaScript
/*
|
||
*
|
||
* Реакции
|
||
*
|
||
*/
|
||
|
||
|
||
ЗагрузитьРесурсыИзбы = мир =>
|
||
{
|
||
мир.сцена.load.image("изба", "ресурсы/сцены/изба.jpg");
|
||
мир.сцена.load.image("основа", "ресурсы/отладка/основа.jpg");
|
||
мир.сцена.load.image("молоко", "ресурсы/вещи/банка_молока.png");
|
||
};
|
||
|
||
|
||
// // // //
|
||
|
||
|
||
СоздатьИзбу = мир =>
|
||
{
|
||
мир.сцена.add.image(0, 0, "изба").setOrigin(0, 0);
|
||
};
|
||
|
||
|
||
// // // //
|
||
|
||
|
||
СоздатьПолыИСтеныКаркаса = мир =>
|
||
{
|
||
var полы = [
|
||
{
|
||
x: 0,
|
||
y: 585,
|
||
ширина: 43,
|
||
},
|
||
{
|
||
x: 300,
|
||
y: 585,
|
||
ширина: 30,
|
||
},
|
||
{
|
||
x: 510,
|
||
y: 585,
|
||
ширина: 200,
|
||
},
|
||
];
|
||
for (var номер in полы)
|
||
{
|
||
var пол = полы[номер];
|
||
var элемент = мир.каркас.create(пол.x, пол.y, "основа").setOrigin(0, 0);
|
||
элемент.setScale(пол.ширина, 1).refreshBody();
|
||
элемент.setVisible(false);
|
||
}
|
||
|
||
var стены = [
|
||
{
|
||
x: 0,
|
||
y: 385,
|
||
высота: 50,
|
||
},
|
||
{
|
||
x: 2000,
|
||
y: 385,
|
||
высота: 50,
|
||
},
|
||
];
|
||
for (var номер in стены)
|
||
{
|
||
var стена = стены[номер];
|
||
var элемент = мир.каркас.create(стена.x, стена.y, "основа");
|
||
элемент.setScale(1, стена.высота).refreshBody();
|
||
элемент.setVisible(false);
|
||
}
|
||
};
|
||
|
||
|
||
// // // //
|
||
|
||
|
||
СоздатьПлатформы = мир =>
|
||
{
|
||
var п = [
|
||
{
|
||
x: 583,
|
||
y: 473,
|
||
ширина: 65,
|
||
},
|
||
{
|
||
x: 666,
|
||
y: 340,
|
||
ширина: 3,
|
||
},
|
||
{
|
||
x: 771,
|
||
y: 340,
|
||
ширина: 3,
|
||
},
|
||
{
|
||
x: 862,
|
||
y: 340,
|
||
ширина: 3,
|
||
},
|
||
{
|
||
x: 995,
|
||
y: 345, // НАДО 345, чтобы не допрыгиать без помощи кота.
|
||
ширина: 4,
|
||
},
|
||
{
|
||
x: 620,
|
||
y: 245,
|
||
ширина: 35,
|
||
},
|
||
{
|
||
x: 950,
|
||
y: 180,
|
||
ширина: 12,
|
||
},
|
||
{
|
||
x: 1270,
|
||
y: 427,
|
||
ширина: 70,
|
||
},
|
||
{
|
||
x: 1690,
|
||
y: 375,
|
||
ширина: 20,
|
||
},
|
||
];
|
||
for (var номер in п)
|
||
{
|
||
var часть = п[номер];
|
||
var элемент = мир.платформы.create(часть.x, часть.y, "основа").setOrigin(0, 0);
|
||
элемент.setScale(часть.ширина, 1).refreshBody();
|
||
элемент.setVisible(false);
|
||
}
|
||
};
|
||
|
||
|
||
// // // //
|
||
|
||
|
||
ПозволитьПлатформамПропускатьПрыжки = мир =>
|
||
{
|
||
мир.платформы.children.iterate(function(платформа) {
|
||
платформа.body.checkCollision.down = false;
|
||
платформа.body.checkCollision.left = false;
|
||
платформа.body.checkCollision.right = false;
|
||
});
|
||
};
|
||
|
||
|
||
// // // //
|
||
|
||
|
||
СоздатьВрагов = мир => {
|
||
var враг = мир.сцена.physics.add.sprite(750, 100, "основа");
|
||
враг.setScale(5, 5).refreshBody();
|
||
враг.depth = 10;
|
||
мир.враги.add(враг);
|
||
};
|
||
|
||
|
||
// // // //
|
||
|
||
|
||
СоздатьВещи = мир => {
|
||
var молоко = мир.сцена.physics.add.sprite(750, 400, "молоко");
|
||
молоко.setScale(0.5, 0.5).refreshBody();
|
||
молоко.depth = 10;
|
||
мир.вещи.add(молоко);
|
||
};
|
||
|
||
|
||
/*
|
||
*
|
||
* Последовательность
|
||
*
|
||
*/
|
||
|
||
|
||
мир.разобрать(`
|
||
загрузить ресурсы сцены
|
||
загрузить ресурсы избы
|
||
создать сцену
|
||
создать избу
|
||
создать полы и стены каркаса
|
||
создать платформы
|
||
позволить платформам пропускать прыжки
|
||
создать врагов
|
||
создать вещи
|
||
`);
|
||
|