Browse Source

части все

master
parent
commit
5b106dd8c7
2 changed files with 65 additions and 28 deletions
  1. +1
    -0
      игра/108.группы.js
  2. +64
    -28
      игра/111.изба.js

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

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




+ 64
- 28
игра/111.изба.js View File

@@ -354,7 +354,49 @@
скорость: 375,
},


кучаСтрел: {
родитель: мир.стрелы,
тип: "платформа",
x: 1270,
y: 405,
texture: "основа",
originX: 0,
originY: 0,
scaleX: 25,
scaleY: 2,
visible: false,
},
лук: {
родитель: мир.стрелы,
тип: "платформа",
x: 1280,
y: 200,
texture: "основа",
originX: 0,
originY: 0,
visible: false,
},
пускСтрелы: {
родитель: мир.стрелы,
тип: "платформа",
x: 1270,
y: 160,
texture: "основа",
originX: 0,
originY: 0,
visible: false,
},
границаПолётаСтрелы: {
родитель: мир.стрелы,
тип: "платформа",
x: 1830,
y: 200,
texture: "основа",
originX: 0,
originY: 0,
scaleY: 20,
visible: false,
},
};
};

@@ -480,30 +522,18 @@
// // // //


СоздатьСтрелы = мир =>
НастроитьСтрелы = мир =>
{
мир.пфСтрел = мир.сцена.physics.add.staticGroup();
var куча = мир.пфСтрел.create(1270, 405, "основа").setOrigin(0, 0);
куча.setScale(25, 2).refreshBody();
var куча = мир.узелСцены("кучаСтрел");
куча.body.checkCollision.down = false;
куча.setVisible(false);

мир.пфЛук = мир.пфСтрел.create(1280, 200, "основа").setOrigin(0, 0);
мир.пфЛук.body.checkCollision.down = false;
мир.пфЛук.setVisible(false);

var пуск = мир.пфСтрел.create(1270, 160, "основа").setOrigin(0, 0);
пуск.setVisible(false);

мир.пфОкно = мир.пфСтрел.create(1830, 200, "основа").setOrigin(0, 0);
мир.пфОкно.setScale(1, 20).refreshBody();
мир.пфОкно.setVisible(false);
var лук = мир.узелСцены("лук");
лук.body.checkCollision.down = false;
var пуск = мир.узелСцены("пускСтрелы");

// Определение прыжка по стрелам.
мир.сцена.physics.add.collider(мир.колобок, куча, function(a, b) {
if (мир.колобок.body.touching.down) {
мир.состояниеКолобка.прыжокПоСтрелам = true;
console.debug("прыжок по стрелам");
}
});

@@ -514,7 +544,6 @@ console.debug("прыжок по стрелам");
{
мир.пускСтрелы = true;
мир.уведомить("пуск стрелы");
console.debug("пуск стрелы");
}
};
стПуск.overlapOnly = true;
@@ -537,29 +566,27 @@ console.debug("пуск стрелы");
мир.сцена.physics.add.collider(мир.стрела, мир.платформы);

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

// Определение столкновения с окном.
var стОкно = мир.сцена.physics.add.collider(мир.стрела, мир.пфОкно);
var граница = мир.узелСцены("границаПолётаСтрелы");
var стОкно = мир.сцена.physics.add.collider(мир.стрела, граница);
стОкно.collideCallback = function(a, b) {
if (мир.стрелаЗаряжена && мир.пускСтрелы)
{
мир.стрелаЗаряжена = false;
мир.пускСтрелы = false;
мир.уведомить("удар стрелы об окно");
console.debug("удар стрелы об окно");
}
};

console.debug("стрела.x", мир.стрела.x);
};


@@ -622,7 +649,16 @@ console.debug("стрела.x", мир.стрела.x);

ПуститьСтрелу = мир =>
{
мир.стрела.setVelocityX(1200);
function randInt(min, max)
{
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/random#getting_a_random_integer_between_two_values
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min)) + min;
}
var скорость = randInt(1100, 1300);

мир.стрела.setVelocityX(скорость);
};


@@ -712,7 +748,7 @@ console.debug("стрела.x", мир.стрела.x);
позволить платформам пропускать прыжки
настроить пауков
настроить мышей
создать стрелы
настроить стрелы
создать стрелу
обновить сцену
анимировать пауков


Loading…
Cancel
Save