Browse Source

зарядка

master
parent
commit
98993eddc3
6 changed files with 43 additions and 7 deletions
  1. +1
    -1
      index.html
  2. +0
    -3
      игра/108.группы.js
  3. +2
    -2
      игра/110.колобок.js
  4. +39
    -1
      игра/111.изба.js
  5. BIN
      ресурсы/звуки/543927__eminyildirim__pistol-gun-cocking.wav
  6. +1
    -0
      ресурсы/звуки/README.md

+ 1
- 1
index.html View File

@@ -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.5.0</title>
<title>К 0.6.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 {


+ 0
- 3
игра/108.группы.js View File

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


@@ -25,8 +24,6 @@
{ {
мир.сцена.physics.add.collider(мир.вещи, мир.каркас); мир.сцена.physics.add.collider(мир.вещи, мир.каркас);
мир.сцена.physics.add.collider(мир.вещи, мир.платформы); мир.сцена.physics.add.collider(мир.вещи, мир.платформы);
мир.сцена.physics.add.collider(мир.духи, мир.каркас);
мир.сцена.physics.add.collider(мир.духи, мир.платформы);
}; };






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

@@ -341,8 +341,8 @@
колобок закончил прыжок колобок закончил прыжок
вывести окончание прыжка в консоль вывести окончание прыжка в консоль
начали мигать колобка начали мигать колобка
# отключить столкновение с платформами и вещами
# уменьшить прыгучесть колобка
отключить столкновение с платформами и вещами
уменьшить прыгучесть колобка
закончили мигать колобка закончили мигать колобка
включить столкновение с платформами и вещами включить столкновение с платформами и вещами
восстановить прыгучесть колобка восстановить прыгучесть колобка


+ 39
- 1
игра/111.изба.js View File

@@ -8,6 +8,7 @@
ЗагрузитьРесурсыИзбы = мир => ЗагрузитьРесурсыИзбы = мир =>
{ {
мир.сцена.load.audio("звук-избы", "ресурсы/звуки/387922__setuniman__scheming-1o95.mp3"); мир.сцена.load.audio("звук-избы", "ресурсы/звуки/387922__setuniman__scheming-1o95.mp3");
мир.сцена.load.audio("звук-зарядки", "ресурсы/звуки/543927__eminyildirim__pistol-gun-cocking.wav");


мир.сцена.load.image("основа", "ресурсы/отладка/основа.jpg"); мир.сцена.load.image("основа", "ресурсы/отладка/основа.jpg");
мир.сцена.load.image("линия", "ресурсы/отладка/линия_вертикальная.png"); мир.сцена.load.image("линия", "ресурсы/отладка/линия_вертикальная.png");
@@ -312,11 +313,14 @@


СоздатьСтрелы = мир => СоздатьСтрелы = мир =>
{ {
мир.стрелаЗаряжена = false;

// Кучка стрел. // Кучка стрел.
var группаСтрел = мир.сцена.physics.add.staticGroup(); var группаСтрел = мир.сцена.physics.add.staticGroup();
var стрелы = группаСтрел.create(1270, 405, "основа").setOrigin(0, 0); var стрелы = группаСтрел.create(1270, 405, "основа").setOrigin(0, 0);
стрелы.setScale(25, 2).refreshBody(); стрелы.setScale(25, 2).refreshBody();
стрелы.body.checkCollision.down = false; стрелы.body.checkCollision.down = false;
стрелы.setVisible(false);
var столкновение = мир.сцена.physics.add.collider(мир.колобок, стрелы); var столкновение = мир.сцена.physics.add.collider(мир.колобок, стрелы);
столкновение.collideCallback = function(a, b) { столкновение.collideCallback = function(a, b) {
мир.состояниеКолобка.прыжокПоСтрелам = true; мир.состояниеКолобка.прыжокПоСтрелам = true;
@@ -326,7 +330,26 @@
мир.стрелаКЛуку = мир.сцена.physics.add.sprite(1250, 380, "стрела").setOrigin(0, 0); мир.стрелаКЛуку = мир.сцена.physics.add.sprite(1250, 380, "стрела").setOrigin(0, 0);
мир.стрелаКЛуку.setScale(0.5, 0.5).refreshBody(); мир.стрелаКЛуку.setScale(0.5, 0.5).refreshBody();
мир.стрелаКЛуку.depth = 15; мир.стрелаКЛуку.depth = 15;
мир.духи.add(мир.стрелаКЛуку);

// Учитываем платформы.
мир.сцена.physics.add.collider(мир.стрелаКЛуку, мир.каркас);
мир.сцена.physics.add.collider(мир.стрелаКЛуку, мир.платформы);

// Платформа для стрелы у лука, чтобы стрела оставалась в луке.
var платформы = мир.сцена.physics.add.staticGroup();
var платформаЛука = платформы.create(1280, 200, "основа").setOrigin(0, 0);
платформаЛука.body.checkCollision.down = false;
var столкновениеЛука = мир.сцена.physics.add.collider(мир.стрелаКЛуку, платформаЛука);
платформаЛука.setVisible(false);

// Определение заряда стрелы.
столкновениеЛука.collideCallback = function заряд(a, b) {
if (мир.стрелаКЛуку.body.touching.down && !мир.стрелаЗаряжена)
{
мир.стрелаЗаряжена = true;
мир.уведомить("стрела заряжена");
}
}
}; };




@@ -357,11 +380,24 @@


ПодкидыватьСтрелуКЛуку = мир => ПодкидыватьСтрелуКЛуку = мир =>
{ {
if (!мир.стрелаКЛуку.body.touching.down || мир.стрелаЗаряжена)
{
return;
}
var скорость = мир.состояниеКолобка.скоростьПадения * 0.9; var скорость = мир.состояниеКолобка.скоростьПадения * 0.9;
мир.стрелаКЛуку.setVelocityY(-скорость); мир.стрелаКЛуку.setVelocityY(-скорость);
}; };




// // // //


ВоспроизвестиЗвукЗарядкиСтрелы = мир =>
{
мир.сцена.sound.play("звук-зарядки");
};


/* /*
* *
* Последовательность * Последовательность
@@ -390,5 +426,7 @@
проверить наличие прыжка по стрелам проверить наличие прыжка по стрелам
прыжок по платформе стрел прыжок по платформе стрел
подкидывать стрелу к луку подкидывать стрелу к луку
стрела заряжена
воспроизвести звук зарядки стрелы
`); `);



BIN
ресурсы/звуки/543927__eminyildirim__pistol-gun-cocking.wav View File


+ 1
- 0
ресурсы/звуки/README.md View File

@@ -5,3 +5,4 @@
* https://freesound.org/people/omerbhatti34/sounds/521552/ * https://freesound.org/people/omerbhatti34/sounds/521552/
* https://freesound.org/people/Czarcazas/sounds/330800/ * https://freesound.org/people/Czarcazas/sounds/330800/
* https://freesound.org/people/Kneeling/sounds/448004/ * https://freesound.org/people/Kneeling/sounds/448004/
* https://freesound.org/people/EminYILDIRIM/sounds/543927/

Loading…
Cancel
Save