Проверить Matter.js
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.

57 lines
2.1KB

  1. function Пуск()
  2. {
  3. this.запустить = function()
  4. {
  5. var корень = document.getElementById("корень");
  6. мир.физика.создать();
  7. мир.изображения = new Изображения(корень);
  8. мир.тела = new Тела(мир.физика.движок.world);
  9. мир.слежение = new Слежение(корень, мир.изображения, мир.тела, мир.объекты);
  10. мир.столкновения.создать();
  11. мир.звуки = new Звуки(мир.ключники, мир.события);
  12. мир.движение = new Движение(мир.ключники);
  13. /**///мир.рт = new РучноеТело();
  14. this.настроитьОбработкуКлючей();
  15. this.обновить();
  16. };
  17. this.настроитьОбработкуКлючей = function()
  18. {
  19. мир.ключники.push(function(ключ, путь, значение) {
  20. if (путь[0] == "изображения")
  21. {
  22. мир.изображения.обработатьКлюч(ключ, путь, значение);
  23. }
  24. else if (путь[0] == "тела")
  25. {
  26. мир.тела.обработатьКлюч(ключ, путь, значение);
  27. }
  28. else if (путь[0] == "слежение")
  29. {
  30. мир.слежение.обработатьКлюч(ключ, путь, значение);
  31. }
  32. });
  33. };
  34. this.обновить = function()
  35. {
  36. мир.физика.обновить();
  37. мир.объекты.обновить();
  38. мир.игрок.обновить();
  39. мир.слежение.обновить();
  40. мир.маскиПрыжков.обновить();
  41. мир.движение.обновить();
  42. var тут = this;
  43. requestAnimationFrame(function() {
  44. тут.обновить();
  45. });
  46. /**///мир.рт.обновить();
  47. };
  48. }
  49. мир.пуск = new Пуск();