Михаил Капелько 3 роки тому
джерело
коміт
99129cc494
5 змінених файлів з 36 додано та 8 видалено
  1. +5
    -1
      100.мир.js
  2. +11
    -1
      160.объекты.js
  3. +20
    -6
      800.пример.json.js
  4. BIN
      р/вещи/стрела.png
  5. BIN
      р/вещи/стрела.xcf

+ 5
- 1
100.мир.js Переглянути файл

@@ -74,11 +74,15 @@
мир.синхронизироватьЭлементТело = function(элемент, тело) {
if (тело.isSleeping)
{
return;
return false;
}

let x = тело.position.x - элемент.offsetWidth / 2;
let y = тело.position.y - элемент.offsetHeight / 2;
let угол = тело.angle;
элемент.style.transform = `translate(${x}px, ${y}px) rotate(${угол}rad)`;

console.debug("синхра тела", элемент.id);

return true;
};

+ 11
- 1
160.объекты.js Переглянути файл

@@ -50,7 +50,17 @@
{
var тело = мир.объекты.тела[имя];
var элемент = мир.объекты.элементы[имя];
мир.синхронизироватьЭлементТело(элемент, тело);
var засинхрили = мир.синхронизироватьЭлементТело(элемент, тело);

// Учесть значения transform из JSON-JS.
if (засинхрили)
{
var transform = мир.объекты.задано[имя]["вид.transform"];
if (transform)
{
элемент.style.transform += transform;
}
}
}
};



+ 20
- 6
800.пример.json.js Переглянути файл

@@ -5,7 +5,7 @@
ширина: 2000,
высота: 600,
вид: {
//background: "url(р/сцены/изба.jpg)",
background: "url(р/сцены/изба.jpg)",
},
},
колобок: {
@@ -21,13 +21,12 @@
},
объекты: {
сенсор: {
x: 1170,
y: 350,
высота: 50,
ширина: 50,
x: 1260,
y: 400,
ширина: 200,
вид: {
background: "url(р/отладка/основа.jpg)",
//display: "none",
display: "none",
},
физика: {
isStatic: true,
@@ -268,6 +267,21 @@
},
},
},
стрела: {
x: 1270,
y: 350,
высота: 30,
ширина: 200,
вид: {
display: "inline-block",
background: "url(р/вещи/стрела.png) no-repeat scroll 0% 0% / contain",
transform: "scaleX(-1)",
},
физика: {
isStatic: false,
inertia: Infinity,
},
},
подоконник: {
x: 1673,
y: 375,


BIN
р/вещи/стрела.png Переглянути файл

Перед Після
Ширина: 368  |  Висота: 59  |  Розмір: 29KB

BIN
р/вещи/стрела.xcf Переглянути файл


Завантаження…
Відмінити
Зберегти