Pārlūkot izejas kodu

jumpthrough

master
vecāks
revīzija
b50338f272
2 mainītis faili ar 34 papildinājumiem un 8 dzēšanām
  1. +28
    -8
      00150.игрок.js
  2. +6
    -0
      index.html

+ 28
- 8
00150.игрок.js Parādīt failu

@@ -1,6 +1,9 @@
мир.игрок = {
задано: {},
обновить: обновитьИгрока,
обновить: function() {
переместитьИгрока();
задатьИгрокуМаскуСтолкновения();
},
};


@@ -21,8 +24,14 @@
// // // //


function обновитьИгрока()
function переместитьИгрока()
{
var тело = мир.объекты.тела[мир.игрок.задано.объект];
if (!тело)
{
return;
}

var к = [
мир.игрок.задано["клавиши.0"],
мир.игрок.задано["клавиши.1"],
@@ -32,12 +41,6 @@ function обновитьИгрока()
var вправо = (мир.ввод.клавиши[к[1]] == true);
var вверх = (мир.ввод.клавиши[к[2]] == true);

var тело = мир.объекты.тела[мир.игрок.задано.объект];
if (!тело)
{
return;
}

var скоростьГ = мир.игрок.задано["скорость.0"];
var скоростьВ = мир.игрок.задано["скорость.1"];
var скоростьY = (вверх && Math.abs(тело.velocity.y) <= 0.0000000000001) ? -скоростьВ : тело.velocity.y;
@@ -54,3 +57,20 @@ function обновитьИгрока()
Matter.Sleeping.set(тело, false);
Matter.Body.setVelocity(тело, { x: скоростьX, y: скоростьY });
}


// // // //


function задатьИгрокуМаскуСтолкновения()
{
var тело = мир.объекты.тела[мир.игрок.задано.объект];
if (!тело)
{
return;
}

var маска = (тело.velocity.y < -1) ? 2 : 1;
тело.collisionFilter.mask = маска;
document.getElementById("отладка").innerHTML = `маска: ${маска}`;
}

+ 6
- 0
index.html Parādīt failu

@@ -18,11 +18,17 @@
}
#корень {
position: relative;
}
#отладка {
position: absolute;
right: 2em;
bottom: 2em;
}
</style>
</head>
<body>
<div id="корень"></div>
<div id="отладка"></div>
<script src="00100.мир.js"></script>
<script src="00110.заголовок.js"></script>
<script src="00120.физика.js"></script>


Notiek ielāde…
Atcelt
Saglabāt