|
supertux
|
This is an alternative class for particle systems. More...
#include <particlesystem_interactive.hpp>
Public Member Functions | |
| ParticleSystem_Interactive (const ReaderMapping &mapping) | |
| virtual void | draw (DrawingContext &context) override |
| The GameObject should draw itself onto the provided DrawingContext if this function is called. More... | |
| virtual std::string | get_display_name () const override |
Public Member Functions inherited from ParticleSystem | |
| ParticleSystem (const ReaderMapping &reader, float max_particle_size=60) | |
| ParticleSystem (float max_particle_size=60) | |
| virtual std::string | get_class () const override |
| virtual ObjectSettings | get_settings () override |
| void | set_enabled (bool enabled_) |
| bool | get_enabled () const |
| int | get_layer () const |
Public Member Functions inherited from GameObject | |
| GameObject (const std::string &name) | |
| GameObject (const ReaderMapping &reader) | |
| virtual void | finish_construction () |
| Called after all objects have been added to the Sector and the Sector is fully constructed. More... | |
| UID | get_uid () const |
| virtual void | update (float dt_sec)=0 |
| This function is called once per frame and allows the object to update it's state. More... | |
| void | save (Writer &writer) |
| This function saves the object. More... | |
| virtual bool | is_singleton () const |
| If true only a single object of this type is allowed in a given GameObjectManager. | |
| virtual bool | has_variable_size () const |
| Does this object have variable size (secret area trigger, wind, etc.) | |
| virtual bool | is_saveable () const |
| Indicates if the object will be saved. More... | |
| virtual bool | has_settings () const |
| Indicates if get_settings() is implemented. More... | |
| virtual void | after_editor_set () |
| bool | is_valid () const |
| returns true if the object is not scheduled to be removed yet | |
| void | remove_me () |
| schedules this object to be removed at the end of the frame | |
| void | add_remove_listener (ObjectRemoveListener *listener) |
| registers a remove listener which will be called if the object gets removed/destroyed | |
| void | del_remove_listener (ObjectRemoveListener *listener) |
| unregisters a remove listener, so it will no longer be called if the object gets removed/destroyed | |
| void | set_name (const std::string &name) |
| const std::string & | get_name () const |
| virtual const std::string | get_icon_path () const |
| virtual void | stop_looping_sounds () |
| stops all looping sounds | |
| virtual void | play_looping_sounds () |
| continues all looping sounds | |
| template<typename T > | |
| T * | get_component () |
| void | add_component (std::unique_ptr< GameObjectComponent > component) |
| void | remove_component (GameObjectComponent *component) |
| virtual void | editor_delete () |
| The editor requested the deletion of the object. | |
| virtual void | editor_select () |
| The user clicked on the object in the editor and selected it. | |
| virtual void | editor_deselect () |
| The object got deselected. | |
| virtual void | editor_update () |
| Called each frame in the editor, used to keep linked objects together (e.g. More... | |
Public Member Functions inherited from ExposedObject< ParticleSystem, scripting::ParticleSystem > | |
| ExposedObject (ParticleSystem *parent) | |
| Constructor. More... | |
| virtual void | expose (HSQUIRRELVM vm, SQInteger table_idx) override |
| Exposes the parent GameObject to the script Interface. More... | |
| virtual void | unexpose (HSQUIRRELVM vm, SQInteger table_idx) override |
| Un-exposes the parent GameObject to the script Interface. More... | |
Protected Member Functions | |
| int | collision (Particle *particle, const Vector &movement) |
Additional Inherited Members | |
Protected Attributes inherited from ParticleSystem | |
| float | max_particle_size |
| int | z_pos |
| std::vector< std::unique_ptr< Particle > > | particles |
| float | virtual_width |
| float | virtual_height |
| bool | enabled |
Protected Attributes inherited from GameObject | |
| std::string | m_name |
| a name for the gameobject, this is mostly a hint for scripts and for debugging, don't rely on names being set or being unique | |
This is an alternative class for particle systems.
It is responsible for storing a set of particles with each having an x- and y-coordinate the number of the layer where it should be drawn and a texture.
This version of the particle system class doesn't use virtual screen coordinates, but Interactive ones. Particle systems which need Interactive levels coordinates, such as rain, should be implemented here.
Classes that implement a particle system should subclass from this class, initialize particles in the constructor and move them in the simulate function.
|
overridevirtual |
The GameObject should draw itself onto the provided DrawingContext if this function is called.
Reimplemented from ParticleSystem.
1.8.12