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.
 
 
 

46 lines
893 B

  1. //
  2. // Lol Engine
  3. //
  4. // Copyright © 2010—2019 Sam Hocevar <sam@hocevar.net>
  5. //
  6. // Lol Engine is free software. It comes without any warranty, to
  7. // the extent permitted by applicable law. You can redistribute it
  8. // and/or modify it under the terms of the Do What the Fuck You Want
  9. // to Public License, Version 2, as published by the WTFPL Task Force.
  10. // See http://www.wtfpl.net/ for more details.
  11. //
  12. #pragma once
  13. //
  14. // The Emitter class
  15. // -----------------
  16. //
  17. #include "engine/entity.h"
  18. #include "tileset.h"
  19. namespace lol
  20. {
  21. class EmitterData;
  22. class Emitter : public entity
  23. {
  24. public:
  25. Emitter(TileSet *tileset, vec3 gravity);
  26. virtual ~Emitter();
  27. void AddParticle(int id, vec3 pos, vec3 vel);
  28. protected:
  29. virtual void tick_game(float seconds);
  30. virtual void tick_draw(float seconds, Scene &scene);
  31. private:
  32. EmitterData *data;
  33. };
  34. } /* namespace lol */