Files
ogs-site/К/игра/111.изба.js
2021-04-22 15:10:13 +03:00

188 lines
4.2 KiB
JavaScript

/*
*
* Реакции
*
*/
ЗагрузитьРесурсыИзбы = мир =>
{
мир.сцена.load.image("изба", "ресурсы/сцены/изба.jpg");
мир.сцена.load.image("основа", "ресурсы/отладка/основа.jpg");
};
// // // //
СоздатьИзбу = мир =>
{
мир.сцена.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: 350, // НАДО 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;
});
};
// // // //
СоздатьВрагов = мир => {
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();
};
/*
*
* Последовательность
*
*/
мир.разобрать(`
загрузить ресурсы сцены
загрузить ресурсы избы
создать сцену
создать избу
создать полы и стены каркаса
создать платформы
позволить платформам пропускать прыжки
создать врагов
`);