K 0.9.0
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||||
<title>К 0.8.0</title>
|
<title>К 0.9.0</title>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/phaser@3.54.0/dist/phaser.min.js"></script>
|
<script src="https://cdn.jsdelivr.net/npm/phaser@3.54.0/dist/phaser.min.js"></script>
|
||||||
<style>
|
<style>
|
||||||
html, body {
|
html, body {
|
||||||
@@ -32,6 +32,7 @@
|
|||||||
<script src="игра/109.управление.js"></script>
|
<script src="игра/109.управление.js"></script>
|
||||||
<script src="игра/110.колобок.js"></script>
|
<script src="игра/110.колобок.js"></script>
|
||||||
<script src="игра/111.изба.js"></script>
|
<script src="игра/111.изба.js"></script>
|
||||||
|
<script src="игра/112.подпол.js"></script>
|
||||||
<script src="игра/200.отладка.js"></script>
|
<script src="игра/200.отладка.js"></script>
|
||||||
<script src="игра/499.пуск.js"></script>
|
<script src="игра/499.пуск.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ function создатьУзлыСценыПоСтруктуре(структур
|
|||||||
delete свойства["y"];
|
delete свойства["y"];
|
||||||
delete свойства["texture"];
|
delete свойства["texture"];
|
||||||
delete свойства["группы"];
|
delete свойства["группы"];
|
||||||
|
delete свойства["после"];
|
||||||
|
|
||||||
// Создаём узел.
|
// Создаём узел.
|
||||||
if (описание.тип == "изображение")
|
if (описание.тип == "изображение")
|
||||||
@@ -51,5 +52,11 @@ function создатьУзлыСценыПоСтруктуре(структур
|
|||||||
{
|
{
|
||||||
узел.refreshBody();
|
узел.refreshBody();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Выполняем дополнительные пользовательские действия.
|
||||||
|
if (описание.после)
|
||||||
|
{
|
||||||
|
описание.после(узел);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -79,12 +79,29 @@
|
|||||||
|
|
||||||
НастроитьСтолкновениеКолобка = мир =>
|
НастроитьСтолкновениеКолобка = мир =>
|
||||||
{
|
{
|
||||||
мир.сцена.physics.add.collider(мир.колобок, мир.каркас);
|
var столкновениеКаркас = мир.сцена.physics.add.collider(мир.колобок, мир.каркас);
|
||||||
|
столкновениеКаркас.collideCallback = function(a, каркас) {
|
||||||
|
if (мир.колобок.body.touching.down && каркас.body.touching.up && мир.колобок.прыжок)
|
||||||
|
{
|
||||||
|
мир.колобок.каркас = каркас.name;
|
||||||
|
мир.уведомить("колобок прыгнул на каркас");
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
мир.столкновениеПлатформы = мир.сцена.physics.add.collider(мир.колобок, мир.платформы);
|
мир.столкновениеПлатформы = мир.сцена.physics.add.collider(мир.колобок, мир.платформы);
|
||||||
|
|
||||||
мир.столкновениеВещи = мир.сцена.physics.add.collider(мир.колобок, мир.вещи);
|
мир.столкновениеВещи = мир.сцена.physics.add.collider(мир.колобок, мир.вещи);
|
||||||
мир.столкновениеВещи.collideCallback = function(a, вещь) {
|
мир.столкновениеВещи.collideCallback = function(a, вещь) {
|
||||||
if (мир.колобок.body.touching.down && вещь.body.touching.up && мир.колобок.прыжок)
|
var кк = мир.колобок.body.touching;
|
||||||
|
var кв = вещь.body.touching;
|
||||||
|
|
||||||
|
if (!мир.передвигаемыеВещи)
|
||||||
|
{
|
||||||
|
мир.передвигаемыеВещи = { };
|
||||||
|
}
|
||||||
|
мир.передвигаемыеВещи[вещь.name] = new Date();
|
||||||
|
|
||||||
|
if (кк.down && кв.up && мир.колобок.прыжок)
|
||||||
{
|
{
|
||||||
мир.колобок.вещь = вещь.name;
|
мир.колобок.вещь = вещь.name;
|
||||||
мир.уведомить("колобок прыгнул на вещь");
|
мир.уведомить("колобок прыгнул на вещь");
|
||||||
@@ -154,7 +171,10 @@
|
|||||||
|
|
||||||
var скоростьПадения = мир.колобок.body.velocity.y;
|
var скоростьПадения = мир.колобок.body.velocity.y;
|
||||||
if (
|
if (
|
||||||
(мир.колобок.скоростьПадения > 40) &&
|
(
|
||||||
|
мир.колобок.скоростьПадения > 40 ||
|
||||||
|
мир.колобок.скоростьПадения == 0
|
||||||
|
) &&
|
||||||
(скоростьПадения == 0) &&
|
(скоростьПадения == 0) &&
|
||||||
мир.колобок.body.touching.down
|
мир.колобок.body.touching.down
|
||||||
) {
|
) {
|
||||||
@@ -218,23 +238,6 @@
|
|||||||
// // // //
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
ОстановитьПередвижениеВещей = мир =>
|
|
||||||
{
|
|
||||||
var вещи = мир.вещи.getChildren();
|
|
||||||
for (var н in вещи)
|
|
||||||
{
|
|
||||||
var вещь = вещи[н];
|
|
||||||
if (вещь.body.touching.down)
|
|
||||||
{
|
|
||||||
вещь.body.stop();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// // // //
|
|
||||||
|
|
||||||
|
|
||||||
НачатьМиганиеКолобка = мир =>
|
НачатьМиганиеКолобка = мир =>
|
||||||
{
|
{
|
||||||
var конец = new Date();
|
var конец = new Date();
|
||||||
@@ -323,6 +326,35 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ОстановитьСкользящиеВещи = мир =>
|
||||||
|
{
|
||||||
|
if (!мир.передвигаемыеВещи)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var сейчас = new Date();
|
||||||
|
for (var имя in мир.передвигаемыеВещи)
|
||||||
|
{
|
||||||
|
var было = мир.передвигаемыеВещи[имя];
|
||||||
|
var узел = мир.узелСцены(имя);
|
||||||
|
if (узел && (сейчас - было > 20))
|
||||||
|
{
|
||||||
|
узел.body.stop();
|
||||||
|
delete мир.передвигаемыеВещи[имя];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!Object.keys(мир.передвигаемыеВещи).length)
|
||||||
|
{
|
||||||
|
мир.передвигаемыеВещи = null;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
* Последовательность
|
* Последовательность
|
||||||
@@ -344,7 +376,7 @@
|
|||||||
анимировать колобка
|
анимировать колобка
|
||||||
определить окончание прыжка колобка
|
определить окончание прыжка колобка
|
||||||
мигать колобка
|
мигать колобка
|
||||||
остановить передвижение вещей
|
остановить скользящие вещи
|
||||||
колобок начал прыжок
|
колобок начал прыжок
|
||||||
воспроизвести звук прыжка
|
воспроизвести звук прыжка
|
||||||
вывести начало прыжка в консоль
|
вывести начало прыжка в консоль
|
||||||
|
|||||||
@@ -7,26 +7,39 @@
|
|||||||
|
|
||||||
ЗагрузитьРесурсыИзбы = мир =>
|
ЗагрузитьРесурсыИзбы = мир =>
|
||||||
{
|
{
|
||||||
мир.сцена.load.audio("звук-избы", "ресурсы/звуки/387922__setuniman__scheming-1o95.mp3");
|
const звуки = {
|
||||||
мир.сцена.load.audio("звук-зарядки", "ресурсы/звуки/543927__eminyildirim__pistol-gun-cocking.wav");
|
"звук-избы": "ресурсы/звуки/387922__setuniman__scheming-1o95.mp3",
|
||||||
мир.сцена.load.audio("пуск-стрелы", "ресурсы/звуки/521552__omerbhatti34__arrow-impact.mp3");
|
"звук-зарядки": "ресурсы/звуки/543927__eminyildirim__pistol-gun-cocking.wav",
|
||||||
мир.сцена.load.audio("удар-стрелы", "ресурсы/звуки/330800__czarcazas__shattering-glass-small.mp3");
|
"пуск-стрелы": "ресурсы/звуки/521552__omerbhatti34__arrow-impact.mp3",
|
||||||
мир.сцена.load.audio("выломали-окно", "ресурсы/звуки/448004__kneeling__break-window.mp3");
|
"удар-стрелы": "ресурсы/звуки/330800__czarcazas__shattering-glass-small.mp3",
|
||||||
мир.сцена.load.audio("молоко-перевернули", "ресурсы/звуки/235596__tcrocker68__large-glassbottle-fall-woodfloor.wav");
|
"выломали-окно": "ресурсы/звуки/448004__kneeling__break-window.mp3",
|
||||||
мир.сцена.load.audio("молоко-прыгнули", "ресурсы/звуки/352065__cabled-mess__glassy-bits-06.wav");
|
"молоко-перевернули": "ресурсы/звуки/235596__tcrocker68__large-glassbottle-fall-woodfloor.wav",
|
||||||
|
"молоко-прыгнули": "ресурсы/звуки/352065__cabled-mess__glassy-bits-06.wav",
|
||||||
|
};
|
||||||
|
for (var имя in звуки)
|
||||||
|
{
|
||||||
|
мир.сцена.load.audio(имя, звуки[имя]);
|
||||||
|
}
|
||||||
|
|
||||||
мир.сцена.load.image("основа", "ресурсы/отладка/основа.jpg");
|
const изображения = {
|
||||||
мир.сцена.load.image("линия", "ресурсы/отладка/линия_вертикальная.png");
|
"основа": "ресурсы/отладка/основа.jpg",
|
||||||
мир.сцена.load.image("изба", "ресурсы/сцены/изба.jpg");
|
"линия": "ресурсы/отладка/линия_вертикальная.png",
|
||||||
мир.сцена.load.image("молоко", "ресурсы/вещи/банка_молока.png");
|
"изба": "ресурсы/сцены/изба.jpg",
|
||||||
мир.сцена.load.image("лужа", "ресурсы/вещи/лужа.png");
|
"молоко": "ресурсы/вещи/банка_молока.png",
|
||||||
мир.сцена.load.image("паук", "ресурсы/животные/паук.png");
|
"лужа": "ресурсы/вещи/лужа.png",
|
||||||
мир.сцена.load.image("мышь", "ресурсы/животные/мышь.png");
|
"паук": "ресурсы/животные/паук.png",
|
||||||
мир.сцена.load.image("мышь", "ресурсы/животные/мышь.png");
|
"мышь": "ресурсы/животные/мышь.png",
|
||||||
мир.сцена.load.image("самовар", "ресурсы/вещи/самовар.png");
|
"мышь": "ресурсы/животные/мышь.png",
|
||||||
мир.сцена.load.image("стрела", "ресурсы/вещи/стрела.png");
|
"самовар": "ресурсы/вещи/самовар.png",
|
||||||
мир.сцена.load.image("окно-разбито", "ресурсы/вещи/окно_разбитая-часть.png");
|
"стрела": "ресурсы/вещи/стрела.png",
|
||||||
мир.сцена.load.image("окно-выломано", "ресурсы/вещи/окно_дыра.png");
|
"окно-разбито": "ресурсы/вещи/окно_разбитая-часть.png",
|
||||||
|
"окно-выломано": "ресурсы/вещи/окно_дыра.png",
|
||||||
|
"крышка-подпола": "ресурсы/вещи/крышка-подпола.png",
|
||||||
|
};
|
||||||
|
for (var имя in изображения)
|
||||||
|
{
|
||||||
|
мир.сцена.load.image(имя, изображения[имя]);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -35,6 +48,16 @@
|
|||||||
|
|
||||||
ЗадатьСтруктуруИзбы = мир =>
|
ЗадатьСтруктуруИзбы = мир =>
|
||||||
{
|
{
|
||||||
|
function платформаПрыжков(узел) {
|
||||||
|
var ограничить = узел.body.checkCollision;
|
||||||
|
ограничить.down = false;
|
||||||
|
ограничить.left = false;
|
||||||
|
ограничить.right = false;
|
||||||
|
}
|
||||||
|
function платформаКаркаса(узел) {
|
||||||
|
узел.body.checkCollision.down = false;
|
||||||
|
}
|
||||||
|
|
||||||
мир.изба = {
|
мир.изба = {
|
||||||
фон: {
|
фон: {
|
||||||
родитель: мир.сцена,
|
родитель: мир.сцена,
|
||||||
@@ -49,6 +72,7 @@
|
|||||||
полДоКрышки: {
|
полДоКрышки: {
|
||||||
родитель: мир.каркас,
|
родитель: мир.каркас,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаКаркаса,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 585,
|
y: 585,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -60,14 +84,26 @@
|
|||||||
полКрышки: {
|
полКрышки: {
|
||||||
родитель: мир.каркас,
|
родитель: мир.каркас,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
x: 300,
|
после: платформаКаркаса,
|
||||||
|
x: 360,
|
||||||
y: 585,
|
y: 585,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
originX: 0,
|
originX: 0,
|
||||||
originY: 0,
|
originY: 0,
|
||||||
scaleX: 30,
|
scaleX: 16,
|
||||||
visible: false,
|
visible: false,
|
||||||
},
|
},
|
||||||
|
крышка: {
|
||||||
|
родитель: мир.сцена,
|
||||||
|
тип: "изображение",
|
||||||
|
x: 357,
|
||||||
|
y: 605,
|
||||||
|
texture: "крышка-подпола",
|
||||||
|
originX: 0,
|
||||||
|
originY: 1,
|
||||||
|
scaleX: 0.4,
|
||||||
|
scaleY: 0.4,
|
||||||
|
},
|
||||||
полПослеКрышки: {
|
полПослеКрышки: {
|
||||||
родитель: мир.каркас,
|
родитель: мир.каркас,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
@@ -106,6 +142,7 @@
|
|||||||
фундаментПечи: {
|
фундаментПечи: {
|
||||||
родитель: мир.платформы,
|
родитель: мир.платформы,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
x: 583,
|
x: 583,
|
||||||
y: 473,
|
y: 473,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -117,6 +154,7 @@
|
|||||||
полка1: {
|
полка1: {
|
||||||
родитель: мир.платформы,
|
родитель: мир.платформы,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
x: 666,
|
x: 666,
|
||||||
y: 335,
|
y: 335,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -128,6 +166,7 @@
|
|||||||
полкаМолока: {
|
полкаМолока: {
|
||||||
родитель: мир.платформы,
|
родитель: мир.платформы,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
x: 771,
|
x: 771,
|
||||||
y: 335,
|
y: 335,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -139,6 +178,7 @@
|
|||||||
полка3: {
|
полка3: {
|
||||||
родитель: мир.платформы,
|
родитель: мир.платформы,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
x: 862,
|
x: 862,
|
||||||
y: 335,
|
y: 335,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -150,6 +190,7 @@
|
|||||||
полкаСамовара: {
|
полкаСамовара: {
|
||||||
родитель: мир.платформы,
|
родитель: мир.платформы,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
x: 995,
|
x: 995,
|
||||||
y: 355,
|
y: 355,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -161,6 +202,7 @@
|
|||||||
лежанкаПечи: {
|
лежанкаПечи: {
|
||||||
родитель: мир.платформы,
|
родитель: мир.платформы,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
x: 620,
|
x: 620,
|
||||||
y: 245,
|
y: 245,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -172,6 +214,7 @@
|
|||||||
основаТрубыПечи: {
|
основаТрубыПечи: {
|
||||||
родитель: мир.платформы,
|
родитель: мир.платформы,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
x: 950,
|
x: 950,
|
||||||
y: 180,
|
y: 180,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -184,6 +227,7 @@
|
|||||||
стол: {
|
стол: {
|
||||||
родитель: мир.платформы,
|
родитель: мир.платформы,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
x: 1270,
|
x: 1270,
|
||||||
y: 427,
|
y: 427,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -195,6 +239,7 @@
|
|||||||
подоконник: {
|
подоконник: {
|
||||||
родитель: мир.платформы,
|
родитель: мир.платформы,
|
||||||
тип: "платформа",
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
x: 1690,
|
x: 1690,
|
||||||
y: 375,
|
y: 375,
|
||||||
texture: "основа",
|
texture: "основа",
|
||||||
@@ -256,8 +301,8 @@
|
|||||||
x: 1003,
|
x: 1003,
|
||||||
y: 200,
|
y: 200,
|
||||||
texture: "самовар",
|
texture: "самовар",
|
||||||
scaleX: 0.25,
|
scaleX: 0.2,
|
||||||
scaleY: 0.25,
|
scaleY: 0.2,
|
||||||
depth: 5,
|
depth: 5,
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -289,7 +334,7 @@
|
|||||||
y: 375,
|
y: 375,
|
||||||
texture: "паук",
|
texture: "паук",
|
||||||
скорость: 70,
|
скорость: 70,
|
||||||
низ: 600,
|
низ: 550,
|
||||||
верх: 270,
|
верх: 270,
|
||||||
depth: 10,
|
depth: 10,
|
||||||
},
|
},
|
||||||
@@ -440,6 +485,7 @@
|
|||||||
// // // //
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
ПозволитьПлатформамПропускатьПрыжки = мир =>
|
ПозволитьПлатформамПропускатьПрыжки = мир =>
|
||||||
{
|
{
|
||||||
мир.платформы.children.iterate(function(платформа) {
|
мир.платформы.children.iterate(function(платформа) {
|
||||||
@@ -448,6 +494,7 @@
|
|||||||
платформа.body.checkCollision.right = false;
|
платформа.body.checkCollision.right = false;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// // // //
|
// // // //
|
||||||
@@ -849,6 +896,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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
* Последовательность
|
* Последовательность
|
||||||
@@ -863,7 +979,7 @@
|
|||||||
задать структуру избы
|
задать структуру избы
|
||||||
задать функцию поиска узла по имени
|
задать функцию поиска узла по имени
|
||||||
создать избу
|
создать избу
|
||||||
позволить платформам пропускать прыжки
|
# позволить платформам пропускать прыжки
|
||||||
настроить пауков
|
настроить пауков
|
||||||
настроить мышей
|
настроить мышей
|
||||||
настроить стрелы
|
настроить стрелы
|
||||||
@@ -900,10 +1016,15 @@
|
|||||||
перевернули молоко
|
перевернули молоко
|
||||||
показать лужу молока
|
показать лужу молока
|
||||||
воспроизвести звук переворота молока
|
воспроизвести звук переворота молока
|
||||||
|
колобок прыгнул на каркас
|
||||||
|
проверить прыжок по крышке подпола
|
||||||
|
колобок прыгнул по крышке подпола
|
||||||
|
начать поворот крышки подпола
|
||||||
|
|
||||||
обновить сцену
|
обновить сцену
|
||||||
анимировать пауков
|
анимировать пауков
|
||||||
анимировать мышей
|
анимировать мышей
|
||||||
анимировать переворот молока
|
анимировать переворот молока
|
||||||
|
анимировать поворот крышки подпола
|
||||||
`);
|
`);
|
||||||
|
|
||||||
|
|||||||
168
К/игра/112.подпол.js
Normal file
168
К/игра/112.подпол.js
Normal file
@@ -0,0 +1,168 @@
|
|||||||
|
/*
|
||||||
|
*
|
||||||
|
* Реакции
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
ЗагрузитьРесурсыПодпола = мир =>
|
||||||
|
{
|
||||||
|
const изображения = {
|
||||||
|
"лестница": "ресурсы/вещи/лестница.png",
|
||||||
|
};
|
||||||
|
for (var имя in изображения)
|
||||||
|
{
|
||||||
|
мир.сцена.load.image(имя, изображения[имя]);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
ЗадатьСтруктуруПодпола = мир =>
|
||||||
|
{
|
||||||
|
function платформаПрыжков(узел) {
|
||||||
|
var ограничить = узел.body.checkCollision;
|
||||||
|
ограничить.down = false;
|
||||||
|
ограничить.left = false;
|
||||||
|
ограничить.right = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
мир.подпол = {
|
||||||
|
полПодпола: {
|
||||||
|
родитель: мир.каркас,
|
||||||
|
тип: "платформа",
|
||||||
|
x: 0,
|
||||||
|
y: 1070,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 250,
|
||||||
|
visible: true,
|
||||||
|
},
|
||||||
|
|
||||||
|
леваяСтенаПодпола: {
|
||||||
|
родитель: мир.каркас,
|
||||||
|
тип: "платформа",
|
||||||
|
x: 0,
|
||||||
|
y: 600,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleY: 60,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
праваяСтенаПодпола: {
|
||||||
|
родитель: мир.каркас,
|
||||||
|
тип: "платформа",
|
||||||
|
x: 2000,
|
||||||
|
y: 600,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleY: 60,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
|
||||||
|
лестница: {
|
||||||
|
родитель: мир.сцена,
|
||||||
|
тип: "изображение",
|
||||||
|
x: 300,
|
||||||
|
y: 590,
|
||||||
|
angle: 20,
|
||||||
|
texture: "лестница",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 0.3,
|
||||||
|
scaleY: 0.4,
|
||||||
|
},
|
||||||
|
|
||||||
|
ступенька1: {
|
||||||
|
родитель: мир.платформы,
|
||||||
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
|
x: 190,
|
||||||
|
y: 970,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 5,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
ступенька2: {
|
||||||
|
родитель: мир.платформы,
|
||||||
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
|
x: 225,
|
||||||
|
y: 865,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 5,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
ступенька3: {
|
||||||
|
родитель: мир.платформы,
|
||||||
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
|
x: 270,
|
||||||
|
y: 750,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 5,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
ступенька4: {
|
||||||
|
родитель: мир.платформы,
|
||||||
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
|
x: 300,
|
||||||
|
y: 690,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 5,
|
||||||
|
visible: false,
|
||||||
|
},
|
||||||
|
полкаПодпола1: {
|
||||||
|
родитель: мир.платформы,
|
||||||
|
тип: "платформа",
|
||||||
|
после: платформаПрыжков,
|
||||||
|
x: 600,
|
||||||
|
y: 865,
|
||||||
|
texture: "основа",
|
||||||
|
originX: 0,
|
||||||
|
originY: 0,
|
||||||
|
scaleX: 35,
|
||||||
|
visible: true,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// // // //
|
||||||
|
|
||||||
|
|
||||||
|
СоздатьПодпол = мир =>
|
||||||
|
{
|
||||||
|
создатьУзлыСценыПоСтруктуре(мир.подпол);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Последовательность
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
мир.разобрать(`
|
||||||
|
загрузить ресурсы сцены
|
||||||
|
загрузить ресурсы подпола
|
||||||
|
создать сцену
|
||||||
|
задать структуру подпола
|
||||||
|
создать подпол
|
||||||
|
`);
|
||||||
|
|
||||||
BIN
К/ресурсы/вещи/крышка-подпола.png
Normal file
BIN
К/ресурсы/вещи/крышка-подпола.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 38 KiB |
BIN
К/ресурсы/вещи/лестница.png
Normal file
BIN
К/ресурсы/вещи/лестница.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 376 KiB |
Reference in New Issue
Block a user