Šī revīzija ir iekļauta:
2021-04-24 20:20:20 +03:00
vecāks 26dd509faf
revīzija 89246a354e
16 mainīti faili ar 253 papildinājumiem un 27 dzēšanām

Parādīt failu

@@ -2,7 +2,7 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>К 0.3.0</title>
<title>К 0.4.0</title>
<script src="https://cdn.jsdelivr.net/npm/phaser@3.54.0/dist/phaser.min.js"></script>
<style>
html, body {

Parādīt failu

@@ -13,7 +13,7 @@
мир.каркас = мир.сцена.physics.add.staticGroup();
мир.платформы = мир.сцена.physics.add.staticGroup();
мир.вещи = мир.сцена.add.group();
мир.враги = мир.сцена.add.group();
мир.враги = мир.сцена.physics.add.group({ allowGravity: false });
};
@@ -24,8 +24,8 @@
{
мир.сцена.physics.add.collider(мир.вещи, мир.каркас);
мир.сцена.physics.add.collider(мир.вещи, мир.платформы);
мир.сцена.physics.add.collider(мир.враги, мир.каркас);
мир.сцена.physics.add.collider(мир.враги, мир.платформы);
//мир.сцена.physics.add.collider(мир.враги, мир.каркас);
//мир.сцена.physics.add.collider(мир.враги, мир.платформы);
};

Parādīt failu

