Browse Source

отдельно подпол

master
parent
commit
a2aba773e6
6 changed files with 176 additions and 9 deletions
  1. +1
    -0
      index.html
  2. +9
    -1
      игра/110.колобок.js
  3. +79
    -8
      игра/111.изба.js
  4. +87
    -0
      игра/112.подпол.js
  5. BIN
      ресурсы/вещи/лестница.png
  6. BIN
      ресурсы/вещи/лестница.xcf

+ 1
- 0
index.html View File

@@ -32,6 +32,7 @@
<script src="игра/109.управление.js"></script>
<script src="игра/110.колобок.js"></script>
<script src="игра/111.изба.js"></script>
<script src="игра/112.подпол.js"></script>
<script src="игра/200.отладка.js"></script>
<script src="игра/499.пуск.js"></script>
</body>


+ 9
- 1
игра/110.колобок.js View File

@@ -79,7 +79,15 @@

НастроитьСтолкновениеКолобка = мир =>
{
мир.сцена.physics.add.collider(мир.колобок, мир.каркас);
var столкновениеКаркас = мир.сцена.physics.add.collider(мир.колобок, мир.каркас);
столкновениеКаркас.collideCallback = function(a, каркас) {
if (мир.колобок.body.touching.down && каркас.body.touching.up && мир.колобок.прыжок)
{
мир.колобок.каркас = каркас.name;
мир.уведомить("колобок прыгнул на каркас");
}
};

мир.столкновениеПлатформы = мир.сцена.physics.add.collider(мир.колобок, мир.платформы);

мир.столкновениеВещи = мир.сцена.physics.add.collider(мир.колобок, мир.вещи);


+ 79
- 8
игра/111.изба.js View File

@@ -69,7 +69,7 @@
originX: 0,
originY: 0,
scaleX: 43,
visible: true,
visible: false,
},
полКрышки: {
родитель: мир.каркас,
@@ -80,16 +80,16 @@
originX: 0,
originY: 0,
scaleX: 16,
visible: true,
visible: false,
},
крышка: {
родитель: мир.сцена,
тип: "изображение",
x: 357,
y: 575,
y: 605,
texture: "крышка-подпола",
originX: 0,
originY: 0,
originY: 1,
scaleX: 0.4,
scaleY: 0.4,
},
@@ -102,7 +102,7 @@
originX: 0,
originY: 0,
scaleX: 200,
visible: true,
visible: false,
},

леваяСтена: {
@@ -459,9 +459,6 @@
{
создатьУзлыСценыПоСтруктуре(мир.изба);
мир.сцена.sound.play("звук-избы", { loop: true });

мир.крышка = мир.узелСцены("крышка");
мир.полКрышки = мир.узелСцены("полКрышки");
};


@@ -877,6 +874,75 @@
};


// // // //


ПроверитьПрыжокПоКрышкеПодпола = мир =>
{
if (мир.колобок.каркас == "полКрышки")
{
мир.уведомить("колобок прыгнул по крышке подпола");
}
};


// // // //


НачатьПоворотКрышкиПодпола = мир =>
{
if (мир.крышка)
{
return;
}

мир.крышка = мир.узелСцены("крышка");
мир.крышка.поворот = 1;
};


// // // //


АнимироватьПоворотКрышкиПодпола = мир =>
{
if (!мир.крышка)
{
return;
}

var скорость = 4;

if (мир.крышка.поворот == 1)
{
мир.крышка.setAngle(мир.крышка.angle - скорость);
if (мир.крышка.angle <= -90)
{
мир.крышка.поворот = 2;
}
}
else if (мир.крышка.поворот == 2)
{
мир.узелСцены("полКрышки").body.checkCollision.none = true;
мир.крышка.поворот = 3;
setTimeout(
function() {
мир.крышка.поворот = 4;
},
5000
);
}
else if (мир.крышка.поворот == 4)
{
мир.крышка.setAngle(мир.крышка.angle + скорость);
if (мир.крышка.angle >= 0)
{
мир.узелСцены("полКрышки").body.checkCollision.none = false;
мир.крышка = null;
}
}
};

/*
*
* Последовательность
@@ -928,10 +994,15 @@
перевернули молоко
показать лужу молока
воспроизвести звук переворота молока
колобок прыгнул на каркас
проверить прыжок по крышке подпола
колобок прыгнул по крышке подпола
начать поворот крышки подпола

обновить сцену
анимировать пауков
анимировать мышей
анимировать переворот молока
анимировать поворот крышки подпола
`);


+ 87
- 0
игра/112.подпол.js View File

@@ -0,0 +1,87 @@
/*
*
* Реакции
*
*/


ЗагрузитьРесурсыПодпола = мир =>
{
const изображения = {
"лестница": "ресурсы/вещи/лестница.png",
};
for (var имя in изображения)
{
мир.сцена.load.image(имя, изображения[имя]);
}
};


// // // //


ЗадатьСтруктуруПодпола = мир =>
{
мир.подпол = {
пол: {
родитель: мир.каркас,
тип: "платформа",
x: 0,
y: 985,
texture: "основа",
originX: 0,
originY: 0,
scaleX: 250,
visible: true,
},

леваяСтена: {
родитель: мир.каркас,
тип: "платформа",
x: 0,
y: 600,
texture: "основа",
originX: 0,
originY: 0,
scaleY: 50,
visible: false,
},
праваяСтена: {
родитель: мир.каркас,
тип: "платформа",
x: 2000,
y: 600,
texture: "основа",
originX: 0,
originY: 0,
scaleY: 50,
visible: false,
},
};
};


// // // //


СоздатьПодпол = мир =>
{
создатьУзлыСценыПоСтруктуре(мир.подпол);
};


/*
*
* Последовательность
*
*/


мир.разобрать(`
загрузить ресурсы сцены
загрузить ресурсы подпола
создать сцену
задать структуру подпола
создать подпол
`);


BIN
ресурсы/вещи/лестница.png View File

Before After
Width: 329  |  Height: 1196  |  Size: 376KB

BIN
ресурсы/вещи/лестница.xcf View File


Loading…
Cancel
Save