Проверка мегаJson
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

121 lines
3.1KB

  1. мир.структура = {
  2. изображения: {
  3. фон: {
  4. x: 1000,
  5. y: 300,
  6. текстура: "изба",
  7. },
  8. },
  9. платформы: {
  10. полДоКрышки: {
  11. x: 200,
  12. y: 385,
  13. //y: 585,
  14. текстура: "основа",
  15. масштаб: [43, 1],
  16. видимость: true,
  17. },
  18. },
  19. спрайты: {
  20. колобок: {
  21. x: 100,
  22. y: 250,
  23. текстура: "колобок",
  24. //depth: 10,
  25. },
  26. молоко: {
  27. //x: 785,
  28. x: 200,
  29. y: 240,
  30. текстура: "молоко",
  31. масштаб: [0.4, 0.4],
  32. //depth: 10,
  33. },
  34. самовар: {
  35. //x: 1003,
  36. x: 200,
  37. y: 100,
  38. текстура: "самовар",
  39. масштаб: [0.25, 0.25],
  40. //depth: 5,
  41. },
  42. }
  43. };
  44. мир.настройки.scene.create = function()
  45. {
  46. const изо = мир.структура.изображения;
  47. if (изо)
  48. {
  49. for (имя in изо)
  50. {
  51. var описание = изо[имя];
  52. var узел = this.add.image(описание.x, описание.y, описание.текстура);
  53. узел.name = имя;
  54. }
  55. }
  56. const пл = мир.структура.платформы;
  57. if (пл)
  58. {
  59. for (имя in пл)
  60. {
  61. var описание = пл[имя];
  62. var свойства = {
  63. isStatic: true,
  64. };
  65. var узел = this.matter.add.image(
  66. описание.x,
  67. описание.y,
  68. описание.текстура,
  69. null,
  70. свойства
  71. );
  72. узел.name = имя;
  73. задатьСвойстваУзла(узел, описание);
  74. }
  75. }
  76. const сп = мир.структура.спрайты;
  77. if (сп)
  78. {
  79. for (имя in сп)
  80. {
  81. var описание = сп[имя];
  82. var узел = this.matter.add.sprite(
  83. описание.x,
  84. описание.y,
  85. описание.текстура
  86. );
  87. узел.name = имя;
  88. задатьСвойстваУзла(узел, описание);
  89. }
  90. }
  91. const сцена = this;
  92. function node(имя) {
  93. return сцена.children.list.find(function(элемент) {
  94. return элемент.name == имя;
  95. });
  96. }
  97. // Персонаж. Колобок.
  98. мир.колобок = node("колобок");
  99. мир.колобок.setBody({
  100. type: "rectangle",
  101. width: 50,
  102. height: 50,
  103. });
  104. };
  105. function задатьСвойстваУзла(узел, свойства)
  106. {
  107. if (свойства.масштаб)
  108. {
  109. узел.setScale(свойства.масштаб[0], свойства.масштаб[1]);
  110. }
  111. }