@@ -15,6 +15,8 @@
frameHeight: 94,
}
);
мир.сцена.load.audio("прыжок", "ресурсы/звуки/331381__qubodup__public-domain-jump-sound.wav");
мир.сцена.load.audio("повреждение", "ресурсы/звуки/437650__dersuperanton__getting-hit-damage-scream.wav");
};
@@ -32,6 +34,13 @@
// Следить за колобком камерой.
const камера = мир.сцена.cameras.main;
камера.startFollow(мир.колобок, false, 0.1, 0.1);
мир.состояниеКолобка = {
мигать: false,
мигание: { },
прыгучесть: -570,
коэффициентПрыгучести: 1,
};
};
@@ -66,7 +75,7 @@
НастроитьСтолкновениеКолобка = мир =>
{
мир.сцена.physics.add.collider(мир.колобок, мир.каркас);
мир.сцена.physics.add.collider(мир.колобок, мир.вещи);
мир.столкновениеВещи = мир.сцена.physics.add.collider(мир.колобок, мир.вещи);
мир.столкновениеПлатформы = мир.сцена.physics.add.collider(мир.колобок, мир.платформы);
var столкновениеВраги = мир.сцена.physics.add.collider(мир.колобок, мир.враги);
@@ -103,7 +112,9 @@
if (мир.управление.прыжок && мир.колобок.body.touching.down)
{
мир.колобок.setVelocityY(-570);
var скорость = мир.состояниеКолобка.прыгучесть * мир.состояниеКолобка.коэффициентПрыгучести;
мир.колобок.setVelocityY(скорость);
мир.сцена.sound.play("прыжок");
}
};
@@ -111,7 +122,8 @@
// // // //
АнимироватьКолобка = мир => {
АнимироватьКолобка = мир =>
{
var есть = "";
if (мир.колобок.anims.currentAnim)
{
@@ -139,32 +151,118 @@
// // // //
ОтключитьСтолкновениеСПлатформами = мир => {
ОтключитьСтолкновениеСПлатформамиИВещами = мир =>
{
мир.столкновениеПлатформы.active = false;
мир.столкновениеВещи.active = false;
};
// // // //
ВключитьСтолкновениеСПлатформами = мир => {
ВключитьСтолкновениеСПлатформамиИВещами = мир =>
{
мир.столкновениеПлатформы.active = true;
мир.столкновениеВещи.active = true;
};
// // // //
ОстановитьПередвижениеВещей = мир => {
ОстановитьПередвижениеВещей = мир =>
{
var вещи = мир.вещи.getChildren();
for (var н in вещи)
{
var вещь = вещи[н];
вещь.body.stop();
if (вещь.body.touching.down)
{
вещь.body.stop();
}
}
};
// // // //
НачатьМиганиеКолобка = мир =>
{
var конец = new Date();
конец.setSeconds(конец.getSeconds() + 8);
мир.состояниеКолобка.мигание.окончание = конец;
var звук = мир.сцена.sound.get("повреждение");
if (!звук || !звук.isPlaying)
{
мир.сцена.sound.play("повреждение");
}
if (мир.состояниеКолобка.мигать)
{
return;
}
мир.состояниеКолобка.мигать = true;
мир.состояниеКолобка.мигание = {
шаг: 0.1,
цель: 0,
};
мир.уведомить("начали мигать колобка");
};
// // // //
МигатьКолобка = мир =>
{
if (!мир.состояниеКолобка.мигать)
{
return;
}
var м = мир.состояниеКолобка.мигание;
var сейчас = new Date();
if (м.окончание - сейчас < 0)
{
мир.состояниеКолобка.мигать = false;
мир.колобок.alpha = 1;
мир.уведомить("закончили мигать колобка");
return;
}
var к = (м.цель == 1) ? 1 : -1;
мир.колобок.alpha += к * м.шаг;
if ((мир.колобок.alpha <= 0) || (мир.колобок.alpha >= 1))
{
м.цель = к * -1;
}
};
// // // //
УменьшитьПрыгучестьКолобка = мир =>
{
мир.состояниеКолобка.коэффициентПрыгучести = 0.6;
};
// // // //
ВосстановитьПрыгучестьКолобка = мир =>
{
мир.состояниеКолобка.коэффициентПрыгучести = 1;
};
/*
*
* Последовательность
@@ -179,13 +277,18 @@
создать колобка
создать анимации колобка
настроить столкновение колобка
изменили управление
переместить колобка
столкновение с врагом
отключить столкновение с платформами
начать мигание колобка
обновить сцену
переместить колобка
анимировать колобка
изменили анимацию колобка
мигать колобка
остановить передвижение вещей
начали мигать колобка
отключить столкновение с платформами и вещами
уменьшить прыгучесть колобка
закончили мигать колобка
включить столкновение с платформами и вещами
восстановить прыгучесть колобка
`);

Parādīt failu

@@ -7,9 +7,13 @@
ЗагрузитьРесурсыИзбы = мир =>
{
мир.сцена.load.image("изба", "ресурсы/сцены/изба.jpg");
мир.сцена.load.image("основа", "ресурсы/отладка/основа.jpg");
мир.сцена.load.image("линия", "ресурсы/отладка/линия_вертикальная.png");
мир.сцена.load.image("изба", "ресурсы/сцены/изба.jpg");
мир.сцена.load.image("молоко", "ресурсы/вещи/банкаолока.png");
мир.сцена.load.image("паук", "ресурсы/животные/паук.png");
мир.сцена.load.image("мышь", "ресурсы/животные/мышь.png");
мир.сцена.load.audio("звук-избы", "ресурсы/звуки/387922__setuniman__scheming-1o95.mp3");
};
@@ -19,6 +23,7 @@
СоздатьИзбу = мир =>
{
мир.сцена.add.image(0, 0, "изба").setOrigin(0, 0);
мир.сцена.sound.play("звук-избы", { loop: true });
};
@@ -152,22 +157,129 @@
// // // //
СоздатьВрагов = мир => {
var враг = мир.сцена.physics.add.sprite(750, 100, "основа");
враг.setScale(5, 5).refreshBody();
враг.depth = 10;
мир.враги.add(враг);
СоздатьВещи = мир =>
{
var молоко = мир.сцена.physics.add.sprite(830, 430, "молоко");
молоко.setScale(0.5, 0.5).refreshBody();
молоко.depth = 5;
мир.вещи.add(молоко);
};
// // // //
СоздатьВещи = мир => {
var молоко = мир.сцена.physics.add.sprite(750, 400, "молоко");
молоко.setScale(0.5, 0.5).refreshBody();
молоко.depth = 10;
мир.вещи.add(молоко);
СоздатьПауков = мир =>
{
мир.настройкиПауков = [
{
x: 620,
y: 345,
скорость: 50,
},
{
x: 740,
y: 445,
скорость: 65,
},
{
x: 830,
y: 375,
скорость: 80,
},
{
x: 930,
y: 500,
скорость: 70,
},
];
мир.пауки = [];
мир.нитиПауков = [];
for (var номер in мир.настройкиПауков)
{
var настройки = мир.настройкиПауков[номер];
var паук = мир.враги.create(настройки.x, настройки.y, "паук");
паук.body.setVelocityY(настройки.скорость);
паук.depth = 10;
мир.пауки.push(паук);
var нить = мир.сцена.add.image(настройки.x - 1, 245, "линия").setOrigin(0, 0);
нить.depth = паук.depth;
мир.нитиПауков.push(нить);
}
};
// // // //
АнимироватьПауков = мир =>
{
for (var номер in мир.пауки)
{
var паук = мир.пауки[номер];
var нить = мир.нитиПауков[номер];
var скорость = мир.настройкиПауков[номер].скорость;
нить.displayHeight = паук.y - нить.y - 5;
if (паук.y > 550)
{
паук.setVelocityY(-скорость);
} else if (паук.y < 270)
{
паук.setVelocityY(скорость);
}
}
};
// // // //
СоздатьМышей = мир =>
{
мир.настройкиМышей= [
{
x: 350,
y: 575,
скорость: 290,
},
{
x: 740,
y: 575,
скорость: 375,
},
];
мир.мыши = [];
for (var номер in мир.настройкиМышей)
{
var настройки = мир.настройкиМышей[номер];
var мышь = мир.враги.create(настройки.x, настройки.y, "мышь");
мышь.body.setVelocityX(настройки.скорость);
мышь.depth = 10;
мышь.flipX = true;
мир.мыши.push(мышь);
}
};
// // // //
АнимироватьМышей = мир =>
{
for (var номер in мир.мыши)
{
var мышь= мир.мыши[номер];
var скорость = мир.настройкиМышей[номер].скорость;
if (мышь.x > 1950)
{
мышь.setVelocityX(-скорость);
мышь.flipX = false;
} else if (мышь.x < 50)
{
мышь.setVelocityX(скорость);
мышь.flipX = true;
}
}
};
@@ -186,7 +298,11 @@
создать полы и стены каркаса
создать платформы
позволить платформам пропускать прыжки
создать врагов
создать вещи
создать пауков
создать мышей
обновить сцену
анимировать пауков
анимировать мышей
`);

Bināro failu nav iespējams attēlot.

Pēc

Platums:  |  Augstums:  |  Izmērs: 3.7 KiB

Bināro failu nav iespējams attēlot.

Pēc

Platums:  |  Augstums:  |  Izmērs: 4.6 KiB

Bināro failu nav iespējams attēlot.

Bināro failu nav iespējams attēlot.

Bināro failu nav iespējams attēlot.

Bināro failu nav iespējams attēlot.

Bināro failu nav iespējams attēlot.

Bināro failu nav iespējams attēlot.

Bināro failu nav iespējams attēlot.

Bināro failu nav iespējams attēlot.

Parādīt failu

@@ -0,0 +1,7 @@
* https://freesound.org/people/DDmyzik/sounds/555803/
* https://freesound.org/people/Setuniman/sounds/387922/
* https://freesound.org/people/qubodup/sounds/331381/
* https://freesound.org/people/davethetech/sounds/360432/
* https://freesound.org/people/omerbhatti34/sounds/521552/
* https://freesound.org/people/Czarcazas/sounds/330800/
* https://freesound.org/people/Kneeling/sounds/448004/

Bināro failu nav iespējams attēlot.

Pēc

Platums:  |  Augstums:  |  Izmērs: 573 B