каркас по структуре
This commit is contained in:
133
игра/111.изба.js
133
игра/111.изба.js
@@ -34,14 +34,72 @@
|
|||||||
{
|
{
|
||||||
мир.изба = {
|
мир.изба = {
|
||||||
фон: {
|
фон: {
|
||||||
тип: "image",
|
родитель: мир.сцена,
|
||||||
|
тип: "изображение",
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
texture: "изба",
|
texture: "изба",
|
||||||
originX: 0,
|
originX: 0,
|
||||||
originY: 0,
|
originY: 0,
|
||||||
},
|
},
|
||||||
}
|
|
||||||
|
полДоКрышки: {
|
||||||
|
родитель: мир.каркас,
|
||||||
|
тип: "платформа",
|
||||||
|
x: 0,
|
||||||
|
y: 585,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 43,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
полКрышки: {
|
||||||
|
родитель: мир.каркас,
|
||||||
|
тип: "платформа",
|
||||||
|
x: 300,
|
||||||
|
y: 585,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 30,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
полПослеКрышки: {
|
||||||
|
родитель: мир.каркас,
|
||||||
|
тип: "платформа",
|
||||||
|
x: 510,
|
||||||
|
y: 585,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 200,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
|
||||||
|
леваяСтена: {
|
||||||
|
родитель: мир.каркас,
|
||||||
|
тип: "платформа",
|
||||||
|
x: 0,
|
||||||
|
y: 200,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleY: 50,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
праваяСтена: {
|
||||||
|
родитель: мир.каркас,
|
||||||
|
тип: "платформа",
|
||||||
|
x: 2000,
|
||||||
|
y: 200,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleY: 50,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -65,13 +123,16 @@
|
|||||||
delete свойства["y"];
|
delete свойства["y"];
|
||||||
delete свойства["texture"];
|
delete свойства["texture"];
|
||||||
|
|
||||||
// Создаём изображение.
|
// Создаём узел.
|
||||||
if (описание.тип == "image")
|
if (описание.тип == "изображение")
|
||||||
{
|
{
|
||||||
узел = сцена.add.image(описание.x, описание.y, описание.texture);
|
узел = описание.родитель.add.image(описание.x, описание.y, описание.texture);
|
||||||
}
|
}
|
||||||
// Создаём спрайт.
|
else if (описание.тип == "платформа")
|
||||||
else if (описание.тип == "sprite")
|
{
|
||||||
|
узел = описание.родитель.create(описание.x, описание.y, описание.texture);
|
||||||
|
}
|
||||||
|
else if (описание.тип == "спрайт")
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -86,6 +147,11 @@
|
|||||||
|
|
||||||
// Необходимо после смены originX/Y.
|
// Необходимо после смены originX/Y.
|
||||||
узел.updateDisplayOrigin();
|
узел.updateDisplayOrigin();
|
||||||
|
// Необходимо для статических физических объектов.
|
||||||
|
if ("refreshBody" in узел)
|
||||||
|
{
|
||||||
|
узел.refreshBody();
|
||||||
|
}
|
||||||
|
|
||||||
console.debug(имя, описание, узел);
|
console.debug(имя, описание, узел);
|
||||||
}
|
}
|
||||||
@@ -114,58 +180,6 @@
|
|||||||
// // // //
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
СоздатьПолыИСтеныКаркаса = мир =>
|
|
||||||
{
|
|
||||||
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 п = [
|
var п = [
|
||||||
@@ -618,7 +632,6 @@ console.debug("стрела.x", мир.стрела.x);
|
|||||||
задать структуру избы
|
задать структуру избы
|
||||||
создать избу по структуре
|
создать избу по структуре
|
||||||
создать избу
|
создать избу
|
||||||
создать полы и стены каркаса
|
|
||||||
создать платформы
|
создать платформы
|
||||||
позволить платформам пропускать прыжки
|
позволить платформам пропускать прыжки
|
||||||
создать вещи
|
создать вещи
|
||||||
|
|||||||
Reference in New Issue
Block a user