supertux
Public Member Functions | List of all members
Thunderstorm Class Referencefinal

Thunderstorm scriptable GameObject; plays thunder, lightning and electrifies water at regular interval. More...

#include <thunderstorm.hpp>

Inheritance diagram for Thunderstorm:
GameObject ExposedObject< Thunderstorm, scripting::Thunderstorm > ScriptInterface

Public Member Functions

 Thunderstorm (const ReaderMapping &reader)
 
virtual void update (float dt_sec) override
 This function is called once per frame and allows the object to update it's state. More...
 
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_class () const override
 
virtual std::string get_display_name () const override
 
virtual ObjectSettings get_settings () override
 
virtual const std::string get_icon_path () const override
 
Scriptable Methods
void start ()
 Start playing thunder and lightning at configured interval.
 
void stop ()
 Stop playing thunder and lightning at configured interval.
 
void thunder ()
 Play thunder.
 
void lightning ()
 Play lightning, i.e. More...
 
void flash ()
 Display a nice flash.
 
void electrify ()
 Electrify water throughout the whole sector for a short time.
 
- 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
 
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 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< Thunderstorm, scripting::Thunderstorm >
 ExposedObject (Thunderstorm *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...
 

Additional Inherited Members

- 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
 

Detailed Description

Thunderstorm scriptable GameObject; plays thunder, lightning and electrifies water at regular interval.

Member Function Documentation

§ draw()

void Thunderstorm::draw ( DrawingContext context)
overridevirtual

The GameObject should draw itself onto the provided DrawingContext if this function is called.

Implements GameObject.

§ lightning()

void Thunderstorm::lightning ( )

Play lightning, i.e.

call flash() and electrify()

§ update()

void Thunderstorm::update ( float  dt_sec)
overridevirtual

This function is called once per frame and allows the object to update it's state.

The dt_sec is the time that has passed since the last frame in seconds and should be the base for all timed calculations (don't use SDL_GetTicks directly as this will fail in pause mode). This function is not called in the Editor.

Implements GameObject.


The documentation for this class was generated from the following files: