sketch.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. let test, but;
  2. class TestObject extends Object2D
  3. {
  4. _setup()
  5. {
  6. this.position = new Vector2(100, 100);
  7. }
  8. _onSignal(param1, param2, param3, param4)
  9. {
  10. this.setVisibility(!this.getVisibility())
  11. }
  12. _update(delta)
  13. {
  14. }
  15. _draw(delta, db)
  16. {
  17. db.ellipse(0, 0, 50);
  18. }
  19. }
  20. class TestObject2 extends Object2D
  21. {
  22. _setup()
  23. {
  24. this.position = new Vector2(100, 0);
  25. }
  26. _update(delta)
  27. {
  28. }
  29. _draw(delta, db)
  30. {
  31. db.ellipse(0, 0, 50);
  32. }
  33. }
  34. class TestButton extends Button
  35. {
  36. _setup()
  37. {
  38. this.setPosition(100, 200);
  39. this.setSize(150, 50);
  40. }
  41. }
  42. function preload()
  43. {
  44. AssetHandler.loadTexture("monke", "/assets/textures/monke.png");
  45. AssetHandler.loadFont("Lato", "/assets/fonts/Lato-Regular.ttf");
  46. AssetHandler.loadAudio("bonk", "/assets/audio/thonk.wav");
  47. AssetHandler.loadAudio("music", "/assets/audio/music.ogg");
  48. }
  49. function setup()
  50. {
  51. GameHandler.drawDebugFPS(true);
  52. GameHandler.init();
  53. textFont(AssetHandler.getP5FontByName("Lato"));
  54. test = new TestObject("myTest");
  55. but = new TestButton("b1", "Emit signal");
  56. but.connect("mousePressed", test, "_onSignal");
  57. GameHandler.addRootObject(but);
  58. GameHandler.addRootObject(test);
  59. test.addChild(new TestObject2("myTest2"));
  60. }
  61. function draw()
  62. {
  63. background(220);
  64. GameHandler.update();
  65. GameHandler.draw();
  66. }