Колобок на Phaser
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.

96 lines
1.9KB

  1. /*
  2. *
  3. * Реакции
  4. *
  5. */
  6. ЗагрузитьРесурсыКолобка= мир =>
  7. {
  8. мир.сцена.load.image("колобок", "ресурсы/колобок/колобок_неподвижен.png");
  9. };
  10. // // // //
  11. СоздатьПолы = мир =>
  12. {
  13. мир.полы = мир.сцена.physics.add.staticGroup();
  14. };
  15. // // // //
  16. СоздатьКолобка = мир =>
  17. {
  18. мир.колобок = мир.сцена.physics.add.sprite(100, 100, "колобок");
  19. мир.колобок.depth = 10;
  20. мир.колобок.setBounce(0.1);
  21. // Следить за колобком камерой.
  22. const камера = мир.сцена.cameras.main;
  23. камера.startFollow(мир.колобок, false, 0.1, 0.1);
  24. };
  25. // // // //
  26. СоздатьСтолкновениеКолобкаСПолами = мир =>
  27. {
  28. мир.сцена.physics.add.collider(мир.колобок, мир.полы);
  29. };
  30. // // // //
  31. ПереместитьКолобка = мир =>
  32. {
  33. if (!мир.управление)
  34. {
  35. мир.колобок.setVelocityX(0);
  36. return;
  37. }
  38. var x = 0;
  39. if (мир.управление.направление == -1)
  40. {
  41. x = -200;
  42. }
  43. else if (мир.управление.направление == 1)
  44. {
  45. x = 200;
  46. }
  47. мир.колобок.setVelocityX(x);
  48. if (мир.управление.прыжок && мир.колобок.body.touching.down)
  49. {
  50. мир.колобок.setVelocityY(-500);
  51. }
  52. };
  53. /*
  54. *
  55. * Последовательность
  56. *
  57. */
  58. мир.разобрать(`
  59. загрузить ресурсы сцены
  60. загрузить ресурсы колобка
  61. создать сцену
  62. создать полы
  63. создать колобка
  64. создать столкновение колобка с полами
  65. изменили управление
  66. переместить колобка
  67. `);